.model-wrap{width:min(1440px,calc(100% - 96px));margin-inline:auto}
.model-intro{padding:38px 0 25px}
.model-intro .eyebrow{margin-bottom:12px;font-size:9px}
.model-intro h1{font-size:32px;font-weight:550;letter-spacing:-.6px;line-height:1.5;margin:0 0 9px}
.model-intro>p:last-child{font-size:12px;color:#8494a9;margin:0}
.media-section{margin-bottom:43px;min-width:0}
.media-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:8px}
.media-heading h2{font-size:17px;font-weight:550;margin:0;white-space:nowrap}
.media-heading h2 span{font:8px var(--mono);letter-spacing:1.5px;color:#9aacbf;margin-left:12px}
.media-heading>div{display:flex;align-items:center;gap:17px}
.rail-hint{font-size:10px;color:#94a3b7}
.rail-toggle{font-size:10px;padding:5px 10px;color:#6f8cad;background:#edf3fc;border:1px solid #dbe6f6;border-radius:4px;white-space:nowrap}
.rail-toggle:hover,.rail-toggle[aria-pressed=true]{color:var(--blue);border-color:#adc9ef}
.media-rail{min-width:0}
.carousel-stage{--card-width:min(61vw,780px);--side-shift:min(46vw,590px);--drag-x:0px;height:clamp(330px,36vw,470px);position:relative;overflow:hidden;overflow:clip;overflow-anchor:none;touch-action:pan-y pinch-zoom;user-select:none;cursor:grab;border-radius:9px}
.carousel-stage.is-dragging{cursor:grabbing}
.carousel-slides{height:100%;position:relative}
.carousel-slide{position:absolute;left:50%;top:10px;width:var(--card-width);height:calc(100% - 20px);margin:0;opacity:0;transform:translateX(calc(-50% + var(--drag-x))) scale(.66);transform-origin:50% 50%;pointer-events:none;z-index:0;transition:transform .4s cubic-bezier(.22,.75,.25,1),opacity .35s ease}
.carousel-slide.is-active{opacity:1;transform:translateX(calc(-50% + var(--drag-x))) scale(1);pointer-events:auto;z-index:3}
.carousel-slide.is-prev{opacity:.58;transform:translateX(calc(-50% - var(--side-shift) + var(--drag-x))) scale(.78);pointer-events:auto;z-index:1;cursor:pointer}
.carousel-slide.is-next{opacity:.58;transform:translateX(calc(-50% + var(--side-shift) + var(--drag-x))) scale(.78);pointer-events:auto;z-index:1;cursor:pointer}
.carousel-slide.is-before{transform:translateX(calc(-50% - var(--side-shift)*2)) scale(.66)}
.carousel-slide.is-after{transform:translateX(calc(-50% + var(--side-shift)*2)) scale(.66)}
.carousel-stage.is-dragging .carousel-slide{transition:none}
.slide-visual{display:block;width:100%;height:calc(100% - 33px);border-radius:9px;border:1px solid #d7e3f2;background:#eaf0f8;overflow:hidden}
.image-open{padding:0;cursor:zoom-in}
.slide-visual img,.slide-visual video{display:block;width:100%;height:100%;object-fit:contain}
.carousel-slide:not(.is-active) .slide-visual img,.carousel-slide:not(.is-active) .slide-visual video{object-fit:cover;pointer-events:none}
.slide-visual video{background:#121924}
.carousel-slide figcaption{text-align:center;padding-top:10px;color:#6e87a6;font-size:11px;opacity:0;transition:opacity .2s}
.carousel-slide.is-active figcaption{opacity:1}
.carousel-slide figcaption span{font:9px var(--mono);margin-left:13px;color:#9baec6}
.carousel-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:7px}
.carousel-arrow{display:grid;place-items:center;width:32px;height:32px;border:1px solid #dbe6f5;background:#f8fbff;border-radius:50%;color:#7193bf;font:23px/1 var(--font);padding:0}
.carousel-arrow:hover{color:var(--blue);border-color:#9fbfe9;background:#edf4ff}
.carousel-dots{display:flex;align-items:center;gap:5px}
.carousel-dot{width:16px;height:22px;padding:0;background:none;position:relative}
.carousel-dot:after{content:"";display:block;position:absolute;width:5px;height:5px;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:#c7d5e8;transition:background .2s,width .2s}
.carousel-dot[aria-current=true]:after{width:14px;border-radius:3px;background:#5f9aed}
.carousel-count{font:9px var(--mono);color:#99abc1;min-width:38px}
.model-page .footer{margin-top:12px;padding-top:23px;padding-bottom:25px}
.model-lightbox{width:min(1100px,94vw)}
.lightbox-top{display:flex;align-items:center;justify-content:space-between;padding:13px 19px;border-bottom:1px solid var(--line);font-size:12px;color:#6e87a8}
.lightbox-stage{padding:12px;background:#edf2fa;display:flex;align-items:center;justify-content:center}
.lightbox-stage img{display:block;max-width:100%;width:auto;max-height:72vh;max-height:72dvh;object-fit:contain}
.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 20px;color:#8196b0;font-size:11px}
.lightbox-bottom button{padding:3px 0;background:none;color:#5c83b5;font-size:11px}
.lightbox-bottom>a{margin-left:auto;color:var(--blue);font-size:10px}
@media(max-width:1100px){.model-wrap{width:calc(100% - 64px)}.carousel-stage{--card-width:64vw;--side-shift:48vw;height:390px}}
@media(max-width:800px){.model-wrap{width:calc(100% - 48px)}.model-intro{padding-top:32px}.model-intro h1{font-size:29px}.carousel-stage{--card-width:68vw;--side-shift:51vw;height:350px}.model-page .footer{padding-bottom:25px}}
@media(max-width:550px){.model-wrap{width:calc(100% - 36px)}.model-intro{padding:29px 0 24px}.model-intro h1{font-size:26px}.model-intro>p:last-child{font-size:11px}.model-intro .eyebrow{font-size:8px}.media-section{margin-bottom:31px}.media-heading{gap:10px;margin-bottom:6px}.media-heading h2{font-size:16px}.media-heading h2 span{font-size:7px;margin-left:7px}.media-heading>div{gap:8px}.rail-hint{font-size:8px}.rail-toggle{font-size:9px;padding:4px 7px}.carousel-stage{--card-width:74vw;--side-shift:56vw;height:315px}.video-rail .carousel-stage{height:270px}.carousel-slide{top:9px;height:calc(100% - 18px)}.slide-visual{border-radius:6px}.carousel-controls{gap:9px;margin-top:3px}.carousel-arrow{width:28px;height:28px;font-size:21px}.carousel-dots{gap:2px}.carousel-dot{width:13px}.carousel-count{font-size:8px;min-width:32px}.carousel-slide figcaption{font-size:10px;padding-top:9px}.carousel-slide figcaption span{font-size:8px}.lightbox-top{padding:10px 13px}.lightbox-stage{padding:7px}.lightbox-stage img{max-height:67dvh}.lightbox-bottom{gap:10px;flex-wrap:wrap;padding:12px;font-size:10px}.lightbox-bottom button{font-size:10px}.lightbox-bottom>a{font-size:9px}}
@media(prefers-reduced-motion:reduce){.carousel-slide,.carousel-dot:after{transition:none}}

