.hero-cinematic{background:var(--paper)}
.cinematic-stage{position:relative;isolation:isolate;overflow:hidden;background:#082324;color:#fff}
.cinematic-backdrop,.cinematic-scrim{position:absolute;inset:0;z-index:-1}
.cinematic-backdrop video{display:block;width:100%;height:100%;object-fit:contain;object-position:right center}
.cinematic-scrim{background:linear-gradient(90deg,rgba(8,35,36,.95),rgba(8,35,36,.83) 33%,rgba(8,35,36,.3) 65%,rgba(8,35,36,.12)),linear-gradient(0deg,rgba(8,35,36,.9),transparent 45%)}
.cinematic-content{position:relative;min-height:max(700px,calc(100svh - 94px));padding:54px 0 26px;display:flex;flex-direction:column;justify-content:center}
.cinematic-slides{display:grid;width:57%;max-width:740px;min-width:0;margin:0}
.cinematic-slide{grid-area:1/1;opacity:0;visibility:hidden;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease,visibility .65s;min-width:0}
.cinematic-slide.is-active{opacity:1;visibility:visible;transform:none}
.cinematic-slide .eyebrow{color:#d8e8dc;font-size:12px!important;letter-spacing:1.8px;margin-bottom:25px}
.cinematic-slide h1,.cinematic-slide h2{font-size:clamp(52px,5.2vw,84px);font-weight:500;line-height:1.04;letter-spacing:-.045em;color:#fff;margin:0 0 28px;max-width:none}
.cinematic-slide h1 span,.cinematic-slide h2 span{color:#bce4ce}
.cinematic-slide .lead{font-size:18px;line-height:1.7;color:#f0f4ed;max-width:560px;margin:0}
.hero-cinematic .hero-promise{color:#d0ead8;font-size:17px;margin:22px 0 25px}
.hero-cinematic .hero-actions{gap:32px;align-items:center}
.hero-cinematic .hero-actions .button{background:#faf5e8;border-color:#faf5e8;color:#173e3e}
.hero-cinematic .hero-actions .button:hover{background:#d7eadb;border-color:#d7eadb}
.hero-cinematic .hero-actions .text-link{color:#fff;border-color:#ffffff70}
.cinematic-responsibility{display:inline-flex;gap:10px;align-items:center;align-self:flex-start;margin-top:25px;color:#d7eadc;font-size:17px;font-weight:500}
.cinematic-responsibility svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6}
.cinematic-side{position:absolute;right:0;bottom:210px;width:40%;max-width:530px;pointer-events:none}
.cinematic-flow,.cinematic-human{opacity:0;transform:translateY(15px);transition:opacity .7s,transform .7s}
.cinematic-flow{display:flex;align-items:center;gap:13px;font-size:15px;color:#fff}
.cinematic-flow span{background:#143b3dde;backdrop-filter:blur(12px);border:1px solid #e7f1e45c;padding:24px 18px;border-radius:5px;box-shadow:0 20px 45px #09252630}
.cinematic-flow i{font-style:normal;color:#bde1ce}
.cinematic-human{position:absolute;right:0;bottom:0;display:flex;gap:20px;align-items:center;background:#123b3dde;backdrop-filter:blur(12px);border-left:2px solid #b4d8bd;padding:26px 30px;color:#d5e8db;font-size:17px;line-height:1.5}
.cinematic-human strong{font-size:26px;color:#fff;font-weight:500}.cinematic-human svg{width:38px;height:38px;fill:none;stroke:#bce4ce;stroke-width:1.4}
[data-stage="1"] .cinematic-flow,[data-stage="2"] .cinematic-human{opacity:1;transform:none}
.cinematic-footer{display:flex;align-items:center;gap:28px;padding-top:32px;margin-top:auto}
.cinematic-nav{display:flex;gap:25px;width:560px;max-width:65%}
.cinematic-nav button{position:relative;flex:1;display:flex;gap:11px;align-items:center;background:none;border:0;border-top:2px solid #ffffff38;color:#c7d8d0;padding:18px 0 10px;text-align:left;min-height:54px}
.cinematic-nav button span{font-size:12px;color:#bed1c6}.cinematic-nav strong{font-size:16px;font-weight:500}
.cinematic-nav button i{position:absolute;top:-2px;left:0;height:2px;width:100%;background:#c3e5cb;transform:scaleX(0);transform-origin:left}
.cinematic-nav button[aria-pressed="true"]{color:white}.cinematic-nav button[aria-pressed="true"] i{transform:scaleX(var(--progress,0))}
.cinematic-toggle{display:flex;align-items:center;gap:10px;border:1px solid #dcebd45c;border-radius:30px;background:#173c4280;color:#fff;padding:12px 18px;min-height:46px;font-size:14px;white-space:nowrap}
.cinematic-toggle:disabled{opacity:.8;cursor:default}.cinematic-footer small{margin-left:auto;font-size:12px;color:#d9e5dd}
.hero-cinematic :is(a,button):focus-visible{outline-color:#f4d8a8}
@media(min-width:1700px){.cinematic-content{padding-top:60px}.cinematic-slide h1,.cinematic-slide h2{font-size:86px}}
@media(max-width:1100px){.cinematic-slides{width:70%}.cinematic-slide h1,.cinematic-slide h2{font-size:64px}.cinematic-side{display:none}.cinematic-footer small{max-width:120px}.cinematic-nav{max-width:65%;gap:15px}.cinematic-scrim{background:linear-gradient(90deg,#082324ed,#082324b8 50%,#08232440),linear-gradient(0deg,#082324de,transparent 60%)}}
@media(max-width:760px){.cinematic-content{min-height:calc(100svh - 78px);padding:54px 0 28px}.cinematic-slides{width:100%;max-width:none}.cinematic-slide h1,.cinematic-slide h2{font-size:clamp(43px,9vw,62px);line-height:1.08;margin-bottom:24px}.cinematic-slide .lead{font-size:17px;line-height:1.65}.cinematic-slide .eyebrow{font-size:11px!important;max-width:290px}.cinematic-backdrop video{object-position:center top}.cinematic-scrim{background:linear-gradient(90deg,#082324e8,#082324b3),linear-gradient(0deg,#082324ee,transparent)}.hero-cinematic .hero-promise{font-size:16px}.hero-cinematic .hero-actions{gap:22px;flex-wrap:wrap}.cinematic-responsibility{font-size:16px;margin-top:24px}.cinematic-footer{display:flex;flex-wrap:wrap;gap:18px;padding-top:38px}.cinematic-nav{width:100%;max-width:none;gap:17px}.cinematic-nav strong{font-size:14px}.cinematic-nav button{gap:7px}.cinematic-footer small{max-width:160px;margin-right:0}.cinematic-toggle{font-size:13px}.cinematic-nav button span{font-size:11px}}
@media(prefers-reduced-motion:reduce){.cinematic-slide,.cinematic-flow,.cinematic-human{transition:none;transform:none}}

@media(max-width:760px){.cinematic-footer{padding-bottom:72px}}

/* Preserve the complete camera frame; never crop the room to fill the viewport. */
.cinematic-backdrop{background:#082324}
.cinematic-scrim{background:linear-gradient(90deg,#082324 0%,rgba(8,35,36,.94) 24%,rgba(8,35,36,.72) 42%,rgba(8,35,36,.08) 70%,rgba(8,35,36,.03)),linear-gradient(0deg,rgba(8,35,36,.9),transparent 35%)}
@media(max-width:760px){
 .cinematic-backdrop{bottom:auto;width:100%;aspect-ratio:16/9}
 .cinematic-backdrop video{object-fit:contain;object-position:center top}
 .cinematic-content{padding-top:calc(56.25vw + 25px)}
 .cinematic-scrim{background:linear-gradient(0deg,#082324 0%,transparent 100%);height:50px;top:calc(56.25vw - 50px);bottom:auto}
}
