/* Shared typography and scroll cues across the VAYFORM chapters. */
:root{--vf-surface:#0c100d;--vf-cream:#f1f2e8;--vf-acid:#d2ff36;--vf-display:'Roboto Condensed',Impact,Arial,sans-serif;--vf-body:'Manrope',Arial,sans-serif;--vf-gutter:clamp(20px,4vw,88px);--vf-headline:clamp(76px,8.5vw,160px);--vf-headline-line:.9;--vf-headline-spacing:-.035em;--vf-copy-size:14px;--vf-copy-line:1.55;--vf-copy-ink:#e1e7d9;--vf-scroll-bottom:max(16px,env(safe-area-inset-bottom));--vf-stage-height:max(540px,100svh);--vf-scroll-offset:max(0px,calc(var(--vf-stage-height) - 100svh))}
.hero,.task-section--immersive,.work.work--frame,.process.process--screen,.faq--chapter{font-family:var(--vf-body)}
.hero h1,#vayform-services .ef-intro,#vayform-services .ef-slogan,.work-frame-heading h2,.process--screen .section-heading h2,.faq--chapter .faq-title h2{font-family:var(--vf-display);font-weight:900;letter-spacing:var(--vf-headline-spacing);text-transform:uppercase}
.hero-portal,.hero{background:var(--vf-surface)}
.hero{height:var(--vf-stage-height);min-height:0;max-height:none}
.vf-viewport-measure{position:absolute;left:0;top:0;display:block;width:0;height:100svh;visibility:hidden;pointer-events:none;overflow:hidden}
html.is-auto-scrolling{scroll-behavior:auto!important}
.hero-image{object-position:70% 45%;animation:none;transform:scale(1.035)}
.hero::after{background:linear-gradient(90deg,rgba(12,16,13,.44),transparent 70%),linear-gradient(0deg,rgba(12,16,13,.85),transparent 34%,transparent 80%,rgba(12,16,13,.25))}
.hero-grain{opacity:.026}
.hero .hero-content{width:100%;max-width:none;margin:0;padding:150px max(var(--vf-gutter),calc((100% - 1440px)/2)) 116px;justify-content:center;align-items:flex-start}
.hero .hero-kicker{font-family:var(--vf-body);font-size:10px;line-height:1.5;font-weight:500;letter-spacing:.14em;margin:0 0 28px;color:#d2d8ca}
.hero .hero-kicker .dot{width:5px;height:5px;box-shadow:none;margin-right:12px}
.hero h1{font-family:var(--vf-display);font-size:var(--vf-headline);line-height:var(--vf-headline-line);letter-spacing:var(--vf-headline-spacing);font-weight:900;max-width:1140px;margin:0 0 28px;color:var(--vf-cream);text-shadow:0 3px 24px rgba(0,0,0,.55)}
.hero .hero-copy{font-family:var(--vf-body);font-size:var(--vf-copy-size);line-height:var(--vf-copy-line);font-weight:400;max-width:440px;margin:0;color:var(--vf-copy-ink)}
.vf-scroll-cue{position:absolute;left:50%;bottom:calc(var(--vf-scroll-bottom) + var(--vf-scroll-offset,0px));z-index:22;display:grid;place-items:center;width:44px;height:44px;padding:0;margin:0;border:0;background:none;color:var(--vf-cream);transform:translateX(-50%)}
.vf-scroll-arrow{display:block;width:14px;height:28px;object-fit:contain;transition:opacity .3s var(--ease)}
.vf-scroll-cue:is(:hover,:focus-visible) .vf-scroll-arrow{opacity:.75}
.hero .motion-control{left:max(var(--vf-gutter),calc((100% - 1440px)/2));right:auto;bottom:28px;min-height:44px;padding:0;background:none;border:0;font-family:var(--vf-body);font-size:10px;line-height:1.5;color:#b6c0ab}
.hero .motion-control .motion-icon{font-size:12px}
@media(max-width:700px){
  :root{--vf-gutter:20px;--vf-headline:clamp(50px,13.8vw,86px);--vf-copy-size:13px}
  .hero-image{object-position:70% 50%}
  .hero::after{background:linear-gradient(0deg,rgba(12,16,13,.9),rgba(12,16,13,.23) 38%,rgba(12,16,13,.13) 75%,rgba(12,16,13,.35)),linear-gradient(90deg,rgba(12,16,13,.68),rgba(12,16,13,.28) 60%,rgba(12,16,13,.06))}
  .hero .hero-content{padding-top:clamp(120px,20svh,184px);padding-bottom:100px;justify-content:flex-start}
  .hero .hero-kicker{font-size:10px;letter-spacing:.09em;margin-bottom:25px}
  .hero h1{margin-bottom:24px}
  .hero .hero-copy{max-width:330px}
  .hero .motion-control{bottom:25px;font-size:10px}
}
@media(max-width:360px){:root{--vf-gutter:16px;--vf-headline:46px}.hero .hero-kicker{font-size:9px;letter-spacing:.07em}}
@media(max-width:700px) and (max-height:650px){:root{--vf-headline:clamp(46px,12vw,64px)}.hero .hero-content{padding-top:116px}.hero h1{margin-bottom:20px}.hero .hero-copy{font-size:12px}}
@media(prefers-reduced-motion:reduce){.vf-scroll-arrow{transition:none;transform:none!important}}
.motion-paused .vf-scroll-arrow{transition:none;transform:none!important}

/* Keep the fixed header neutral above the green process chapter. */
.site-header.scrolled{background:var(--ink);backdrop-filter:none}
