/* Shared chrome: the same navigation, certificate rail and contact block on every desktop page. */
body .site-header.unified-header { display:block; position:relative; height:auto; min-height:96px; background:#fff; border-bottom:1px solid #e6e9ec; box-shadow:none; }
body .site-header.unified-header::before { display:none; }
body .site-header.unified-header .header-inner { display:grid; grid-template-columns:166px minmax(0,1fr) 240px 230px; align-items:center; gap:14px; min-height:96px; height:auto; padding:0; }
body .site-header.unified-header .brand { display:block; width:166px; height:64px; max-width:100%; margin:0; }
body .site-header.unified-header .brand img { width:166px; height:64px; object-fit:contain; }
body .site-header.unified-header .city-nav { display:flex; flex-wrap:nowrap; align-items:center; align-content:center; justify-content:flex-start; width:auto; min-width:0; height:auto; margin:0; padding:0; gap:14px; border:0; background:none; }
body .site-header.unified-header .city-nav>a { flex:none; padding:5px 0; font-size:13px; line-height:1.4; white-space:nowrap; }
body .site-header.unified-header .certificates { display:flex; justify-content:flex-end; width:auto; min-width:0; gap:10px; height:64px; padding:0 0 0 10px; border-left:1px solid #e5e8eb; }
body .site-header.unified-header .certificate { width:48px; flex:none; height:62px; }
body .site-header.unified-header .phone-cluster { display:grid; width:auto; min-width:0; gap:4px; padding-left:12px; }
body .site-header.unified-header .phone-cluster a { display:flex; align-items:baseline; justify-content:space-between; gap:8px; }
body .site-header.unified-header .phone-cluster small { font-size:10px; white-space:nowrap; }
body .site-header.unified-header .phone-cluster span { font-size:12px; white-space:nowrap; }
.company-menu { position:relative; flex:none; font-size:13px; color:#626b75; }
.company-menu summary { display:flex; align-items:center; gap:5px; cursor:pointer; list-style:none; padding:5px 0; white-space:nowrap; }
.company-menu summary[aria-current] { color:#28313a; font-weight:600; }
.company-menu summary::-webkit-details-marker { display:none; }
.company-menu summary::after { content:''; width:5px; height:5px; border-right:1px solid; border-bottom:1px solid; transform:translateY(-2px) rotate(45deg); }
body .company-menu .company-menu-links { position:absolute; z-index:130; top:calc(100% + 8px); right:0; display:grid; min-width:210px; padding:6px; border:1px solid #e1e5e8; border-radius:8px; background:#fff; box-shadow:0 8px 24px #17212b0c; }
body .company-menu .company-menu-links a { display:block; padding:10px 12px; margin:0; font-size:13px; line-height:1.35; border-radius:4px; color:#35424c; white-space:nowrap; text-decoration:none; text-align:left; }
body .company-menu .company-menu-links a:hover { background:#fff8ec; }
.company-menu a::after { display:none !important; }
body .site-footer .footer-bottom { flex-wrap:wrap; gap:12px 24px; }
body .site-footer .footer-bottom .company-footer-links { display:flex; flex-wrap:wrap; gap:10px 22px; margin-left:auto; }
body .site-footer .footer-bottom .company-footer-links a { display:inline-flex; font-size:13px; text-decoration:none; }
body { --smc-tool-right:24px; --smc-tool-bottom:24px; --smc-tool-size:44px; }
.calculator-launch { position:absolute; z-index:1; inset:0; width:100%; height:100%; padding:10px; border:0; border-radius:5px; background:transparent; color:#fff; display:grid; place-items:center; cursor:pointer; transition:none; }
.calculator-launch svg { position:absolute; right:9px; bottom:9px; display:block; width:23px; height:23px; }
.calculator-surface:not(.is-open):hover { border-color:#e6ba70; }
.calculator-launch:focus-visible { outline:2px solid #e6ba70; outline-offset:3px; }
.calculator-launch[aria-busy=true] { cursor:progress; }
.calculator-launch[aria-expanded=true] { pointer-events:none; }
body .back-to-top { right:var(--smc-tool-right); bottom:var(--smc-tool-bottom); }
body[data-metal-calculator]:not(.branch-view) .back-to-top { right:calc(var(--smc-tool-right) + var(--smc-tool-size) + 8px); }
.calculator-surface[hidden] { display:none; }
body .m-contact-navigation { display:flex; flex-wrap:wrap; gap:8px 18px; }
@media(max-width:1220px) {
  body .site-header.unified-header .header-inner { grid-template-columns:166px minmax(0,1fr) 230px; }
  body .site-header.unified-header .certificates { display:none; }
}
@media(max-width:1030px) {
  body .site-header.unified-header .header-inner { grid-template-columns:166px minmax(0,1fr); }
  body .site-header.unified-header .phone-cluster { display:none; }
}
@media(max-width:900px) {
  body { --smc-tool-right:16px; --smc-tool-bottom:calc(82px + env(safe-area-inset-bottom)); --smc-tool-size:42px; }
  body.contacts-view,body.branch-view { --smc-tool-bottom:20px; }
  body .site-header.unified-header .header-inner { display:flex; align-items:flex-start; flex-direction:column; min-height:0; gap:12px; width:calc(100% - 32px); padding:18px 0 12px; }
  body .site-header.unified-header .city-nav { width:100%; max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:none; gap:18px; padding-bottom:4px; }
  body .site-header.unified-header .city-nav::-webkit-scrollbar { display:none; }
  body .site-header.unified-header .company-menu { position:static; }
  body .site-header.unified-header .company-menu-links { top:100%; right:16px; }
  body.mobile-marketplace-ready:not(.branch-view)>.unified-header { display:none; }
  body.contacts-view .site-footer,body.branch-view .site-footer { display:block; }
  body.contacts-view .back-to-top,body.branch-view .back-to-top { display:grid; }
  body:has(.mobile-marketplace.has-overlay) .calculator-launch,body.request-open .calculator-launch,body.mobile-sheet-open .calculator-launch { visibility:hidden; }
}

.header-menu-toggle { display:none; }
.site-mobile-menu[hidden] { display:none !important; }
@media(max-width:900px) {
  body .site-header.unified-header .header-inner { flex-direction:row; align-items:center; justify-content:space-between; padding:12px 0; }
  body .site-header.unified-header .city-nav { display:none; }
  body .header-menu-toggle { display:grid; place-items:center; flex:none; width:44px; height:44px; padding:12px; border:1px solid #dfe5e9; border-radius:6px; background:#fff; color:#5c6973; cursor:pointer; }
  .header-menu-toggle span { width:18px; height:12px; border-top:1.5px solid; border-bottom:1.5px solid; position:relative; }
  .header-menu-toggle span::before { content:''; position:absolute; top:4px; left:0; width:18px; border-top:1.5px solid; }
  body .m-app-header.has-site-menu { grid-template-columns:minmax(0,1fr) 94px; }
  .m-header-actions { display:flex; align-items:center; gap:6px; }
  .site-mobile-menu { position:fixed; z-index:950; top:76px; left:16px; right:16px; max-height:calc(100dvh - 96px); overflow:auto; display:grid; padding:8px; background:#fff; border:1px solid #dfe5e9; border-radius:7px; box-shadow:0 6px 24px #17212b12; }
  .site-mobile-menu>a,.site-mobile-menu .company-menu summary { padding:10px 12px; font-size:14px; line-height:1.4; color:#57646e; text-decoration:none; border-radius:4px; }
  .site-mobile-menu>a.active,.site-mobile-menu [aria-current=page] { color:#806239; background:#fff9ee; }
  .site-mobile-menu .company-menu summary { justify-content:space-between; }
  body .site-mobile-menu .company-menu-links { position:static; display:grid; min-width:0; margin:0 8px 4px; box-shadow:none; border:0; border-left:1px solid #e9ddc9; border-radius:0; padding:0; }
  body .site-mobile-menu .company-menu-links a { font-size:13px; padding:9px 12px; }
}
body.request-open .metal-calculator,body.mobile-sheet-open .metal-calculator,body:has(.mobile-marketplace.has-overlay) .metal-calculator { visibility:hidden; }

/* Two-phase motion: width + lightening, then height; collapse in reverse. */
.calculator-surface { position:fixed; z-index:920; right:var(--smc-tool-right); bottom:var(--smc-tool-bottom); width:var(--smc-tool-size); height:var(--smc-tool-size); overflow:hidden; border:1px solid #171a1f; border-radius:5px; background:#171a1f; transition:width 240ms cubic-bezier(.22,.65,.3,1) 300ms,height 300ms cubic-bezier(.22,.65,.3,1),background-color 240ms 300ms,border-color 240ms 300ms,border-radius 240ms 300ms; }
.calculator-surface.is-open { background:#fff; border-color:#dfe5e9; border-radius:7px; box-shadow:0 6px 24px #18212b0f; transition:width 240ms cubic-bezier(.22,.65,.3,1),height 300ms cubic-bezier(.22,.65,.3,1) 240ms,background-color 240ms,border-color 240ms,border-radius 240ms; }
.calculator-surface.is-ready { transition:width 200ms ease,height 220ms ease; }
.calculator-launch svg { transition:transform 220ms 300ms,opacity 220ms 300ms; }
.calculator-surface.is-open .calculator-launch svg { transform:translateX(-24px); opacity:0; transition:transform 220ms,opacity 220ms; }
body.request-open .calculator-surface,body.mobile-sheet-open .calculator-surface,body:has(.mobile-marketplace.has-overlay) .calculator-surface { visibility:hidden; }
@media(prefers-reduced-motion:reduce) { .calculator-surface,.calculator-launch svg { transition:none !important; } }
