/* Performance and usability improvements — v39 */
img{max-width:100%;height:auto}
.brand-logo{aspect-ratio:433/320}
.product-img img,.hero-visual>img,.recommended-product img{height:100%}
.feature-image img{height:100%}

/* Keep below-the-fold rendering work out of the initial mobile frame. */
.section,.feature,.cta,footer{content-visibility:auto;contain-intrinsic-size:1px 720px}

/* Strong, consistent keyboard focus and comfortable touch targets. */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,
[role="button"]:focus-visible{outline:3px solid #18c7d6;outline-offset:3px}
.menu,.filters button,.btn,.nav-cta,.nav-contact,.details-btn,.order-btn,.support-submit,.calculate-btn{min-height:44px}

/* Improve contrast of secondary text without changing the visual identity. */
.hero-copy>p,.section-head p,.services p,.feature-copy p,.feature-copy li,.product-body p,
.support-info p,.support-info li,.empty-result p,.calculator-note p{color:#46566b}
.catalog-note,.copyright{color:#52627a}
footer .copyright,footer .footer-grid p{color:#b8c6d8}

@media(max-width:620px){
  body{font-size:16px}
  .btn,.support-submit,.calculate-btn{min-height:50px}
  .product-card{scroll-margin-top:88px}
  .product-body p{min-height:0}
  .filters{scrollbar-width:thin;overscroll-behavior-inline:contain}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
