/* Content has reserved grid cells; short viewports may scroll rather than overlap. */
.header{flex-shrink:0}.brand{min-width:0}.languages{flex-shrink:0}
main,.hero,.contact{min-width:0}
.contact{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(230px,1fr);gap:20px;min-height:240px;padding-top:24px}
.center-engineering{position:relative;grid-column:2;grid-row:1;left:auto;bottom:auto;translate:none;transform:none;width:100%;height:auto;max-height:29svh;object-fit:contain;align-self:end;margin:0 12px 34px -12px}
.mascot{min-width:0}.contact-details{min-width:0;background:linear-gradient(90deg,#242426f5 75%,#242426c0);box-shadow:0 0 24px 14px #242426a0}
.hero{background:radial-gradient(ellipse at center,#242426 50%,#24242600 74%)}
.email{white-space:normal;overflow-wrap:anywhere}.map-link{max-width:100%}.map-link span{min-width:0}
.ledge{flex-shrink:0}footer>span{min-width:0}
@media(max-width:1000px) and (min-width:701px){
 .contact{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(220px,1fr);gap:12px}
 .center-engineering{margin-left:0;margin-right:0}
}
@media(max-width:700px){
 .contact{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);grid-template-rows:minmax(120px,1fr) auto;gap:16px 10px;padding-top:12px;min-height:0}
 .center-engineering{grid-column:1 / -1;grid-row:1;width:64%;height:auto;max-height:25svh;margin:0 auto;align-self:center}
 .mascot,.contact-details{grid-row:2}.contact-details{margin-top:0}
 .hero{padding-top:clamp(28px,8svh,65px)}
 .contact-details{box-shadow:none;background:none}
}
@media(max-height:600px){
 .hero{padding-top:22px}.contact{min-height:210px}
 .center-engineering{max-height:180px}
}
@media(max-width:360px){.header{gap:12px}.languages{gap:8px;font-size:12px}.map-link{padding:7px 5px;gap:5px}.map-link small{font-size:9px}}
