.home-hero{position:relative;width:100%;background:#07111f;color:#fff;overflow:hidden}
.home-hero:focus-visible{outline:3px solid #fff;outline-offset:-4px}
.hero-slides{display:grid;touch-action:pan-y}
.hero-slide{grid-area:1/1;display:grid;position:relative;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .5s ease,visibility .5s;min-width:0}
.hero-slide.is-active{visibility:visible;opacity:1;pointer-events:auto}
.hero-visual{grid-area:1/1;position:relative;height:var(--hero-frame-height,calc(100vh - 80px));min-width:0;align-self:start}
.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;display:block}
.hero-media[hidden]{display:none}
.hero-copy{grid-area:1/1;align-self:end;position:relative;z-index:1;padding:clamp(1rem,6vh,5rem) 5vw 5.5rem;background:linear-gradient(to bottom,transparent,#07111feb 4rem,#07111ff5);text-shadow:0 1px 3px #0008;text-align:center}
.hero-copy p{margin:0;color:#f4f7fb}
.hero-copy .hero-eyebrow{font-size:.8125rem;line-height:1.5;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.75rem}
.hero-copy h2{font-size:clamp(1.75rem,2.5vw,2.5rem);line-height:1.15;color:#fff;margin:0 auto 1rem;font-weight:700;max-width:64rem}
.hero-copy .hero-text{font-size:1.125rem;line-height:1.5;max-width:52rem;margin-inline:auto}
.hero-controls{position:absolute;bottom:1.25rem;left:5vw;right:5vw;z-index:2;display:flex;align-items:center;justify-content:center;gap:1rem}
.hero-controls[hidden]{display:none}
.home-hero button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:44px;background:#142439dc;border:1px solid #ffffff80;border-radius:24px;padding:.5rem 1rem;color:#fff;font-size:.875rem;line-height:1.25;cursor:pointer}
.home-hero button:hover{background:#245175}
.home-hero button:focus-visible{outline:3px solid #fff;outline-offset:3px}
.home-hero .hero-arrow{width:44px;padding:12px}
.hero-arrow img{display:block;width:20px;height:20px;object-fit:contain}
.hero-arrow[data-hero-prev] img{transform:rotate(90deg)}
.hero-arrow[data-hero-next] img{transform:rotate(-90deg)}
.hero-dots{display:flex;align-items:center;justify-content:center;gap:2px}
.home-hero .hero-dot{width:24px;min-height:24px;padding:7px;border:0;background:transparent}
.hero-dot:before{content:'';width:10px;height:10px;border:1px solid white;border-radius:50%;box-sizing:border-box;flex-shrink:0}
.hero-dot.is-active:before{background:white}
@media(max-width:700px){
 .hero-controls{gap:.25rem}
 .home-hero .hero-arrow{width:40px;padding:10px}
 .hero-dots{gap:0;min-width:0;flex:0 1 auto}
 .home-hero .hero-dot{width:24px;flex-shrink:1;min-width:0}
}
@media(max-width:700px) and (min-height:501px){
 .hero-slide{grid-template-rows:auto auto;align-content:start}
 .hero-visual{height:var(--hero-frame-height,calc(100vh - 24rem))}
 .hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,#07111f,transparent 35%);pointer-events:none}
 .hero-copy{grid-area:2/1;align-self:start;background:#07111f;padding:1rem 1.25rem 1.25rem}
 .hero-copy h2{font-size:1.5rem}
 .hero-copy .hero-text{font-size:1rem}
 .hero-copy .hero-eyebrow{font-size:.75rem;letter-spacing:.04em}
 .hero-controls{position:relative;inset:auto;display:flex;padding:0 .5rem 1.25rem;gap:.25rem}
}
@media(max-height:500px){
 .hero-copy{padding:1rem 1.25rem 4.5rem}
 .hero-copy .hero-eyebrow{display:none}
 .hero-copy h2{font-size:1.25rem;margin-bottom:.5rem}
 .hero-copy .hero-text{font-size:.875rem;line-height:1.35}
 .hero-controls{bottom:.5rem}
}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}
