/* Vehicle cards: edge-to-edge photographs with readable overlaid content. */
.model-card:has(.model-photo){position:relative;isolation:isolate;min-height:330px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:#17333d;border:0;padding:27px;color:white;box-shadow:0 6px 22px #10273a14}
.model-card .model-photo{position:absolute;inset:0;z-index:-2;height:100%;margin:0;border-radius:0;display:block;background:linear-gradient(135deg,#627e87,#183442)}
.model-card .model-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 38%;padding:0;transition:transform .5s ease}
.model-card:has(.model-photo):after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#061b2800 10%,#061b282b 30%,#061b28b8 58%,#061b28f5 100%);pointer-events:none}
.model-card:has(.model-photo) .eyebrow{color:#86e0c6;margin-bottom:11px;font-size:10px;letter-spacing:.15em}
.model-card:has(.model-photo) h3{color:white;font-size:29px;margin-bottom:12px;text-shadow:0 1px 8px #0003}
.model-card:has(.model-photo) p{color:#d6e4e8;font-size:13px;margin-bottom:22px}
.model-card:has(.model-photo)>span:last-child{color:#a2f0d9;font-size:12px}
.model-card:hover .model-photo img{transform:scale(1.045)}
/* 1920 x 800 desktop stage; contain keeps all source image content visible. */
.hero.hero-carousel{display:block;background:#0d1e2f;width:100%;height:auto;min-height:0;aspect-ratio:12/5;position:relative;overflow:hidden;color:white;isolation:isolate}
.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility .8s;display:flex;align-items:center;pointer-events:none}
.hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
/* Fade the actual image edge, not the full-width contain box: the latter leaves a hard letterbox seam. */
.hero-slide>img{position:absolute;inset:0 0 0 auto;width:auto;max-width:100%;height:100%;object-fit:contain;object-position:right center;z-index:-2;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 24%);mask-image:linear-gradient(to right,transparent 0%,#000 24%)}
.hero-slide:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#071c2be6 0%,#071c2ba6 37%,#071c2b25 72%,#071c2b08)}
.hero-carousel .hero-inner{width:min(1600px,calc(100% - 160px));margin:auto;padding:50px 0 95px;position:relative}
.hero-carousel h1,.hero-carousel h2{font-size:clamp(42px,4.1vw,82px);max-width:770px;line-height:1.1;color:white;margin-bottom:25px}
.hero-carousel p{max-width:610px;font-size:clamp(16px,1.1vw,21px);line-height:1.8;color:#d4e1e8;margin:22px 0 33px}
.hero-carousel .eyebrow{font-size:12px;color:#82dbc3}.hero-carousel .button{min-height:51px;padding:14px 25px}
.hero-carousel .concept{z-index:4;pointer-events:none;bottom:19px;inset-inline-end:25px;font-size:10px}
.carousel-arrow{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:43px;height:54px;border:1px solid #ffffff45;border-radius:6px;color:white;background:#071b2855;font-size:33px;line-height:1;display:grid;place-items:center;cursor:pointer}
.carousel-arrow:hover{background:#00866bdd}.carousel-arrow.prev{left:20px}.carousel-arrow.next{right:20px}
.carousel-controls{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:13px;z-index:5;direction:ltr}
.carousel-dots{display:flex;gap:10px;align-items:center}.carousel-dot{display:block;padding:0;width:10px;height:10px;border-radius:20px;border:1px solid #ffffff99;background:#ffffff33;transition:width .25s,background .25s;cursor:pointer}
.carousel-dot[aria-current=true]{width:34px;background:#77d9bc;border-color:#77d9bc}
[dir=rtl] .hero-slide:before{background:linear-gradient(270deg,#071c2be6 0%,#071c2ba6 37%,#071c2b25 72%,#071c2b08)}
[dir=rtl] .hero-carousel .hero-inner{direction:rtl;text-align:right}
@media(min-width:2200px){.hero-carousel .hero-inner{width:calc(100% - 240px);max-width:1920px}.hero-carousel h1,.hero-carousel h2{font-size:94px;max-width:900px}}
@media(max-width:1100px){.hero-carousel .hero-inner{width:calc(100% - 120px)}.hero-carousel h1,.hero-carousel h2{font-size:43px;max-width:600px}.hero-carousel p{font-size:15px;max-width:480px}.hero-carousel .button{min-height:43px;padding:11px 17px;font-size:12px}}
@media(max-width:800px){.hero.hero-carousel{aspect-ratio:auto;min-height:620px;height:calc(100svh - 68px);max-height:880px}.hero-carousel .hero-inner{width:calc(100% - 72px);padding:55px 0 90px}.hero-carousel h1,.hero-carousel h2{font-size:44px;max-width:560px}.hero-slide>img{object-position:60% center}.hero-slide:before{background:linear-gradient(90deg,#071c2bdb,#071c2b80)}.carousel-arrow{width:27px;height:45px;border:0;font-size:26px}.carousel-arrow.prev{left:3px}.carousel-arrow.next{right:3px}.carousel-controls{bottom:44px}.model-card:has(.model-photo){min-height:310px;padding:24px}}
@media(max-width:500px){.model-card:has(.model-photo){min-height:265px;padding:19px 16px}.model-card:has(.model-photo) h3{font-size:23px}.model-card:has(.model-photo) p{font-size:11px;margin-bottom:16px}.model-card:has(.model-photo)>span:last-child{font-size:11px}.hero-carousel h1,.hero-carousel h2{font-size:39px}.hero-carousel p{font-size:15px}.hero-carousel .hero-inner{width:calc(100% - 60px)}.hero-carousel .eyebrow{font-size:10px}.hero-carousel .button{padding:10px 13px;font-size:11px}.hero-carousel .concept{inset-inline-end:14px;font-size:8px;bottom:13px}}
@media(prefers-reduced-motion:reduce){.hero-slide,.carousel-dot,.model-card .model-photo img{transition:none}.model-card:hover .model-photo img{transform:none}}
.about-video{max-width:960px;margin:0 auto}
.about-video-el{display:block;width:100%;height:auto;aspect-ratio:16/9;border-radius:var(--radius);background:#0d1e2f;box-shadow:0 18px 50px #0d1e2f22}
.rotation-note{display:block;margin:-6px 0 14px;font-size:12px;line-height:1.6}
