/* Final cross-page QA lock. Keep this stylesheet last in the cascade. */
html{overflow-x:clip}
body{min-width:0;overflow-x:clip}
main,main>section,.site-header>*{min-width:0}
img{display:block}
.site-header .logo,.legacy-footer .footer-brand>a{display:block;min-width:0}
.site-header .logo img,.legacy-footer .footer-brand>a>img{object-fit:contain;object-position:left center}
.page-hero h1,.product-summary h1,.treatment-detail-copy h1,.contact h1{overflow-wrap:anywhere}
.product-summary h1,.treatment-detail-copy h1{font-size:clamp(50px,5.75vw,78px)}
.product-reference-tabs .product-tabs{position:-webkit-sticky!important;position:sticky!important;top:0!important;max-width:100%;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
.product-reference-tabs .product-tabs button,.overview-tabs>nav button{flex:0 0 auto}
.product-reference-tabs .product-tabs button:focus-visible,.overview-tabs>nav button:focus-visible,.mobile-primary-nav a:focus-visible,.mobile-primary-nav button:focus-visible{outline:2px solid var(--gold);outline-offset:-3px}
.product-panel{scroll-margin-top:72px}
.product-card,.product-card-body,.catalogue-main,.treatment-detail-content,.treatment-products-sidebar{min-width:0}
.product-card-body h3,.footer-contact-lines a,.contact dd{overflow-wrap:anywhere}

@media(max-width:700px){
 :root{--mobile-gutter:16px}
 .site-header>.mobile-company-panel{top:100%!important;max-width:calc(100vw - 32px)!important}
 .home-page .hero-slider{height:calc(100svh - 122px)!important;min-height:470px!important}
 .product-summary h1,.treatment-detail-copy h1{font-size:clamp(34px,10.5vw,43px)!important}
 .product-information .product-tabs{top:0!important;scroll-snap-type:x proximity}
 .product-information .product-tabs button{scroll-snap-align:center}
 .overview-tabs>nav{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
 .catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .catalogue-grid .product-card{width:100%;max-width:none}
 .catalogue-grid .product-card-body h3{hyphens:auto}
 .section-footer-action{justify-content:center}
 .footer-directory{display:flex!important;flex-direction:column!important}
 .footer-newsletter--mobile{order:99!important}
}

@media(max-width:360px){
 .mobile-primary-nav a,.mobile-primary-nav button{font-size:11px!important}
 .catalogue-grid{gap:7px!important}
 .catalogue-grid .product-card .product-image{height:116px!important}
 .catalogue-grid .product-card-body{padding:12px 9px!important;min-height:158px!important}
 .catalogue-grid .product-card-body h3{font-size:13px!important}
}

@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
}
