.hero.hero-slider { display: block; min-height: 0; background: #101723; overflow: hidden; touch-action: pan-y; }
.hero-slider-track { display: flex; align-items: stretch; transition: transform 550ms ease; }
.hero-slide { flex: 0 0 100%; min-width: 0; min-height: clamp(540px, 78vh, 820px); display: flex; align-items: flex-end; background: linear-gradient(90deg,rgba(0,0,0,.83),rgba(0,0,0,.55) 48%,rgba(0,0,0,.18)), var(--slide-image) center 42% / cover no-repeat; }
.hero-slide .container { width: 100%; padding: 64px 76px 90px; }
.hero-slide h2 { font-size: 54px; max-width: 20ch; color: #fff; text-shadow: 0 2px 20px rgba(0,0,0,.35); line-height: 1.15; }
.hero-slider:not(.hero-slider-ready) .hero-slide:not(:first-child), .hero-slider:not(.hero-slider-ready) .hero-slider-controls { display: none; }
.hero-slider-controls button { border: 0; cursor: pointer; font: inherit; }
.hero-slider-arrow { position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; border-radius: 50%; background: #fff; color: #163b6c; display: grid; place-items: center; box-shadow: 0 2px 12px #0003; }
.hero-slider-arrow svg { width: 22px; height: 22px; }
.hero-slider-prev { left: 20px; }
.hero-slider-next { right: 20px; }
.hero-slider-pagination { position: absolute; bottom: 24px; left: 50%; transform: translateX(-50%); display: flex; align-items: center; gap: 4px; padding: 4px 10px; border-radius: 30px; background: #0009; }
.hero-slider-dot { width: 36px; height: 36px; display: grid; place-items: center; background: transparent; }
.hero-slider-dot::after { content: ''; width: 9px; height: 9px; border: 1px solid #fff; border-radius: 50%; background: transparent; }
.hero-slider-dot[aria-current=true]::after { background: var(--gold, #f5bd4b); border-color: var(--gold, #f5bd4b); }
.hero-slider-toggle { min-height: 36px; padding: 4px 10px; color: #fff; background: transparent; font-size: 13px !important; }
.hero-slider-controls button:focus-visible { outline: 3px solid var(--gold, #f5bd4b); outline-offset: 3px; }
.hero-slider-status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media (max-width: 1099px) { .hero-slide h2 { font-size: 46px; } }
@media (max-width: 699px) {
  .hero-slide { min-height: 570px; background-position: center, 62% center; }
  .hero-slide .container { padding: 56px 24px 104px; }
  .hero-slide h1, .hero-slide h2 { font-size: 32px; }
  .hero-slide .hero-ctas { gap: 10px; }
  .hero-slide .hero-ctas .btn { font-size: 14px; padding: 12px 18px; }
  .hero-slider-arrow { top: auto; bottom: 24px; transform: none; width: 40px; height: 40px; }
  .hero-slider-prev { left: 20px; }
  .hero-slider-next { right: 20px; }
  .hero-slider-pagination { bottom: 21px; }
}
@media (prefers-reduced-motion: reduce) { .hero-slider-track { transition: none; } }
