/* Preserve full catalog photos and keep migrated content usable on narrow screens. */
.hero-grid>*,.detail-grid>*,.contact-grid>*,.product-grid>*,.category-grid>*{min-width:0}
.brand-logo{width:auto;height:40px;max-width:140px;object-fit:contain}
.hero-visual.has-image:before{display:none}.hero-photo{width:100%;height:100%;object-fit:contain;border-radius:14px}
.company-visual>img{width:100%;height:100%;object-fit:contain;background:var(--pale)}
.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.category-card{padding:24px}.category-cover{height:170px;margin:18px 0 22px;background:var(--pale);border-radius:8px;overflow:hidden}
.category-cover img{width:100%;height:100%;object-fit:contain}.category-card p{padding-bottom:18px}
.product-image img,.gallery-main img,.gallery-thumbs img{object-fit:contain}
.product-card{display:flex;flex-direction:column}.product-body{display:flex;flex-direction:column;flex:1}
.product-body h3,.detail-copy h1,.contact-card dd,.lead{overflow-wrap:anywhere}
.product-body p{height:auto;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.product-body>.text-link{margin-top:auto}.model-chip{max-width:calc(100% - 28px);overflow-wrap:anywhere;font-size:12px}
.breadcrumbs{flex-wrap:wrap;overflow-wrap:anywhere}.breadcrumbs>span:last-child{min-width:0}
.gallery-thumbs{flex-wrap:wrap}.gallery-thumbs button{flex:0 0 76px;cursor:pointer}.detail-model{flex-wrap:wrap;overflow-wrap:anywhere}
.search-field{min-width:0}.search-field input{min-width:0}.search-field button{white-space:nowrap}
@media(max-width:900px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.category-grid{grid-template-columns:minmax(0,1fr)}.category-cover{height:200px}.detail-copy h1{font-size:34px}.spec-panel{padding:22px}.pagination{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Optional address: no empty map column or fixed-height gap when not configured. */
.contact-grid--single{grid-template-columns:minmax(0,1fr);max-width:820px}
.contact-grid--single .contact-card{min-height:0}
.contact-grid--single .contact-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.contact-card h2{font-size:clamp(26px,3vw,36px);line-height:1.35;overflow-wrap:anywhere}
.contact-visual p{max-width:100%;font-size:15px;letter-spacing:normal;overflow-wrap:anywhere}
.contact-visual p>span{font-size:12px;letter-spacing:.08em}
.footer-address{overflow-wrap:anywhere}
@media(max-width:600px){.contact-grid--single .contact-card dl{grid-template-columns:minmax(0,1fr);gap:0}}
