:root{--c-bg:#F4F2ED;--c-surface:#FFFFFF;--c-text:#14181C;--c-primary:#14181C;--c-secondary:#3C4A55;--c-accent:#E4A014;--c-accent-press:#C98C0F;--c-dark-bg:#14181C;--c-dark-text:#F4F2ED;--c-hairline:rgba(60,74,85,.22);--c-hairline-dark:rgba(244,242,237,.18);--ff-display:"Saira Condensed","Arial Narrow",Impact,sans-serif;--ff-body:"Barlow","Helvetica Neue",Arial,sans-serif;--ff-label:"Barlow",Arial,sans-serif;--fs-hero:clamp(2.6rem,7vw,5.4rem);--fs-h2:clamp(1.9rem,3.4vw,3rem);--fs-h3:clamp(1.25rem,2vw,1.6rem);--fs-body:clamp(1.0625rem,.45vw + 1rem,1.1875rem);--fs-small:.9375rem;--fs-label:11px;--fs-phone:clamp(2.4rem,6vw,4.4rem);--lh-display:.92;--lh-body:1.55;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--sp-8:4rem;--sp-9:6rem;--sp-10:8rem;--r-0:0px;--r-1:2px;--r-2:4px;--w-container:1200px;--w-narrow:780px;--w-measure:62ch;--header-h:76px;--mo-dur:420ms;--mo-ease:cubic-bezier(0.22,0.61,0.20,1);--mo-dist:14px;--mo-stagger:70ms;--reveal-delay:0ms}
*,*::before,*::after{box-sizing:border-box}
*{margin:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{background:var(--c-bg);color:var(--c-text);font-family:var(--ff-body);font-size:var(--fs-body);font-weight:400;line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img,svg,video{display:block;max-width:100%;height:auto}
input,button,textarea,select{font:inherit;color:inherit}
h1,h2,h3,h4{font-family:var(--ff-display);font-weight:700;letter-spacing:-.01em;line-height:var(--lh-display);text-wrap:balance}
h1{font-size:var(--fs-hero)}
h2{font-size:var(--fs-h2);line-height:1.25}
h3{font-size:var(--fs-h3);line-height:1.15}
p,li{max-width:var(--w-measure)}
strong,b{font-weight:600}
a{color:var(--c-text);text-decoration:underline;text-underline-offset:.18em;text-decoration-thickness:1px;text-decoration-color:var(--c-accent);transition:color var(--mo-dur) var(--mo-ease)}
a:hover{color:var(--c-secondary)}
:focus-visible{outline:3px solid var(--c-accent);outline-offset:3px}
hr{border:0;border-top:1px solid var(--c-hairline);margin:var(--sp-7) 0}
ul,ol{padding-left:1.15em}
::selection{background:var(--c-accent);color:var(--c-text)}
.container{width:100%;max-width:var(--w-container);margin-inline:auto;padding-inline:clamp(1.25rem,5vw,3rem)}
.container--narrow{max-width:var(--w-narrow)}
.section{padding-block:clamp(3.5rem,9vw,7rem)}
.section--tight{padding-block:clamp(2.5rem,6vw,4.5rem)}
.section--dark{background:var(--c-dark-bg);color:var(--c-dark-text)}
.section--dark a{color:var(--c-dark-text)}
.section--dark h1,.section--dark h2,.section--dark h3{color:var(--c-dark-text)}
.section--surface{background:var(--c-surface)}
.measure{max-width:var(--w-measure)}
.text-secondary{color:var(--c-secondary)}
.section--dark .text-secondary{color:rgba(244,242,237,.74)}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.skip-link{position:absolute;left:var(--sp-4);top:-100px;z-index:1000;background:var(--c-accent);color:var(--c-text);font-weight:600;padding:var(--sp-3) var(--sp-5);text-decoration:none;border-radius:var(--r-1)}
.skip-link:focus{top:var(--sp-3)}
:where(section,div)[id]{scroll-margin-top:calc(var(--header-h) + 1rem)}
[id]{scroll-margin-top:calc(var(--header-h) + 1rem)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:48px;padding:var(--sp-3) var(--sp-5);font-family:var(--ff-body);font-size:1rem;font-weight:600;letter-spacing:.02em;line-height:1.1;text-decoration:none;border:2px solid transparent;border-radius:var(--r-1);cursor:pointer;transition:background-color var(--mo-dur) var(--mo-ease),color var(--mo-dur) var(--mo-ease),transform var(--mo-dur) var(--mo-ease),border-color var(--mo-dur) var(--mo-ease)}
.btn--primary,a.btn--primary{background:var(--c-accent);color:var(--c-text);border-color:var(--c-accent)}
.btn--primary:hover,a.btn--primary:hover{background:var(--c-accent-press);border-color:var(--c-accent-press);color:var(--c-text);transform:translateY(2px)}
.btn--primary:active{transform:translateY(2px)}
.btn--ghost,a.btn--ghost{background:transparent;color:var(--c-text);border-color:var(--c-text)}
.btn--ghost:hover,a.btn--ghost:hover{background:var(--c-text);color:var(--c-bg)}
.section--dark .btn--ghost,.btn--ghost-inv{color:var(--c-dark-text);border-color:var(--c-dark-text)}
.section--dark .btn--ghost:hover,.btn--ghost-inv:hover{background:var(--c-dark-text);color:var(--c-text)}
.btn--block{width:100%}
.wordmark{display:inline-block;text-decoration:none;color:inherit;line-height:1}
.wordmark__name{display:block;font-family:var(--ff-display);font-weight:700;text-transform:uppercase;letter-spacing:-.01em;line-height:.9;font-size:clamp(1.5rem,2.4vw,1.9rem);color:var(--c-text)}
.wordmark__sub{display:block;font-family:var(--ff-body);font-weight:600;text-transform:uppercase;letter-spacing:.18em;font-size:.42em;line-height:1.3;margin-top:.28em;color:var(--c-secondary)}
.wordmark__rule{display:block;width:100%;height:3px;background:var(--c-accent);margin-top:.34em}
.wordmark--inverse .wordmark__name{color:var(--c-dark-text)}
.wordmark--inverse .wordmark__sub{color:rgba(244,242,237,.72)}
.wordmark--footer .wordmark__name{font-size:clamp(1.9rem,4vw,2.6rem)}
.wordmark-lock{display:inline-block}
.mark{flex:0 0 auto;width:40px;height:40px;border-radius:var(--r-1);background:var(--c-accent);display:grid;place-items:center}
.mark svg{width:76%;height:76%;display:block}
.mark--inverse{background:var(--c-dark-bg)}
.amber-underscore{position:relative;padding-bottom:calc(10px + 4px)}
.amber-underscore::after{content:"";position:absolute;left:0;bottom:0;width:56px;height:4px;background:var(--c-accent)}
.amber-underscore--full::after{width:100%}
@media (max-width:640px){.amber-underscore{padding-bottom:13px}.amber-underscore::after{height:3px}}
.manifest-label{display:block;font-family:var(--ff-body);font-weight:600;font-size:var(--fs-label);line-height:1.4;text-transform:uppercase;letter-spacing:.16em;color:var(--c-secondary);margin-bottom:var(--sp-3)}
.manifest-label__index{color:var(--c-accent)}
.section--dark .manifest-label{color:rgba(244,242,237,.72)}
.dock-edge{width:100%;height:6px;border:0;margin:0;background-image:repeating-linear-gradient(45deg,var(--c-accent) 0,var(--c-accent) 8px,var(--c-text) 8px,var(--c-text) 16px);background-size:22.63px 22.63px}
.card{background:var(--c-surface);border-radius:var(--r-1);padding:clamp(1.25rem,3vw,2rem)}
.card--dark.card,.card--dark{background:var(--c-dark-bg);color:var(--c-dark-text)}
.phone-display{font-family:var(--ff-display);font-weight:700;font-size:var(--fs-phone);line-height:1;letter-spacing:-.01em;font-variant-numeric:tabular-nums;text-decoration:none;color:inherit;display:inline-block}
.phone-display:hover{color:var(--c-accent)}
.grid{display:grid;gap:clamp(1rem,2.5vw,2rem)}
.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:900px){.grid--3,.grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.grid,.grid--2,.grid--3,.grid--4{grid-template-columns:minmax(0,1fr)}}
.img-treated{filter:contrast(1.1) saturate(.86) brightness(.98);background:var(--c-dark-bg)}
.img-overlay{position:relative}
.img-overlay::after{content:"";position:absolute;inset:0;background:var(--c-dark-bg);opacity:.62;pointer-events:none}
.img-overlay>*{position:relative}
.media-zoom{overflow:hidden;display:block;position:relative}
.link-draw{position:relative;text-decoration:none;color:inherit;display:inline-block}
.link-draw::after{content:"";position:absolute;left:0;bottom:-3px;width:100%;height:2px;background:var(--c-accent);transform:scaleX(0);transform-origin:left}
.link-draw:hover::after,.link-draw:focus-visible::after{transform:scaleX(1)}
.header{position:sticky;top:0;z-index:100;background:var(--c-bg);border-bottom:1px solid var(--c-hairline)}
.header__bar{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-5);min-height:var(--header-h);padding-block:var(--sp-3)}
.header__identity{display:flex;align-items:center;gap:var(--sp-3);text-decoration:none}
.header__identity .wordmark__name{font-size:clamp(1.35rem,2.2vw,1.75rem)}
.header__identity .wordmark__sub{font-size:.4em}
.header__right{display:flex;align-items:center;gap:clamp(1rem,2.4vw,2rem)}
.nav-desktop ul{display:flex;align-items:center;gap:clamp(.85rem,1.8vw,1.75rem);list-style:none;margin:0;padding:0}
.nav-desktop ul li{max-width:none}
.nav-desktop ul a{display:inline-block;padding:var(--sp-2) 0;font-size:.95rem;font-weight:500;letter-spacing:.01em;color:var(--c-text);text-decoration:none;position:relative}
.nav-desktop ul a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--c-accent);transform:scaleX(0);transform-origin:left}
.nav-desktop ul a:hover::after,.nav-desktop ul a:focus-visible::after{transform:scaleX(1)}
.nav-toggle{display:none}
.burger{display:none;width:48px;height:48px;align-items:center;justify-content:center;background:transparent;border:1px solid var(--c-hairline);border-radius:var(--r-1);cursor:pointer;color:var(--c-text)}
.burger span{display:block;position:relative;width:22px;height:2px;background:currentColor}
.burger span::before,.burger span::after{content:"";position:absolute;left:0;width:22px;height:2px;background:currentColor}
.burger span::before{top:-7px}
.burger span::after{top:7px}
.mobile-panel{display:none}
@media (max-width:900px){.nav-desktop,.header__cta{display:none}.burger{display:inline-flex}.mobile-panel{display:block;position:fixed;left:0;right:0;top:var(--header-h);height:calc(100dvh - var(--header-h));overflow-y:auto;background:var(--c-dark-bg);color:var(--c-dark-text);padding:var(--sp-5) clamp(1.25rem,5vw,2rem) var(--sp-8);z-index:99;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);transition:opacity var(--mo-dur) var(--mo-ease),transform var(--mo-dur) var(--mo-ease),visibility var(--mo-dur) var(--mo-ease)}
.nav-toggle:checked~.mobile-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.nav-toggle:checked~.header__bar .burger{border-color:var(--c-accent)}
body:has(.nav-toggle:checked){overflow:hidden}}
.mobile-panel ul{list-style:none;margin:0;padding:0}
.mobile-panel li{max-width:none;border-bottom:1px solid var(--c-hairline-dark)}
.mobile-panel a{display:flex;align-items:center;min-height:52px;padding:var(--sp-3) 0;font-family:var(--ff-display);font-weight:600;text-transform:uppercase;letter-spacing:.02em;font-size:1.35rem;color:var(--c-dark-text);text-decoration:none}
.mobile-panel a:hover{color:var(--c-accent)}
.mobile-panel .btn{margin-top:var(--sp-5);width:100%;min-height:52px}
.mobile-panel__close{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;gap:var(--sp-2);margin-top:var(--sp-5);padding:var(--sp-2) var(--sp-4);background:transparent;border:1px solid var(--c-hairline-dark);border-radius:var(--r-1);color:var(--c-dark-text);font-size:.85rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.mobile-panel__close:hover{border-color:var(--c-accent);color:var(--c-accent)}
.mobile-panel__contact{margin-top:var(--sp-6);font-size:var(--fs-small);color:rgba(244,242,237,.74)}
.mobile-panel__contact a{font-family:var(--ff-body);font-size:1rem;text-transform:none;letter-spacing:0;min-height:44px;color:var(--c-dark-text)}
.footer{background:var(--c-dark-bg);color:var(--c-dark-text);margin-top:0;padding-block:clamp(3rem,7vw,5rem) var(--sp-6)}
.footer a{color:var(--c-dark-text);text-decoration:none}
.footer a:hover{color:var(--c-accent)}
.footer__top{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(2,minmax(0,1fr));gap:clamp(1.75rem,4vw,3.5rem);align-items:start}
@media (max-width:767px){.footer__top{grid-template-columns:minmax(0,1fr)}}
.footer__tagline{margin-top:var(--sp-4);color:rgba(244,242,237,.74);font-size:var(--fs-small);max-width:38ch}
.footer__heading{font-family:var(--ff-body);font-weight:600;font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.16em;color:rgba(244,242,237,.66);margin-bottom:var(--sp-4)}
.footer__links{list-style:none;margin:0;padding:0;display:grid;gap:var(--sp-3)}
.footer__links li{max-width:none}
.footer__links a{font-size:1rem;display:inline-block;padding-block:2px}
.footer__contact{display:grid;gap:var(--sp-3);font-size:1rem}
.footer__contact span{color:rgba(244,242,237,.74);font-size:var(--fs-small)}
.footer__bottom{margin-top:clamp(2.5rem,5vw,3.5rem);padding-top:var(--sp-5);border-top:1px solid var(--c-hairline-dark);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-4);font-size:.875rem;color:rgba(244,242,237,.7)}
.footer__legal{display:flex;flex-wrap:wrap;gap:var(--sp-4);list-style:none;margin:0;padding:0}
.footer__legal li{max-width:none}
.footer__bottom p{max-width:none}
.reveal{opacity:0}
@media (prefers-reduced-motion:no-preference){.reveal{transform:translateY(var(--mo-dist));transition:opacity var(--mo-dur) var(--mo-ease),transform var(--mo-dur) var(--mo-ease);transition-delay:var(--reveal-delay,0ms)}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal-stagger>*{opacity:0;transform:translateY(var(--mo-dist));transition:opacity var(--mo-dur) var(--mo-ease),transform var(--mo-dur) var(--mo-ease);transition-delay:var(--reveal-delay,0ms)}.reveal-stagger>.is-visible,.reveal-stagger.is-visible>*{opacity:1;transform:translateY(0)}.media-zoom img{transition:transform calc(var(--mo-dur) * 2) var(--mo-ease)}.media-zoom:hover img,.media-zoom:focus-within img{transform:scale(1.03)}.link-draw::after,.nav-desktop ul a::after{transition:transform var(--mo-dur) var(--mo-ease)}.ken-burns{animation:kenburns 12s var(--mo-ease) infinite alternate}@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.04)}}}
.reveal.is-visible{opacity:1}
.reveal-stagger>.is-visible,.reveal-stagger.is-visible>*{opacity:1}
@media (prefers-reduced-motion:reduce){.reveal,.reveal-stagger>*{transform:none!important;transition:opacity 1ms linear}.reveal.is-visible,.reveal-stagger>.is-visible,.reveal-stagger.is-visible>*{opacity:1}.ken-burns{animation:none}.media-zoom img{transition:none}.media-zoom:hover img,.media-zoom:focus-within img{transform:none}.btn--primary:hover{transform:none}.link-draw::after,.nav-desktop ul a::after{transition:none}}