/* Compact navigation keeps the page in view while scrolling. */
.site-header{position:sticky;top:0;z-index:30;min-height:76px;flex-wrap:nowrap;gap:14px;padding-block:6px;background:rgba(255,248,251,.96);box-shadow:0 4px 18px #51356c12;border-radius:0 0 20px 20px}
.site-header .brand-logo{width:140px}
.site-header .header-actions{order:initial;width:auto;flex-direction:row;align-items:center;padding:0;gap:10px}
.site-header .header-phone{font-size:16px;padding:10px 14px}
.site-header .header-request{font-size:14px;padding:10px 16px;min-height:44px;box-shadow:none}
.desktop-nav{font-size:14px;gap:8px}
.desktop-nav a{padding:10px 12px}
html{scroll-padding-top:90px}
.catalog-more{display:flex;margin:28px auto 0}
.catalog-more[hidden]{display:none}
.callback-section .callback-inline-trigger{justify-self:center}
.callback-dialog{border:0;padding:0;border-radius:28px;width:min(520px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow:auto;color:var(--ink,#3a3155);box-shadow:0 20px 80px #29143a40}
.callback-dialog::backdrop{background:#24132d66}
.callback-dialog .callback-form{border-radius:0;padding-top:54px}
.callback-dialog h2{font-size:30px;line-height:1.2;letter-spacing:normal}
.callback-close{position:absolute;right:10px;top:8px;width:44px;height:44px;border:0;border-radius:50%;font-size:30px;line-height:1;background:#ffffffaa;color:#51356c;cursor:pointer}
.callback-close:focus-visible{outline:3px solid #8054ba;outline-offset:2px}
html.callback-is-open{overflow:hidden}
@media(max-width:1100px){.site-header .header-phone{display:none}.desktop-nav a{padding-inline:8px}.desktop-nav{gap:4px}}
@media(min-width:641px) and (max-width:800px){.site-header .brand-logo{width:110px}.site-header{gap:6px}.site-header .header-request{padding-inline:10px}.desktop-nav{font-size:13px}}
@media(max-width:640px){
 .site-header{min-height:64px;gap:8px;padding-block:6px;border-radius:0 0 16px 16px}
 .site-header .brand{padding:0}
 .site-header .brand-logo{width:105px}
 .site-header .header-actions{margin-left:auto;flex-shrink:1}
 .site-header .header-request{font-size:14px;padding:10px 12px;white-space:normal;text-align:center;line-height:1.2}
 .site-header .menu-toggle{margin-left:0;flex-shrink:0}
 .mobile-nav{left:0;right:0;max-height:calc(100dvh - 80px);overflow:auto;padding:12px 16px}
 .mobile-nav a{font-size:16px;padding:10px 16px;min-height:44px;margin:2px 0}
 html{scroll-padding-top:80px}
 .callback-dialog .callback-form{padding:54px 20px 24px}
}

/* The contact choices stay available above the optional online application. */
.callback-contact{display:flex;flex-direction:column;gap:18px;padding:54px 32px 28px;background:linear-gradient(140deg,#eee0ff,#ffe7ed);min-width:0}
.callback-dialog [hidden]{display:none!important}
.callback-dialog h2{font-size:clamp(26px,5vw,30px);margin:0;padding-right:16px}
.callback-dialog h2:focus{outline:none}
.callback-show-context{margin:0}
.callback-call p{margin:0 0 8px;font-size:18px;line-height:1.4}
.callback-phone-link{display:block;width:fit-content;font-size:clamp(24px,6vw,32px);font-weight:800;line-height:1.3;letter-spacing:-.035em;color:#654096;text-decoration:none;white-space:nowrap}
.callback-phone-link:hover{text-decoration:underline;text-underline-offset:5px}
.callback-dialog .messenger-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.callback-dialog .messenger{min-width:0;width:100%;font-size:16px;padding:12px;gap:8px}
.callback-dialog .button{width:100%;min-height:52px;justify-content:center;font-size:17px;padding:14px 18px}
.callback-dialog .callback-form{border-radius:0;padding:22px 0 0;background:transparent;border-top:1px solid #bda5cd;gap:14px}
.callback-request-note{margin:0;padding:12px 14px;background:#ffffffa8;border-radius:12px;font-size:14px;line-height:1.6}
.callback-phone-link:focus-visible,.callback-dialog .messenger:focus-visible,.callback-dialog .button:focus-visible{outline:3px solid #8054ba;outline-offset:3px}
@media(max-width:640px){.callback-contact{padding:54px 20px 24px}}
@media(max-width:420px){.callback-dialog .messenger-links{grid-template-columns:1fr}}
