@font-face{font-family:Archivo;src:url('fonts/Archivo-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:'Be Vietnam Pro';src:url('fonts/BeVietnamPro-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Be Vietnam Pro';src:url('fonts/BeVietnamPro-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:'Be Vietnam Pro';src:url('fonts/BeVietnamPro-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{
  --gold:#FCAF30;--blue:#1D4AA7;--ink:#11254B;--paper:#F7F9FC;--muted:#4F5E77;--line:#D8E0ED;
  --gold-side:#BD761A;--gold-middle:#DF9524;--gold-soft:#FCECCF;--blue-soft:#E9EFF9;--line-strong:#7787A0;
  --error:#AC2034;--white:oklch(99.5% .002 260);--on-dark:#D8E0ED;
  --head:Archivo,'Be Vietnam Pro',sans-serif;--body:'Be Vietnam Pro',sans-serif;
  --s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s6:1.5rem;--s8:2rem;--s12:3rem;--s16:4rem;--s24:6rem;
  --radius:0;--ease:cubic-bezier(.25,1,.5,1);--fast:150ms;--normal:250ms;--slow:500ms;
  --shell:1280px;--gutter:clamp(24px,4vw,64px);--section:clamp(64px,7vw,96px);--header:88px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:1rem;line-height:1.7;overflow-wrap:break-word}img,video,svg{max-width:100%}img{display:block;height:auto}a{color:var(--blue);text-underline-offset:.25em}a:hover{text-decoration-thickness:2px}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a,button,input,textarea,select,summary{border-radius:var(--radius)}:focus-visible{outline:3px solid var(--blue);outline-offset:4px}::selection{background:var(--gold);color:var(--ink)}[hidden]{display:none!important}h1,h2,h3,p,ul,ol,dl,figure{margin-top:0}h1,h2,h3{font-family:var(--head);font-weight:700;line-height:1.12;letter-spacing:-.03em;text-wrap:balance;margin-bottom:var(--s6)}h1{font-size:clamp(2.75rem,4.2vw + .5rem,4.75rem)}h2{font-size:clamp(2rem,2.9vw + .3rem,3rem)}h3{font-size:clamp(1.35rem,1.5vw + .25rem,1.75rem);letter-spacing:-.02em}p{text-wrap:pretty;margin-bottom:var(--s6)}p:last-child{margin-bottom:0}ul,ol{padding-left:var(--s6)}li+li{margin-top:var(--s3)}strong{font-weight:600}.wrap{width:100%;max-width:var(--shell);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--section)}.icon{width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:transform var(--normal) var(--ease)}.skip{position:fixed;left:var(--s6);top:-100px;z-index:50;background:var(--gold);color:var(--ink);padding:var(--s3) var(--s6)}.skip:focus{top:var(--s4)}.lede{font-size:clamp(1.125rem,1.25vw + .25rem,1.35rem);line-height:1.65;max-width:54ch}.text-link{display:inline-flex;align-items:center;gap:var(--s3);min-height:44px;font-weight:600;text-decoration:none;border-bottom:1px solid currentColor;width:fit-content}.text-link:hover .icon,.button:hover .icon{transform:translateX(4px)}.button{display:inline-flex;justify-content:center;align-items:center;gap:var(--s3);min-height:52px;padding:var(--s3) var(--s6);background:var(--ink);color:var(--paper);border:1px solid var(--ink);text-decoration:none;font-weight:600;line-height:1.5;transition:transform var(--normal) var(--ease),background-color var(--normal) var(--ease),color var(--normal) var(--ease)}.button:hover{transform:translateY(-2px);background:var(--blue);border-color:var(--blue);color:var(--paper)}.button:active{transform:translateY(1px)}.button.secondary{color:var(--ink);background:transparent;border-color:var(--line-strong)}.button.secondary:hover{color:var(--paper);background:var(--ink);border-color:var(--ink)}.actions{display:flex;align-items:center;gap:var(--s6);flex-wrap:wrap}.tagline{font-weight:600;font-size:1rem}.small-label,.page-label{font-weight:600;color:var(--blue);margin-bottom:var(--s4);font-size:.875rem}.section-intro{max-width:760px;margin-bottom:var(--s12)}.section-intro p{max-width:65ch;color:var(--muted)}.photo{margin:0;min-width:0}.photo img{width:100%;object-fit:cover;aspect-ratio:3/2}.photo figcaption{margin-top:var(--s3);font-size:.75rem;color:var(--muted)}

.site-header{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--s8);min-height:var(--header)}.brand{display:block;flex:none}.brand img{width:168px;height:64px;object-fit:contain}.site-header nav{display:flex;align-items:center;gap:var(--s8)}.site-header nav a{color:var(--ink);font-weight:600;white-space:nowrap;text-decoration:none;min-height:44px;display:inline-flex;align-items:center;position:relative}.site-header nav a:not(.nav-contact)::after{content:'';position:absolute;left:0;right:0;bottom:4px;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform var(--normal) var(--ease)}.site-header nav a:hover::after,.site-header nav a[aria-current]::after{transform:scaleX(1)}.site-header nav a[aria-current]{color:var(--blue)}.nav-contact{background:var(--gold);padding:var(--s2) var(--s6);transition:transform var(--normal) var(--ease)}.nav-contact:hover{transform:translateY(-2px)}.nav-toggle{display:none;min-width:60px;min-height:44px;border:1px solid var(--line-strong);background:transparent;color:var(--ink)}

