/* Scene 1 from the existing Bateras LP, one short entrance in normal flow. */
.hero .bg{background:#0d0b0c url("home-entrada-a-20261112-poster.webp") center/cover no-repeat;filter:none}
.hero .bg video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity .3s cubic-bezier(.2,.7,.2,1)}
.hero .bg video.is-ready{opacity:1}
.hero .scrim{pointer-events:none;background:linear-gradient(90deg,#0d0b0c 0%,rgba(13,11,12,.97) 46%,rgba(13,11,12,.12) 76%),linear-gradient(0deg,#0d0b0c,transparent 40%)}
.hero .wrap{width:100%;padding-top:3.5rem;padding-bottom:3.5rem}
.hero p:not(.eyebrow){max-width:44ch}
.hero .eyebrow{margin:0 0 1.2rem}
.hero h1{font-size:clamp(3rem,7.5vw,6rem);max-width:10ch}
.hero .cta-row{max-width:600px}
.hero .btn.ghost{background:#0d0b0c}
.home-entrada-control{margin-top:1rem;border:1px solid #8f8484;border-radius:999px;background:#161213;color:#f5f1ee;padding:10px 18px;min-height:44px;font:600 .85rem var(--body);cursor:pointer}
.home-entrada-control[hidden]{display:none}
.home-entrada-control:hover{border-color:#f5f1ee;background:#2a2224}
/* C1: content remains visible even if the original observer or all JS fail. */
.reveal{opacity:1;transform:none;transition:none}
a:focus-visible,button:focus-visible{outline:3px solid #f5f1ee;outline-offset:4px}
section[id],main[id]{scroll-margin-top:110px}
/* C2: the existing CSS-only menu keeps its behavior and gains keyboard access. */
.nav input{display:block;position:absolute;opacity:0;width:1px;height:1px;overflow:hidden}
.nav .burger{align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;flex-shrink:0}
.nav:has(input:focus-visible) .burger{outline:3px solid #f5f1ee;outline-offset:3px}
.nav input:focus-visible{outline:none}
@media(min-width:1081px){.nav input{display:none}}
@media(max-width:1080px){.nav .burger{display:flex}}
@media(max-width:767px){
  .hero{display:block;min-height:0;padding-top:clamp(210px,62vw,310px)}
  .hero .bg{bottom:auto;height:clamp(210px,62vw,310px);background-position:center 38%}
  .hero .bg video{object-position:center}
  .hero .scrim{bottom:auto;height:clamp(210px,62vw,310px);background:linear-gradient(0deg,#0d0b0c,transparent 40%)}
  .hero .wrap{padding-top:1rem;padding-bottom:2rem}
  .hero h1{font-size:clamp(3rem,12vw,4.4rem);max-width:12ch}
  .hero p:not(.eyebrow){font-size:1rem;margin:1rem 0 1.4rem}
  .hero .eyebrow{font-size:.72rem;letter-spacing:.14em;margin-bottom:.8rem}
  .hero .cta-row{gap:.65rem}
  .hero .btn{font-size:.94rem;padding:.8em 1.2em;min-height:44px}
}
@media(max-width:359px){.nav{gap:.35rem;padding:.7rem .65rem}.brand img.mark{width:36px;height:36px}.brand .nome{font-size:.85rem}.nav .btn{padding:.65em .85em;font-size:.8rem}.wrap{padding-left:1rem;padding-right:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;animation-delay:0s!important;transition-delay:0s!important}}
