html{scroll-padding-top:96px}.header{position:fixed;inset:0 0 auto;z-index:20;max-width:none;height:86px;background:rgba(244,241,234,.97);border-bottom:1px solid rgba(17,43,56,.08)}
.film{height:420svh;background:#081928;color:#f4f1ea;position:relative}.film-stage{height:100svh;position:sticky;top:0;overflow:hidden;background:#081928}.film video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}.film-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,12,24,.7),rgba(3,12,24,.14));opacity:var(--copy-opacity,1);pointer-events:none}.film-copy{position:absolute;top:26%;left:0;width:100%;max-width:none;opacity:var(--copy-opacity,1);transform:translateY(calc(var(--copy-shift,0) * -1px));pointer-events:none}.film-copy h1{margin-top:25px;max-width:1050px;font-size:clamp(3rem,6.5vw,6.6rem);line-height:1.04;letter-spacing:-.065em}.film-copy .pill{color:#112b38}.film-description{font-size:clamp(1rem,1.5vw,1.3rem);margin-top:25px;max-width:420px;line-height:1.6}.film-bottom{position:absolute;inset:auto 0 0;padding:35px var(--gutter) 28px;background:linear-gradient(transparent,rgba(4,15,28,.9))}.film-hint{display:flex;justify-content:space-between;font-size:.78rem;margin-bottom:25px;opacity:var(--copy-opacity,1)}.film-hint>span:last-child{font-size:1.5rem}.film-steps{display:flex;justify-content:space-between;gap:12px;text-transform:uppercase;letter-spacing:.08em;font-size:.65rem;font-weight:600;padding-bottom:12px}.film-steps span{opacity:.55}.film-steps span.active{opacity:1;color:#ceff00}.film-progress{height:3px;background:#ffffff40}.film-progress>span{display:block;height:100%;width:100%;background:#ceff00;transform-origin:left;transform:scaleX(var(--progress,0))}.film-skip{display:inline-block;margin-top:16px;font-size:.75rem;border-bottom:1px solid #ffffff60}.floating-contact{position:fixed;right:24px;bottom:20px;z-index:30;padding:14px 23px;background:var(--lime);color:var(--ink);border:1px solid var(--ink);border-radius:32px;font-weight:600;font-size:.85rem;box-shadow:0 5px 20px #0002}#video-status{position:absolute;top:98px;left:var(--gutter);font-size:.75rem;background:#112b38;padding:0 8px}.about{padding-top:90px}.about .section-number{color:var(--muted)}
@media(max-width:850px){.header{height:76px}.film-copy{top:20%}.film-copy h1{font-size:clamp(2.8rem,8vw,4.5rem)}.film-bottom{padding-bottom:22px}.film-steps{font-size:.55rem;letter-spacing:0}.film-skip{margin-top:12px}.floating-contact{right:16px;bottom:16px;padding:11px 18px}}
@media(max-width:600px){.film{height:330svh}.film video{object-fit:contain;object-position:center 68%}.film-copy{top:17%}.film-copy h1{font-size:clamp(2.2rem,9.5vw,3.6rem);max-width:95%;margin-top:18px}.film-copy .eyebrow{font-size:.6rem}.film-description{font-size:.88rem;max-width:260px;margin-top:15px}.film-shade{background:linear-gradient(#081928 25%,rgba(8,25,40,.15) 65%,#081928)}.film-steps{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.film-steps span:nth-child(even){text-align:right}.film-hint{margin-bottom:15px}.about{padding-top:55px}.floating-contact{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.film{height:100svh}.film-stage{position:relative}.film-copy{top:17%}.film-bottom{padding-bottom:60px}.film-steps,.film-progress,.film-hint{display:none}.film video{pointer-events:auto}}
/* Intro copy and process cards restored from the supplied references. */
.film{height:400svh}.film-copy{top:19%;pointer-events:auto}.film-copy .eyebrow{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.film-copy .pill{border-radius:0;padding:3px 5px}.film-locations{letter-spacing:.15em}.film-copy h1{margin-top:22px}.film-copy h1 .italic{font-weight:400}.film-description{max-width:620px;font-weight:400;line-height:1.5;margin-top:22px}.film-actions{display:flex;gap:12px;margin-top:22px}.film-actions a{padding:13px 22px;font-size:.9rem;font-weight:600;border:2px solid #f4f1eab3}.film-actions a:first-child{background:var(--lime);border-color:var(--lime);color:var(--ink)}.film-cards{position:absolute;inset:0;pointer-events:none}.film-card{position:absolute;right:var(--gutter);bottom:135px;background:#122d39;padding:30px 36px;width:min(530px,65vw);color:#f4f1ea}.film-card[hidden]{display:none}.film-card-number{display:inline-block;background:var(--lime);color:#122d39;font-size:18px;font-weight:800;padding:3px 10px}.film-card h2{font-size:clamp(32px,4.1vw,60px);letter-spacing:-.04em;line-height:1.1;margin:22px 0 18px}.film-card p{font-size:20px;line-height:1.5;font-weight:400;margin:0}.film-steps{font-size:.7rem}.film-hint{font-weight:600}
@media(max-width:850px){.film-copy{top:18%}.film-description{max-width:540px}.film-card{width:min(530px,80vw)}}
@media(max-width:600px){.film{height:350svh}.film-copy{top:13%}.film-copy .eyebrow{font-size:.55rem;gap:8px}.film-locations{font-size:.55rem}.film-copy h1{margin-top:14px;font-size:clamp(2rem,9vw,3rem)}.film-description{font-size:.85rem;margin-top:14px;max-width:340px}.film-actions{gap:8px;margin-top:14px}.film-actions a{padding:10px 12px;font-size:.7rem}.film-card{left:var(--gutter);right:var(--gutter);top:15%;bottom:auto;width:auto;padding:22px}.film-card h2{font-size:clamp(27px,8vw,40px);margin:16px 0 12px}.film-card p{font-size:16px}.film-card-number{font-size:15px}.film-steps{font-size:.55rem}}
@media(prefers-reduced-motion:reduce){.film{height:100svh}.film-cards{display:none}}
/* Each process card follows its own timeline label. */
.film-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;text-align:center}
.film-steps span:nth-child(even){text-align:center}
.film-card{top:auto;right:auto;width:min(400px,calc(100% - 2 * var(--gutter)));padding:25px 28px}
.film-card::after{content:"";position:absolute;top:100%;left:var(--anchor-x,50%);transform:translateX(-50%);border:9px solid transparent;border-top-color:#122d39}
.film-card h2{font-size:clamp(28px,3.2vw,44px);margin:18px 0 14px}
.film-card p{font-size:17px}
.primary-email{margin-bottom:18px}
@media(max-width:600px){.film-card{top:auto;right:auto;width:calc(100% - 2 * var(--gutter));padding:18px 22px}.film-card h2{font-size:28px;margin:12px 0}.film-card p{font-size:14px}.film-steps{gap:4px;font-size:7px;letter-spacing:0}.film-card-number{font-size:13px}}

