/* QA repairs, 12 October 2026. Loaded after all page styles. */
html.lead-modal-active, html.cookie-consent-active { overflow: hidden !important; }
#lead-modal { box-sizing:border-box; height:100vh; height:100dvh; padding:12px; overscroll-behavior:contain; z-index:10002; }
#lead-modal .modal-card { box-sizing:border-box; background:#fff!important; min-height:0; max-height:calc(100vh - 24px); max-height:calc(100dvh - 24px); overflow-y:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; scroll-padding:20px; }
#lead-modal .modal-head { position:sticky; top:-24px; z-index:2; background:#fff; padding:12px 0; }
#lead-modal .modal-close { flex:0 0 44px; width:44px; height:44px; color:#1b365d; background:#fff; }
#lead-modal .field, form[action="/send.php"] .field { font-size:16px; }
.lead-product-context { padding:12px; border:1px solid #cad3df; border-radius:10px; color:#1b365d; background:#f4f7fb; }
.box a.btn-main, .box a.btn:not(.btn-ghost):not(.btn-tg), .box a.btn:visited:not(.btn-ghost):not(.btn-tg) { color:#fff; }
.box a.btn-main { background:#bd1230; }
.box a.btn-tg, .box a.btn-tg:visited { color:#fff; background:#08678e; }
.box a.btn-ghost { color:#1b365d; background:#fff; }
.box .btn { min-height:44px; }
.site-legal { padding:16px; border-radius:14px; background:rgba(255,255,255,.97); color:#1b365d; line-height:1.6; }
.site-legal a { color:#1b365d; text-underline-offset:3px; }
.cookie-consent { box-sizing:border-box; height:100vh; height:100dvh; overflow-y:auto; overscroll-behavior:contain; }
.cookie-consent__box { position:relative; max-height:calc(100vh - 40px); max-height:calc(100dvh - 40px); overflow-y:auto; overscroll-behavior:contain; text-align:left; }
.cookie-consent__copy strong { padding-right:42px; }
.cookie-consent__close { position:absolute; top:8px; right:8px; width:44px; height:44px; border:1px solid #cad3df; border-radius:10px; background:#f4f7fb; color:#1b365d; font:28px/1 sans-serif; cursor:pointer; }
.cookie-settings { width:auto; min-width:68px; height:44px; padding:8px 12px; border:1px solid #cbd5e1; border-radius:12px; background:#fff; color:#1b365d; font:600 12px/1.2 sans-serif; box-shadow:0 3px 12px #0002; bottom:max(12px, env(safe-area-inset-bottom)); }
.site-legal .cookie-settings { position:static; margin-left:auto; box-shadow:none; }
.cookie-consent__close:focus-visible, a:focus-visible, button:focus-visible { outline:3px solid #168eea; outline-offset:3px; }
.product-price-detail { font-size:21px; font-weight:700; color:#1b365d; }
.product-price-detail small { display:block; font-size:14px; font-weight:400; margin-top:4px; }
@media(max-width:900px) {
 body > .mobile-menu-panel { overflow-y:auto!important; justify-content:flex-start!important; gap:12px!important; padding-top:max(76px, env(safe-area-inset-top))!important; }
 body > .mobile-menu-panel a { flex-shrink:0; min-height:44px!important; font-size:clamp(22px,6vw,30px)!important; }
 body > .mobile-menu-panel a:focus-visible { outline:3px solid #fff!important; outline-offset:2px!important; }
}
@media(max-width:640px) {
 #lead-modal .modal-card { padding:16px; border-radius:16px; }
 #lead-modal .modal-head { top:-16px; }
 .cookie-consent__box { max-height:calc(100vh - 24px); max-height:calc(100dvh - 24px); }
 .cookie-settings { right:12px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto!important; } }
@media(max-height:500px) {
 #lead-modal .modal-head p { display:none; }
 #lead-modal .modal-head h2 { font-size:22px; }
 #lead-modal .modal-head { padding:4px 0; align-items:center; }
}
