/* A normal-flow hero: no pinned stage or artificial scroll runway. */
.film-story{position:relative;background:var(--paper)}
.film-stage{position:relative;min-height:610px;height:min(720px,calc(100svh - 86px));overflow:hidden;isolation:isolate;background:var(--paper)}
.film-picture{position:absolute;inset:0 0 0 16%;z-index:-3}.film-picture img{width:100%;height:100%;object-fit:cover;object-position:50% 10%}
.film-wash{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#f5f5f5 0%,#f5f5f5f5 21%,#f5f5f5de 33%,#f5f5f53d 53%,transparent 68%),linear-gradient(0deg,#f5f5f5 0%,#f5f5f5da 8%,transparent 35%)}
.film-copy{position:relative;padding-top:62px;margin-left:max(56px,calc((100vw - 1120px)/2));width:530px;max-width:46vw;z-index:2}
.film-copy .eyebrow{font-size:12px;letter-spacing:.12em;margin-bottom:24px;color:var(--accent)}
.film-copy h1{font-family:var(--font-serif);font-size:clamp(46px,4.5vw,64px);line-height:1.4;letter-spacing:.1em;font-weight:500;margin-bottom:24px}
.film-messages{font-size:13px;line-height:2.15;color:var(--ink);max-width:470px}.film-message{margin:0}
.film-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px}.film-actions .button{font-size:12px;gap:26px;padding:13px 22px}.film-actions .text-link{font-size:11px;gap:15px}
.film-bottom{position:absolute;bottom:28px;left:max(56px,calc((100vw - 1120px)/2));right:max(56px,calc((100vw - 1120px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px;z-index:2}
.film-steps{display:flex;list-style:none;padding:0;margin:0;width:540px;border-top:1px solid #00284e50}.film-steps li{flex:1;padding-top:16px;font-size:11px;color:var(--ink)}.film-steps span{font:11px Georgia,serif;color:var(--accent);margin-right:10px}
.film-pause{background:#f5f5f5d9;border:1px solid #00284e40;color:var(--ink);padding:9px 12px;font-size:10px;cursor:pointer;margin-right:95px}.film-pause[hidden]{display:none}
.film-caption{position:absolute;right:28px;top:50px;font-size:10px;color:var(--ink);writing-mode:vertical-rl;text-shadow:0 0 8px white}
.digital-field{position:absolute;right:-3%;bottom:0;width:66%;height:230px;z-index:1;pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000 26%);opacity:.72}.digital-field canvas{width:100%;height:100%;display:block}
@media(max-width:1100px){.film-copy{margin-left:36px;max-width:49vw}.film-copy h1{font-size:48px}.film-bottom{left:36px;right:36px}.film-steps{width:480px}.film-actions{gap:18px}.film-picture{left:12%}}
@media(max-width:800px){.film-stage{height:auto;min-height:0;padding:285px 24px 28px}.film-picture{inset:0 0 auto;height:370px}.film-picture img{object-position:50% 28%}.film-wash{background:linear-gradient(0deg,#f5f5f5 0%,#f5f5f5 45%,#f5f5f5ed 58%,transparent 83%)}.film-copy{padding-top:0;margin-left:0;width:100%;max-width:100%}.film-copy .eyebrow{font-size:10px;letter-spacing:.04em;margin-bottom:14px}.film-copy h1{font-size:36px;line-height:1.4;letter-spacing:.08em;margin-bottom:18px}.film-messages{font-size:12px;line-height:1.95}.film-messages br{display:none}.film-actions{margin-top:22px;gap:18px}.film-actions .button{padding:12px 14px;gap:14px;font-size:11px}.film-actions .text-link{font-size:10px;gap:8px}.film-bottom{position:relative;inset:auto;margin-top:36px;display:block}.film-steps{width:100%}.film-steps li{font-size:10px;padding-top:12px}.film-steps span{margin-right:5px}.film-pause{margin:18px 0 0;padding:7px 10px;font-size:10px}.film-caption{display:none}.digital-field{width:100%;height:190px;top:155px;bottom:auto;right:-20%;opacity:.5;mask-image:linear-gradient(0deg,transparent,#000 60%,transparent)}}
@media(min-width:600px) and (max-width:800px){.film-stage{padding-top:370px}.film-picture{height:480px}.film-copy h1{font-size:45px}.digital-field{top:260px}}
@media(max-width:400px){.film-stage{padding-left:20px;padding-right:20px}.film-copy h1{font-size:34px}}

/* Stronger blue surface, kept below the face and main message. */
.digital-field{height:285px;opacity:1}
@media(max-width:800px){.digital-field{height:210px;opacity:.85}}

.film-stage{background:#f5f5f5}.film-picture{overflow:hidden}.film-picture img{filter:grayscale(1);transform:translate3d(0,var(--photo-y,0px),0) scale(1.1);will-change:transform}
