@font-face{font-family:Outfit;src:url('/assets/fonts/outfit-latin.92684e4acde79ef0.woff2') format('woff2');font-weight:400 800;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/fonts/inter-latin.c940764593d0fe5d.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
/* Width-fitted to the bundled variable fonts at each used weight; the vertical
   overrides compensate for size-adjust. Keep the guide's local faces in sync. */
@font-face{font-family:'Outfit Fallback';src:local('Arial'),local('ArialMT');font-weight:400;font-style:normal;size-adjust:99.2384%;ascent-override:100.7675%;descent-override:26.1995%;line-gap-override:0%}
@font-face{font-family:'Outfit Fallback';src:local('Arial'),local('ArialMT');font-weight:500;font-style:normal;size-adjust:99.4818%;ascent-override:100.5209%;descent-override:26.1354%;line-gap-override:0%}
@font-face{font-family:'Outfit Fallback';src:local('Arial Bold'),local('Arial-BoldMT');font-weight:600;font-style:normal;size-adjust:93.8102%;ascent-override:106.5983%;descent-override:27.7155%;line-gap-override:0%}
@font-face{font-family:'Outfit Fallback';src:local('Arial Bold'),local('Arial-BoldMT');font-weight:700;font-style:normal;size-adjust:95.3217%;ascent-override:104.9079%;descent-override:27.2761%;line-gap-override:0%}
@font-face{font-family:'Outfit Fallback';src:local('Arial Bold'),local('Arial-BoldMT');font-weight:800;font-style:normal;size-adjust:96.8433%;ascent-override:103.2596%;descent-override:26.8475%;line-gap-override:0%}
@font-face{font-family:'Inter Fallback';src:local('Arial'),local('ArialMT');font-weight:400;font-style:normal;size-adjust:106.7183%;ascent-override:90.7763%;descent-override:22.6026%;line-gap-override:0%}
@font-face{font-family:'Inter Fallback';src:local('Arial'),local('ArialMT');font-weight:500;font-style:normal;size-adjust:107.788%;ascent-override:89.8755%;descent-override:22.3783%;line-gap-override:0%}
@font-face{font-family:'Inter Fallback';src:local('Arial Bold'),local('Arial-BoldMT');font-weight:600;font-style:normal;size-adjust:101.0668%;ascent-override:95.8525%;descent-override:23.8665%;line-gap-override:0%}
@font-face{font-family:'Inter Fallback';src:local('Arial Bold'),local('Arial-BoldMT');font-weight:700;font-style:normal;size-adjust:102.0441%;ascent-override:94.9344%;descent-override:23.6379%;line-gap-override:0%}
:root{color-scheme:dark;--bg:#07120b;--bg-deep:#050d09;--surface:#0d1c12;--surface-up:#132619;--line:#273b2a;--text:#f1f5ed;--muted:#acbaa8;--quiet:#93a48f;--green:#a3e66c;--green-dark:#79c941;--ink:#10200a;--radius:24px;--display:Outfit,'Outfit Fallback',system-ui,sans-serif;--body:Inter,'Inter Fallback',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}img{max-width:100%;display:block}button,input,dialog{color:inherit}button{border:0}button[disabled]{cursor:not-allowed}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance;font-family:var(--display);font-weight:600;letter-spacing:-.045em;line-height:1.08}h2{font-size:clamp(36px,4vw,54px)}h3{font-size:25px}::selection{background:var(--green);color:var(--ink)}:focus-visible{outline:3px solid var(--green);outline-offset:5px;border-radius:4px}[hidden]{display:none!important}.container{width:min(1184px,calc(100% - 96px));margin-inline:auto}.section{padding:108px 0}.eyebrow{font-size:11px;line-height:1.6;letter-spacing:.14em;font-weight:600;color:var(--green)}.muted-heading{color:var(--muted)}.skip-link{position:fixed;left:16px;top:12px;z-index:100;background:var(--green);color:var(--ink);padding:12px 20px;border-radius:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
.site-header{position:sticky;top:0;z-index:30;background:rgba(7,18,11,.94);border-bottom:1px solid rgba(147,164,143,.12);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nav-shell{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:84px}.wordmark{display:inline-flex;align-items:center;gap:3px;font-family:var(--display);font-size:25px;line-height:1;font-weight:800;letter-spacing:-.04em;flex:none}.wordmark span{color:var(--green);font-size:25px}.site-header nav{display:flex;gap:28px;align-items:center}.site-header nav a{font-size:13px;color:var(--muted);padding:12px 0;white-space:nowrap}.site-header nav a:hover,.site-footer a:hover{color:var(--green)}.button{display:inline-flex;justify-content:center;align-items:center;gap:22px;min-height:54px;padding:15px 24px;background:var(--green);color:var(--ink);border:1px solid transparent;border-radius:10px;font-weight:600;font-size:14px;line-height:1.35;text-align:center;transition:background .18s,transform .18s,box-shadow .18s}.button span[aria-hidden]{font-size:20px;line-height:1}.button:hover{background:#b8f28a;transform:translateY(-2px);box-shadow:0 8px 28px #67b43519}.button:active{transform:translateY(0)}.button[disabled]{background:#263c22;color:#b2c4a8;transform:none;box-shadow:none}.button-small{min-height:42px;font-size:12px;padding:11px 16px;gap:16px}.button-secondary{background:transparent;border-color:#52654b;color:var(--text)}.button-secondary:hover{background:#152819}.text-link{display:inline-flex;gap:12px;align-items:center;font-size:14px;font-weight:500;text-decoration:underline;text-decoration-color:#52654b;text-underline-offset:6px}.text-link:hover{color:var(--green);text-decoration-color:var(--green)}.text-link span{font-size:20px}.menu-toggle{background:transparent;color:var(--text);align-items:center;gap:9px;min-height:44px;padding:8px 0;font-size:13px}
.hero{position:relative;overflow:hidden;padding-top:74px;padding-bottom:0;background:radial-gradient(ellipse at 80% 45%,#1c42201c,transparent 60%),linear-gradient(160deg,#070f12 0%,#07120b 65%)}.hero-grid{position:relative;display:grid;grid-template-columns:1.13fr 1fr;gap:70px;align-items:center}.hero h1{font-size:clamp(47px,5.2vw,72px);line-height:1.055;letter-spacing:-.055em;margin-top:24px;margin-bottom:26px}.hero h1 span{color:var(--green)}.hero-description{max-width:505px;color:#bbc7b6;font-size:16px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:31px;flex-wrap:wrap}.action-note{color:var(--quiet);font-size:11px;margin-top:15px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 13px #a3e66c55;flex:none}.eyebrow .status-dot{margin-right:9px;vertical-align:1px}.hero-landscape{position:absolute;left:38%;right:-25%;height:420px;bottom:0;overflow:hidden;opacity:.23;pointer-events:none;mask-image:linear-gradient(transparent 5%,#000 60%,transparent);-webkit-mask-image:linear-gradient(transparent 5%,#000 60%,transparent)}.terrain-grid{position:absolute;inset:-20%;background-image:linear-gradient(#81b8543d 1px,transparent 1px),linear-gradient(90deg,#81b8543d 1px,transparent 1px);background-size:48px 48px;transform:perspective(450px) rotateX(63deg) rotateZ(-9deg);transform-origin:center top}.workflow-visual{position:relative;isolation:isolate;border:1px solid #365032;border-radius:26px;background:linear-gradient(145deg,#152919 0%,#0b1810 68%);box-shadow:0 30px 90px #0003;padding:30px;overflow:hidden}.workflow-visual:before{content:'';position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 95% 0,#5c8c2321,transparent 60%)}.visual-topline{display:flex;justify-content:space-between;align-items:center;gap:12px}.visual-topline .eyebrow{font-size:10px;color:#b8c9ae}.visual-mark{font-size:30px;line-height:1;color:var(--green)}.workflow-title{font-family:var(--display);font-weight:600;line-height:1.08;text-wrap:balance;font-size:42px;letter-spacing:-.05em;margin-top:26px}.workflow-title span{color:var(--green)}.visual-subtitle{font-size:12px;color:var(--quiet);margin-top:12px}.workflow-steps{list-style:none;padding:0;margin:26px 0 22px;display:flex;flex-direction:column;gap:9px}.workflow-steps li{display:flex;align-items:center;gap:13px;position:relative;border:1px solid #31442c;background:#0b180f;padding:15px 13px;border-radius:12px;min-width:0}.workflow-steps strong{font-size:12px;font-weight:600;display:block;line-height:1.4}.workflow-steps li div>span{font-size:10px;line-height:1.5;color:var(--muted);display:block;margin-top:4px}.step-icon{display:flex;align-items:center;justify-content:center;width:34px;height:38px;color:#b0cc9a;flex:none}.step-icon svg{width:23px;height:23px}.step-check{margin-left:auto;color:var(--green);font-size:16px}.workflow-steps .human-step{border-color:#608443;background:#1a3015}.visual-footer{display:flex;gap:9px;align-items:center;font-size:10px;color:#b6c4ab}.experience-strip{position:relative;border-top:1px solid #253522;margin-top:65px;padding-top:25px;padding-bottom:26px;display:flex;align-items:center;justify-content:space-between;gap:24px}.experience-strip>p{font-size:12px;font-weight:500;line-height:1.8}.experience-strip>p span{color:var(--quiet);font-weight:400;display:block;font-size:11px}.brand-logos{display:flex;gap:10px;align-items:center}.brand-tile{background:#eff3ed;border-radius:8px;min-height:51px;padding:8px 17px;display:flex;align-items:center;justify-content:center}.brand-cat{padding:7px 18px}.brand-logos img{object-fit:contain}
.section-heading{max-width:640px;margin-bottom:42px}.section-heading h2{margin-top:17px}.section-heading>p:not(.eyebrow){color:var(--muted);font-size:15px;max-width:540px;margin-top:22px}.split-heading{max-width:none;display:flex;justify-content:space-between;align-items:flex-end;gap:50px}.split-heading>p{max-width:355px!important;margin:0 0 5px!important;line-height:1.85}.work-section{background:#0a1710;border-block:1px solid #263522}.case-study{display:grid;grid-template-columns:1.32fr 1fr;border:1px solid #3c5132;border-radius:var(--radius);overflow:hidden;background:linear-gradient(115deg,#15281a,#0d1d12)}.case-story{padding:43px 45px}.case-client{display:flex;gap:12px;align-items:center;font-size:10px;letter-spacing:.11em;font-weight:600;color:#d7e6d0}.client-monogram{border:1px solid #50684b;border-radius:7px;padding:5px 7px;color:var(--green);font-family:var(--display);font-size:14px;letter-spacing:-.03em}.case-story h3{font-size:34px;line-height:1.17;margin-top:26px;margin-bottom:22px}.case-story>p:not(.case-client){font-size:14px;line-height:1.85;color:var(--muted);margin-top:14px;max-width:475px}.case-story .text-link{margin-top:25px;color:var(--green)}.case-metrics{margin:0;padding:39px 42px;border-left:1px solid #31462c;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(ellipse at top right,#3e622722,transparent 70%)}.case-metrics>div{display:flex;flex-direction:column-reverse;gap:9px;padding:25px 0;border-bottom:1px solid #33482b}.case-metrics>div:first-child{padding-top:0}.case-metrics>div:last-child{padding-bottom:0;border-bottom:0}.case-metrics dd{font-family:var(--display);font-size:66px;font-weight:500;line-height:1;letter-spacing:-.055em;color:var(--green);margin:0}.case-metrics dd>span{font-size:46px}.case-metrics dt{font-size:12px;color:var(--muted);line-height:1.7}.case-metrics .metric-note{flex-direction:column;gap:10px}.case-metrics .metric-note dt{font-size:10px;letter-spacing:.04em}.case-metrics .metric-note dd{font-size:23px;line-height:1.2;color:#e0eada;letter-spacing:-.03em}.testimonial{max-width:840px;margin:52px auto 0;text-align:center}.quote-mark{display:block;font-family:Georgia,serif;font-size:56px;line-height:.8;color:var(--green)}.testimonial blockquote{font-family:var(--display);font-size:24px;line-height:1.5;letter-spacing:-.016em;margin:17px 0 26px;font-weight:400}.testimonial figcaption{display:flex;justify-content:center;align-items:center;gap:12px;text-align:left}.person-monogram{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#233720;color:#b9d59f;font-size:13px}.testimonial figcaption strong{display:block;font-size:12px;font-weight:500}.testimonial figcaption>span>span{font-size:11px;color:var(--muted);display:block}.case-context{max-width:650px;text-align:center;margin:31px auto 0;font-size:11px;color:var(--quiet);line-height:1.7}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.service-card{position:relative;padding:31px 28px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(150deg,#101f13,#0b180f)}.service-icon{display:flex;align-items:center;justify-content:center;width:43px;height:43px;color:var(--green);background:#1d3418;border-radius:10px}.service-icon svg{width:27px;height:27px}.card-index{position:absolute;top:34px;right:27px;color:#94a48d;font-size:11px;letter-spacing:.07em}.service-card h3{margin-top:29px;font-size:25px}.service-card>p:not(.service-footnote){font-size:14px;color:var(--muted);line-height:1.8;margin-top:16px;min-height:100px}.service-examples{list-style:none;padding:0;margin:24px 0;font-size:12px;line-height:2.3;color:#d4dfcc}.service-examples li:before{content:'→';color:var(--green);margin-right:9px}.service-footnote{font-size:10px;color:var(--quiet);border-top:1px solid var(--line);padding-top:20px;line-height:1.7}.process-section{background:var(--bg-deep);border-block:1px solid #1d2e1e}.process-layout{display:grid;grid-template-columns:1fr 1.35fr;gap:100px}.process-intro h2{margin-top:19px;font-size:53px}.process-intro>p:not(.eyebrow){max-width:265px;margin-top:25px;font-size:15px;color:var(--muted)}.process-intro .text-link{margin-top:26px;font-size:12px}.process-list{list-style:none;margin:0;padding:0}.process-list li{display:flex;align-items:flex-start;gap:25px;padding:0 0 30px;margin:0 0 30px;border-bottom:1px solid var(--line)}.process-list li:last-child{border:0;margin:0;padding:0}.process-number{font-family:var(--display);font-size:14px;color:var(--green);min-width:33px;padding-top:2px}.process-list h3{font-size:25px;line-height:1.3}.process-list p{font-size:14px;color:var(--muted);line-height:1.85;margin-top:12px}.process-deliverable{display:block;margin-top:13px;font-size:11px;color:#c5d6b9}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid var(--line);padding-top:31px;margin-top:58px}.principles>div{display:flex;gap:14px;align-items:flex-start}.principles svg{color:var(--green);width:22px;height:22px}.principles strong{font-size:12px;font-weight:500;display:block}.principles>div>span>span{font-size:11px;display:block;color:var(--quiet);margin-top:5px}
.faq-layout{display:grid;grid-template-columns:1fr 1.55fr;gap:100px}.faq-layout h2{margin-top:19px}.section-description{font-size:14px;color:var(--muted);margin-top:27px;line-height:2}.section-description .text-link{font-size:13px;color:var(--text)}.faq-list{border-top:1px solid #33452d}.faq-list details{border-bottom:1px solid #33452d}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;cursor:pointer;list-style:none;font-size:14px;font-weight:500;line-height:1.6}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:23px;color:var(--green);font-weight:400;flex:none;transition:transform .18s}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-answer{padding:0 35px 24px 0;font-size:14px;color:var(--muted);line-height:1.85}.faq-answer a{text-decoration:underline;text-underline-offset:3px;color:var(--green)}.contact-section{padding-top:0}.contact-panel{position:relative;overflow:hidden;border:1px solid #476334;background:radial-gradient(ellipse at center 130%,#385b2066,transparent 75%),linear-gradient(145deg,#112717,#0c1b11);border-radius:var(--radius);padding:65px 32px;text-align:center}.contact-panel h2{margin-top:18px;font-size:49px}.contact-panel>p:not(.eyebrow){margin-top:23px;color:var(--muted);font-size:15px;line-height:1.85}.contact-panel .button{margin-top:28px}.contact-direct{display:block;width:fit-content;margin:22px auto 0;font-size:12px;color:#c1d1b7;text-decoration:underline;text-decoration-color:#567149;text-underline-offset:5px}.contact-direct:hover{color:var(--green)}.contact-star{position:absolute;right:38px;top:16px;color:#8ccf5812;font-family:var(--display);font-size:230px;line-height:1;transform:rotate(12deg);pointer-events:none}.site-footer{padding:0 0 28px;background:var(--bg)}.footer-top{display:flex;align-items:center;gap:60px;padding-top:0;padding-bottom:42px}.footer-top>p{font-size:12px;line-height:1.7;color:var(--muted)}.footer-top>.text-link{margin-left:auto;font-size:13px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:22px;border-top:1px solid var(--line);padding-top:24px}.footer-bottom>p{font-size:10px;color:var(--quiet)}.footer-bottom nav{display:flex;gap:24px;align-items:center;flex-wrap:wrap;font-size:11px;color:var(--muted)}.footer-choice{background:transparent;color:inherit;padding:0;font-size:11px}.mobile-action{position:fixed;bottom:0;left:0;right:0;z-index:25;padding:10px 20px calc(10px + env(safe-area-inset-bottom));border-top:1px solid #32482d;background:#07120bf5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-action .button{width:100%;min-height:48px}.no-script-note{text-align:center;padding:20px;font-size:14px;border-top:1px solid var(--line)}.no-script-note a{text-decoration:underline;color:var(--green)}
/* The native dialog owns the focus trap. Only its body scrolls, keeping Close reachable. */
dialog{width:min(680px,calc(100% - 32px));max-width:none;padding:0;border:1px solid #48623a;border-radius:22px;background:#0d1c12;box-shadow:0 40px 120px #0008;overflow:hidden;margin:auto;max-height:calc(100dvh - 32px)}dialog::backdrop{background:#020806c9;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.modal-frame{display:flex;flex-direction:column;max-height:calc(100dvh - 34px);min-height:0}.modal-header{display:flex;align-items:center;gap:14px;padding:18px 26px;border-bottom:1px solid var(--line);flex:none;background:#0d1c12}.wordmark-small{font-size:18px}.wordmark-small span{font-size:18px}.modal-header>p{color:var(--muted);font-size:11px;margin-left:auto}.icon-button{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--text);flex:none}.icon-button:hover{background:#23381d}.icon-button svg{width:20px;height:20px}.modal-body{padding:30px;overflow-y:auto;overscroll-behavior:contain;min-height:0;scrollbar-gutter:stable;scroll-padding:24px}.step-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:11px;color:var(--muted);margin-bottom:15px}.step-meta>span:first-child{color:var(--green);letter-spacing:.1em;font-size:10px;font-weight:600}.step-track{display:flex;gap:6px;margin-bottom:25px}.step-track span{height:3px;background:#34432d;border-radius:8px;flex:1}.step-track .is-complete{background:var(--green)}.question-title,.result-title{font-family:var(--display);font-size:30px;line-height:1.2;letter-spacing:-.035em;margin:0 0 11px;outline:none}.question-description{color:var(--muted);font-size:13px;line-height:1.8;margin-bottom:24px}.question-fieldset{padding:0;margin:0;border:0;min-width:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.question-options{display:grid;gap:9px}.q-option{display:flex;gap:13px;align-items:center;position:relative;border:1px solid #3d5134;border-radius:11px;padding:14px 16px;cursor:pointer;font-size:13px;line-height:1.55;background:#101f13;transition:border-color .15s,background .15s}.q-option:hover{border-color:#8ab967;background:#1b2e17}.q-option:has(input:checked){border-color:var(--green);background:#203b17}.q-option:has(input:focus-visible){outline:3px solid var(--green);outline-offset:3px}.q-option input{width:18px;height:18px;accent-color:var(--green);margin:0;flex:none;cursor:pointer}.q-option input:focus-visible{outline:none}.option-copy strong{font-weight:500;display:block;color:var(--text)}.option-copy>span{display:block;color:var(--muted);font-size:11px;margin-top:2px}.question-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:25px}.quiet-button{background:transparent;color:var(--muted);padding:12px 0;font-size:13px;min-height:44px}.quiet-button:hover{color:var(--green)}.question-actions .button{min-width:122px}.question-caption{color:var(--quiet);font-size:11px;margin-top:18px;line-height:1.7}.result-kicker{font-size:10px;font-weight:600;letter-spacing:.12em;color:var(--green);margin-bottom:14px}.estimate-number{font-family:var(--display);font-size:clamp(34px,6vw,52px);font-weight:500;line-height:1.15;letter-spacing:-.045em;color:var(--green);margin:15px 0 5px;overflow-wrap:anywhere}.estimate-number>span{font-family:var(--body);font-size:13px;color:var(--muted);letter-spacing:0;white-space:nowrap}.estimate-description{font-size:13px;line-height:1.85;color:var(--muted);margin-top:13px}.estimate-details{margin:22px 0 0;border:1px solid #374d2c;border-radius:12px;background:#12230f;padding:15px 18px;font-size:12px}.estimate-details summary{cursor:pointer;color:#d4e6c8;font-weight:500;min-height:26px}.estimate-details p{color:var(--muted);margin-top:11px;font-size:12px;line-height:1.8}.result-next{margin-top:26px;border-top:1px solid var(--line);padding-top:24px}.result-next h3{font-size:21px}.result-next p{color:var(--muted);font-size:13px;margin-top:11px}.result-next .button{width:100%;margin-top:20px}.result-links{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;margin-top:18px}.result-links a{font-size:12px;text-decoration:underline;text-underline-offset:4px;color:#c6d6ba}.contact-form{display:flex;flex-direction:column;gap:16px}.form-field label{display:block;font-size:12px;font-weight:500;margin-bottom:7px}.form-field input{width:100%;min-height:48px;border:1px solid #4a5e40;border-radius:9px;background:#09150d;padding:12px 14px;font-size:14px;color:var(--text)}.form-field input::placeholder{color:#92a289}.form-field input:focus{border-color:var(--green);outline:2px solid var(--green);outline-offset:2px}.contact-form .button{margin-top:4px;align-self:stretch}.consent-label{display:flex;align-items:flex-start;gap:10px;font-size:11px;color:var(--muted);line-height:1.7}.consent-label input{width:17px;height:17px;margin-top:3px;flex:none;accent-color:var(--green)}.form-privacy{font-size:11px;color:var(--quiet);line-height:1.8;margin-top:18px}.form-privacy a{color:#d0e0c3;text-decoration:underline;text-underline-offset:3px}.lead-status{font-size:13px;line-height:1.8;color:#cdebb9;margin-top:13px}.lead-error{font-size:13px;line-height:1.8;color:#ffd8bd;border:1px solid #83553a;background:#3b2418;padding:13px 15px;border-radius:10px;margin-top:15px}.calendar-intro{margin-bottom:21px}.calendar-intro h2{font-size:27px}.calendar-intro p{font-size:13px;line-height:1.8;color:var(--muted);margin-top:10px}.calendar-intro a,.calendar-fallback a{color:var(--green);text-decoration:underline;text-underline-offset:3px}.calendar-fallback{font-size:12px;color:var(--muted);line-height:1.8;margin:13px 0 18px}#calendlyHost{width:100%;min-height:660px;border-radius:12px;overflow:hidden;background:#fff;position:relative}#calendlyHost iframe{width:100%;min-width:0!important;display:block;border:0;height:720px}#calendlyHost .calendly-inline-widget{width:100%!important;min-width:0!important}.calendar-loading{padding:35px 20px;text-align:center;background:#fff;color:#314638;font-size:13px}.success-panel{text-align:center;padding:20px 0}.success-panel>.success-icon{display:flex;align-items:center;justify-content:center;margin:0 auto 20px;border-radius:50%;width:56px;height:56px;background:#27431d;color:var(--green);font-size:24px}.success-panel h2{font-size:31px}.success-panel p{font-size:14px;line-height:1.8;color:var(--muted);margin-top:15px}.success-panel .button{margin-top:23px}.privacy-page .article-body{max-width:760px;padding-block:70px 100px}.article-body .eyebrow{margin-bottom:18px}.article-body h1{font-size:48px;line-height:1.15}.article-body h2{font-size:25px;margin-top:38px;margin-bottom:13px}.article-body p,.article-body li{color:var(--muted);font-size:14px;line-height:1.9}.article-body>p{margin-top:18px}.article-body ul{padding-left:21px}.article-body li{padding-left:5px;margin-bottom:8px}.article-body a{color:var(--green);text-decoration:underline;text-underline-offset:3px}.article-body .article-date{font-size:12px;color:var(--quiet)}.privacy-page .site-footer{border-top:1px solid var(--line);padding-top:30px}.privacy-page .site-footer .footer-top{padding-bottom:25px}
@media(min-width:769px){.mobile-action{display:none!important}.menu-toggle{display:none!important}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.site-header nav{gap:20px}.nav-shell{gap:20px}.hero-grid{gap:35px;grid-template-columns:1.05fr 1fr}.hero h1{font-size:58px}.workflow-visual{padding:24px}.workflow-title{font-size:36px}.hero-actions{gap:18px}.hero-actions .text-link{font-size:12px}.process-layout,.faq-layout{gap:55px}.case-story{padding:34px}.case-metrics{padding:34px}.service-card{padding:25px 22px}.service-card h3{font-size:23px}.service-card>p:not(.service-footnote){min-height:125px}.brand-tile{padding-inline:12px}.nav-cta{font-size:11px;gap:10px;padding-inline:12px}.site-header nav a{font-size:12px}}
@media(max-width:900px) and (min-width:769px){.nav-shell{gap:13px}.site-header nav{gap:13px}.wordmark{font-size:22px}.nav-cta{font-size:10px;min-height:40px;gap:7px}.hero-grid{gap:24px}.hero h1{font-size:50px}.hero-description{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:17px}.workflow-visual{padding:23px}.workflow-steps li{padding:12px 10px;gap:7px}.workflow-steps strong{font-size:11px}.workflow-steps li div>span{font-size:10px}.step-icon{width:27px}.visual-footer{font-size:9px}.experience-strip{margin-top:45px}.service-grid{gap:12px}.service-card{padding:23px 19px}.service-card h3{font-size:21px}.service-card>p:not(.service-footnote){font-size:13px;min-height:140px}.service-examples{font-size:11px}.principles{gap:20px}.principles>div{gap:10px}.process-intro h2{font-size:44px}}
@media(max-width:768px){html{scroll-padding-top:88px}.container{width:calc(100% - 40px)}.section{padding:68px 0}.nav-shell{min-height:72px;gap:18px;flex-wrap:wrap;position:relative}.wordmark{font-size:24px}.menu-toggle:not([hidden]){display:flex;margin-left:auto}.nav-cta{display:none}.site-header nav{order:3;width:100%;display:flex;justify-content:space-between;gap:10px;padding-bottom:13px}.site-header nav a{font-size:12px}.enhanced-nav #siteNavigation{display:none}.enhanced-nav.menu-open #siteNavigation{display:flex}.hero{padding-top:46px;padding-bottom:0}.hero-grid{grid-template-columns:1fr;gap:34px}.hero-copy{max-width:600px}.hero .eyebrow{font-size:10px}.hero h1{font-size:clamp(42px,7.3vw,58px);line-height:1.06;margin-top:20px;margin-bottom:22px}.hero-description{font-size:15px;line-height:1.8;max-width:490px}.hero-actions{margin-top:25px;gap:20px;flex-wrap:wrap}.hero-actions .button{min-height:52px;padding:14px 19px;font-size:13px;gap:20px}.hero-actions .text-link{font-size:12px}.action-note{font-size:10px;margin-top:14px}.workflow-visual{max-width:580px;padding:24px}.visual-topline .eyebrow{font-size:9px}.workflow-title{font-size:34px;margin-top:16px}.workflow-title span{color:var(--green)}.visual-subtitle{font-size:11px;margin-top:9px}.workflow-steps{margin-top:20px;margin-bottom:18px}.workflow-steps li{padding:12px;gap:12px}.workflow-steps strong{font-size:12px}.workflow-steps li div>span{font-size:11px}.visual-footer{font-size:10px}.hero-landscape{left:10%;right:-50%;height:550px;bottom:70px}.experience-strip{margin-top:36px;padding-top:22px;padding-bottom:24px;align-items:flex-start;flex-direction:column;gap:17px}.experience-strip>p{font-size:11px}.experience-strip>p span{display:inline;font-size:10px;margin-left:10px}.brand-logos{gap:9px;width:100%;justify-content:flex-start}.brand-tile{padding:8px 13px;min-height:45px}.brand-tile img{max-height:29px;width:auto}.brand-cat{padding-inline:16px}.brand-cat img{max-height:32px}.section-heading{margin-bottom:29px}.section-heading h2{font-size:36px;margin-top:15px}.section-heading>p:not(.eyebrow){font-size:14px;margin-top:18px}.split-heading{display:block}.split-heading>p{margin-top:21px!important;max-width:490px!important}.case-study{grid-template-columns:1fr}.case-story{padding:27px}.case-story h3{font-size:29px;margin-top:22px}.case-story>p:not(.case-client){font-size:13px}.case-client{font-size:9px;gap:10px}.case-story .text-link{font-size:12px}.case-metrics{border-left:0;border-top:1px solid #31462c;padding:27px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.case-metrics>div{padding:0;border:0;justify-content:flex-end}.case-metrics dd{font-size:52px}.case-metrics dd>span{font-size:34px}.case-metrics dt{font-size:11px}.case-metrics .metric-note{grid-column:1/-1;border-top:1px solid #31462c;padding-top:20px;gap:8px}.case-metrics .metric-note dd{font-size:20px}.case-metrics .metric-note dd br{display:none}.testimonial{margin-top:39px}.testimonial blockquote{font-size:21px;line-height:1.5}.testimonial figcaption>span>span{font-size:10px}.case-context{font-size:10px;margin-top:27px}.service-grid{grid-template-columns:1fr;gap:16px}.service-card{padding:28px}.service-card h3{font-size:26px;margin-top:24px}.service-card>p:not(.service-footnote){min-height:0;max-width:540px;font-size:14px}.service-examples{margin-block:20px;font-size:12px}.service-footnote{font-size:10px;padding-top:18px}.process-layout{grid-template-columns:1fr;gap:37px}.process-intro h2{font-size:39px}.process-intro>p:not(.eyebrow){max-width:400px;font-size:14px;margin-top:19px}.process-intro .text-link{margin-top:20px}.process-list li{gap:18px;margin-bottom:26px;padding-bottom:26px}.process-list h3{font-size:24px}.process-list p{font-size:13px}.process-deliverable{font-size:11px}.principles{grid-template-columns:1fr;gap:24px;margin-top:37px;padding-top:27px}.principles strong{font-size:12px}.principles>div>span>span{font-size:11px}.faq-layout{grid-template-columns:1fr;gap:30px}.faq-layout h2{font-size:39px}.section-description{font-size:13px;margin-top:18px}.faq-list summary{font-size:13px;padding:21px 0;gap:20px}.faq-answer{font-size:13px;padding-right:20px}.contact-section{padding-top:0}.contact-panel{padding:44px 21px}.contact-panel h2{font-size:36px}.contact-panel>p:not(.eyebrow){font-size:14px}.contact-panel .eyebrow{font-size:9px}.contact-panel .button{font-size:13px;gap:20px}.contact-direct{font-size:11px;line-height:1.8}.contact-star{font-size:150px;right:8px;top:50px}.site-footer{padding-bottom:100px}.footer-top{gap:24px;flex-wrap:wrap;justify-content:space-between;padding-bottom:28px}.footer-top>p{font-size:11px}.footer-top>.text-link{margin-left:0;flex-basis:100%;font-size:12px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:16px;padding-top:21px}.footer-bottom>p{font-size:10px}.footer-bottom nav{gap:23px;font-size:11px}.modal-header{padding:10px 15px;gap:10px}.modal-header>p{font-size:10px}.wordmark-small{font-size:16px}.wordmark-small span{font-size:16px}.icon-button{min-width:40px;min-height:40px}.modal-body{padding:23px}.question-title{font-size:27px}.q-option{padding:13px;gap:11px;font-size:12px}.option-copy>span{font-size:10px}.question-description{font-size:12px;margin-bottom:20px}.question-caption{font-size:10px}.estimate-description{font-size:12px}.question-actions .button{font-size:12px;min-height:48px;padding-inline:20px}.result-title{font-size:28px}.result-kicker{font-size:9px}.result-next h3{font-size:22px}.result-next p{font-size:12px}.form-privacy{font-size:11px}.calendar-intro h2{font-size:25px}.calendar-intro p{font-size:12px}.calendar-mode .modal-body{padding-inline:10px}.calendar-mode .calendar-intro,.calendar-mode .calendar-fallback{padding-inline:10px}.calendar-mode #calendlyHost{border-radius:8px}.calendar-mode #calendlyHost iframe{height:780px}.privacy-page .article-body{padding-block:46px 70px}.article-body h1{font-size:38px}.article-body p,.article-body li{font-size:13px}.article-body h2{font-size:24px}}
@media(max-width:374px){.container{width:calc(100% - 32px)}.hero h1{font-size:40px}.hero-actions{gap:17px}.hero-actions .button{width:100%}.hero-actions .text-link{font-size:12px}.hero .eyebrow{font-size:8px;letter-spacing:.12em}.experience-strip>p span{display:block;margin-left:0}.brand-tile{padding:8px 10px}.brand-cat{padding-inline:10px}.brand-tile img{max-width:112px;max-height:23px}.brand-cat img{max-height:29px}.workflow-visual{padding:20px}.workflow-steps strong{font-size:11px}.workflow-steps li div>span{font-size:10px}.step-icon{width:26px}.visual-footer{font-size:9px}.case-story,.case-metrics{padding:22px}.case-story h3{font-size:27px}.case-metrics dd{font-size:45px}.case-metrics .metric-note dd{font-size:18px}.testimonial blockquote{font-size:20px}.service-card{padding:24px}.contact-panel h2{font-size:32px}dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:16px}.modal-frame{max-height:calc(100dvh - 18px)}.modal-header{padding:9px 12px}.modal-header>p{font-size:9px;max-width:105px;line-height:1.4}.modal-body{padding:20px 16px}.question-title{font-size:26px}.q-option{padding:12px 11px}.question-caption{font-size:10px}.estimate-number{font-size:35px}.result-links{font-size:11px;gap:12px}.calendar-mode .modal-body{padding-inline:0}.calendar-mode #calendlyHost{border-radius:0}.calendar-mode #calendlyHost iframe{height:780px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.button:hover{transform:none}}
@media(forced-colors:active){.button,.q-option,.case-study,.service-card,.workflow-visual{border:1px solid ButtonText}.step-track .is-complete{background:Highlight}.hero-landscape{display:none}}
@media print{body{background:#fff;color:#111}.site-header,.site-footer,.hero-actions,.contact-section,.mobile-action,dialog,.hero-landscape{display:none!important}.container{width:100%}.section{padding:24px 0}.case-study,.service-card,.workflow-visual{background:#fff;color:#111;border-color:#aaa;break-inside:avoid}p,li,dt,dd,h1,h2,h3,blockquote,.eyebrow{color:#111!important}details:not([open]) .faq-answer{display:block}.service-grid{display:block}.service-card{margin-bottom:16px}}
/* Give the calendar its full supported width on the smallest phones. */
@media(max-width:400px){dialog.calendar-mode{width:100%;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0}.calendar-mode .modal-frame{height:100%;max-height:100dvh}.calendar-mode .modal-body{padding:20px 0;scrollbar-gutter:auto;flex:1}.calendar-mode .calendar-intro,.calendar-mode .calendar-fallback{padding-inline:18px}.calendar-mode #calendarStatus{padding-inline:18px}.calendar-mode #calendlyHost{border-radius:0}.calendar-mode .result-links{padding-inline:18px}}

/* Proof and direct booking stay alongside the first decision a visitor makes. */
.hero-proof{margin-top:23px;padding-top:19px;border-top:1px solid var(--line);max-width:505px;font-size:13px;line-height:1.85;color:var(--muted);text-wrap:pretty}
.hero-proof strong{font-weight:600;color:var(--green)}
.hero-proof a{display:inline-block;color:var(--text);text-decoration:underline;text-decoration-color:#52654b;text-underline-offset:4px;margin-left:3px}
.hero-proof a:hover{color:var(--green)}
.site-header nav .mobile-nav-cta{display:none}
/* A short, single pass illustrates the handoff without persistent motion. */
@media(prefers-reduced-motion:no-preference){
  .workflow-steps li{animation:workflow-highlight 1.25s ease-out 1 both}
  .workflow-steps li:nth-child(1){animation-delay:.35s}
  .workflow-steps li:nth-child(2){animation-delay:1.55s}
  .workflow-steps li:nth-child(3){animation-delay:2.75s}
  .workflow-steps .step-check{animation:workflow-check .55s ease-out 1 both}
  .workflow-steps li:nth-child(1) .step-check{animation-delay:.7s}
  .workflow-steps li:nth-child(2) .step-check{animation-delay:1.9s}
  .workflow-steps li:nth-child(3) .step-check{animation-delay:3.1s}
  @keyframes workflow-highlight{0%,100%{box-shadow:none}45%{border-color:#9bc977;box-shadow:inset 0 0 0 1px #7caa5638,0 0 18px #6ba14018}}
  @keyframes workflow-check{0%{opacity:.3;transform:scale(.75)}100%{opacity:1;transform:scale(1)}}
}
@media(max-width:768px){
  .site-header nav{flex-wrap:wrap}
  .site-header nav .mobile-nav-cta{display:inline-flex;flex-basis:100%;margin-top:4px;margin-bottom:4px;min-height:48px;padding:12px 16px;color:var(--ink);font-size:13px}
  .site-header nav .mobile-nav-cta:hover{color:var(--ink)}
  .hero-proof{font-size:13px;margin-top:21px;padding-top:17px}
  .hero .eyebrow,.visual-topline .eyebrow,.contact-panel .eyebrow,.case-client,.result-kicker,.step-meta>span:first-child{font-size:11px}
  .action-note,.visual-subtitle,.workflow-steps li div>span,.visual-footer,.experience-strip>p,.experience-strip>p span,.case-metrics dt,.case-metrics .metric-note dt,.testimonial figcaption>span>span,.case-context,.service-footnote,.process-deliverable,.principles>div>span>span,.contact-direct,.footer-top>p,.footer-bottom>p,.footer-bottom nav,.footer-choice,.modal-header>p,.step-meta,.option-copy>span,.question-caption,.consent-label,.form-privacy{font-size:12px}
  .modal-header>p{line-height:1.4}
}
@media(max-width:374px){
  .site-header nav{align-items:stretch;flex-direction:column;gap:0}
  .site-header nav>a{white-space:normal;font-size:14px;padding:10px 0}
  .site-header nav .mobile-nav-cta{flex-basis:auto;margin-top:10px}
  .hero .eyebrow{letter-spacing:.1em}
  .workflow-steps strong{font-size:12px}
  .hero-actions .hero-direct{min-height:44px}
}

/* Let each heading find balanced lines within its available column. */
.hero h1{max-width:15ch}
.section-heading h2,.process-intro h2,.faq-layout h2{max-width:18ch}
.case-story h3{max-width:21ch}
.contact-panel h2{max-width:22ch;margin-inline:auto}

/* Keep controls reachable while giving the page more room after scrolling. */
.site-header.is-scrolled{background:rgba(7,18,11,.98);box-shadow:0 5px 20px #0002}
.site-header.is-scrolled .nav-shell{min-height:64px}
@media(max-width:768px){.site-header.is-scrolled .nav-shell{min-height:56px}}

/* Content remains ordinary, visible HTML when these enhancements are unsupported. */
@media(prefers-reduced-motion:no-preference){
  .site-header{transition:background .2s,box-shadow .2s}
  .nav-shell{transition:min-height .2s ease}
  @supports (animation-timeline:view()) and (animation-range:entry 0% entry 100%){
    /* Clipping without creating an inner scroll container keeps the viewport timeline. */
    .case-study{overflow:clip}
    [data-reveal]{animation:page-reveal 1ms linear both;animation-timeline:view();animation-range:entry 0% entry 100%}
    [data-reveal]:focus-within{animation:none}
    @keyframes page-reveal{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
  }
  @supports (interpolate-size:allow-keywords) and selector(::details-content) and (transition-behavior:allow-discrete){
    .faq-list details{interpolate-size:allow-keywords}
    .faq-list details::details-content{block-size:0;overflow:hidden;opacity:0;transition:block-size .22s ease,opacity .18s ease,content-visibility .22s allow-discrete}
    .faq-list details[open]::details-content{block-size:auto;opacity:1}
  }
  @view-transition{navigation:auto}
  ::view-transition-old(root),::view-transition-new(root){animation-duration:.18s;animation-timing-function:ease-out}
}
@media(prefers-reduced-motion:reduce){
  @view-transition{navigation:none}
  ::view-transition-old(root),::view-transition-new(root){animation:none}
}
@media print{
  .skip-link,.faq-list summary>span{display:none!important}
  [data-reveal]{animation:none!important;opacity:1!important;transform:none!important}
  .faq-list details::details-content{block-size:auto!important;content-visibility:visible!important;opacity:1!important}
  .faq-answer a,.section-description a{color:#111!important}
}
