.banner-carousel{border-radius:var(--radius);border:1px solid var(--glass-border);background:var(--glass-bg);width:100%;box-shadow:var(--shadow-default);position:relative}.banner-carousel__frame{box-sizing:border-box;border-radius:inherit;width:100%;position:relative}.banner-carousel--peek{--banner-frame-inset:24px;--banner-slide-radius:16px;--banner-peek-gap:14px}.banner-carousel--peek .banner-carousel__frame{padding:var(--banner-frame-inset);aspect-ratio:10/4;background:var(--sv-card)}.banner-carousel__clip{border-radius:var(--banner-slide-radius,16px);isolation:isolate;width:100%;height:100%;overflow:hidden}.banner-carousel:not(.banner-carousel--peek) .banner-carousel__frame{aspect-ratio:16/9;overflow:hidden}.banner-carousel--peek.banner-carousel__skeleton,.banner-carousel__skeleton.banner-carousel--peek{box-sizing:border-box;padding:var(--banner-frame-inset);aspect-ratio:10/4;background:var(--sv-card)}.banner-carousel__track{height:100%;transition:transform .65s ease-in-out;display:flex}.banner-carousel__slide,.banner-carousel__poster-card{border-radius:var(--banner-slide-radius,16px);flex:0 0 100%;min-width:100%;height:100%;position:relative;overflow:hidden}.banner-carousel__link,.banner-carousel__media{border-radius:inherit;width:100%;height:100%;display:block;position:relative;overflow:hidden}.banner-carousel__cta{z-index:1;background:var(--sv-accent);min-height:2.25rem;color:var(--sv-accent-text);letter-spacing:.02em;border-radius:999px;justify-content:center;align-items:center;padding:.45rem 1.1rem;font-size:.8125rem;font-weight:800;transition:transform .18s,box-shadow .18s;display:inline-flex;position:absolute;bottom:clamp(1rem,3vw,1.75rem);right:clamp(1rem,3vw,1.75rem);box-shadow:0 8px 24px #0f172a47}.banner-carousel__link:hover .banner-carousel__cta,.banner-carousel__link:focus-visible .banner-carousel__cta{transform:translateY(-1px);box-shadow:0 10px 28px #0f172a57}.banner-carousel__image{object-fit:cover;border-radius:inherit}.banner-carousel__gradient{border-radius:inherit;display:block;position:absolute;inset:0}.banner-carousel__overlay{border-radius:inherit;pointer-events:none;background:linear-gradient(#0f172a14 0%,#0f172a05 40%,#0f172a8c 100%);position:absolute;inset:0}.banner-carousel__caption{z-index:1;color:#fff;text-shadow:0 2px 12px #00000059;position:absolute;bottom:clamp(1rem,3vw,1.75rem);left:clamp(1rem,3vw,1.75rem);right:clamp(1rem,3vw,1.75rem)}.banner-carousel__title{font-family:var(--sv-font-heading);letter-spacing:-.03em;font-size:clamp(1.125rem,2.4vw,1.75rem);font-weight:800;line-height:1.15}.banner-carousel__discount{background:var(--sv-accent);color:var(--sv-accent-text);border-radius:999px;margin-top:.5rem;padding:.25rem .75rem;font-size:.75rem;font-weight:800;display:inline-flex}.banner-carousel__nav{z-index:2;border:1px solid color-mix(in srgb, var(--sv-accent) 55%, transparent);background:color-mix(in srgb, var(--sv-accent) 88%, var(--sv-text));width:2.75rem;height:2.75rem;color:var(--sv-accent-text);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;place-items:center;transition:background .18s,transform .18s,border-color .18s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.banner-carousel__nav:hover{background:var(--sv-accent);border-color:var(--sv-accent);color:var(--sv-accent-text);transform:translateY(-50%)scale(1.04)}.banner-carousel__nav--prev{left:calc(var(--banner-frame-inset,.75rem) * .35)}.banner-carousel--peek .banner-carousel__nav--prev{left:.5rem}.banner-carousel__nav--next{right:calc(var(--banner-frame-inset,.75rem) * .35)}.banner-carousel--peek .banner-carousel__nav--next{right:.5rem}.banner-carousel__skeleton{aspect-ratio:16/9;border-radius:var(--radius);background:var(--sv-card);width:100%}.banner-carousel__skeleton.banner-carousel--peek:after{content:"";border-radius:var(--banner-slide-radius,16px);background:linear-gradient(110deg,#94a3b81f 8%,#94a3b83d 18%,#94a3b81f 33%) 0 0/200% 100%;width:100%;height:100%;animation:1.4s ease-in-out infinite banner-carousel-shimmer;display:block}.banner-carousel__skeleton:not(.banner-carousel--peek){background:linear-gradient(110deg,#94a3b81f 8%,#94a3b83d 18%,#94a3b81f 33%) 0 0/200% 100%;animation:1.4s ease-in-out infinite banner-carousel-shimmer}.banner-carousel--ready{animation:.42s ease-out banner-carousel-fade-in}@keyframes banner-carousel-shimmer{to{background-position-x:-200%}}@keyframes banner-carousel-fade-in{0%{opacity:0}to{opacity:1}}@media (max-width:900px){.banner-carousel--peek{--banner-frame-inset:18px;--banner-slide-radius:14px;--banner-peek-gap:10px}.banner-carousel--peek .banner-carousel__frame,.banner-carousel--peek.banner-carousel__skeleton,.banner-carousel__skeleton.banner-carousel--peek{aspect-ratio:16/7}}@media (max-width:640px){.banner-carousel{border-radius:14px}.banner-carousel--peek,.banner-carousel--peek-compact{--banner-frame-inset:12px;--banner-slide-radius:12px;--banner-peek-gap:0px}.banner-carousel--peek .banner-carousel__frame,.banner-carousel--peek-compact .banner-carousel__frame,.banner-carousel--peek.banner-carousel__skeleton,.banner-carousel__skeleton.banner-carousel--peek,.banner-carousel--peek-compact.banner-carousel__skeleton{aspect-ratio:16/9;padding:var(--banner-frame-inset)}.banner-carousel:not(.banner-carousel--peek):not(.banner-carousel--peek-compact) .banner-carousel__frame,.banner-carousel__skeleton:not(.banner-carousel--peek):not(.banner-carousel--peek-compact){aspect-ratio:16/9}.banner-carousel__nav{width:2.35rem;height:2.35rem}.banner-carousel--peek .banner-carousel__nav--prev,.banner-carousel--peek-compact .banner-carousel__nav--prev{left:.35rem}.banner-carousel--peek .banner-carousel__nav--next,.banner-carousel--peek-compact .banner-carousel__nav--next{right:.35rem}.banner-carousel__cta{min-height:2rem;padding:.35rem .85rem;font-size:.75rem;bottom:.75rem;right:.75rem}.banner-carousel__caption{bottom:2.75rem;left:.75rem;right:.75rem}.banner-carousel__title{font-size:clamp(1rem,4.5vw,1.25rem)}.banner-carousel__frame,.banner-carousel__clip,.banner-carousel__track{touch-action:pan-y}}@media (max-width:380px){.banner-carousel--peek .banner-carousel__frame,.banner-carousel--peek-compact .banner-carousel__frame,.banner-carousel--peek.banner-carousel__skeleton,.banner-carousel__skeleton.banner-carousel--peek{aspect-ratio:5/3}.banner-carousel__nav{width:2.1rem;height:2.1rem}}
