.js-feature-slider{position:relative;min-height:480px;overflow:hidden;border:1px solid color-mix(in srgb,var(--ev-line) 72%,var(--ev-accent) 28%);border-radius:32px;background:var(--ev-surface);box-shadow:0 28px 64px rgba(28,35,59,.16)}
.js-feature-slide{position:absolute;inset:0;display:grid;opacity:0;visibility:hidden;transition:opacity .55s ease,visibility .55s ease}
.js-feature-slide.is-active{opacity:1;visibility:visible;z-index:1}
.js-feature-slide img{width:100%;height:100%;min-height:480px;object-fit:cover}
.js-feature-slide::after{content:"";position:absolute;inset:42% 0 0;background:linear-gradient(180deg,transparent,rgba(19,25,43,.82))}
.js-feature-caption{position:absolute;z-index:2;left:28px;right:28px;bottom:68px;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.28)}
.js-feature-caption span{display:inline-block;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.18);backdrop-filter:blur(8px);font-size:12px;font-weight:700}
.js-feature-caption strong{display:block;margin-top:10px;font-size:clamp(20px,2.4vw,29px);line-height:1.25}
.js-feature-caption p{margin-top:7px;max-width:36ch;font-size:14px;line-height:1.6;color:rgba(255,255,255,.88)}
.js-feature-controls{position:absolute;z-index:3;left:24px;right:24px;bottom:22px;display:flex;align-items:center;gap:8px}
.js-feature-dot{width:28px;height:6px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.44);cursor:pointer;transition:width .2s ease,background .2s ease}
.js-feature-dot[aria-current="true"]{width:48px;background:#fff}
.js-feature-pause{margin-left:auto;min-width:44px;min-height:44px;border:1px solid rgba(255,255,255,.45);border-radius:50%;color:#fff;background:rgba(17,24,39,.3);backdrop-filter:blur(8px);cursor:pointer}
.js-editorial-banner{position:relative;margin:clamp(28px,5vw,52px) 0 0;min-height:clamp(230px,28vw,360px);overflow:hidden;border:1px solid var(--ev-line);border-radius:clamp(22px,3vw,32px);background:var(--ev-surface);box-shadow:0 24px 52px rgba(28,35,59,.13)}
.js-editorial-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.65,.25,1)}
.js-editorial-banner::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,253,249,.22),transparent 52%);pointer-events:none}
.js-editorial-banner:hover img{transform:scale(1.018)}
.js-editorial-banner figcaption{position:absolute;z-index:1;left:22px;bottom:20px;max-width:min(430px,calc(100% - 44px));padding:10px 14px;border:1px solid rgba(255,255,255,.62);border-radius:14px;background:rgba(255,255,255,.82);backdrop-filter:blur(12px);color:#1f2940;font-size:13px;line-height:1.55;box-shadow:0 10px 25px rgba(26,32,50,.12)}
.js-card[href],a.js-card,.js-card:has(a.stretched-link){transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.js-card[href]:hover,a.js-card:hover,.js-card:has(a.stretched-link):hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--ev-accent) 38%,var(--ev-line));box-shadow:0 22px 42px rgba(28,35,59,.14)}
.js-reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.65,.25,1)}
.js-reveal.is-visible{opacity:1;transform:none}
.js-grad-text{background-size:200% 100%;animation:js-gradient-drift 8s ease infinite}
@keyframes js-gradient-drift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@media(max-width:900px){.js-feature-slider{min-height:430px}.js-feature-slide img{min-height:430px}.js-editorial-banner{min-height:250px}}
@media(max-width:560px){.js-feature-slider{min-height:390px;border-radius:24px}.js-feature-slide img{min-height:390px}.js-feature-caption{left:20px;right:20px;bottom:66px}.js-feature-controls{left:20px;right:20px}.js-editorial-banner{min-height:220px;margin-top:24px;border-radius:22px}.js-editorial-banner figcaption{left:14px;right:14px;bottom:14px;max-width:none}}
@media(prefers-reduced-motion:reduce){.js-feature-slide,.js-editorial-banner img,.js-card,.js-reveal,.js-grad-text{transition:none!important;animation:none!important}.js-reveal{opacity:1;transform:none}.js-editorial-banner:hover img,.js-card[href]:hover,a.js-card:hover{transform:none}}

