/* R12 — immersive viewport, lower-half editorial choreography. */
.landing-film .filmrail{height:440svh;border:0;background:#fafaf9}
.landing-film .filmsticky,.landing-film.portrait .filmsticky{position:sticky;top:0;display:block;width:100%;max-width:none;height:100svh;height:100dvh;min-height:0;padding:0;margin:0;overflow:hidden;isolation:isolate}
.landing-film .filmvisual{position:absolute;inset:0;width:100%;max-width:none}
.landing-film .filmstage,.landing-film.portrait .filmstage{position:absolute;inset:0;width:100%;max-width:none;height:100%;aspect-ratio:auto;margin:0;border-radius:0;background:#fafaf9}
.landing-film .filmstage video,.landing-film.portrait .filmstage video{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:50% 40%;border-radius:0;box-shadow:none}
.landing-film .filmstage:after{content:"";position:absolute;inset:30% 0 0;pointer-events:none;background:linear-gradient(0deg,rgba(6,20,16,.86) 0%,rgba(6,20,16,.65) 32%,rgba(6,20,16,.25) 65%,transparent 100%);opacity:var(--shade,1)}
.landing-film .filmcopy{position:absolute;z-index:3;left:7%;bottom:12%;width:min(670px,75%);max-height:38%;margin:0;color:#fff;pointer-events:none;text-shadow:0 2px 16px #0005}
.landing-film .filmcopy .eyebrow{display:none}
.landing-film .filmcopy h2{font-size:clamp(38px,5vw,72px);font-weight:400;line-height:1.12;min-height:0;margin:0;color:#fff;letter-spacing:-.045em}
.landing-film .filmcopy p{font-size:clamp(18px,1.5vw,22px);line-height:1.6;max-width:520px;min-height:0;margin:18px 0 0;color:#fff}
.landing-film .film-skip{position:absolute;z-index:5;top:max(22px,env(safe-area-inset-top));right:5%;padding:10px 14px;border-radius:30px;color:#fff;background:#102b2266;font-size:11px;backdrop-filter:blur(8px)}
.landing-film .film-options{position:absolute;z-index:5;bottom:max(16px,env(safe-area-inset-bottom));left:5%;width:min(420px,90%);font-size:11px}
.landing-film .film-options summary{cursor:pointer;color:#fff;background:#102b2266;border-radius:24px;padding:9px 14px;width:max-content;backdrop-filter:blur(8px)}
.landing-film .film-options[open]{padding:15px;border-radius:18px;background:#fafaf9f5;color:#24443e;box-shadow:0 8px 32px #0002}
.landing-film .film-options[open] summary{color:#24443e;background:none;padding:0}
.landing-film .filmcontrols{margin:15px 0 8px}
.landing-film .film-disclosure,.landing-film #film-status{font-size:10px;color:#52615b}
.landing-film .filmstage .data-scene{z-index:2;padding:12svh max(7%,calc((100vw - 1000px)/2));justify-content:center}
.landing-film .data-scene h3,.landing-film.portrait .data-scene h3{font-size:clamp(28px,4vw,52px);margin:18px 0;color:#24443e}
.landing-film .data-scene p{font-size:14px}
.landing-film .data-scene .chart,.landing-film.portrait .data-scene .chart{flex:none;height:34svh;max-height:none;margin:35px 0 25px;padding:14px 5% 30px}
.landing-film .data-scene small,.landing-film.portrait .data-scene small{font-size:11px}
.landing-film .data-scene .chart b{font-size:16px}.landing-film .data-scene .chart span{font-size:12px}
.landing-film.manual .filmrail,.landing-film:not(.film-enabled) .filmrail{height:auto}
.landing-film.manual .filmsticky,.landing-film:not(.film-enabled) .filmsticky{position:relative}
.landing-film:not(.film-enabled) .film-options{display:none}
@media(max-width:700px){.landing-film .filmrail{height:380svh}.landing-film .filmcopy{left:6%;width:88%;bottom:10%;max-height:40%}.landing-film .filmcopy h2{font-size:clamp(34px,10vw,44px);line-height:1.13}.landing-film .filmcopy p{font-size:18px;line-height:1.45;margin-top:16px}.landing-film .filmstage .data-scene{padding:13svh 7% 15svh}.landing-film.manual .filmrail{height:auto}.landing-film .film-skip{font-size:10px}}
@media(max-height:580px){.landing-film .filmrail{height:auto}.landing-film .filmsticky{position:relative}.landing-film .filmcopy{bottom:18%;max-height:45%}.landing-film .filmcopy h2{font-size:26px}.landing-film .filmcopy p{font-size:13px;margin-top:8px}}
@media(prefers-reduced-motion:reduce){.landing-film .filmcopy h2,.landing-film .filmcopy p{transform:none!important}}

/* Compact windows retain room for both text levels. */
@media(max-width:700px) and (max-height:680px){.landing-film .filmcopy h2{font-size:34px}.landing-film .filmcopy p{font-size:17px;line-height:1.4;margin-top:12px}}
@media(max-height:580px){.landing-film .filmcopy h2{font-size:28px}.landing-film .filmcopy p{font-size:15px;line-height:1.35;margin-top:8px}}

/* R16: primeira cena aprovada no tablet e na passagem para os dados. */
.landing-film .filmstage .data-scene{padding:0;display:block;background:#183932;pointer-events:none}.landing-film .data-scene iframe{display:block;width:100%;height:100%;border:0;background:#183932;pointer-events:none}.landing-film .data-open{position:absolute;z-index:6;left:50%;bottom:max(30px,env(safe-area-inset-bottom));transform:translateX(-50%);padding:14px 24px;border:1px solid #fafcfa66;border-radius:40px;background:#24443e;color:#fafcfa;font-size:14px;white-space:nowrap}.landing-film .data-open span{margin-left:25px}.landing-film .data-open[hidden]{display:none}

/* R17: vídeo e gráficos compartilham a rolagem da mesma página. */
.landing-film .filmrail,.landing-film.manual .filmrail{height:1000svh}.landing-film .filmsticky,.landing-film.manual .filmsticky{position:sticky;height:100dvh}.landing-film .data-scene{pointer-events:none}.landing-film .data-scene iframe{pointer-events:none}.landing-film .film-options,.landing-film .data-open{display:none}.landing-film .opening{inset:0}.landing-film .film-skip{font-size:13px}.landing-film .filmcopy h2{font-weight:600}.landing-film .filmcopy p{font-size:clamp(18px,1.6vw,24px)}
@media(max-width:700px){.landing-film .filmrail,.landing-film.manual .filmrail{height:1000svh}.landing-film .filmcopy h2{font-size:clamp(32px,8.7vw,44px)}.landing-film .filmcopy p{font-size:18px}.landing-film .film-skip{font-size:12px}}

.landing-film .data-scene iframe{pointer-events:auto}.landing-film .herofoot>span{display:none}.landing-film .herofoot{justify-content:flex-start;gap:30px}.site-menu-button{position:fixed;right:24px;top:24px;z-index:32;width:46px;height:46px;border-radius:50%;background:#24443ee8;color:#fafcfa;border:1px solid #a9bcae88;display:grid;align-content:center;gap:6px;padding:14px}.site-menu-button i{border-top:1px solid currentColor;display:block}.site-menu-panel{position:fixed;z-index:33;top:82px;right:24px;display:flex;flex-direction:column;padding:18px;background:#24443ef7;color:#fafcfa;border:1px solid #a9bcae77;border-radius:16px}.site-menu-panel[hidden]{display:none}.site-menu-panel a,.site-menu-panel button{padding:12px 18px;font-size:14px;text-align:left;background:none;border:0;color:inherit}.landing-film .siteheader nav{display:none}

.landing-film .film-skip{right:88px;top:26px}

/* R18 — filme sem legendas decorativas; herói somente com conteúdo. */
.landing-film{padding-top:96px}.landing-film .siteheader{position:fixed;top:0;left:0;right:0;max-width:none;height:96px;padding:0 6%;z-index:30;background:#fafcfa;color:#24443e;transition:background .2s,color .2s;pointer-events:none}.landing-film .siteheader .brand{pointer-events:auto}.landing-film.header-dark .siteheader{background:linear-gradient(#18393299,transparent);color:#fafcfa}.landing-film.header-dark .siteheader .brand img{filter:brightness(0) invert(1)}.landing-film .hero{min-height:0;padding-top:48px;padding-bottom:56px}.landing-film .herocopy{width:100%;max-width:900px}.landing-film .hero .eyebrow{display:none}.landing-film .filmstage:after{display:none}.landing-film #film-canvas{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 40%;background:#fafcfa url(assets/film-desktop-poster.jpg) center/cover no-repeat}.film-loading{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);padding:8px 14px;background:#fafcfaf0;color:#24443e;border-radius:20px;font-size:13px;z-index:1;white-space:nowrap}.film-loading[hidden]{display:none}.landing-film .filmstage .data-scene{z-index:2}
@media(max-width:700px){.landing-film{padding-top:80px}.landing-film .siteheader{height:80px;padding:0 22px}.landing-film .hero{padding:32px 24px 44px}.landing-film .herocopy{width:100%}.landing-film .herocopy h1{font-size:clamp(38px,10vw,50px)}.landing-film #film-canvas{background-image:url(assets/film-mobile-poster.jpg)}}

/* R19: roteiro explicativo restaurado; entra pelo scroll sem deslocamentos. */
.landing-film .filmstage:after{display:block;z-index:1;opacity:var(--caption-shade,1);background:linear-gradient(0deg,rgba(6,20,16,.87),rgba(6,20,16,.57) 45%,transparent)}
.landing-film .filmcopy{bottom:10%;width:min(760px,86%);max-height:none}.landing-film .filmcopy h2{font-size:clamp(36px,4.5vw,64px);line-height:1.12}.landing-film .filmcopy p{max-width:620px;font-size:clamp(18px,1.6vw,23px);line-height:1.5;margin-top:18px}
@media(max-width:700px){.landing-film .filmcopy{left:24px;width:calc(100% - 48px);bottom:10%}.landing-film .filmcopy h2{font-size:clamp(30px,8vw,40px)}.landing-film .filmcopy p{font-size:17px;line-height:1.5;margin-top:16px}}
@media(max-height:580px){.landing-film .filmcopy{bottom:7%;width:min(760px,86%)}.landing-film .filmcopy h2{font-size:28px}.landing-film .filmcopy p{font-size:15px;margin-top:10px}}
