/* Narrative layer: readable HTML first, optional motion second. */
@view-transition{navigation:auto}
:root{--journey-ink:#294b3a;--journey-paper:#fbfaf7;--journey-line:#dce2d5}
html:root body.immersive-home>header{position:fixed;inset:0 0 auto;z-index:50;color:#fff;background:transparent;border-bottom:1px solid #ffffff25;transition:background .25s,color .25s}
html.is-scrolled:root body.immersive-home>header,html:root body.immersive-home>header.menu-open{background:#fbfaf7f5;color:#294b3a;border-bottom:1px solid #dce2d5;backdrop-filter:blur(12px)}
html:root .immersive-home .hero.phase-one-hero{width:100%;max-width:none;min-height:660px;height:94svh;max-height:900px;margin:0;border-radius:0;background:#294b3a;isolation:isolate}
html:root .immersive-home .phase-one-hero .hero-copy{height:100%;max-width:none;padding:130px max(32px,calc((100vw - 1200px)/2)) 140px;box-sizing:border-box;width:100%;justify-content:center;position:relative;z-index:3}
html:root .immersive-home .phase-one-hero .hero-copy>*{animation:none}
html:root .immersive-home .phase-one-hero .hero-title{font-size:clamp(36px,3.8vw,48px)!important;margin-bottom:24px;line-height:1.13!important}
html:root .immersive-home .phase-one-hero .hero-copy>p{font-size:16px!important;max-width:420px;color:#f2f5e8;margin:0 0 28px}
html:root .immersive-home .phase-one-hero .hero-service-title{max-width:500px;font-size:20px!important;margin:0 0 14px;color:#fff}
html:root .immersive-home .phase-one-hero .eyebrow{color:#e0edc4;font-size:11px!important;letter-spacing:.1em!important;max-width:420px;margin-bottom:24px}
html:root .immersive-home .phase-one-hero .hero-shade{z-index:2;background:linear-gradient(90deg,#122b25c9,#122b2575 47%,#122b2515),linear-gradient(0deg,#122b2580,transparent 40%);pointer-events:none}
html:root .immersive-home .phase-one-hero .mission-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;z-index:0;animation:none;transition:opacity 1.2s ease;will-change:opacity}
html:root .immersive-home .phase-one-hero .mission-frame.is-active{opacity:1;z-index:1}
html:root .immersive-home .phase-one-hero.sequence-playing .mission-frame.is-active{animation:mission-drift 12s linear both}
@keyframes mission-drift{from{transform:scale(1)}to{transform:scale(1.045)}}
html:root .immersive-home .hero-actions{flex-wrap:wrap;gap:20px}
html:root .immersive-home .hero-secondary{color:#fff;text-decoration:underline;text-underline-offset:5px;font-size:14px;min-height:44px;display:inline-flex;align-items:center}
.mission-controls{position:absolute;z-index:4;bottom:27px;left:max(32px,calc((100vw - 1200px)/2));right:max(32px,calc((100vw - 1200px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px}
.mission-scenes{display:flex;gap:24px;max-width:800px;flex:1}
html:root .mission-scenes button,html:root .mission-play{color:#fff;border:0;border-top:1px solid #ffffff50;background:transparent;border-radius:0;min-height:48px;padding:13px 0 0;text-align:left;line-height:1.4;font-size:13px!important}
html:root .mission-scenes button{flex:1;opacity:.65;transition:opacity .3s,border-color .3s}
html:root .mission-scenes button[aria-pressed=true]{opacity:1;border-color:#d9f29c}
.mission-scenes button span{margin-right:8px;font-size:11px;color:#d9f29c}
html:root .mission-play{font-size:12px!important;white-space:nowrap;flex:none;min-width:110px;text-align:right}
html:root .immersive-home .trust-strip{font-size:13px;padding:25px 28px;max-width:none;background:#edf1e7;border:0;gap:40px;color:#294b3a}
.mission-journey{padding:90px max(32px,calc((100vw - 1200px)/2)) 40px;background:#fbfaf7}
.journey-heading{max-width:680px;margin-bottom:55px}
.journey-heading h2{margin:18px 0}
.journey-heading p{color:#64715f;margin:0}
.journey-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:70px;align-items:start}
.journey-rail{position:sticky;top:120px;padding-top:12px}
.journey-rail>.eyebrow{display:block;max-width:180px;color:#6b7e60;line-height:1.7}
.journey-rail nav{display:flex;flex-direction:column;gap:0;padding:18px 0 20px}
.journey-rail nav a{display:flex;align-items:center;gap:15px;font-size:14px;position:relative;padding:18px 0;color:#75836d;min-height:58px}
.journey-rail nav a span{display:grid;place-items:center;width:28px;height:28px;border:1px solid #ccd8bf;border-radius:50%;font-size:11px;background:#fbfaf7;z-index:1;flex:none;transition:background .3s,color .3s}
.journey-rail nav a:not(:last-child):after{content:'';position:absolute;left:13px;top:40px;bottom:-19px;width:1px;background:#d6dfcd}
.journey-rail nav a[aria-current=step]{color:#294b3a}
.journey-rail nav a[aria-current=step] span{background:#294b3a;color:#d9f29c;border-color:#294b3a}
html:root .journey-rail p{font-size:12px!important;color:#7c8776;max-width:190px}
.journey-chapter{margin:0 0 70px;scroll-margin-top:110px}
.journey-chapter figure{margin:0;position:relative;overflow:hidden;border-radius:8px}
.journey-chapter img{width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;display:block}
.journey-chapter figcaption{display:flex;justify-content:space-between;position:absolute;bottom:0;left:0;right:0;padding:42px 24px 18px;background:linear-gradient(transparent,#102b25a8);color:#fff;font-size:13px;letter-spacing:.02em}
.journey-chapter figcaption span{font-size:11px}
.journey-copy{padding:28px 0 0;max-width:590px}
.journey-copy>.eyebrow{color:#687c59;display:block;margin:0 0 12px}
html:root .journey-copy h3{font-size:26px!important;margin:0 0 13px}
.journey-copy p{color:#657260;margin:0 0 18px}
.journey-copy>a{display:inline-flex;min-height:44px;align-items:center;text-decoration:underline;text-underline-offset:5px;font-size:14px}
.mission-invite{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;padding:60px max(32px,calc((100vw - 1200px)/2));background:#294b3a;color:#fbfaf7;align-items:center}
.mission-invite .eyebrow{color:#d9f29c}
.mission-invite h2{margin:15px 0 18px;color:#fbfaf7}
.mission-invite p{color:#dbe5d3;margin:0;max-width:540px}
.mission-invite>div:last-child{display:flex;align-items:flex-start;flex-direction:column;gap:18px}
html:root .mission-invite .mission-note{font-size:12px!important;max-width:350px;color:#dbe5d3}
.mission-invite>div:last-child>a:last-child{font-size:14px;text-decoration:underline;text-underline-offset:5px}
/* Full-page conversation, with a static email alternative. */
.conversation-page{background:#f4f6ee}
.conversation-page>header{background:#fbfaf7}
.conversation-page>main{max-width:860px;padding-top:40px}
.conversation-page .layout{display:block;margin-top:22px}
.conversation-page #side{display:none}
.conversation-page #intake{border:0;box-shadow:0 6px 40px #294b3a07;padding:30px 36px;border-radius:12px;min-height:400px}
.conversation-page #heading{font-size:32px!important;margin:14px 0}
.conversation-page #intro{margin-bottom:20px}
.conversation-page #language-label{margin:0 0 6px}
.conversation-page #language{padding:8px 12px;font-size:14px!important}
.conversation-page .bubble{font-size:20px;font-weight:400;line-height:1.5;background:transparent;margin:24px 0 18px;padding:0;border-radius:0;color:#294b3a}
.conversation-page #privacy{font-size:12px!important;line-height:1.6!important;margin-top:25px;color:#74816c}
.conversation-page .answer{font-size:14px;background:#ecf1e4;color:#506345;margin-left:0;padding:9px 14px;border-radius:6px}
.conversation-page #question{min-height:60px}
.conversation-page .progress{margin:22px 0}
.conversation-page #input-wrap input,.conversation-page #input-wrap select{border-color:#c5d3b8;min-height:50px}
.conversation-estimate{padding:14px 17px;background:#f1f5e9;border-left:2px solid #adc581;margin-top:20px}
.conversation-estimate strong{display:block;font-size:15px;font-weight:500}
.conversation-estimate small{display:block;font-size:12px;margin-top:5px;color:#687961}
.conversation-page .offer{margin-top:30px}
@media(max-width:1000px){.journey-layout{grid-template-columns:190px minmax(0,1fr);gap:32px}.mission-invite{gap:30px}}
@media(max-width:760px){html:root .immersive-home .hero.phase-one-hero{height:91svh;min-height:680px;max-height:850px}html:root .immersive-home .phase-one-hero .hero-copy{box-sizing:border-box;width:100%;max-width:100%;padding:115px 28px 175px}html:root .immersive-home .phase-one-hero .hero-title{font-size:36px!important}html:root .immersive-home .phase-one-hero .hero-shade{background:linear-gradient(90deg,#122b25bb,#122b2555),linear-gradient(0deg,#122b25bf,transparent 75%)}.mission-controls{left:28px;right:28px;bottom:24px;display:block}.mission-scenes{gap:14px}html:root .mission-scenes button{font-size:12px!important;padding-top:11px}.mission-scenes button span{display:block;margin-bottom:7px}html:root .mission-play{margin-top:10px;padding:0;min-height:36px;border:0;font-size:11px!important;text-align:left}html:root .immersive-home .trust-strip{gap:12px 22px;font-size:12px;flex-wrap:wrap;padding:22px 24px}.mission-journey{padding:58px 24px 10px}.journey-heading{margin-bottom:30px}.journey-layout{display:block}.journey-rail{position:static;padding:0;margin:0 0 30px}.journey-rail>.eyebrow,.journey-rail>p{display:none}.journey-rail nav{flex-direction:row;flex-wrap:wrap;gap:12px;padding:0}.journey-rail nav a{font-size:12px;padding:8px 0;gap:8px;min-height:44px}.journey-rail nav a:after{display:none}.journey-rail nav a span{width:24px;height:24px}.journey-chapter{margin-bottom:50px}.journey-chapter img{aspect-ratio:1.25}.journey-copy{padding-top:22px}html:root .journey-copy h3{font-size:23px!important}.mission-invite{grid-template-columns:1fr;padding:42px 24px;gap:26px}.conversation-page>main{padding:28px 18px}.conversation-page>header nav{gap:12px;font-size:12px}.conversation-page #intake{padding:24px 20px}.conversation-page #heading{font-size:28px!important}.conversation-page .bubble{font-size:18px}.conversation-page>header nav a[href='/team/']{display:none}}
@media(prefers-reduced-motion:reduce){html:root{scroll-behavior:auto!important}html:root .immersive-home .mission-frame{transition:none!important;animation:none!important}.mission-scenes button,.journey-rail nav a span{transition:none}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
@media print{.mission-controls,.journey-rail{display:none}.mission-journey{padding:20px}.journey-layout{display:block}.journey-chapter{break-inside:avoid}.conversation-page #intake{display:none!important}}
