/* Shared intrinsic sizing: keep content and controls inside narrow viewports. */
*,*::before,*::after{box-sizing:border-box}
img,video,iframe{max-width:100%}
:where(main,section,article,header,footer,nav,.container,.section-head,.hero-grid,.cards,.grid,.footer-grid,.steps,.service-grid,.case-grid,.facts,.specs,.two,.stats,.wrap)>*{min-width:0}
:where(h1,h2,h3,p,li,a,button,label,dt,dd,strong,span,.eyebrow,.kicker){overflow-wrap:anywhere}
:where(.section-head,.nav-inner)>*{max-width:100%}
@media(max-width:900px){
 /* Compact detail headers have no menu button; their links must remain available. */
 .nav:not(:has(.menu-btn)) .nav-inner{height:auto;min-height:90px;flex-wrap:wrap;gap:14px;padding-top:18px;padding-bottom:18px}
 .nav:not(:has(.menu-btn)) .nav-links{display:flex;flex-wrap:wrap;gap:14px;min-width:0;max-width:100%}
 .nav:not(:has(.menu-btn)) .nav-links a:not(.btn){display:inline-flex}
 .nav:not(:has(.menu-btn)) .nav-inner>div{flex-wrap:wrap;min-width:0;max-width:100%}
 nav:not(.nav){flex-wrap:wrap;gap:14px}
 .section-head{flex-wrap:wrap}
 .brand{min-width:0;max-width:100%;white-space:normal}
}
#bep-consent,#bep-consent *{box-sizing:border-box;min-width:0}

@media(max-width:900px){.stats,.navlinks{flex-wrap:wrap}.navlinks{min-width:0;max-width:100%}}
