.hero-carousel{min-width:0;align-self:center;border:1px solid var(--line);background:#0b2635;color:#f5f8fb;box-shadow:0 22px 65px #0002}
.hero-frame{overflow:hidden;aspect-ratio:16/10;background:#153644;touch-action:pan-y}
.hero-track{display:flex;width:100%;height:100%;transition:transform .65s cubic-bezier(.22,.7,.25,1);will-change:transform}
.hero-slide{flex:0 0 100%;min-width:0;height:100%;overflow:hidden}
.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-carousel-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:23px 24px 8px}
.hero-caption{display:grid;gap:4px;min-width:0}.hero-caption strong{font-family:var(--display);font-size:18px;font-weight:500;line-height:1.45}.hero-caption>span{font-size:12px;color:#b0c4ce}
.hero-controls{display:flex;align-items:center;gap:9px;flex-shrink:0}.hero-controls button,.hero-playback>button{border:1px solid var(--line);border-radius:50%;background:transparent;width:38px;height:38px;display:grid;place-items:center;font-size:19px;padding:0}.hero-controls button:hover,.hero-playback>button:hover{background:#254452}.hero-controls>span{font-size:12px;color:#b0c4ce;white-space:nowrap;font-variant-numeric:tabular-nums}
.hero-playback{display:flex;align-items:center;gap:22px;padding:6px 24px 16px}.hero-indicators{display:flex;gap:8px;flex:1}.hero-indicators button{border:0;background:none;flex:1;min-height:38px;padding:12px 0}.hero-indicators button>span{display:block;height:2px;background:#3d5664;transition:background .2s}.hero-indicators button[aria-pressed=true]>span{background:#b5e8f5}.hero-playback>button{width:32px;height:32px;font-size:14px;flex-shrink:0}
@media(max-width:1080px){.hero-carousel-bottom{align-items:flex-start;flex-direction:column;gap:16px;padding:20px 20px 6px}.hero-controls{align-self:flex-end}.hero-playback{padding-inline:20px}.hero-frame{aspect-ratio:4/3}}
@media(max-width:680px){.hero-carousel-bottom{gap:15px;padding:20px 18px 4px}.hero-frame{aspect-ratio:16/10}.hero-caption strong{font-size:19px}.hero-playback{padding:4px 18px 14px}.hero-controls button{width:42px;height:42px}.hero-playback>button{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.hero-track{transition:none}}
