/* Estudo local da abertura; componentes abaixo dela mantêm a base publicada. */
.hero-vitrine { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); align-items:center; gap:clamp(36px,4vw,68px); padding-block:66px 64px; }
.hero-vitrine .hero-copy { display:block; min-width:0; }
.hero-vitrine .hero-eyebrow { color:var(--muted); font-size:11px; letter-spacing:.12em; margin:0 0 23px; }
.hero-vitrine h1 { font-size:clamp(44px,4.8vw,68px); line-height:1.035; letter-spacing:-.05em; font-weight:650; margin:0 0 25px; }
.hero-vitrine h1::after { content:none; }
.hero-vitrine .lead { font-size:17px; line-height:1.75; max-width:480px; margin:0 0 19px; }
.hero-vitrine .hero-input-note { font-size:13px; line-height:1.75; max-width:460px; margin:0 0 26px; }
.hero-vitrine .actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px 22px; margin:0; }
.hero-vitrine .actions .button { gap:18px; font-size:14px; min-height:54px; padding:14px 18px; }
.hero-vitrine .actions .text-link { font-size:13px; }
.hero-vitrine .micro { font-size:11px; line-height:1.7; color:var(--muted); margin:15px 0 0; }
.hero-showcase { min-width:0; width:100%; }
.showcase-heading { display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:20px; min-height:82px; }
.showcase-kicker { font-size:10px; letter-spacing:.12em; color:var(--muted); margin:0 0 7px; }
.showcase-heading h2 { font-size:clamp(32px,3.7vw,48px); line-height:1.05; letter-spacing:-.045em; margin:0; font-weight:500; }
.showcase-counter { font-size:11px; color:var(--muted); letter-spacing:.07em; padding-bottom:6px; }
.showcase-panels { position:relative; aspect-ratio:960 / 568; background:#111317; overflow:hidden; }
.showcase-panel { position:absolute; inset:0; }
.showcase-panel[hidden] { display:none; }
.showcase-panel img, .showcase-panel video { width:100%; height:100%; display:block; object-fit:cover; position:absolute; inset:0; }
.showcase-panel video,.showcase-card-film video { opacity:0; transition:opacity .28s ease; }
.showcase-panel video.is-playing,.showcase-card-film video.is-playing { opacity:1; }
.showcase-panel img { border:1px solid var(--line); }
.showcase-progress { height:1px; background:var(--line); margin-top:18px; }
.showcase-progress span { display:block; height:100%; width:0; background:var(--ink); transition:width .23s linear; }
.showcase-bottom { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:10px; }
.showcase-picker { display:flex; gap:20px; }
.showcase-picker button { border:0; border-bottom:1px solid transparent; padding:10px 0; min-height:44px; font:inherit; font-size:13px; color:var(--muted); background:none; cursor:pointer; }
.showcase-picker button[aria-pressed=true] { color:var(--ink); border-bottom-color:var(--ink); }
.showcase-pause { display:flex; align-items:center; justify-content:center; gap:7px; min-height:44px; padding:6px 0 6px 10px; background:none; border:0; color:var(--muted); font:inherit; font-size:11px; cursor:pointer; white-space:nowrap; }
.showcase-pause > span:first-child { font-size:16px; line-height:1; }
.showcase-caption { color:var(--muted); font-size:11px; line-height:1.7; margin:13px 0 0; }
.showcase-caption span { display:block; color:#89939e; font-size:10px; margin-top:3px; }
.showcase-grid { display:none; }
html[data-vitrine=grade] .showcase-grid { display:block; }
html[data-vitrine=grade] .showcase-sequence { display:none; }
.showcase-grid-heading { display:flex; align-items:center; justify-content:space-between; min-height:44px; margin-bottom:13px; }
.showcase-grid-heading .showcase-kicker { margin:0; }
.showcase-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.showcase-card { min-width:0; margin:0; }
.showcase-card figcaption { font-size:14px; font-weight:500; margin-bottom:13px; line-height:1.4; }
.showcase-card-film { position:relative; aspect-ratio:320 / 568; overflow:hidden; border:1px solid var(--line); background:#111317; }
.showcase-card-film :is(img,video) { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }
.showcase-card p { font-size:11px; line-height:1.6; color:var(--muted); margin:13px 0 0; }
html:not(.showcase-ready) .showcase-pause, html:not(.showcase-ready) .showcase-picker { visibility:hidden; }
@media(min-width:1600px) { .hero-vitrine { padding-block:82px 80px; } }
@media(max-width:1050px) and (min-width:821px) {
 .hero-vitrine { gap:34px; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 .hero-vitrine h1 { font-size:46px; }
 .showcase-picker { gap:13px; }
 .showcase-picker button { font-size:12px; }
 .showcase-pause-text { display:none; }
 .showcase-cards { gap:8px; }
 .showcase-card figcaption { font-size:12px; }
}
@media(max-width:820px) {
 .hero-vitrine { grid-template-columns:1fr; padding-block:44px 38px; gap:38px; }
 .hero-vitrine h1 { font-size:clamp(38px,7.1vw,60px); max-width:670px; }
 .hero-vitrine .lead { max-width:570px; }
 .hero-showcase { max-width:640px; }
 .showcase-heading { min-height:0; margin-bottom:17px; }
 .showcase-heading h2 { font-size:36px; }
}
@media(max-width:480px) {
 .hero-vitrine { padding-block:34px 30px; gap:32px; }
 .hero-vitrine .hero-eyebrow { margin-bottom:19px; font-size:10px; }
 .hero-vitrine h1 { font-size:clamp(36px,9.1vw,43px); margin-bottom:20px; line-height:1.06; }
 .hero-vitrine .lead { font-size:15px; line-height:1.75; margin-bottom:15px; }
 .hero-vitrine .hero-input-note { margin-bottom:21px; font-size:12px; }
 .hero-vitrine .actions { gap:5px 18px; }
 .hero-vitrine .actions .button { font-size:13px; padding-inline:17px; }
 .hero-vitrine .actions .text-link { min-height:44px; display:flex; align-items:center; }
 .hero-vitrine .micro { margin-top:9px; }
 .showcase-heading h2 { font-size:32px; }
 .showcase-picker { gap:19px; }
 .showcase-picker button { font-size:12px; }
 .showcase-pause-text { display:none; }
 .showcase-caption { font-size:10px; }
 .showcase-cards { gap:9px; }
 .showcase-card figcaption { font-size:12px; white-space:nowrap; }
 .showcase-card p { font-size:10px; line-height:1.5; margin-top:10px; }
}
@media(prefers-reduced-motion:reduce) {
 .showcase-panel video,.showcase-card-film video,.showcase-progress span { transition:none; }
}
html.motion-off .showcase-panel video,html.motion-off .showcase-card-film video { transition:none; }

.showcase-pause[hidden] { display:none; }

.showcase-panel img,.showcase-panel video { object-fit:contain; }
