/* Full-width slider: one sizing rule and explicit overlay layers. */
.site-header{background:linear-gradient(#000b,transparent)}
.top-slider{position:relative;isolation:isolate;display:block;width:var(--slider-width,100%);height:auto;aspect-ratio:var(--slider-ratio,16/9);min-height:0;margin:0 auto;padding:0;overflow:hidden;background:#090909;container-type:inline-size}
.top-slider .top-slide{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;padding:0;opacity:0;visibility:hidden;z-index:0;transition:opacity .6s ease,visibility .6s}
.top-slider .top-slide.is-active{opacity:1;visibility:visible;z-index:1}
.top-slider .slide-image{position:absolute;inset:0;display:block;width:100%;max-width:none;height:100%;margin:0;object-fit:cover;z-index:0}
.top-slider .top-slide:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#050505e8,#0505058a 48%,#05050520),linear-gradient(0deg,#0009,transparent 45%);z-index:1;pointer-events:none}
.top-slider .slide-content{position:absolute;top:100px;bottom:90px;left:max(24px,calc((100% - 1240px)/2));right:auto;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;width:min(64%,800px);height:auto;max-height:none;margin:0;padding:0;overflow:visible;color:#f5f2eb;z-index:2}
.top-slider .slide-content .eyebrow{margin:0 0 14px;color:#e9b52a;font-size:clamp(10px,1.15cqw,13px)}
.top-slider .slide-content h1{font:950 clamp(30px,5.5cqw,92px)/1.02 'Arial Black',Arial,sans-serif;text-transform:uppercase;letter-spacing:-.055em;max-width:100%;margin:0;color:#f5f2eb;overflow-wrap:anywhere}
.top-slider .slide-content>p:not(.eyebrow){max-width:530px;font-size:clamp(14px,1.65cqw,18px);line-height:1.65;color:#ddd;margin:20px 0 24px}
.top-slider .slide-content .button{position:relative;z-index:3;flex-shrink:0}
.top-slider .slider-controls{position:absolute;left:max(24px,calc((100% - 1192px)/2));right:max(24px,calc((100% - 1192px)/2));bottom:24px;display:flex;align-items:center;gap:12px;z-index:4}
.top-slider .slider-controls>button{background:#ffffff10;border:1px solid #ffffff50;color:#fff;min-width:44px;min-height:44px;cursor:pointer}
.top-slider .slider-dots{display:flex;flex-wrap:wrap;gap:10px;margin-right:auto}
.top-slider .slider-dots button{width:36px;height:6px;padding:0;border:0;background:#ffffff55;cursor:pointer}
.top-slider .slider-dots button[aria-current=true]{background:#e9b52a}
.top-slider .slider-counter{color:#ccc;font-size:.8rem;letter-spacing:.12em;margin-right:16px}
.top-slider .slider-pause{padding:0 12px}
.top-slider button:focus-visible{outline:3px solid #e9b52a;outline-offset:5px}
.top-slider~.hero{min-height:640px;height:auto;padding-top:85px}
.top-slider~.hero .hero-visual{height:540px}
@media(max-width:900px){.top-slider{aspect-ratio:4/3}.top-slider .slide-content{top:100px;bottom:85px;left:24px;right:24px;width:auto;max-width:650px}.top-slider .slide-content h1{font-size:clamp(30px,6.5cqw,58px)}.top-slider~.hero .hero-visual{height:60vh}}
@media(max-width:560px){.site-header{height:72px}.top-slider{aspect-ratio:4/5}.top-slider .slide-content{top:90px;bottom:76px;max-width:none}.top-slider .slide-content h1{font-size:clamp(27px,8.5cqw,46px)}.top-slider .slide-content .eyebrow{font-size:10px;letter-spacing:.13em;margin-bottom:10px}.top-slider .slide-content>p:not(.eyebrow){font-size:14px;line-height:1.45;margin:14px 0 18px}.top-slider .slide-content .button{min-height:42px;font-size:11px;padding:0 14px}.top-slider .slider-controls{bottom:18px;gap:8px}.top-slider .slider-controls>button{min-width:38px;min-height:38px}.top-slider .slider-dots{max-width:100px}.top-slider .slider-dots button{width:23px}.top-slider .slider-counter{display:none}.top-slider .slider-pause{padding:0 8px}}
@media(prefers-reduced-motion:reduce){.top-slider .top-slide{transition:none}}

/* Explicit dimensions saved in Admin → Homepage slider. */
@media(min-width:901px){.top-slider[data-size-mode="pixels"]{height:var(--slider-height,600px);aspect-ratio:auto}}
@media(max-width:900px){.top-slider{width:100%;height:auto;aspect-ratio:4/3}}
@media(max-width:560px){.top-slider{aspect-ratio:4/5}}
