/* Shared responsive corrections: loaded after page-specific design bundles. */
body.design-system.typography :is(main,section,article,aside,form,.wrap,.quick,.callout,.service-hero,.hero,.contact-grid,.cards,.equipment-grid,.objects-grid,.brand-grid,.pg-actions)>*{min-width:0}
body.design-system.typography :is(h1,h2,h3,p,label,.crumb,.breadcrumbs,.work-row-link,.fault-row-link){overflow-wrap:anywhere}
body.design-system.typography :is(input,select,textarea){max-width:100%;box-sizing:border-box}
body.design-system.typography :is(video,iframe){max-width:100%}
body.design-system.typography :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #846500;outline-offset:3px}
body.design-system.typography .request>small{grid-column:1/-1;line-height:1.6}
body.design-system.typography .request .btn{white-space:normal;min-height:46px}
body.design-system.typography .mobile-nav a{overflow-wrap:anywhere;min-height:44px;display:flex;align-items:center}
body.design-system.typography .header-selected .menu{min-width:44px;min-height:44px}
body.design-system.typography .price-table :is(.work-row-link,.fault-row-link){min-width:0}
body.design-system.typography .price-table .label-with-icon{min-width:0;overflow-wrap:anywhere}
body.design-system.typography .article-text table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(min-width:701px) and (max-width:1100px){
 body.design-system.typography main :is(.service-hero,.hero,.contact-grid){grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
 body.design-system.typography .quick .request{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.design-system.typography .quick .request>.btn{grid-column:1/-1}
 body.design-system.typography.home-first-screen .fs-hero h1{font-size:clamp(32px,4.2vw,44px)!important;line-height:1.15!important}
 body.design-system.typography .fs-hero .fs-fact{padding:0 14px}
 body.design-system.typography .callout{gap:24px;padding:28px}
}
@media(max-width:900px){
 body.design-system.typography main .object-equipment-section>.equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.design-system.typography .mobile-nav.open{max-height:65vh;max-height:65dvh;overflow-y:auto;overscroll-behavior:contain}
}
@media(max-width:700px){
 body.design-system.typography :is(input,select,textarea){font-size:16px!important;min-height:46px}
 body.design-system.typography main :is(.service-hero,.hero,.contact-grid,.quick,.callout){grid-template-columns:minmax(0,1fr)!important;gap:20px}
 body.design-system.typography main .request{grid-template-columns:minmax(0,1fr)!important}
 body.design-system.typography main .request>*{grid-column:1!important}
 body.design-system.typography .request label{font-size:14px;line-height:1.5}
 body.design-system.typography .price-table :is(.work-row-link,.fault-row-link){flex-wrap:wrap;gap:10px}
 body.design-system.typography .price-table b{white-space:normal}
 body.design-system.typography .fs-promotion-speed>small{font-size:11px!important;line-height:1.5}
 body.design-system.typography .fs-promotion-speed>b{font-size:12px!important}
 body.design-system.typography .fs-promotion-discount>span{font-size:11px!important}
 body.design-system.typography .fs-promotion-action{font-size:12px!important}
 body.design-system.typography .fs-promotion-terms{font-size:12px!important}
 body.design-system.typography main .contact-light-expert .le-copy>p{font-size:15px!important;line-height:1.65!important}
 body.design-system.typography main .contact-light-expert .pg-actions a{font-size:13px!important;white-space:normal;overflow-wrap:anywhere}
 body.design-system.typography .floating{max-width:calc(100% - 24px);right:12px;bottom:calc(12px + env(safe-area-inset-bottom));box-sizing:border-box;white-space:normal}
 body.design-system.typography .footer-selected{padding-bottom:calc(70px + env(safe-area-inset-bottom))}
}
@media(max-width:380px){
 body.design-system.typography .mobile-nav.open{grid-template-columns:minmax(0,1fr)!important}
 body.design-system.typography main .object-equipment-section>.equipment-grid{grid-template-columns:minmax(0,1fr)!important}
 body.design-system.typography main .contact-light-expert .pg-actions{grid-template-columns:minmax(0,1fr)!important}
 body.design-system.typography .header-selected .h-phone{font-size:12px!important}
}
@media(prefers-reduced-motion:reduce){body.design-system.typography *,body.design-system.typography *::before,body.design-system.typography *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