.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;align-items:stretch;padding-block:var(--s12) var(--s16)}.hero-copy{padding:var(--s12);background:var(--gold);display:flex;flex-direction:column;justify-content:center}.hero-image{min-width:0}.hero-image .photo,.hero-image img{height:100%;min-height:520px}.hero-image img{object-fit:cover;object-position:right center;aspect-ratio:auto}.hero .text-link{color:var(--ink)}.hero h1{font-size:clamp(2.75rem,3.8vw + .3rem,4rem);margin-bottom:var(--s8)}.hero .lede{font-size:1.125rem;max-width:41ch}.hero .actions{gap:var(--s4);align-items:flex-start}.hero .text-link{font-size:.875rem}.hero .tagline{margin-top:var(--s8);margin-bottom:0;color:var(--ink)}
.journey-workbench{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:var(--s12);align-items:start}.journey-stage{min-width:0;position:relative}.journey-reading{min-width:0;scroll-margin-top:112px}.journey-workbench .journey-panel{display:block;padding-top:var(--s6)}.journey-workbench .journey-panel>div:last-child{margin-top:var(--s6)}.journey-workbench .journey-tabs button{flex:1 1 30%;font-size:.875rem}.journey-viewport{position:relative;width:100%;aspect-ratio:1.4;overflow:hidden;perspective:1200px;touch-action:pan-y;cursor:grab;isolation:isolate}.journey-viewport:active{cursor:grabbing}.journey-world{width:580px;height:400px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(var(--scene-scale,.9));transform-style:preserve-3d}.journey-scene{width:100%;height:100%;position:relative;transform-style:preserve-3d;transform:rotateX(calc(38deg + var(--tilt,0deg))) rotateZ(calc(-12deg + var(--yaw,0deg)));transition:transform var(--slow) var(--ease)}.journey-scene.is-dragging{transition:none}.arrow-shape{position:absolute;inset:0;transform-style:preserve-3d}.model-defs{position:absolute;width:0;height:0;overflow:hidden}.journey-scene>div{transform-style:preserve-3d}.arrow-layer{--model-gold:var(--gold-side);--model-blue:var(--ink);position:absolute;inset:0;width:580px;height:400px;overflow:visible;fill:var(--gold-side);transform:translateZ(calc(var(--layer) * 2px))}.arrow-layer:nth-child(n+6){--model-gold:var(--gold-middle)}.arrow-layer:last-child{--model-gold:var(--gold);--model-blue:var(--blue)}.journey-marker{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%) translateZ(var(--z)) rotateX(-38deg) rotateZ(12deg);display:flex;flex-direction:column;gap:var(--s2);align-items:center;justify-content:center;width:88px;min-height:72px;color:var(--ink);background:var(--paper);padding:var(--s2);font-size:12px;font-weight:600;line-height:1.3;border-bottom:6px solid var(--line);transition:transform var(--slow) var(--ease),background-color var(--normal) var(--ease),color var(--normal) var(--ease)}.marker-num{display:block;font:700 1.5rem/1 var(--head)}.journey-marker.is-active{background:var(--blue);color:var(--paper);border-bottom-color:var(--ink);transform:translate(-50%,-50%) translateZ(calc(var(--z) + 24px)) rotateX(-38deg) rotateZ(12deg)}.scene-controls{margin-top:var(--s2);display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s3);align-items:center}.scene-steps,.scene-transport{display:flex;gap:var(--s1);align-items:center}.scene-controls button{min-width:44px;min-height:44px;border:1px solid var(--line);color:var(--ink);background:transparent;padding:var(--s2);font-size:.75rem;transition:transform var(--fast) var(--ease),background-color var(--normal) var(--ease),color var(--normal) var(--ease)}.scene-controls button:hover{background:var(--blue-soft);transform:translateY(-2px)}.scene-controls button:active{transform:translateY(1px)}.scene-steps button[aria-pressed=true]{background:var(--blue);color:var(--paper);border-color:var(--blue)}.scene-transport button[data-journey-reset]{min-width:auto}.scene-caption{border-top:1px solid var(--line);padding-top:var(--s6);margin-top:var(--s4);min-height:148px}.scene-caption strong{font-size:.875rem;color:var(--blue)}.scene-caption p{font-size:1.125rem;margin-block:var(--s2)}.scene-caption small{display:block;color:var(--muted);font-size:.75rem;line-height:1.7}.scene-help{font-size:.75rem;color:var(--muted);margin-top:var(--s2);margin-bottom:0}.scene-more{font-size:.75rem}.journey-stage.is-flat .journey-scene{transform:rotateZ(-4deg)}.journey-stage.is-flat .journey-marker{transform:translate(-50%,-50%)}.journey-stage.is-flat .arrow-layer:not(:last-child){display:none}

.video-section{background:var(--ink);color:var(--paper);padding-block:var(--section)}.video-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--s12);align-items:center}.video-section h2{font-size:clamp(1.75rem,2.4vw,2.5rem)}.video-section p{color:var(--on-dark)}.video-section video{width:100%;display:block;background:var(--ink);aspect-ratio:16/9;object-fit:contain}.video-section :focus-visible{outline-color:var(--gold)}.video-links{display:flex;flex-wrap:wrap;gap:var(--s4);margin-bottom:var(--s6)}.video-links a{display:flex;align-items:center;gap:var(--s2);font-size:.875rem;min-height:44px;color:var(--paper)}.video-links a:hover .icon{transform:translateX(4px)}.video-section details{font-size:.875rem;border-color:var(--line-strong)}.video-section summary{padding-block:var(--s3)}.transcript{max-height:320px;overflow:auto;padding:var(--s4) 0}.transcript p{font-size:.875rem}.fit-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s16);align-items:center;margin-bottom:var(--s12)}.fit-heading .photo img{max-height:320px}.fit-list{border-top:1px solid var(--line)}.fit-row{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:var(--s8);padding-block:var(--s8);border-bottom:1px solid var(--line);align-items:start}.fit-row h3,.fit-row p{margin:0}.fit-row small{font-size:.875rem;color:var(--muted)}.journey-section{background:var(--blue-soft)}.journey-tabs{display:flex;gap:var(--s2);flex-wrap:wrap;border-bottom:1px solid var(--line-strong);padding-bottom:var(--s4)}.journey-tabs button{padding:var(--s3) var(--s4);min-height:48px;background:transparent;color:var(--ink);border:1px solid transparent;font-weight:600;transition:transform var(--normal) var(--ease),background-color var(--normal) var(--ease)}.journey-tabs button:hover{transform:translateY(-2px);border-color:var(--line-strong)}.journey-tabs button[aria-pressed=true]{background:var(--blue);color:var(--paper)}.journey-panel{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--s16);padding-top:var(--s8);align-items:center}.journey-panel+.journey-panel{border-top:1px solid var(--line);margin-top:var(--s8)}.journey-panel h3{font-size:2rem}.journey-panel .step-count{font-variant-numeric:tabular-nums;color:var(--blue);font-weight:600;margin-bottom:var(--s3)}.journey-panel>div:last-child{padding:var(--s8);background:var(--paper)}.service-routes{display:grid;grid-template-columns:1.1fr 1fr;gap:0 var(--s12)}.route{display:grid;grid-template-columns:1fr auto;column-gap:var(--s4);padding:var(--s8) 0;border-top:1px solid var(--line);text-decoration:none;color:var(--ink)}.route h3,.route p{grid-column:1}.route h3{margin-bottom:var(--s3)}.route p{color:var(--muted);max-width:52ch}.route>.icon{grid-column:2;grid-row:1/3;align-self:center}.route:hover>.icon{transform:translate(4px,-4px)}.route-lead{grid-row:span 3;background:var(--gold);padding:var(--s12);display:flex;flex-direction:column;border:0}.route-lead>span{font-size:.875rem;font-weight:600;margin-bottom:var(--s8)}.route-lead h3{font-size:clamp(2.75rem,4vw,3.75rem)}.route-lead p{color:var(--ink);margin-top:auto}.route-lead>.icon{align-self:flex-end;margin-top:var(--s8);width:40px;height:40px}.brand-section{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--s12);align-items:center;padding-bottom:var(--section)}.brand-section p{color:var(--muted)}.faq-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:var(--s16);border-top:1px solid var(--line)}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:600;padding:var(--s6) var(--s8) var(--s6) 0;position:relative;list-style:none;min-height:56px}summary::-webkit-details-marker{display:none}summary::after{content:'+';position:absolute;right:4px;top:24px;font-size:1.5rem;line-height:1}details[open]>summary::after{content:'−'}details>p{color:var(--muted);padding-bottom:var(--s6);margin-bottom:0}summary:hover{text-decoration:underline;text-underline-offset:4px}.contact-band{background:var(--gold);padding-block:var(--section)}.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--s12)}.contact-inner h2{font-size:clamp(2.5rem,3.5vw,3.5rem)}.contact-inner .tagline{margin-bottom:var(--s6)}.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s6)}.contact-actions .text-link{color:var(--ink)}.site-footer{padding-top:var(--s16)}.footer-main{display:flex;justify-content:space-between;gap:var(--s12);padding-bottom:var(--s12)}.footer-main img{width:168px;height:64px;object-fit:contain;margin-bottom:var(--s6)}.footer-main p{font-size:.875rem;margin-bottom:var(--s3)}.footer-main>div:last-child{display:flex;flex-direction:column;align-items:flex-start}.footer-main>div:last-child>a{display:inline-flex;align-items:center;gap:var(--s2);min-height:44px}.footer-main .footer-phone{font-size:1.5rem;font-weight:600;color:var(--ink);text-decoration:none}

