/* Only the extension and PS-floor pages opt into this layer. */
html:has(body.aboss-foundation-page), body.aboss-foundation-page { min-width:0; }
.aboss-foundation-page main { overflow-wrap:anywhere; }
.aboss-foundation-page .hero-grid > *, .aboss-foundation-page .hero-copy,
.aboss-foundation-page .technical-panel { min-width:0; }
.aboss-foundation-page main .badge, .aboss-foundation-page main .btn,
.aboss-foundation-page main .hline, .aboss-foundation-page main .small { max-width:100%; white-space:normal; }
.aboss-foundation-page .technical-panel svg { max-width:100%; height:auto; }
@media(max-width:1280px) {
 .aboss-foundation-page .site-header .nav,
 .aboss-foundation-page .site-header .primary-nav { display:none; }
 .aboss-foundation-page .menu-btn { display:inline-flex; }
}
@media(max-width:1023px) {
 .aboss-foundation-page .hero-grid { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:640px) {
 .aboss-foundation-page .site-header .header-inner { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; }
 .aboss-foundation-page .site-header .brand-text { min-width:0; overflow-wrap:anywhere; }
 .aboss-foundation-page .lang-btn, .aboss-foundation-page .menu-btn { min-height:40px; }
}

.aboss-foundation-page .hero-media { flex-direction:column; }
.aboss-foundation-page .hero-media > * { min-width:0; max-width:100%; }
