.cinemaHero{background:#08111b;padding:22px 0 34px;overflow:hidden}
.cinemaStage{position:relative;max-width:1540px;width:calc(100% - 64px);height:650px;margin:auto;border-radius:10px;overflow:hidden;background:#071019;isolation:isolate;touch-action:pan-y}
.cinemaImage{position:absolute;inset:0;z-index:-3;width:100%;height:100%;object-fit:contain;object-position:right center;pointer-events:none}
.cinemaShade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(4,12,20,.97) 0%,rgba(4,12,20,.8) 24%,rgba(4,12,20,.1) 67%),linear-gradient(0deg,rgba(4,12,20,.98),rgba(4,12,20,.18) 57%,transparent 85%)}
.sampleCaption{position:absolute;left:64px;bottom:108px;width:530px;max-width:53%}
.sampleCaption .eyebrow{color:#b7d6dc;font-size:10px;letter-spacing:.14em;margin-bottom:17px}
.sampleCaption h1{font-size:clamp(47px,5.4vw,82px);line-height:1;letter-spacing:-.035em;margin:0 0 21px;max-width:590px}
.cinemaBenefit{font-size:17px;line-height:1.55;color:#e1e7eb;max-width:470px;min-height:79px;margin:0 0 21px}
.sampleCaption .button{font-size:12px;padding:14px 20px;background:#a2e4df;border:0}
.sampleCaption .textlink{font-size:12px;color:#e4e9ed}
.sampleCaption .actions{gap:21px}
.cinemaArrow{position:absolute;top:43%;width:49px;height:64px;border:1px solid #a9beca7d;border-radius:7px;background:#07131cd9;color:white;font:400 36px/1 sans-serif;cursor:pointer;z-index:3;box-shadow:0 2px 12px #0005}
.cinemaArrow:hover{background:#335261}.cinemaArrow.prev{left:10px}.cinemaArrow.next{right:10px}
.cinemaControls{position:absolute;bottom:26px;left:64px;right:30px;display:flex;align-items:center;gap:16px;min-height:44px}
.cinemaNumber{font:12px/1.3 monospace;color:#eef5f7;min-width:58px}
.cinemaDots{display:flex;align-items:center;gap:0}
.cinemaDot{position:relative;display:grid;place-items:center;flex:0 0 19px;width:19px;height:40px;border:0;padding:0;background:transparent;cursor:pointer}
.cinemaDot:after{content:"";width:5px;height:5px;border-radius:50%;background:#ffffff6b}
.cinemaDot[aria-current=true]:after{width:7px;height:7px;background:#b3ebe6;box-shadow:0 0 0 3px #b3ebe62a}
.cinemaPause{display:grid;place-items:center;width:43px;height:43px;border:1px solid #90a4b3;border-radius:50%;background:#0b1c2bd1;color:#fff;font-size:17px;cursor:pointer}
.cinemaRotation{font-size:10px;color:#bfcbd3;line-height:1.35;max-width:170px}
.cinemaProgressTrack{height:2px;background:#ffffff22;position:absolute;left:64px;right:30px;bottom:15px;overflow:hidden}
.cinemaProgress{height:100%;width:100%;background:#a2e4df;transform-origin:left;transform:scaleX(0)}
.cinemaRailArea{max-width:1540px;width:calc(100% - 64px);margin:26px auto 0}
.cinemaRailHeading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}
.cinemaRailHeading h2{font-size:18px;line-height:1.25;letter-spacing:0;margin:0}
.cinemaBrowse{display:flex;gap:8px}.cinemaBrowse button{width:39px;height:35px;border:1px solid #657885;background:#132230;border-radius:4px;color:#fff;cursor:pointer}
.cinemaRail{position:relative;display:flex;overflow-x:auto;gap:13px;padding:5px 4px 14px;margin:0 -4px;scrollbar-width:thin;scrollbar-color:#6f8998 #13232f;overscroll-behavior-x:contain;scroll-snap-type:x proximity;touch-action:pan-x pan-y}
.cinemaChoice{flex:0 0 210px;padding:0;overflow:hidden;border:2px solid transparent;background:#13232f;color:#eff5f7;border-radius:6px;text-align:left;font:inherit;cursor:pointer;scroll-snap-align:start;user-select:none}
.cinemaChoice img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;pointer-events:none}
.cinemaChoice span{display:block;padding:11px 12px;font-size:12px;line-height:1.25;min-height:36px}
.cinemaChoice[aria-pressed=true]{border-color:#b8eeea;box-shadow:0 0 0 1px #b8eeea60}.cinemaChoice:hover{border-color:#b8eeea99}
.cinemaHero button:focus-visible,.cinemaStage:focus-visible{outline:3px solid #f7c77a;outline-offset:3px}
.cinemaSr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.familyIntro{padding:64px 0 38px;background:#08111b}.familyIntro h1{font-size:clamp(49px,5.7vw,85px);line-height:1.03;letter-spacing:-.035em;margin-bottom:22px;max-width:950px}.familyIntro .heroLead{font-size:18px;line-height:1.6;max-width:760px;color:#c6d4de}.familyIntro .eyebrow{color:#a1d9d7}
.familySection{padding:0 0 72px;background:#08111b}.familyGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.familyCard{display:block;background:#142330;border:1px solid #314452;border-radius:7px;overflow:hidden;text-decoration:none;color:inherit}.familyCard:hover{border-color:#a2e4df}.familyCard img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}.familyCardCopy{padding:24px}.familyCard .eyebrow{font-size:9px;margin-bottom:12px;color:#a9cbcf}.familyCard h2{font-size:27px;line-height:1.15;letter-spacing:-.015em;margin:0 0 13px}.familyCard p{font-size:14px;line-height:1.55;color:#d1dce2;margin:0 0 17px;min-height:65px}.familyCard .familyMore{font-size:12px;color:#a2e4df;min-height:0;margin:0}.familyNote{font-size:11px;line-height:1.6;color:#a5b8c5;max-width:800px;margin:25px 0 0}.productPublicHero{padding:64px 0;background:#08111b}.productPublicHero h1{font-size:clamp(48px,5vw,76px);line-height:1.05;margin:23px 0}.productPublicGrid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.productPublicGrid img{width:100%;height:auto;border-radius:7px}.productPublicHero p{font-size:17px;line-height:1.65;color:#d0dce4}.productPublicHero .eyebrow{font-size:11px;color:#a2e4df}.guideBridge{padding:30px 0;background:#19303f}.guideBridge h2{font-size:25px;line-height:1.2;margin:0 0 12px}.guideBridge p{font-size:15px;line-height:1.65;max-width:900px;margin:0}
@media(min-width:1650px){.cinemaStage{height:720px}.sampleCaption{bottom:123px}}
@media(max-width:1100px) and (min-width:851px){.cinemaStage{height:620px}.sampleCaption{left:56px;max-width:57%}.sampleCaption h1{font-size:60px}.cinemaControls{left:56px;gap:11px}.cinemaProgressTrack{left:56px}.cinemaRotation{max-width:115px}}
@media(max-width:850px){.cinemaHero{padding-top:16px}.cinemaStage{width:calc(100% - 36px);height:auto;min-height:0;padding-top:66.6667%;overflow:hidden}.cinemaImage{height:auto;aspect-ratio:3/2;object-position:center top;object-fit:contain}.cinemaShade{height:auto;aspect-ratio:3/2;background:linear-gradient(0deg,#071019,transparent 39%)}.sampleCaption{position:relative;left:auto;bottom:auto;max-width:none;width:auto;padding:20px 22px 0;background:#071019;min-height:330px}.sampleCaption h1{font-size:clamp(42px,7.4vw,64px);max-width:630px;min-height:2.04em;margin-bottom:18px}.sampleCaption .eyebrow{font-size:9px;margin-bottom:14px}.cinemaBenefit{font-size:16px;line-height:1.55;height:75px;min-height:75px;margin-bottom:20px}.sampleCaption .actions{gap:16px}.cinemaControls{position:relative;bottom:auto;left:auto;right:auto;justify-content:center;gap:10px;padding:11px 16px 20px;flex-wrap:wrap}.cinemaDots{order:3;justify-content:center;width:100%;height:26px}.cinemaDot{height:26px;width:18px;flex-basis:18px}.cinemaRotation{max-width:155px;font-size:10px}.cinemaProgressTrack{left:22px;right:22px;bottom:8px}.cinemaArrow{top:calc((100vw - 36px)/3 - 27px);width:42px;height:55px;font-size:29px}.cinemaArrow.prev{left:8px}.cinemaArrow.next{right:8px}.cinemaRailArea{width:calc(100% - 36px);margin-top:24px}.cinemaChoice{flex-basis:175px}.cinemaRailHeading h2{font-size:16px}.familyIntro{padding:40px 0 30px}.familyIntro h1{font-size:49px}.familyGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.familyCardCopy{padding:19px}.familyCard h2{font-size:25px}.productPublicGrid{grid-template-columns:1fr;gap:30px}.productPublicHero{padding:35px 0}.productPublicGrid figure{margin:0}.guideBridge h2{font-size:23px}}
@media(max-width:550px){.sampleCaption{padding:16px 18px 0;min-height:365px}.sampleCaption h1{font-size:44px;height:3.06em;min-height:3.06em}.cinemaBenefit{height:100px;min-height:100px;font-size:15px}.sampleCaption .actions{flex-wrap:wrap;gap:16px}.sampleCaption .button{font-size:11px;padding:13px 16px}.cinemaControls{gap:9px}.cinemaNumber{font-size:11px;min-width:51px}.cinemaPause{width:39px;height:39px}.familyGrid{grid-template-columns:1fr}.familyCard p{min-height:0}.familyIntro h1{font-size:44px}.familyIntro .heroLead{font-size:16px}.familyCardCopy{padding:23px}.familyNote{font-size:11px}}
@media(max-width:370px){.sampleCaption h1{font-size:38px}.sampleCaption{min-height:370px}.cinemaBenefit{font-size:14px;height:110px;min-height:110px}.cinemaRailHeading h2{font-size:14px}.cinemaBrowse button{width:30px}.cinemaRotation{max-width:130px}.cinemaDots{gap:0}.cinemaDot{width:16px;flex-basis:16px}.cinemaChoice{flex-basis:160px}}
@media(prefers-reduced-motion:reduce){.cinemaHero *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.cinemaBrowse button:disabled{opacity:.35;cursor:default}.cinemaStage{user-select:none}

@media(max-width:850px){
 .cinemaHero .sampleCaption{height:350px;min-height:0;display:flex;flex-direction:column}
 .cinemaHero .sampleCaption h1{height:auto;min-height:0;flex:0 0 auto}
 .cinemaHero .cinemaBenefit{height:auto;min-height:0;flex:0 0 auto}
 .cinemaHero .sampleCaption .actions{margin-top:auto;flex:0 0 auto}
}

@media(min-width:390px) and (max-width:550px){.cinemaHero .sampleCaption{height:300px}}

/* Below 390px the secondary action wraps. Reserve the same space for every case. */
@media(max-width:389px){.cinemaHero .sampleCaption{height:390px}}