.page-head{padding-block:var(--section) var(--s12)}.page-head h1{max-width:18ch}.page-head .lede{max-width:66ch}.page-head .page-label{margin-bottom:var(--s6)}.service-jump{display:flex;gap:var(--s3);flex-wrap:wrap;padding-bottom:var(--s12)}.service-jump a{display:flex;align-items:center;padding:var(--s2) var(--s4);border:1px solid var(--line);min-height:44px;text-decoration:none;font-size:.875rem}.service-jump a:hover{background:var(--blue-soft);border-color:var(--blue)}.service-detail{display:grid;grid-template-columns:1fr 1.15fr;gap:var(--s16);padding-block:var(--s16);border-top:1px solid var(--line);scroll-margin-top:112px}.service-title h2{max-width:16ch}.service-title p:not(.small-label){color:var(--muted)}.service-title .button{margin-top:var(--s3)}.deliverables{margin:0}.deliverables>div{display:grid;grid-template-columns:140px 1fr;gap:var(--s6);padding-block:var(--s6);border-bottom:1px solid var(--line)}.deliverables>div:first-child{padding-top:0}.deliverables dt{font-weight:600}.deliverables dd{margin:0}.scope-note{font-size:.875rem;color:var(--muted);margin-top:var(--s6)}.scope-band{background:var(--blue-soft)}.scope-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:var(--s16)}.method-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:var(--s16);padding-bottom:var(--section);align-items:start}.method-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.method-list li{display:grid;grid-template-columns:56px 1fr;gap:var(--s6);padding-block:var(--s8);margin:0;border-bottom:1px solid var(--line)}.method-list h2{font-size:1.75rem}.method-list p{margin-bottom:var(--s4)}.method-list small{font-size:.875rem;color:var(--muted)}.method-number{font:700 2rem/1.2 var(--head);color:var(--blue);font-variant-numeric:tabular-nums}.method-layout aside{position:sticky;top:120px}.method-note{background:var(--gold);padding:var(--s8)}.method-note h3{font-size:1.5rem}.method-note p{font-size:.875rem}.method-note .text-link{font-size:.875rem;color:var(--ink)}.responsibility{background:var(--blue-soft)}.responsibility-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s16)}.responsibility h2{font-size:2rem}.responsibility ul{margin-bottom:0}.ai-flow{display:flex;align-items:start;gap:var(--s4);border-top:1px solid var(--line);padding-top:var(--s8)}.ai-flow>div{flex:1;min-width:0}.ai-flow h3{font-size:1.25rem}.ai-flow p{font-size:.875rem;color:var(--muted)}.ai-flow>span{color:var(--blue);font-size:1.5rem;margin-top:var(--s2)}.results-intro{display:grid;grid-template-columns:1fr 1fr;gap:var(--s12);align-items:center}.evidence-note{padding:var(--s8);background:var(--gold-soft)}.evidence-note h2{font-size:1.75rem;max-width:24ch}.evidence-note p{font-size:.875rem}.results-intro .photo img{max-height:320px}.table-scroll{overflow:auto;border-block:1px solid var(--line-strong)}table{border-collapse:collapse;width:100%;text-align:left;min-width:640px;font-size:.875rem}th,td{padding:var(--s6);vertical-align:top;border-bottom:1px solid var(--line)}thead th{background:var(--blue-soft);font-weight:600}tbody th{font-weight:600;min-width:180px}tbody tr:last-child th,tbody tr:last-child td{border-bottom:0}.download-row{display:flex;align-items:center;gap:var(--s6);margin-top:var(--s8)}.download-row p{font-size:.875rem;color:var(--muted);margin:0}.scenario-section{background:var(--blue-soft)}.scenario-list{border-top:1px solid var(--line-strong)}.scenario{display:grid;grid-template-columns:.8fr 1fr 1.4fr;gap:var(--s8);padding-block:var(--s8);border-bottom:1px solid var(--line-strong)}.scenario h3{font-size:1.5rem}.scenario-problem{font-size:1.125rem}.scenario dl{margin:0;font-size:.875rem}.scenario dt{font-weight:600;margin-bottom:var(--s2)}.scenario dd{margin:0 0 var(--s4)}.case-check{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--s16)}.case-check ol{margin:0;padding-left:var(--s6)}.case-check li{padding-left:var(--s4);padding-bottom:var(--s6)}.case-check li::marker{color:var(--blue);font-weight:600}.case-check strong,.case-check span{display:block}.case-check span{color:var(--muted);font-size:.875rem;margin-top:var(--s2)}.about-statement{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--s12);align-items:center}.about-statement .tagline{color:var(--blue)}.about-statement p:not(.tagline){color:var(--muted)}.principles{display:grid;grid-template-columns:.75fr 1.25fr;gap:var(--s16)}.principle-list article{padding-block:var(--s8);border-top:1px solid var(--line)}.principle-list article:first-child{padding-top:0;border-top:0}.principle-list p{color:var(--muted)}.contact-person{background:var(--gold)}.contact-person-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--s16)}.person-details{display:flex;flex-direction:column;gap:var(--s4);align-items:flex-start}.person-details p{margin:0}.big-phone{font-family:var(--head);font-size:clamp(2rem,3vw,3rem);line-height:1.2;letter-spacing:-.02em;color:var(--ink);text-decoration:none}.person-details .text-link{color:var(--ink)}.brief-layout{display:grid;grid-template-columns:1.4fr .6fr;gap:var(--s12);padding-bottom:var(--section);align-items:start}.privacy-note{background:var(--blue-soft);padding:var(--s6);font-size:.875rem;margin-bottom:var(--s8)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s6)}.field-wide{grid-column:1/-1}.field{min-width:0}.field label{display:block;font-weight:600;margin-bottom:var(--s2);font-size:.875rem}.field input,.field textarea,.field select{width:100%;max-width:100%;min-height:52px;background:var(--white);border:1px solid var(--line-strong);padding:var(--s3);color:var(--ink);font-size:1rem;line-height:1.6}.field textarea{resize:vertical}.field input:hover,.field textarea:hover,.field select:hover{border-color:var(--ink)}.field [aria-invalid=true]{border:2px solid var(--error)}.field-help{color:var(--muted);font-size:.75rem;margin-block:var(--s2) 0}.field-error{color:var(--error);font-size:.875rem;margin-block:var(--s2) 0}.field-error:empty{display:none}.form-actions{margin-top:var(--s8);gap:var(--s3)}#form-status{font-size:.875rem;margin-top:var(--s6)}.brief-aside{background:var(--gold);padding:var(--s8);position:sticky;top:120px}.brief-aside h2{font-size:1.75rem}.brief-aside ol{font-size:.875rem;margin-bottom:var(--s8)}.brief-aside>.button{width:100%;padding-inline:var(--s3);font-size:.875rem}.brief-aside .text-link{color:var(--ink);font-size:.875rem;margin-top:var(--s4)}.brief-aside>p{font-size:.75rem;margin-top:var(--s6)}

