.home-carousel{position:relative;width:100%;background:#151515;color:#fff;overflow:hidden;border-bottom:3px solid var(--brand-yellow,#ffff00);isolation:isolate;--slide-time:5s}
.carousel-slides{display:grid;min-height:640px}.carousel-slide{grid-area:1/1;position:relative;display:flex;align-items:center;min-width:0;isolation:isolate;opacity:0;visibility:hidden;pointer-events:none;overflow:hidden}.carousel-slide.is-current{opacity:1;visibility:visible;pointer-events:auto;z-index:2}.carousel-slide.is-leaving{visibility:visible;opacity:1;z-index:1}.carousel-image,.carousel-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2;object-fit:cover;object-position:center}.carousel-shade{z-index:-1;background:linear-gradient(90deg,#0c0c0cd6 0%,#11111182 43%,#11111115 76%),linear-gradient(0deg,#090909ed,transparent 55%)}
.carousel-copy{padding-top:80px;padding-bottom:150px;position:relative;z-index:1}.carousel-kicker{color:var(--brand-yellow,#ffff00);font-size:11px;font-weight:800;letter-spacing:.3em;text-transform:uppercase;margin:0 0 22px}.carousel-title{font-size:clamp(36px,4.2vw,68px);font-weight:800;line-height:1.04;letter-spacing:-.04em;max-width:760px;margin:0 0 24px;color:#fff;text-wrap:balance;text-shadow:0 3px 22px #0006}.carousel-title span{color:var(--brand-yellow,#ffff00)}.carousel-description{font-size:17px;line-height:1.65;max-width:650px;color:#eee;margin:0 0 30px}.carousel-copy .actions{display:flex;gap:12px;flex-wrap:wrap}.carousel-copy .btn{font-size:14px;padding:15px 24px;border-radius:0;transition:background .2s,transform .2s}.carousel-copy .btn:hover{transform:translateY(-3px)}.carousel-copy .carousel-secondary{background:#ffffff12;color:#fff;border:1px solid #ffffff66;backdrop-filter:blur(5px)}.carousel-copy .carousel-secondary:hover{background:var(--brand-yellow,#ffff00);color:#151515}
.carousel-toolbar{position:absolute;bottom:28px;left:0;right:0;z-index:4;display:flex;align-items:center;gap:16px}.carousel-toolbar button{background:#14141465;border:1px solid #ffffff55;color:#fff;min-width:46px;min-height:46px;border-radius:0;padding:10px;cursor:pointer}.carousel-toolbar button:hover,.carousel-toolbar button:focus-visible{border-color:var(--brand-yellow,#ffff00);outline:2px solid var(--brand-yellow,#ffff00);outline-offset:3px}.carousel-dots{display:flex;align-items:center;gap:9px;overflow-x:auto;max-width:65%;padding:4px;scrollbar-width:none}.carousel-dots::-webkit-scrollbar{display:none}.carousel-dots button{position:relative;flex:0 0 86px;width:86px;height:54px;padding:0;min-width:0;min-height:0;border:1px solid #ffffff40;overflow:hidden;opacity:.55;transition:opacity .3s,border-color .3s}.carousel-dots button img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.carousel-dots button[aria-current=true]{opacity:1;border:2px solid var(--brand-yellow,#ffff00)}.carousel-dots button:hover{opacity:1}.carousel-thumb-progress{position:absolute;bottom:0;left:0;height:3px;width:100%;background:var(--brand-yellow,#ffff00);transform:scaleX(0);transform-origin:left}.is-playing .carousel-dots button[aria-current=true] .carousel-thumb-progress{animation:carousel-progress var(--slide-time) linear forwards}.carousel-counter{margin-left:auto;font:700 12px monospace;letter-spacing:.15em;white-space:nowrap;color:#ddd}.carousel-buttons{display:flex;gap:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.home-carousel:focus-visible{outline:3px solid var(--brand-yellow,#ffff00);outline-offset:-4px}
.carousel-slide.is-current .carousel-image{animation:carousel-drift 6.2s ease-out both}.carousel-slide.is-entering .carousel-kicker{animation:carousel-copy-in .65s .12s both}.carousel-slide.is-entering .carousel-title{animation:carousel-copy-in .8s .2s both}.carousel-slide.is-entering .carousel-description{animation:carousel-copy-in .8s .3s both}.carousel-slide.is-entering .actions{animation:carousel-copy-in .8s .4s both}.home-carousel[data-effect=glide] .is-entering{animation:carousel-glide-in 1s cubic-bezier(.22,.7,.2,1) both}.home-carousel[data-effect=glide] .is-leaving{animation:carousel-glide-out 1s ease both}.home-carousel[data-effect=reveal] .is-entering{animation:carousel-reveal 1s cubic-bezier(.22,.7,.2,1) both}.home-carousel[data-effect=dissolve] .is-entering{animation:carousel-dissolve 1s ease both}.home-carousel[data-direction=backward]{--travel:-6%}.home-carousel[data-direction=forward]{--travel:6%}
@keyframes carousel-glide-in{from{opacity:0;transform:translateX(var(--travel,6%))}to{opacity:1;transform:translateX(0)}}@keyframes carousel-glide-out{to{opacity:0;transform:translateX(calc(var(--travel,6%) * -1))}}@keyframes carousel-reveal{from{clip-path:inset(0 0 0 100%);opacity:.6}to{clip-path:inset(0);opacity:1}}@keyframes carousel-dissolve{from{opacity:0;filter:blur(7px);transform:scale(1.035)}to{opacity:1;filter:blur(0);transform:scale(1)}}@keyframes carousel-drift{from{transform:scale(1.035) translateX(.4%)}to{transform:scale(1.08) translateX(-.4%)}}@keyframes carousel-copy-in{from{opacity:0;transform:translateY(23px)}to{opacity:1;transform:translateY(0)}}@keyframes carousel-progress{to{transform:scaleX(1)}}
@media(min-width:1500px){.carousel-slides{min-height:680px}}@media(max-width:900px){.carousel-slides{min-height:600px}.carousel-copy{padding-top:65px;padding-bottom:150px}.carousel-title{max-width:650px;font-size:clamp(36px,5.5vw,52px)}.carousel-description{font-size:15px;max-width:580px}.carousel-dots{max-width:58%}.carousel-dots button{flex-basis:67px;width:67px;height:46px}.carousel-toolbar{gap:10px}}@media(max-width:560px){.carousel-slides{min-height:620px}.carousel-copy{padding-top:50px;padding-bottom:165px}.carousel-title{font-size:35px;max-width:100%;line-height:1.08}.carousel-description{font-size:14px;line-height:1.6}.carousel-copy .btn{padding:12px 15px;font-size:12px}.carousel-toolbar{bottom:18px;flex-wrap:wrap;gap:10px}.carousel-dots{order:3;max-width:100%;width:100%;gap:7px;justify-content:flex-start}.carousel-counter{margin-left:auto}.carousel-toolbar button{min-width:42px;min-height:42px}.carousel-dots button{flex:1 0 44px;width:44px;height:38px;min-width:0;min-height:0}.carousel-shade{background:linear-gradient(90deg,#0c0c0cc9,#1117),linear-gradient(0deg,#090909ed,transparent 85%)}}
@media(prefers-reduced-motion:reduce){.home-carousel *{animation:none!important;transition:none!important}.carousel-slide.is-leaving{visibility:hidden}.carousel-copy .btn:hover{transform:none}}
.home-carousel:not(.is-playing) .carousel-image{animation-play-state:paused}
