:root{--green-950:#081310;--green-900:#0e2118;--green-850:#132b1e;--green-800:#163322;--green-700:#1e4d33;--green-600:#276140;--green-500:#2f6b45;--lime-600:#6f912b;--lime-500:#8cb33f;--lime-400:#a6cc52;--lime-300:#c2e07a;--tan-400:#b9a678;--tan-300:#cbbb95;--tan-200:#dccfb0;--tan-100:#e8dec8;--tan-50:#f6f1e4;--orange-700:#a8430e;--orange-600:#bf4f12;--orange-500:#e2661f;--orange-400:#f5802f;--red-400:#ff7b72;--white:#fff;--black:#000;--surface:var(--green-900);--surface-sunken:var(--green-950);--surface-raised:var(--green-850);--surface-hover:var(--green-800);--surface-brand:var(--green-700);--surface-light:var(--tan-50);--ink:var(--tan-50);--ink-muted:var(--tan-200);--ink-faint:var(--tan-400);--ink-invert:var(--green-900);--ink-on-cta:var(--green-950);--brand:var(--green-700);--brand-strong:var(--green-600);--cta:var(--orange-500);--cta-hover:var(--orange-400);--cta-ink:var(--ink-on-cta);--cta-quiet:var(--orange-400);--accent:var(--lime-400);--accent-hover:var(--lime-300);--accent-quiet:var(--lime-600);--danger:var(--red-400);--success:var(--lime-300);--rule:color-mix(in oklab, var(--tan-50) 14%, transparent);--rule-strong:color-mix(in oklab, var(--tan-50) 28%, transparent);--rule-accent:var(--lime-600);--focus:var(--orange-400);--focus-offset:3px;--focus-width:3px;--scrim:linear-gradient(180deg, color-mix(in oklab, var(--green-950) 72%, transparent) 0%, color-mix(in oklab, var(--green-950) 58%, transparent) 45%, color-mix(in oklab, var(--green-950) 88%, transparent) 100%);--font-head:"Archivo", "Helvetica Neue", Arial, sans-serif;--font-body:"DM Sans", system-ui, -apple-system, sans-serif;--step--1:clamp(.8125rem, .8rem + .08vw, .875rem);--step-0:1rem;--step-1:clamp(1.0625rem, 1.03rem + .18vw, 1.1875rem);--step-2:clamp(1.1875rem, 1.1rem + .35vw, 1.375rem);--step-3:clamp(1.375rem, 1.25rem + .6vw, 1.75rem);--step-4:clamp(1.75rem, 1.5rem + 1.1vw, 2.375rem);--step-5:clamp(2.125rem, 1.7rem + 2vw, 3.25rem);--leading-tight:1.04;--leading-head:1.12;--leading-body:1.6;--tracking-tight:-.022em;--tracking-flat:0;--tracking-wide:.14em;--weight-body:400;--weight-medium:500;--weight-bold:700;--weight-black:800;--space-3xs:.25rem;--space-2xs:.5rem;--space-xs:.75rem;--space-s:1rem;--space-m:1.5rem;--space-l:2rem;--space-xl:3rem;--space-2xl:4rem;--space-3xl:6rem;--space-section:clamp(2.75rem, 4.5vw, 4.5rem);--gutter:clamp(1.25rem, 4vw, 2.5rem);--measure:62ch;--width-page:1180px;--width-wide:1400px;--header-h:3.75rem;--hero-h:min(66svh, 34rem);--radius-xs:2px;--radius-s:3px;--radius-m:4px;--radius-pill:999px;--shadow-s:0 1px 2px color-mix(in oklab, var(--black) 40%, transparent);--shadow-m:0 6px 24px -6px color-mix(in oklab, var(--black) 55%, transparent);--shadow-l:0 18px 50px -12px color-mix(in oklab, var(--black) 65%, transparent);--ease:cubic-bezier(.2, 0, .2, 1);--dur-fast:.12s;--dur:.2s;--dur-slow:.4s;--z-base:0;--z-raised:10;--z-header:100;--z-drawer:200;--z-modal:300}@media (forced-colors:active){:root{--rule:CanvasText;--rule-strong:CanvasText;--focus:Highlight}}*,:before,:after{box-sizing:border-box}*{margin:0}html{scroll-padding-top:calc(var(--header-h) + var(--space-s));-webkit-text-size-adjust:100%}html:focus-within{scroll-behavior:smooth}body{min-height:100svh;font-family:var(--font-body);font-size:var(--step-0);font-weight:var(--weight-body);line-height:var(--leading-body);color:var(--ink);background-color:var(--surface);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overflow-x:hidden}img,picture,svg,video,canvas{max-width:100%;height:auto;display:block}input,button,textarea,select{font:inherit;color:inherit}p,li,h1,h2,h3,h4,dd,dt{overflow-wrap:break-word}h1,h2,h3,h4{font-family:var(--font-head);font-weight:var(--weight-black);line-height:var(--leading-head);letter-spacing:var(--tracking-tight);color:var(--ink);text-wrap:balance}h1{font-size:var(--step-5);line-height:var(--leading-tight)}h2{font-size:var(--step-4)}h3{font-size:var(--step-2)}h4{font-size:var(--step-1);font-weight:var(--weight-bold)}p{text-wrap:pretty}p+p{margin-block-start:1em}a{color:var(--accent);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--accent-hover)}ul,ol{padding:0;list-style:none}strong,b{font-weight:var(--weight-bold)}hr{border:0;border-block-start:1px solid var(--rule)}::selection{background:var(--accent);color:var(--ink-invert)}:focus-visible{outline:var(--focus-width) solid var(--focus);outline-offset:var(--focus-offset);border-radius:var(--radius-xs)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:var(--z-modal);padding:var(--space-2xs) var(--space-s);background:var(--cta);color:var(--ink-on-cta);font-weight:var(--weight-bold);border-radius:var(--radius-s);position:absolute;inset-block-start:var(--space-2xs);inset-inline-start:var(--space-2xs);transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.wrap{width:100%;max-width:var(--width-page);padding-inline:var(--gutter);margin-inline:auto}.wrap--wide{max-width:var(--width-wide)}.section{padding-block:var(--space-section)}.section--sunken{background:var(--surface-sunken)}.section--raised{background:var(--surface-raised)}.section__head{max-width:var(--measure);margin-block-end:var(--space-xl)}.section__head p{color:var(--ink-muted);margin-block-start:var(--space-s)}.split{gap:var(--space-xl);display:grid}@media (width>=56.25em){.split{gap:var(--space-2xl);grid-template-columns:minmax(0,1.1fr) minmax(16rem,.9fr);align-items:start}}.eyebrow{font-family:var(--font-head);font-size:var(--step--1);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--accent);margin-block-end:var(--space-xs);display:block}.lede{font-size:var(--step-1);color:var(--ink-muted);max-width:var(--measure)}.btn{justify-content:center;align-items:center;gap:var(--space-2xs);min-height:3rem;padding:var(--space-xs) var(--space-m);font-family:var(--font-head);font-size:var(--step-0);font-weight:var(--weight-bold);letter-spacing:.01em;border-radius:var(--radius-s);cursor:pointer;transition:background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease), transform var(--dur-fast) var(--ease);border:2px solid #0000;text-decoration:none;display:inline-flex}.btn:active{transform:translateY(1px)}.btn--cta{background:var(--cta);color:var(--cta-ink)}.btn--cta:hover{background:var(--cta-hover);color:var(--cta-ink)}.btn--ghost{color:var(--ink);border-color:var(--rule-strong);background:0 0}.btn--ghost:hover{background:var(--surface-hover);border-color:var(--ink-muted);color:var(--ink)}.btn--block{width:100%}.btn--sm{min-height:2.5rem;padding:var(--space-3xs) var(--space-s);font-size:var(--step--1)}.actions{gap:var(--space-2xs);flex-direction:column;margin-block-start:var(--space-m);display:flex}.actions .btn{width:100%}@media (width>=30em){.actions{flex-flow:wrap;align-items:center}.actions .btn{width:auto}}.header{z-index:var(--z-header);background:color-mix(in oklab, var(--surface-sunken) 92%, transparent);backdrop-filter:blur(8px);border-block-end:1px solid var(--rule);position:sticky;inset-block-start:0}.header__bar{justify-content:space-between;align-items:center;gap:var(--space-s);min-height:var(--header-h);display:flex}.header__brand{font-family:var(--font-head);font-size:var(--step-2);font-weight:var(--weight-black);letter-spacing:var(--tracking-tight);text-transform:uppercase;color:var(--accent);white-space:nowrap;text-decoration:none}.header__brand span{color:inherit}.header__nav,.header__actions>.btn{display:none}.header__actions{align-items:center;gap:var(--space-2xs);display:flex}.header__call{width:2.75rem;height:2.75rem;color:var(--ink);border:1px solid var(--rule-strong);border-radius:var(--radius-s);justify-content:center;align-items:center;text-decoration:none;display:none}.header__call:hover{background:var(--surface-hover);color:var(--ink)}.header__call svg{flex:none;width:1.15rem;height:1.15rem}.header__call-num{display:none}.header__toggle{width:2.75rem;height:2.75rem;color:var(--ink);border:1px solid var(--rule-strong);border-radius:var(--radius-s);background:0 0;justify-content:center;align-items:center;display:inline-flex}.header__toggle svg{width:1.35rem;height:1.35rem}.header__toggle .icon-close{display:none}.header__toggle[aria-expanded=true] .icon-close{display:block}.header__toggle[aria-expanded=true] .icon-open{display:none}.drawer{border-block-start:1px solid var(--rule);background:var(--surface-sunken)}.drawer[hidden]{display:none}.drawer__list{padding-block:var(--space-s);flex-direction:column;display:flex}.drawer__list a{padding:var(--space-xs) 0;font-family:var(--font-head);font-weight:var(--weight-bold);font-size:var(--step-1);color:var(--ink);border-block-end:1px solid var(--rule);text-decoration:none}.drawer__list a:hover{color:var(--accent)}.drawer__cta{padding-block:var(--space-s) var(--space-m)}.hero{isolation:isolate;background:var(--surface-sunken);position:relative}.hero__media{z-index:-2;position:absolute;inset:0}.hero__media img{object-fit:cover;width:100%;height:100%}.hero__scrim{z-index:-1;background:var(--scrim);position:absolute;inset:0}.hero__inner{padding-block:calc(var(--space-section) * 1.1) var(--space-section)}.hero__card{--hero-fade:2.5rem;max-width:44rem;padding:var(--space-l) var(--space-m);border:0;border-inline-start:3px solid var(--accent);background:linear-gradient(90deg, color-mix(in oklab, var(--surface-sunken) 94%, transparent) 0%, color-mix(in oklab, var(--surface-sunken) 94%, transparent) calc(100% - var(--hero-fade)), transparent 100%);border-radius:0;padding-inline-end:var(--hero-fade)}.hero__card h1{margin-block-end:var(--space-s)}.hero__card .lede{margin-block-end:var(--space-l)}.hero__actions{gap:var(--space-2xs);flex-direction:column;display:flex}.stats{gap:var(--space-m);padding-block:var(--space-l);border-block-start:1px solid var(--rule);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.stat__num{overflow-wrap:anywhere;font-family:var(--font-head);font-size:var(--step-3);font-weight:var(--weight-black);letter-spacing:var(--tracking-tight);color:var(--accent);line-height:1;display:block}.stat__label{font-size:var(--step--1);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-block-start:var(--space-3xs);display:block}.services{gap:var(--space-2xs);display:grid}.service>*{min-width:0}.service{gap:var(--space-2xs);min-height:11rem;padding:var(--space-m);background:var(--surface-raised);border:1px solid var(--rule);border-radius:var(--radius-m);color:var(--ink);transition:background-color var(--dur) var(--ease), border-color var(--dur) var(--ease);flex-direction:column;text-decoration:none;display:flex}.service:hover{background:var(--surface-hover);border-color:var(--rule-strong);color:var(--ink)}.service:hover .service__more{color:var(--accent-hover)}.service__icon{width:2rem;height:2rem;color:var(--accent)}.service__icon svg{width:100%;height:100%}.service h3{font-size:var(--step-1)}.service p{color:var(--ink-muted);font-size:var(--step-0);flex:1}.service__more{font-family:var(--font-head);font-size:var(--step--1);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--accent)}.service--lead{background:var(--surface-brand);border-color:var(--brand-strong);min-height:15rem}@media (width>=56.25em){.service--lead p{flex:0 auto}.service--lead .service__more{margin-block-start:auto}.service--lead .service__media{border-radius:var(--radius-s);margin-block-start:var(--space-s);display:block;overflow:hidden}.service--lead .service__media img{aspect-ratio:5/3;object-fit:cover;width:100%}}.service--lead:hover{background:var(--brand-strong)}.service--lead h3{font-size:var(--step-2)}.rail{gap:var(--space-s);scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--rule-strong) transparent;grid-auto-columns:minmax(17rem,85%);grid-auto-flow:column;padding-block-end:var(--space-s);display:grid;overflow-x:auto}.rail>*{scroll-snap-align:start}.rail{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 2.5rem),#0000 100%);mask-image:linear-gradient(90deg,#000 calc(100% - 2.5rem),#0000 100%)}.quote{gap:var(--space-s);min-height:15rem;padding:var(--space-m);background:var(--surface-raised);border:1px solid var(--rule);border-block-start:2px solid var(--rule-accent);border-radius:var(--radius-m);flex-direction:column;display:flex}.quote blockquote{font-size:var(--step-1);flex:1;line-height:1.45}.quote figcaption{font-size:var(--step--1);color:var(--ink-faint)}.quote figcaption b{color:var(--ink);font-size:var(--step-0);display:block}.quote__stars{color:var(--accent);gap:2px;display:flex}.quote__stars svg{width:1rem;height:1rem}.form{gap:var(--space-s);padding:var(--space-l);background:var(--surface-raised);border:1px solid var(--rule);border-radius:var(--radius-m);display:grid}.form__row{gap:var(--space-s);display:grid}@media (width>=30em){.form__row{grid-template-columns:repeat(2,minmax(0,1fr))}}.field{gap:var(--space-3xs);display:grid}.field>label{font-family:var(--font-head);font-size:var(--step--1);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}.field input,.field textarea,.field select{width:100%;min-height:2.75rem;padding:var(--space-2xs) var(--space-xs);color:var(--ink);background:var(--surface-sunken);border:1px solid var(--rule-strong);border-radius:var(--radius-s)}.field textarea{resize:vertical;min-height:6rem}.field input::placeholder,.field textarea::placeholder{color:var(--ink-faint)}.field input:focus-visible,.field textarea:focus-visible,.field select:focus-visible{border-color:var(--accent)}.field--invalid input,.field--invalid textarea{border-color:var(--danger)}.field__error{font-size:var(--step--1);color:var(--danger)}.honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form__status{font-size:var(--step-0)}.form__status[data-state=ok]{color:var(--success)}.form__status[data-state=err]{color:var(--danger)}.footer{padding-block:var(--space-m);background:var(--surface-sunken);border-block-start:1px solid var(--rule);font-size:var(--step--1);color:var(--ink-faint)}.footer__row{justify-content:space-between;align-items:center;gap:var(--space-s) var(--space-l);flex-wrap:wrap;display:flex}.footer__links{gap:var(--space-2xs) var(--space-m);flex-wrap:wrap;display:flex}.footer a{color:var(--ink-muted);text-decoration:none}.footer a:hover{color:var(--ink);text-decoration:underline}.footer .header__brand{font-size:var(--step-1);color:var(--accent)}.footer .header__brand:hover{color:var(--accent-hover);text-decoration:none}.prose{max-width:var(--measure)}.prose h2{font-size:var(--step-3);margin-block:var(--space-xl) var(--space-s)}.prose h3{margin-block:var(--space-l) var(--space-2xs)}.prose ul{gap:var(--space-2xs);margin-block:var(--space-s);display:grid}.prose ul li{color:var(--ink-muted);padding-inline-start:var(--space-m);position:relative}.prose ul li:before{content:"";background:var(--accent);width:.6rem;height:2px;position:absolute;inset-block-start:.62em;inset-inline-start:0}.gallery{gap:var(--space-xs);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.gallery__item{gap:var(--space-2xs);display:grid}.gallery__item img{aspect-ratio:4/3;object-fit:cover;border:1px solid var(--rule);border-radius:var(--radius-m);background:var(--surface-raised);width:100%}.gallery__caption{font-size:var(--step--1);color:var(--ink-muted)}.gallery__caption span{color:var(--ink-faint);display:block}@media (width>=40em){.gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}.service__media{display:none}.banner{border:1px solid var(--rule);border-radius:var(--radius-m);margin-block-end:var(--space-l);overflow:hidden}.banner img{aspect-ratio:16/7;object-fit:cover;width:100%}.chips{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.chip{padding:var(--space-3xs) var(--space-2xs);font-size:var(--step--1);color:var(--ink-muted);background:var(--surface-raised);border:1px solid var(--rule);border-radius:var(--radius-pill);text-decoration:none}.chip:hover{color:var(--ink);border-color:var(--accent)}.callbar{z-index:var(--z-drawer);gap:var(--space-2xs);padding:var(--space-2xs);background:color-mix(in oklab, var(--surface-sunken) 94%, transparent);backdrop-filter:blur(8px);border-block-start:1px solid var(--rule);grid-template-columns:auto 1fr;display:grid;position:fixed;inset-block-end:0;inset-inline:0}.callbar[hidden]{display:none}.callbar .btn{min-height:2.9rem}.callbar__call{width:2.9rem;color:var(--ink);border:1px solid var(--rule-strong);border-radius:var(--radius-s);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.callbar__call:hover{background:var(--surface-hover);color:var(--ink)}.callbar__call svg{width:1.2rem;height:1.2rem}body{padding-block-end:4.25rem}@media (width>=40em){.hero__actions{flex-direction:row}.hero__card{--hero-fade:7rem;padding:var(--space-xl) var(--space-l);padding-inline-end:var(--hero-fade)}.services{grid-template-columns:repeat(2,minmax(0,1fr))}.service--lead{grid-column:1/-1;min-height:12rem}.rail{grid-auto-columns:minmax(18rem,46%)}}@media (width>=56.25em){.header__nav{align-items:center;gap:var(--space-m);display:flex}.header__nav a{font-family:var(--font-head);font-size:var(--step-0);font-weight:var(--weight-medium);color:var(--ink-muted);text-decoration:none}.header__nav a:hover,.header__nav a[aria-current=page]{color:var(--ink)}.header__nav a[aria-current=page]{box-shadow:inset 0 -2px 0 var(--accent)}.header__toggle{display:none}.drawer{display:none!important}.header__actions>.btn{display:inline-flex}.header__call{width:auto;padding-inline:var(--space-s);gap:var(--space-2xs);display:inline-flex}.header__call-num{display:inline}.hero__inner{align-items:end;gap:var(--space-xl);min-height:var(--hero-h);grid-template-columns:minmax(0,1.35fr) minmax(14rem,.65fr);display:grid}.hero__card{max-width:none}.stats{gap:var(--space-l);border-block-start:0;border-inline-start:1px solid var(--rule);grid-template-columns:1fr;padding-block:0;padding-inline-start:var(--space-l)}.services{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr}.service--lead{grid-area:span 2;min-height:15rem}.rail{grid-auto-columns:minmax(16rem,31%)}.callbar{display:none}body{padding-block-end:0}}@media (width>=75em){.services{gap:var(--space-xs)}.hero__inner{gap:var(--space-2xl)}}@media print{.header,.callbar,.drawer,.hero__media,.hero__scrim{display:none!important}body{color:#000;background:#fff;padding:0}h1,h2,h3,h4,.stat__num,.eyebrow{color:#000}}
