/* Shared mobile layout. Loaded after page styles to keep the desktop identity. */
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #c9000b;outline-offset:3px}
@media(max-width:760px){
 html{scroll-padding-top:90px;-webkit-text-size-adjust:100%}
 body{font-size:16px}
 h1,h2,h3,p,li,dd,td,th,a{overflow-wrap:break-word}
 input,select,textarea{min-width:0;max-width:100%;font-size:16px}
 button,.button,summary{min-height:44px}
 .header-inner,.catalog-header{height:80px;gap:12px}
 .catalog-header{padding:0 16px}
 .brand-logo{width:94px}
 .header-actions{min-width:0}
 .button{font-size:.875rem;letter-spacing:.025em;line-height:1.45;text-align:center;padding:13px 16px}
 .menu-toggle{width:48px;height:48px;display:grid;align-content:center;justify-content:center}
 .menu-toggle span{margin:3px 0;transition:transform .2s,opacity .2s}
 .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(8px) rotate(45deg)}
 .menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
 .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-8px) rotate(-45deg)}
 .main-nav{top:80px;padding:12px 16px 20px;max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain;gap:4px}
 .main-nav a{font-size:1rem;min-height:48px;padding:12px;white-space:normal}
 .hero{min-height:0}
 .hero-content{padding:48px 0 40px}
 .hero h1{font-size:clamp(2rem,8.5vw,3.5rem);line-height:1.12;letter-spacing:-.035em}
 .hero-lead{line-height:1.65}
 .hero-actions{gap:16px;margin-top:24px}
 .text-link{padding:12px 0;font-size:.875rem}
 .eyebrow,.section-kicker{font-size:.75rem;letter-spacing:.08em;line-height:1.6}
 .eyebrow span{flex-shrink:0;width:20px}
 .section,.contacts,.advantages-section{padding:48px 0}
 .section-heading h2,.contacts h2,.about h2{font-size:clamp(1.8rem,7.5vw,2.8rem);line-height:1.15}
 .benefit-grid{grid-template-columns:1fr}
 .benefit-grid article{min-height:76px;padding:16px;border-left:0}
 .benefit-grid strong,.benefit-grid small{font-size:.875rem}
 .catalog-grid .product-card{min-height:0;padding:20px 20px 76px}
 .catalog-grid .product-card .category-photo{height:145px}
 .card-link{left:20px;right:20px;font-size:.875rem;min-height:44px}
 .catalog-banner__copy{max-width:100%;padding:24px}
 .catalog-banner__copy a{font-size:.875rem}
 .partner-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
 .partner-strip li{min-height:112px;padding:12px}
 .partner-strip img{height:88px}
 .stats strong{font-size:1.35rem}.stats span{font-size:.75rem;letter-spacing:.05em}
 .contact-list strong,.company-contacts strong{overflow-wrap:anywhere}
 .footer-inner p,.footer-inner>a:last-child,footer{font-size:.875rem;letter-spacing:0;text-transform:none}
 .commercial-links{display:flex;flex-wrap:nowrap;overflow-x:auto;max-width:100%;gap:8px;padding:4px 0 10px;scroll-snap-type:x proximity;scrollbar-width:thin}
 .commercial-links a{flex:0 0 auto;scroll-snap-align:start;font-size:.875rem;padding:12px 14px}
 .commercial-page{width:100%;padding:24px 16px 40px}
 .commercial-page h1{font-size:clamp(2rem,8vw,3rem)}
 .purchase-actions{flex-direction:column}
 .purchase-actions .button{width:100%}
 .catalog-intro{padding:30px 16px 24px;gap:18px}
 .catalog-intro h1{font-size:clamp(2rem,8vw,3rem);line-height:1.12;letter-spacing:-.03em}
 .search-box{height:60px;padding:0 16px}.search-box input{min-height:44px}
 .sort-box{gap:12px;flex-wrap:wrap;padding:10px 16px}.sort-box span{font-size:.75rem}.sort-box select{min-height:44px;max-width:100%}
 .catalog-tabs{scrollbar-width:thin}.catalog-tabs button{font-size:.875rem;letter-spacing:0;padding:14px 16px}
 .tree-toggle{font-size:.875rem;letter-spacing:.025em;padding:16px}
 .category-button{min-height:48px;font-size:1rem}.tree-head p,.tree-help p{font-size:.875rem}
 .catalog-results{padding:22px 16px}
 .results-head{flex-direction:column;gap:12px}.results-head h2{font-size:1.75rem}.results-head>p{text-align:left}.results-head>p span{font-size:.875rem}
 .results-path{font-size:.75rem;letter-spacing:.04em}
 .product-grid{gap:16px}.product-grid .product-media{height:145px}.product-grid .product-body{padding:16px}
 .product-overline{font-size:.75rem;white-space:normal;letter-spacing:.04em}
 .product-card h3{font-size:1.125rem}.product-description{font-size:1rem;line-height:1.55}
 .product-specs span{font-size:.875rem;white-space:normal}.product-price small{font-size:.875rem}
 .product-actions{gap:8px}.product-actions button,.product-actions a{min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center;width:100%;flex:1 1 100%}
 .product-actions a{background:var(--red)}
 .load-more{min-height:48px;width:100%;justify-content:center;font-size:.875rem}
 .drawer-panel{height:100dvh;overscroll-behavior:contain;scroll-padding:72px 0 100px}
 .drawer-close{width:48px;height:48px;top:12px;margin-right:16px}
 .drawer-product{padding:0 16px calc(100px + env(safe-area-inset-bottom,0px))}
 .drawer-media{height:160px;margin:0 -16px 24px}.drawer-product h2{font-size:1.75rem;overflow-wrap:anywhere}
 .drawer-overline,.drawer-note,.drawer-section h3,.spec-table th,.spec-table td{font-size:.875rem}
 .spec-table{table-layout:fixed}.spec-table th{padding-right:12px}
 .drawer-price a{font-size:1rem;min-height:48px}.drawer-price span small{font-size:.875rem}
 .modal-panel{height:100dvh;max-height:100dvh;padding:72px 20px calc(100px + env(safe-area-inset-bottom,0px));overscroll-behavior:contain;scroll-padding:72px 0 100px}
 .modal-close{position:sticky;float:right;top:-60px;margin-top:-56px;width:48px;height:48px;z-index:2}
 .modal h2{clear:both;font-size:1.8rem;line-height:1.2}
 form label{font-size:.875rem;letter-spacing:.025em}form small{font-size:.875rem}
 form label:has(input[type=checkbox]){font-size:.875rem!important;line-height:1.55;letter-spacing:0;text-transform:none;font-weight:500;min-height:44px}
 form input[type=checkbox]{flex:0 0 22px;width:22px!important;height:22px;accent-color:var(--red)}
 .company-page main,.company-page section[id],.partners,.advantages-section{scroll-margin-top:92px}
 .company-hero__content{padding:40px 0}.company-hero h1{font-size:clamp(2rem,8vw,3rem);line-height:1.15}
 .company-toc>.container{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start}.company-toc a{white-space:nowrap;font-size:.875rem;min-height:44px;display:flex;align-items:center}
 .company-section,.company-lead,.company-cta{padding:48px 0}
 .process-grid p,.principles-grid p,.company-numbers span{font-size:.875rem}
 .process-grid strong,.principles-grid h3{margin-top:16px}
 .whatsapp-float{width:54px;height:54px;right:14px;bottom:calc(14px + env(safe-area-inset-bottom,0px))}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.drawer-panel,.menu-toggle span{transition:none}}