@media(min-width:1440px){.hero h1{font-size:4rem}}
@media(max-width:1100px){.site-header nav{gap:var(--s6)}.header-inner{gap:var(--s6)}.brand img{width:144px}.hero-copy{padding:var(--s8)}.hero h1{font-size:3rem}.hero .actions{align-items:flex-start;flex-direction:column}.scene-controls{justify-content:center}.scene-caption{min-height:168px}.service-detail,.method-layout,.scope-grid,.case-check,.responsibility-grid,.principles{gap:var(--s12)}.deliverables>div{grid-template-columns:1fr;gap:var(--s2)}.brief-layout{grid-template-columns:1.3fr .7fr;gap:var(--s8)}.brief-aside{padding:var(--s6)}}
@media(max-width:900px){:root{--header:80px}.hero{grid-template-columns:1fr;min-height:0;padding-top:var(--s12)}.hero-copy{max-width:none;padding:var(--s12)}.hero-image .photo,.hero-image img{min-height:0;height:auto;aspect-ratio:3/2}.journey-workbench{grid-template-columns:1fr;gap:var(--s12)}.hero h1{font-size:clamp(2.75rem,6vw,4.5rem)}.hero .lede{max-width:55ch}.hero .actions{flex-direction:row;align-items:center}.journey-stage{max-width:640px;width:100%;margin-inline:auto}.journey-viewport{aspect-ratio:1.5}.scene-caption{min-height:132px}.scene-controls{justify-content:space-between}.video-layout{grid-template-columns:1fr}.video-layout>div:first-child{max-width:660px}.fit-heading,.brand-section,.about-statement{gap:var(--s8)}.fit-row{grid-template-columns:1fr 1.5fr;gap:var(--s4) var(--s8)}.fit-row small{grid-column:2}.journey-panel{gap:var(--s8)}.journey-panel h3{font-size:1.75rem}.service-routes{gap:0 var(--s8)}.route-lead{padding:var(--s8)}.route-lead h3{font-size:3rem}.method-layout{grid-template-columns:1fr}.method-layout aside{position:static;display:grid;grid-template-columns:1fr 1fr}.method-layout aside .photo img{height:100%}.scenario{grid-template-columns:1fr 1.5fr;gap:var(--s4) var(--s8)}.scenario h3{grid-column:1}.scenario dl{grid-column:2;grid-row:1/3}.scenario-problem{font-size:1rem}.brief-layout{grid-template-columns:1fr}.brief-aside{position:static;max-width:none;padding:var(--s8)}.brief-aside .button{width:auto}.contact-person-inner{gap:var(--s8)}.ai-flow{flex-wrap:wrap;gap:var(--s6)}.ai-flow>div{flex:1 1 40%}.ai-flow>span:nth-of-type(2){display:none}}
@media(max-width:800px){.header-inner{position:relative;flex-wrap:wrap;gap:0}.nav-toggle:not([hidden]){display:block}.site-header nav{width:100%;flex-wrap:wrap;padding-block:var(--s4);gap:var(--s2) var(--s6)}.site-header.is-enhanced nav{display:none;padding:var(--s4) 0 var(--s6);border-top:1px solid var(--line);flex-direction:column;align-items:stretch;gap:var(--s1)}.site-header.is-enhanced nav.open{display:flex}.site-header nav a{padding-inline:var(--s3);min-height:48px}.site-header nav a:not(.nav-contact)::after{left:12px;right:12px}.site-header nav a.nav-contact{width:fit-content;padding-inline:var(--s6)}.site-header nav a[aria-current]{background:var(--blue-soft)}.site-header nav a.nav-contact[aria-current]{background:var(--gold)}.faq-section{grid-template-columns:1fr;gap:var(--s8)}.service-detail{grid-template-columns:1fr;gap:var(--s8);padding-block:var(--s12)}.service-title h2{max-width:24ch}.deliverables>div{grid-template-columns:140px 1fr;gap:var(--s6)}.scope-grid{grid-template-columns:1fr;gap:var(--s6)}.results-intro{gap:var(--s6)}.evidence-note{padding:var(--s6)}.case-check{grid-template-columns:1fr;gap:var(--s8)}.principles{grid-template-columns:1fr;gap:var(--s8)}}
@media(max-width:600px){:root{--gutter:24px;--section:64px}.hero{padding-block:var(--s8) var(--s12);gap:0}.hero-copy{padding:var(--s8) var(--s6)}.hero h1{font-size:clamp(2.5rem,8.5vw,3.25rem);letter-spacing:-.035em}.hero .lede{font-size:1rem}.hero .actions{gap:var(--s3)}.hero .tagline{margin-top:var(--s6)}.journey-viewport{aspect-ratio:1.25}.scene-controls{justify-content:center}.scene-controls button{padding:var(--s2);min-width:44px}.scene-caption{min-height:160px}.scene-caption p{font-size:1rem}.scene-help{margin-top:var(--s4)}.fit-heading,.brand-section,.about-statement{grid-template-columns:1fr;gap:var(--s8)}.fit-heading{margin-bottom:var(--s8)}.fit-row{grid-template-columns:1fr;gap:var(--s3)}.fit-row small{grid-column:auto}.fit-row h3{font-size:1.5rem}.journey-panel{grid-template-columns:1fr;gap:var(--s6)}.journey-panel>div:last-child{padding:var(--s6)}.journey-tabs{gap:var(--s1)}.journey-tabs button{flex:1 1 30%;font-size:.875rem;padding:var(--s3) var(--s2)}.service-routes{grid-template-columns:1fr}.route-lead{grid-row:auto;margin-bottom:var(--s8)}.route-lead h3{font-size:3rem}.route-lead .icon{margin-top:var(--s4)}.route-lead>span{margin-bottom:var(--s6)}.route-lead p{margin-top:var(--s6)}.contact-inner{display:block}.contact-inner h2{font-size:2.5rem}.contact-actions{margin-top:var(--s8)}.footer-main{flex-direction:column;gap:var(--s8)}.page-head{padding-block:var(--s12) var(--s8)}.page-head h1{font-size:clamp(2.5rem,8.5vw,3.25rem)}.page-head .lede{font-size:1rem}.service-jump{padding-bottom:var(--s8);gap:var(--s2)}.service-jump a{font-size:.75rem;padding-inline:var(--s3)}.deliverables>div{grid-template-columns:1fr;gap:var(--s2)}.method-list li{grid-template-columns:40px 1fr;gap:var(--s4)}.method-list h2{font-size:1.5rem}.method-number{font-size:1.75rem}.method-layout aside{grid-template-columns:1fr}.responsibility-grid{grid-template-columns:1fr;gap:var(--s12)}.responsibility h2{font-size:1.75rem}.ai-flow{display:grid;grid-template-columns:1fr;gap:var(--s4)}.ai-flow>span{transform:rotate(90deg);justify-self:start;margin:0}.ai-flow>span:nth-of-type(2){display:block}.results-intro{grid-template-columns:1fr;gap:var(--s8)}.download-row{flex-direction:column;align-items:flex-start}.scenario{grid-template-columns:1fr;gap:var(--s3)}.scenario h3{margin-bottom:0}.scenario dl{grid-column:auto;grid-row:auto}.scenario-problem{margin-bottom:var(--s3)}.scenario dd:last-child{margin-bottom:0}.contact-person-inner{grid-template-columns:1fr;gap:var(--s8)}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.form-actions{display:grid;grid-template-columns:1fr 1fr}.form-actions .button:first-child{grid-column:1/-1}.form-actions .button{padding-inline:var(--s3);font-size:.875rem}.table-scroll table{min-width:600px}.video-layout{gap:var(--s8)}.video-section h2{font-size:2rem}.transcript{max-height:240px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.journey-scene{transition:none}.button:hover,.nav-contact:hover,.scene-controls button:hover,.journey-tabs button:hover{transform:none}}
@media print{html,body{background:var(--white);color:var(--ink);font-size:10pt}.site-header,.site-footer,.skip,.contact-band,.scene-controls,.journey-viewport,.scene-help,.scene-more,.video-section video,.video-links,.actions,.brief-aside,.service-jump{display:none!important}.wrap{max-width:none;padding-inline:0}.section,.page-head{padding-block:24px}.hero,.video-layout,.fit-heading,.fit-row,.brand-section,.journey-panel,.service-detail,.scope-grid,.method-layout,.responsibility-grid,.results-intro,.scenario,.case-check,.about-statement,.principles,.contact-person-inner{display:block}.hero{min-height:0}.hero h1,.page-head h1{font-size:32pt}.journey-panel[hidden]{display:block!important}.scene-caption{min-height:0}.video-section,.contact-person,.responsibility,.journey-section,.scope-band,.scenario-section{background:transparent;color:var(--ink)}.video-section p{color:var(--ink)}.photo{max-width:420px;break-inside:avoid}.method-layout aside{position:static}.table-scroll{overflow:visible}table{min-width:0!important}h1,h2,h3{break-after:avoid}article,li,tr{break-inside:avoid}details>*{display:block!important}body.print-ready>main{display:none!important}body.print-ready #print-output{display:block!important;padding:24px}#print-output h1{font-size:24pt}#print-output dt{font-weight:600;margin-top:16px}#print-output dd{margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}#print-output dl{font-size:11pt}a{color:var(--ink)}}

/* Sprout-inspired website: GoFar colors and existing interaction contracts. */
:root {
  --night: oklch(18% .035 265);
  --canvas: oklch(99.5% .002 260);
  --stage: oklch(96% .018 260);
  --stage-blue: oklch(91% .04 260);
  --stage-gold: oklch(94% .05 80);
  --dark-line: oklch(39% .04 265);
  --gold-hover: oklch(87% .13 80);
  --radius: 6px;
  --radius-card: 20px;
  --radius-section: 48px;
  --ease-entrance: cubic-bezier(.16, 1, .3, 1);
  --header: 72px;
  --shell: 1280px;
  --section: clamp(80px, 7vw, 112px);
  --display: clamp(3rem, 6.2vw, 6rem);
  --heading: clamp(2rem, 3.5vw, 3.25rem);
  --shadow-nav: 0 4px 8px oklch(18% .035 265 / .12);
  --z-header: 20;
  --hero-overscan: 96px;
  --hero-parallax-travel: 80px;
  --hero-overlay-top: oklch(18% .035 265 / .78);
  --hero-overlay-center: oklch(18% .035 265 / .76);
  --hero-overlay-bottom: oklch(18% .035 265 / .24);
}
html { scroll-padding-top: 120px; }
body { background: var(--canvas); }
main { overflow: clip; }
h1 { font-size: var(--display); }
h2 { font-size: var(--heading); }
.button { border-radius: var(--radius); font-weight: 700; min-height: 52px; }
.button-gold { background: var(--gold); border-color: var(--gold); color: var(--ink); }
.button-gold:hover { background: var(--gold-hover); border-color: var(--gold-hover); color: var(--ink); }
.button:disabled { transform: none; }
.site-header {
  top: var(--s4);
  padding-inline: var(--gutter);
  margin-block: var(--s4);
  border: 0;
  background: transparent;
  z-index: var(--z-header);
}
.site-header .header-inner {
  max-width: var(--shell);
  padding-inline: var(--s6);
  background: var(--canvas);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-nav);
  border: 1px solid oklch(100% 0 0 / .55);
}
.brand img { width: 144px; height: 56px; }
.site-header nav { gap: var(--s8); }
.site-header nav a { font-weight: 400; font-size: .875rem; }
.site-header nav a.nav-contact {
  background: var(--ink);
  color: var(--paper);
  padding-inline: var(--s6);
  border-radius: var(--radius);
  font-weight: 700;
}
.site-header nav a.nav-contact:hover { background: var(--blue); }
.site-header nav a:active, .nav-toggle:active { transform: translateY(1px); }
.nav-toggle {
  width: 44px; min-width: 44px; height: 44px; padding: 0; flex: none;
  border-color: transparent; border-radius: 12px; background: var(--blue-soft);
  transition: background-color var(--normal) var(--ease);
}
.nav-toggle:hover { background: var(--line); }
.menu-icon { position: relative; width: 22px; height: 18px; }
.menu-icon span {
  position: absolute; top: 8px; left: 0; width: 22px; height: 2px;
  border-radius: 2px; background: currentColor;
  transition: transform var(--normal) var(--ease), opacity var(--fast) ease;
}
.menu-icon span:first-child { transform: translateY(-7px); }
.menu-icon span:last-child { transform: translateY(7px); }
.nav-toggle[aria-expanded=true] .menu-icon span:first-child { transform: rotate(45deg); }
.nav-toggle[aria-expanded=true] .menu-icon span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.nav-toggle[aria-expanded=true] .menu-icon span:last-child { transform: rotate(-45deg); }
.home-hero {
  margin-top: calc(-1 * (var(--header) + var(--s8)));
  padding-block: 176px var(--s24);
  min-height: clamp(48rem, 66.6667vw, 68rem);
  display: grid;
  align-items: center;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: var(--night);
  color: var(--paper);
  view-timeline-name: --hero-scroll;
  view-timeline-axis: block;
}
.home-hero > .wrap { position: relative; z-index: 1; padding-bottom: var(--s16); }
.hero-background { position: absolute; inset: calc(-1 * var(--hero-overscan)) 0; pointer-events: none; }
.hero-background img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hero-overlay { position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, var(--hero-overlay-top), var(--hero-overlay-center) 52%, var(--hero-overlay-bottom)); }
@keyframes hero-parallax {
  from { transform: translateY(0); }
  to { transform: translateY(var(--hero-parallax-travel)); }
}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) and (min-width: 801px) {
    .hero-background {
      animation: hero-parallax linear both;
      animation-timeline: --hero-scroll;
      animation-range: exit 0% exit 100%;
    }
  }
}
.home-hero-copy { text-align: center; max-width: 1100px; margin-inline: auto; }
.hero-label { display: inline-flex; align-items: center; gap: var(--s3); color: var(--on-dark); font-size: .875rem; margin-bottom: var(--s6); }
.hero-label::before { content: ''; width: 24px; height: 2px; background: var(--gold); }
.home-hero h1 { font-size: clamp(2.5rem, 5.6vw, 5.25rem); line-height: 1.12; margin-bottom: var(--s6); letter-spacing: -.035em; text-wrap: balance; }
.home-hero h1 span { color: var(--gold); }
.hero-description { color: var(--paper); font-size: 1.125rem; line-height: 1.7; margin-bottom: var(--s8); text-wrap: pretty; }
.home-hero .actions { justify-content: center; gap: var(--s8); }
.hero-video-link { display: inline-flex; gap: var(--s2); align-items: center; min-height: 48px; color: var(--paper); font-size: .875rem; text-decoration: underline; }
.hero-video-link:hover .icon { transform: scale(1.1); }
.hero-video-link:active { transform: translateY(1px); }
.home-hero :focus-visible { outline-color: var(--gold); }
.services-showcase { background: var(--canvas); border-radius: var(--radius-section) var(--radius-section) 0 0; margin-top: calc(-1 * var(--s4)); position: relative; }
.showcase-heading { max-width: 920px; margin-bottom: var(--s12); }
.showcase-heading h2 { max-width: 24ch; text-wrap: balance; }
.showcase-heading .section-label { font-family: var(--body); font-size: .875rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.service-playback { display: flex; justify-content: flex-end; margin-top: var(--s6); }
.slider-pause, .journey-pause { display: inline-flex; align-items: center; justify-content: center; width: 44px; min-width: 44px; height: 44px; padding: 0; border: 1px solid var(--line); border-radius: var(--radius); background: transparent; color: var(--muted); cursor: pointer; }
.playback-icon .play-symbol { display: none; }
[aria-pressed=false] > .playback-icon .pause-symbol { display: none; }
[aria-pressed=false] > .playback-icon .play-symbol { display: inline; }
.slider-pause:hover { color: var(--ink); border-color: var(--line-strong); }
.journey-pause { margin-top: var(--s3); color: var(--on-dark); }
.journey-pause:hover { background: #263959; color: var(--paper); }
.showcase-heading p { max-width: 60ch; color: var(--muted); font-size: 1.125rem; }
.service-tabs { display: flex; align-items: stretch; border-bottom: 1px solid var(--line); margin-bottom: var(--s12); gap: var(--s8); }
.service-tabs button {
  flex: 1;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--s3);
  padding: var(--s4) 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--muted);
  text-align: left;
  min-height: 64px;
  font-size: 1rem;
  font-weight: 700;
  position: relative;
}
.service-tabs button::after { content: ''; position: absolute; inset-inline: 0; bottom: -1px; height: 3px; background: var(--blue); transform: scaleX(0); transform-origin: left; transition: transform var(--normal) var(--ease); }
.service-tabs button[aria-selected=true] { color: var(--ink); }
.service-tabs button[aria-selected=true]::after { transform: scaleX(1); }
.service-tabs button:hover .icon { transform: translateY(4px); }
.service-tabs button:active { transform: translateY(1px); }
.service-feature { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: var(--s16); }
.service-feature + .service-feature { margin-top: var(--s12); }
.service-explorer.is-enhanced .service-feature { margin-top: 0; }
.service-feature h3 { font-size: clamp(1.75rem, 2.4vw, 2.5rem); line-height: 1.15; }
.service-feature p { color: var(--muted); }
.service-feature-image { margin: 0; background: var(--stage); padding: 0; border-radius: var(--radius-card); overflow: hidden; border: 1px solid var(--line); }
.service-feature-image img { width: 100%; aspect-ratio: 1.25; object-fit: cover; }
.check-list { list-style: none; padding: 0; margin-bottom: var(--s8); }
.check-list li { display: flex; align-items: flex-start; gap: var(--s3); font-size: .875rem; }
.check-list svg { flex: none; width: 20px; height: 24px; stroke: var(--blue); stroke-width: 1.6; fill: none; }
.fit-heading { gap: var(--s16); }
.fit-row { border-color: var(--line); padding-block: var(--s8); transition: background-color var(--normal) var(--ease); }
.fit-row h3 { font-size: 1.5rem; }
.journey-section { background: var(--night); color: var(--paper); --line: #34435d; --muted: #bcc9df; --line-strong: #6c7e9b; }
.journey-section .section-intro { max-width: 760px; margin-bottom: var(--s12); }
.journey-section .section-intro p { color: var(--muted); }
.journey-stage { background: #10203c; border: 1px solid var(--line); border-radius: var(--radius-card); padding: var(--s6); box-shadow: 0 24px 64px #0002; }
.journey-viewport { border-radius: 12px; background: radial-gradient(ellipse at 50% 40%, #293c5b, #0c1930 78%); }
.journey-viewport:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }
.journey-canvas { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.journey-stage.is-webgl .journey-world { visibility: hidden; }
.journey-stage .scene-caption strong { color: var(--gold); font-weight: 600; letter-spacing: .02em; }
.journey-stage .scene-caption small { color: var(--muted); }
.journey-stage.is-webgl .scene-caption { min-height: 0; margin-top: var(--s6); padding-block: var(--s4) 0; }
.journey-stage.is-webgl .scene-caption p, .journey-stage.is-webgl .scene-caption small { display: none; }
.journey-stage .scene-controls button { color: var(--paper); border-radius: 6px; }
.journey-stage .scene-controls button:hover { background: #263959; }
.journey-stage .scene-steps button[aria-pressed=true] { color: var(--ink); background: var(--gold); border-color: var(--gold); }
.journey-stage .scene-more { color: var(--paper); min-height: 44px; display: inline-flex; align-items: center; }
.journey-section .journey-tabs { gap: var(--s2); border: 0; }
.journey-section .journey-tabs button { flex: 1 1 30%; border: 1px solid var(--line); color: var(--paper); border-radius: 6px; min-height: 52px; }
.journey-section .journey-tabs button:hover { border-color: var(--line-strong); transform: none; background: #172944; }
.journey-section .journey-tabs button[aria-pressed=true] { background: var(--gold); border-color: var(--gold); color: var(--ink); }
.journey-section .journey-panel { padding-top: var(--s8); }
.journey-section .journey-panel h3 { font-size: clamp(1.75rem, 2.4vw, 2.5rem); line-height: 1.2; text-wrap: balance; }
.journey-section .journey-panel > p { color: var(--muted); max-width: 48ch; }
.journey-section .journey-panel .step-count { color: var(--gold); }
.journey-section .journey-panel > div:last-child { padding: var(--s6); background: #172944; border-left: 2px solid var(--gold); border-radius: 0 8px 8px 0; }
.journey-section .journey-panel > div:last-child p:last-child { margin-bottom: 0; color: var(--muted); }
.journey-section .small-label { color: var(--gold); }
.journey-section :focus-visible { outline-color: var(--gold); }
.journey-reading h2 { font-size: var(--heading); }
.journey-tabs button { border-radius: var(--radius); }
.journey-panel { background: transparent; }
.scene-controls { gap: var(--s3); }
.scene-steps { flex-wrap: wrap; gap: var(--s2); }
.scene-caption { min-height: 172px; }
.handoff-section { display: grid; grid-template-columns: 1.15fr .85fr; gap: var(--s16); align-items: center; }
.handoff-image { margin: 0; border-radius: var(--radius-card); overflow: hidden; background: var(--stage); }
.handoff-image img { width: 100%; aspect-ratio: 1.1; object-fit: cover; }
.handoff-copy p { color: var(--muted); }
.video-section { background: var(--stage); color: var(--ink); padding-block: var(--s12); }
.video-section video { display: block; width: 100%; aspect-ratio: 16 / 9; border-radius: var(--radius-card); background: var(--night); box-shadow: 0 24px 60px #11254b18; }
.video-section [data-video-status] { margin-top: var(--s4); color: var(--muted); }
.faq-section { gap: var(--s16); }
.faq-section summary { min-height: 80px; padding-block: var(--s6); font-weight: 600; font-size: 1.125rem; }
.faq-section details p { color: var(--muted); }
.faq-section details[open] summary { color: var(--blue); }
summary:hover { text-decoration: underline; text-underline-offset: .25em; }
summary:active { transform: translateY(1px); }
.site-footer { background: var(--canvas); padding-top: var(--s16); border-top: 1px solid var(--line); }
.footer-main { align-items: center; gap: var(--s16); padding-bottom: var(--s12); }
.footer-contact { gap: var(--s4); }
.footer-contact-links { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s6); }
.footer-contact-links a { display: inline-flex; align-items: center; gap: var(--s2); min-height: 44px; color: var(--ink); }
.photo img { border-radius: var(--radius-card); }
.page-head { padding-block: var(--s24) var(--s12); }
.page-head h1 { max-width: 22ch; text-wrap: balance; }
.page-label { font-weight: 400; }
.page-head .lede { color: var(--muted); font-size: 1.125rem; }
.service-jump a { border-radius: var(--radius); min-height: 44px; }
.service-detail { border-color: var(--line); }
.deliverables { border-radius: var(--radius-card); }
.method-note, .evidence-note, .brief-aside { border-radius: var(--radius-card); background: var(--stage); }
.scope-band, .responsibility, .scenario-section { background: var(--stage); }
.privacy-note { border-radius: var(--radius); background: var(--stage); }
.contact-person { background: var(--stage); }
.field input, .field textarea, .field select { border-radius: var(--radius); }
.service-jump a:active, .text-link:active { transform: translateY(1px); }

@media (max-width: 1100px) {
  .site-header nav { gap: var(--s6); }
  .service-feature, .handoff-section { gap: var(--s8); }
  .service-tabs { gap: var(--s4); }
  .service-tabs button { font-size: .875rem; }
  .journey-workbench { gap: var(--s8); }
  .journey-stage { padding: var(--s4); }
  .scene-controls { justify-content: center; }
}
@media (max-width: 900px) {
  .home-hero { padding-top: 160px; }
  .service-feature { gap: var(--s8); grid-template-columns: 1fr 1fr; }
  .service-feature-image { padding: 0; }
  .service-feature h3 { font-size: 1.75rem; }
  .journey-stage { max-width: 640px; padding: var(--s6); }
  .scene-caption { min-height: 132px; }
}
@media (max-width: 800px) {
  :root { --gutter: 24px; --section: 64px; --radius-section: 32px; }
  .site-header { top: var(--s3); }
  .site-header .header-inner { padding-inline: var(--s4); }
  .nav-toggle:not([hidden]) { display: grid; place-items: center; }
  .site-header.is-enhanced nav {
    display: flex; position: absolute; top: calc(100% + var(--s2)); left: 0; right: 0;
    padding: var(--s3); border: 1px solid var(--line); border-radius: 24px;
    background: var(--canvas); box-shadow: var(--shadow-nav);
    max-height: calc(100dvh - 136px); overflow-y: auto;
    opacity: 0; visibility: hidden; pointer-events: none;
    transform: translateY(-8px) scale(.98); transform-origin: top center;
    transition: opacity 200ms ease, transform 280ms var(--ease), visibility 0s 280ms;
  }
  .site-header.is-enhanced nav.open {
    opacity: 1; visibility: visible; pointer-events: auto; transform: none;
    transition-delay: 0s;
  }
  .site-header nav a[aria-current] { border-radius: var(--radius); }
  .site-header nav a.nav-contact[aria-current] { background: var(--ink); color: var(--paper); }
  .service-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 0 var(--s6); }
  .service-tabs button { min-height: 56px; }
  .service-feature { grid-template-columns: 1fr; }
  .service-feature-image img { aspect-ratio: 1.6; }
  .handoff-section { grid-template-columns: 1fr; gap: var(--s8); }
  .handoff-image img { aspect-ratio: 1.5; }
  .handoff-copy { max-width: 620px; }
  .faq-section { gap: var(--s8); }
  .footer-main { align-items: flex-start; gap: var(--s8); }
  .page-head { padding-top: var(--s16); }
}
@media (max-width: 600px) {
  .home-hero { padding-top: 144px; padding-bottom: var(--s12); min-height: 48rem; }
  .home-hero > .wrap { padding-bottom: var(--s8); }
  .hero-background img { object-position: 60% center; }
  .home-hero h1 { font-size: clamp(2rem, 8.5vw, 3rem); line-height: 1.2; }
  .hero-label { font-size: .75rem; margin-bottom: var(--s6); }
  .hero-description { font-size: 1rem; }
  .desktop-break { display: none; }
  .home-hero .actions { gap: var(--s4); flex-direction: column; }
  .showcase-heading { margin-bottom: var(--s8); }
  .showcase-heading h2 { font-size: 2rem; }
  .service-tabs { gap: 0 var(--s4); }
  .service-tabs button { font-size: .8125rem; gap: var(--s2); }
  .page-index .service-tabs { grid-template-columns: 1fr 1fr; gap: var(--s4); }
  .service-tabs .icon { width: 16px; }
  .service-feature-image { padding: 0; }
  .service-feature-image img { aspect-ratio: 1.25; }
  .service-feature h3 { font-size: 1.75rem; }
  .journey-stage { padding: var(--s3); }
  .journey-section .journey-tabs button { padding-inline: var(--s2); font-size: .8125rem; }
  .journey-viewport { aspect-ratio: 1.1; }
  .scene-transport { flex-wrap: wrap; justify-content: center; }
  .scene-steps { gap: var(--s1); }
  .scene-caption { min-height: 172px; }
  .faq-section summary { font-size: 1rem; }
  .page-head h1 { font-size: 2.75rem; }
  .site-footer { padding-top: var(--s12); }
}
@media (prefers-reduced-motion: reduce) {
  .hero-background { animation: none; transform: none; }
  .service-tabs button:hover .icon, .hero-video-link:hover .icon { transform: none; }
}
@media print {
  .journey-section { --line: #D8E0ED; --muted: #4F5E77; }
  .journey-section .journey-panel > div:last-child { background: transparent; border: 0; }
  .journey-section .journey-panel .step-count { color: var(--ink); }
  .home-hero { margin: 0; padding-block: var(--s8); min-height: 0; background: transparent; color: var(--ink); }
  .home-hero h1, .home-hero h1 span { color: var(--ink); font-size: 32pt; }
  .hero-label, .hero-description { color: var(--ink); }
  .hero-background, .hero-overlay, .video-section { display: none; }
  .service-tabs { display: none; }
  .service-feature[hidden] { display: grid !important; margin-top: var(--s8); }
  .service-feature, .handoff-section { display: block; }
  .service-feature-image { max-width: 320px; }
  .handoff-image { max-width: 320px; }
  .services-showcase { margin: 0; padding-top: var(--s8); }
}
.hero-description { max-width: 60ch; margin-inline: auto; }
