/* Shared layout corrections, loaded last on every language and page. */
:where(main,section,article,aside,form,.section-heading,.footer-grid) > * {min-width:0}
h1,h2,h3,.heading-style,.button,.text-link,.summary-facts dd {overflow-wrap:anywhere}
.catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.catalog-card,.catalog-card>div,.photo-card{min-width:0}
.catalog-window{width:100%;max-width:100%;aspect-ratio:auto}
.button{min-height:48px;max-width:100%}
input,select,textarea{min-width:0;font-size:1rem}
.section-heading>p{font-size:.875rem;letter-spacing:normal}
.hero h1{font-size:clamp(2rem,3.25vw,3.2rem);line-height:1.12}
.language-switch a{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:44px}
.reference-hero{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,.55fr)}
@media(max-width:1200px){
 .reference-hero{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px}
 .hero-services{display:flex;grid-column:1/-1;gap:24px;justify-content:space-between}
 .hero-services>div{flex:1;min-width:0}
 .custom-tile-row{grid-template-columns:repeat(3,minmax(0,1fr))}
 .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1050px){
 header{height:78px}
 header .menu-toggle{display:block;min-height:48px;min-width:64px;background:white;border:1px solid var(--line);padding:8px 14px}
 header #navigation{display:none;position:absolute;left:0;right:0;top:100%;padding:16px 5%;background:white;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 12px 14px #0001;max-height:calc(100dvh - 78px);overflow-y:auto}
 header #navigation.open{display:flex}
 header #navigation>a{padding:12px 8px;min-height:48px;font-size:1rem}
 header #navigation .language-switch{margin:0;gap:12px}
 header #navigation .language-switch a{min-width:48px;min-height:48px}
 .catalog-grid,.photo-grid,.cluster-cards,.cluster-services{grid-template-columns:repeat(2,minmax(0,1fr))}
 .case-family-links{grid-template-columns:repeat(3,minmax(0,1fr))}
 .product-hero-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .contact-section{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px}
}
@media(max-width:800px){
 .reference-hero,.product-hero-grid,.category-overview,.feature-split,.foam-feature,.project-article,.contact-section,.description-conversion,.custom-process{grid-template-columns:minmax(0,1fr)}
 .hero-visual{width:100%;margin:0}
 .hero-services{display:flex;flex-wrap:wrap}
 .hero-services>div{flex:1 1 180px}
 .section-heading{display:block}
 .section-heading>p{text-align:left;margin-top:12px}
 .product-summary h1,.page-intro h1,.knowledge-hero h1{font-size:clamp(2rem,5vw,2.8rem)}
 .photo-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}
 .form-row{grid-template-columns:minmax(0,1fr);gap:0}
 .contact-section h2,.inline-enquiry h2{font-size:2rem!important}
 .topic-navigation{position:static;display:grid;box-shadow:none}
}
@media(max-width:540px){
 .catalog-grid,.photo-grid,.photo-grid.three,.cluster-cards,.cluster-services,.category-route-grid,.model-grid,.quality-grid{grid-template-columns:minmax(0,1fr)}
 .custom-tile-row,.product-family-row,.case-family-links,.benefit-row{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hero-services{gap:8px}
 .hero-services>div{flex-basis:100%}
 .hero .actions{align-items:stretch;flex-direction:column}
 .hero .actions .button{justify-content:center}
 .product-family-row>a,.custom-tile-row article{padding:14px}
 .summary-facts{grid-template-columns:minmax(0,100px) minmax(0,1fr)}
 .site-footer .footer-grid{grid-template-columns:minmax(0,1fr)}
 .footer-column a,.text-link{min-height:44px;align-content:center}
 .spec-table{table-layout:fixed;overflow-wrap:anywhere}
 .spec-table th,.spec-table td{padding:12px 8px}
 .faq-grid summary{padding-top:12px;padding-bottom:12px}
}
@media(min-width:1600px){.site-footer{padding-left:max(5%,calc((100% - 1440px)/2));padding-right:max(5%,calc((100% - 1440px)/2))}}
