/* FadeCase site slider — namespaced .t4-*, drop-in for T4 layouts.
   Ratio lock: 1920x850 desktop/tablet, 1080x1350 (4:5) below 768px. */
.t4-fader{--dur:5s;position:relative}
.t4-fader *{box-sizing:border-box}

.t4-fader-stage{
    position:relative;aspect-ratio:1920/850;border-radius:22px;overflow:hidden;
    background:#0b1118;outline:none;touch-action:pan-y;
    box-shadow:0 22px 44px -22px rgba(18,33,46,.5);
}
.t4-fader-stage figure figcaption {
    background-color: unset !important;
    text-transform: unset !important;
}
.t4-fader-stage:focus-visible{box-shadow:0 0 0 3px #f0a41c,0 22px 44px -22px rgba(18,33,46,.5)}
.t4-slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .95s ease;z-index:1}
.t4-slide.is-active{opacity:1;z-index:2}
.t4-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none;transform:scale(1.06)}
.t4-slide.is-active img{#animation:t4kb 7s ease-out both}
@keyframes t4kb{from{transform:scale(1.06)}to{transform:scale(1)}}
.t4-slide::after{content:"";position:absolute;left:0;right:0;bottom:0;height:54%;z-index:2;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(7,11,17,.66))}

.t4-slide-caption{position:absolute;left:0;right:0;bottom:44px;z-index:3;padding:0 clamp(18px,3.4vw,36px);display:flex;flex-direction:column;gap:8px;color:#fff;pointer-events:none}
.t4-slide-caption.cap-left{align-items:flex-start;text-align:left}
.t4-slide-caption.cap-center{align-items:center;text-align:center}
.t4-slide-caption.cap-right{align-items:flex-end;text-align:right}
.t4-cap-text{font-weight:650;font-size:clamp(15px,1.9vw,22px);line-height:1.25;max-width:44ch;text-shadow:0 2px 14px rgba(0,0,0,.45)}
.t4-slide.is-active .t4-slide-caption{animation:t4cap .7s .3s cubic-bezier(.2,.7,.2,1) both}
@keyframes t4cap{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

.t4-fader-controls{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);z-index:4;display:flex;align-items:center;gap:8px}
.t4-fader-dots{display:flex;gap:7px;padding:6px 8px;border-radius:999px;background:rgba(9,14,20,.22)}
.t4-dot{position:relative;width:8px;height:8px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.42);cursor:pointer;transition:background .3s,width .35s cubic-bezier(.3,1.2,.4,1)}
.t4-dot:hover{background:rgba(255,255,255,.85)}
.t4-dot.is-active{width:32px;background:rgba(255,255,255,.32)}
.t4-dot .fill{position:absolute;inset:0;border-radius:999px;background:rgba(255,255,255,.95);transform:scaleX(0);transform-origin:left}
.t4-dot.is-active .fill{animation:t4fill var(--dur) linear forwards}
.t4-fader.paused .t4-dot.is-active .fill{animation-play-state:paused}
.t4-fader.no-auto .t4-dot.is-active .fill{animation:none;transform:scaleX(1);opacity:.75}
@keyframes t4fill{to{transform:scaleX(1)}}
.t4-fader-pp{width:27px;height:27px;padding:0;border:0;border-radius:999px;background:rgba(9,14,20,.22);display:grid;place-items:center;cursor:pointer;transition:background .3s,transform .2s}
.t4-fader-pp:hover{background:rgba(9,14,20,.42);transform:scale(1.1)}
.t4-fader-pp svg{width:9px;height:9px;fill:rgba(255,255,255,.92)}
.t4-fader-pp .ic-pause{display:block}
.t4-fader-pp .ic-play{display:none}
.t4-fader-pp:not(.is-playing) .ic-pause{display:none}
.t4-fader-pp:not(.is-playing) .ic-play{display:block}

/* description drawer — slide n renders n columns (1→4), hover-open on desktop, pinned on mobile */
.t4-fader-drawer{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .55s cubic-bezier(.4,0,.2,1),opacity .45s ease}
.t4-fader-drawer.open{grid-template-rows:1fr;opacity:1}
.t4-drawer-clip{overflow:hidden;min-height:0}
.t4-drawer-inner{padding-top:1em; padding-bottom: 0;}
.t4-drawer-panel{display:none}
.t4-drawer-panel.is-current{display:block}
.t4-drawer-grid{display:grid;gap:clamp(14px,2.6vw,30px);background:#fff;border:1px solid rgba(18,33,46,.16);border-radius:16px;padding:clamp(16px,2.4vw,26px);transform:translateY(10px);transition:transform .55s cubic-bezier(.4,0,.2,1)}
.t4-fader-drawer.open .t4-drawer-grid{transform:none}
.t4-drawer-grid.cols-1{grid-template-columns:1fr 1fr}
.t4-drawer-grid.cols-2{grid-template-columns:1fr 1fr}
.t4-drawer-grid.cols-3{grid-template-columns:1fr 1fr 1fr}
.t4-drawer-grid.cols-4{grid-template-columns:1fr 1fr 1fr 1fr}
.t4-drawer-grid.cols-1 .d-col + .d-col,
.t4-drawer-grid.cols-2 .d-col + .d-col,
.t4-drawer-grid.cols-3 .d-col + .d-col,
.t4-drawer-grid.cols-4 .d-col + .d-col{border-left:1px solid rgba(18,33,46,.14);padding-left:clamp(12px,2vw,24px)}
.d-tag{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#0e7f72;margin-bottom:8px}
.d-tag::before{content:"";display:inline-block;width:14px;height:2px;background:#f0a41c;vertical-align:middle;margin-right:7px}
.t4-drawer-title{font-weight:750;font-size:clamp(19px,2.1vw,28px);line-height:1.1;margin:0}
.d-col p{font-size:13.5px;line-height:1.6;color:#4c5f70;margin:0}

@media (max-width:767px){
    .t4-fader-stage{aspect-ratio:1080/1350}
    .t4-fader-drawer{grid-template-rows:1fr !important;opacity:1 !important}
    .t4-drawer-grid{grid-template-columns:1fr !important}
    .d-col + .d-col{border-left:0 !important;padding-left:0 !important;padding-top:12px;border-top:1px dashed rgba(18,33,46,.16)}
}
@media (prefers-reduced-motion:reduce){
    .t4-slide,.t4-fader-drawer,.t4-drawer-grid{transition-duration:.01ms !important}
    .t4-slide.is-active img,.t4-slide.is-active .t4-slide-caption,.t4-dot.is-active .fill{animation:none !important}
}
/* template adjustment css */
.t4-sideshow .t4-section-inner {
    padding-top: 2rem !important;
    padding-bottom: 3rem !important;
}
.t4-header {
    background-color: unset !important;
}
.t4-megamenu.animate.slide .dropdown .dropdown-menu {border-radius: 15px}
@media screen and (min-width:10px) and (max-width:767px){
    .t4-drawer-inner{padding-top:1em; padding-bottom: 1em;}
    .t4-sideshow .t4-section-inner {
        padding-top: 2rem !important;
        padding-bottom: 2rem !important;
    }
}
