/* Photographs have separate banner and card framing. */
.with-hero .hero.vehicle-hero{height:max(510px,33.333vw);min-height:0;padding-top:88px;overflow:hidden}
.vehicle-hero .hero-img{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover!important;object-position:75% center!important}
.vehicle-hero .hero-content,.hero.small.vehicle-hero .hero-content{width:43%;padding:30px 0;max-width:610px}
.vehicle-hero h1,.hero.small.vehicle-hero h1{font-size:clamp(2.4rem,3.5vw,4.5rem);line-height:1.08}
.vehicle-hero .hero-content p{font-size:clamp(1rem,1.2vw,1.2rem)}
.vehicle-hero:after{background:linear-gradient(90deg,#031b30e6 0%,#031b30a8 32%,#031b3020 58%,transparent 73%)}
.price-photo img,.model-card img{object-position:88% center}
.outside-teaser .model-card{aspect-ratio:1.65;min-height:0;height:auto}
.outside-teaser .model-card img{height:100%;width:100%;object-fit:cover;object-position:88% center}
.with-hero .hero.factory-hero{height:calc(33.333vw + 88px);min-height:0;padding-top:88px}
.factory-hero .hero-img{top:88px;height:calc(100% - 88px);width:100%;object-fit:cover;object-position:center}
.hero.small.factory-hero>.wrap{width:88%;max-width:none}
.hero.small.factory-hero .hero-content{width:35%;max-width:610px;padding:28px 0}
.hero.small.factory-hero h1{font-size:clamp(2.4rem,3vw,4.1rem);line-height:1.08}
.factory-hero h1 br{display:none}
.factory-hero .hero-content p{font-size:clamp(1rem,1.05vw,1.25rem);max-width:440px;margin-top:20px}
.factory-hero .actions{gap:18px;margin-top:26px}
.factory-hero .btn{padding:14px 20px}
.factory-hero:after{background:linear-gradient(90deg,#031b30ed 0%,#031b30bb 26%,#031b3055 36%,transparent 43%)}
/* Process cards no longer inherit the obsolete icon/text column grid. */
.technology-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.technology-grid article{display:flex;flex-direction:column;min-width:0;padding:0 0 26px;gap:0}
.technology-grid article>img{display:block;flex:none;width:100%;height:auto;aspect-ratio:1.75;object-fit:cover}
.technology-grid article h4{font-size:1.3rem;line-height:1.35;margin:23px 25px 12px}
.technology-grid article p{font-size:1rem;line-height:1.65;margin:0 25px 20px}
.technology-grid article .process-credit{margin:auto 25px 0;font-size:.75rem;line-height:1.5}
.technology-grid .process-copy{display:flex;flex:1;flex-direction:column}
.technology-grid article.process-wide{grid-column:1/-1;display:grid;grid-template-columns:1.08fr 1fr;padding:0}
.technology-grid article.process-wide>img{height:100%;min-height:320px;aspect-ratio:auto}
.technology-grid .process-wide .process-copy{padding:20px 10px 35px;justify-content:center}
.technology-grid .process-wide .process-credit{margin-top:15px}
.terminal-feature .split{align-items:center}
.terminal-visual{margin:0}
.terminal-visual img{width:100%;height:auto;border-radius:7px}
.terminal-visual figcaption{font-size:.75rem;color:#6c7e91;margin-top:10px}
.terminal-feature h2{margin-bottom:25px}
.terminal-feature p{font-size:1.05rem;line-height:1.7}
.energy-pair article>img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;padding:0;clip-path:none}
.detail-cards img[src*="energy-installation"]{padding:0;clip-path:none;object-fit:cover;object-position:center}
.visit-booking{padding:26px 30px;margin:0 0 28px;border-left:3px solid var(--gold);background:#e8f0fa;display:flex;gap:35px;align-items:center;justify-content:space-between}
.visit-booking h3{font-size:1.35rem;margin-bottom:12px}
.visit-booking p{max-width:740px;font-size:1rem;line-height:1.6}
.visit-booking .btn{flex:none}
.faq p a{display:inline-block;color:var(--blue);text-decoration:underline;margin-top:8px}
@media(max-width:1100px){
 .with-hero .hero.vehicle-hero,.with-hero .hero.factory-hero{height:auto;min-height:0;padding-top:88px;display:flex;flex-direction:column;align-items:stretch;background:#071c2c}
 .vehicle-hero .hero-img,.factory-hero .hero-img{position:relative;inset:auto;order:0;display:block;width:100%;height:auto;max-height:none;aspect-ratio:2.4;object-fit:cover!important;object-position:88% center!important}
 .factory-hero .hero-img{aspect-ratio:1.9;object-position:80% center!important}
 .vehicle-hero:after,.factory-hero:after{display:none}
 .vehicle-hero>.wrap,.factory-hero>.wrap{order:1}
 .vehicle-hero .hero-content,.hero.small.vehicle-hero .hero-content,.hero.small.factory-hero .hero-content{width:100%;max-width:none;padding:30px 0 45px}
 .vehicle-hero h1,.hero.small.vehicle-hero h1,.hero.small.factory-hero h1{font-size:clamp(2.2rem,4.5vw,3.6rem);max-width:800px}
 .vehicle-hero h1 br,.factory-hero h1 br{display:none}
 .vehicle-hero .hero-content p,.factory-hero .hero-content p{max-width:680px;font-size:1.1rem}
 .visit-booking{align-items:flex-start;flex-direction:column;gap:22px}
}
@media(max-width:800px){
 .with-hero .hero.vehicle-hero,.with-hero .hero.factory-hero{padding-top:72px}
 .technology-grid{grid-template-columns:1fr;gap:24px}
 .technology-grid article.process-wide{display:flex;grid-column:auto}
 .technology-grid article.process-wide>img{height:auto;min-height:0;aspect-ratio:1.6}
 .technology-grid .process-wide .process-copy{padding:0 0 26px}
 .hero.vehicle-hero .hero-img{aspect-ratio:1.8}
 .factory-hero .hero-img{aspect-ratio:1.7}
 .outside-teaser .model-card{aspect-ratio:1.6}
 .visit-booking{padding:24px}
 .vehicle-hero .actions{flex-direction:row;align-items:center;flex-wrap:wrap}
}

/* A separate image area keeps every pavilion visible on smaller screens. */
@media(min-width:1101px) and (max-width:1400px){
 .with-hero .hero.factory-hero{height:auto;padding-top:88px;display:flex;flex-direction:column;align-items:stretch}
 .factory-hero .hero-img{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:3;object-fit:cover}
 .factory-hero:after{display:none}
 .hero.small.factory-hero .hero-content{width:100%;max-width:850px;padding:35px 0 45px}
 .hero.small.factory-hero h1{font-size:2.7rem}
 .factory-hero .hero-content p{max-width:660px}
}

.values-visual{margin:0}.values-visual img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:7px}.values-visual figcaption{font-size:12px;color:#6c7e91;margin-top:10px}

/* Approved floorplans keep their complete white canvas at every size. */
.plan-frame{background:#fff}.plan-frame img{width:100%;max-width:1100px;height:auto;max-height:none;object-fit:initial}
.engineering-visual{margin:0;min-width:0}.engineering-visual img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:7px}.engineering-visual figcaption{font-size:12px;color:#bdcee1;margin-top:10px}.engineering-feature .section-top>p{margin-top:0}
.lightbox:has(>img[src*="/planta."]){background:#fff;color:#061b36}.lightbox>img[src*="/planta."]{width:auto;height:auto;max-width:100%;max-height:70vh;margin:auto}.lightbox:has(>img[src*="/planta."]) .lightbox-caption{color:#536c89}.lightbox:has(>img[src*="/planta."]) .lightbox-controls{display:none}

/* User-selected Legacy card photograph; crop the screenshot frame in the card only. */
.legacy-card-photo{height:190px;overflow:hidden;border-radius:6px}.legacy-card-photo>img{display:block;width:104%;max-width:none;height:100%;margin-left:-2%;object-fit:cover;object-position:center}

/* Panoramic technology cover with readable copy and a separate mobile image. */
.technology-hero{isolation:isolate;overflow:hidden;display:flex;align-items:center;min-height:clamp(570px,37vw,760px);padding:76px 0 92px;background:#071c2c}
.technology-hero-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:64% center}
.technology-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(4,23,41,.95) 0%,rgba(4,23,41,.87) 27%,rgba(4,23,41,.54) 46%,rgba(4,23,41,.08) 74%,rgba(4,23,41,.04) 100%)}
.technology-hero .wrap{display:block;position:relative}
.technology-hero-copy{max-width:620px}
.technology-hero .eyebrow{color:#b9cde0}
.technology-hero h1{font-size:clamp(2.7rem,4.5vw,4.6rem)}
.technology-hero p{max-width:560px;color:#e0e8f0}
.technology-hero-note{position:absolute;right:6%;bottom:18px;color:#e2e9ef;font-size:11px;text-shadow:0 1px 4px #071c2c}
@media(max-width:900px){
 .technology-hero{display:flex;flex-direction:column;min-height:0;padding:0}
 .technology-hero-image{position:relative;inset:auto;order:0;width:100%;height:auto;aspect-ratio:1.85;object-position:78% center;z-index:0}
 .technology-hero:after{display:none}
 .technology-hero .wrap{order:2;padding:28px 0 42px}
 .technology-hero-copy{max-width:640px}
 .technology-hero-note{position:static;order:1;width:88%;margin:9px auto 0;font-size:10px;color:#bdcee1}
 .technology-hero h1{font-size:clamp(2.4rem,6vw,3.5rem)}
 .technology-hero p{font-size:17px;margin:21px 0}
}
@media(max-width:520px){.legacy-card-photo{height:205px}}

/* Direct contact stays clear of the cookie notice and device safe areas. */
.whatsapp-float{position:fixed;right:max(1.25rem,env(safe-area-inset-right,0px));bottom:max(var(--whatsapp-bottom,1.25rem),calc(env(safe-area-inset-bottom,0px) + 1.25rem));z-index:24;display:flex;align-items:center;justify-content:center;width:60px;height:60px;flex-shrink:0;border-radius:50%;background:#128c7e;color:#fff;border:1px solid #ffffff80;box-shadow:0 5px 22px #03142633;transition:background .18s,box-shadow .18s}
body:has(.cookie-banner:not([hidden])) .whatsapp-float{--whatsapp-bottom:14rem}
.whatsapp-float svg{display:block;width:30px;height:30px;flex-shrink:0}
.whatsapp-float:hover,.whatsapp-float:focus-visible{background:#075e54;box-shadow:0 6px 26px #0314264d}
.whatsapp-float:focus-visible{outline:3px solid #eeae37;outline-offset:4px}
.whatsapp-float-label{position:absolute;right:calc(100% + 12px);white-space:nowrap;padding:9px 14px;border:1px solid #dce5ed;border-radius:5px;background:#fff;color:#061b36;font-size:.875rem;line-height:1.4;box-shadow:0 3px 14px #0314261a;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s,visibility .18s}
.whatsapp-float:hover .whatsapp-float-label,.whatsapp-float:focus-visible .whatsapp-float-label{opacity:1;visibility:visible}
@media(max-width:800px){.whatsapp-float{width:56px;height:56px;right:max(1rem,env(safe-area-inset-right,0px))}}
@media(hover:none){.whatsapp-float-label{display:none}}
@media print{.whatsapp-float{display:none}}

.network-location .factory-store-label{color:var(--gold,#e3b452);font-weight:600;margin:8px 0 10px;font-size:15px}
