/* SIPwall public chrome — owner-approved canonical contract. Loaded last. */
:root {
  --sw-chrome-font: Arial, "Segoe UI", sans-serif;
  --sw-chrome-ink: #102033;
  --sw-chrome-line: #dce7df;
  --sw-chrome-mint: #eff9f1;
}

/* Exact brand green; the alpha mask prevents any white rectangle. */
.site-header .brand-logo,
.unified-public-header .brand-logo,
footer .foot::before {
  content: "";
  display: block !important;
  flex: 0 0 auto;
  width: 128px !important;
  aspect-ratio: 318 / 120;
  background-color: #23b139 !important;
  -webkit-mask: url("../approved/sipwall-logo-transparent.png") center / contain no-repeat;
  mask: url("../approved/sipwall-logo-transparent.png") center / contain no-repeat;
}

footer .foot > img { display: none !important; }

/* Dynamic Django pages. */
.site-header .logo,
.site-header .logo-link img,
footer .logo {
  display: block !important;
  width: 128px !important;
  height: auto !important;
  max-width: none !important;
  background: transparent !important;
  filter: none !important;
  opacity: 1 !important;
}

.site-header .nav a,
.site-header .menu-panel a,
footer .footlinks a,
footer .legal {
  font-family: var(--sw-chrome-font) !important;
  font-style: normal !important;
}

.site-header .nav a {
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
}

.site-header .menu-panel {
  right: 0 !important;
  top: 62px !important;
  width: 220px !important;
  min-width: 220px !important;
  max-width: 220px !important;
  padding: 8px !important;
  gap: 0 !important;
  border: 1px solid var(--sw-chrome-line) !important;
  border-radius: 13px !important;
  background: #fff !important;
}

.site-header .menu-panel a {
  padding: 8px 10px !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  letter-spacing: 0 !important;
}

.site-header .menu-panel a:hover {
  background: var(--sw-chrome-mint) !important;
  color: #13852a !important;
}

.site-header .site-socials,
footer .site-socials,
footer .footer-socials {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
}

.site-header .site-socials a,
footer .site-socials a,
footer .footer-socials a {
  box-sizing: border-box !important;
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid var(--sw-chrome-line) !important;
  border-radius: 50% !important;
  background: #fff !important;
  box-shadow: none !important;
  transform: none !important;
}

.site-header .site-socials a.telegram,
.site-header .site-socials a.whatsapp,
.site-header .site-socials a.max {
  border-color: var(--sw-chrome-line) !important;
  background: #fff !important;
}

.site-header .site-socials svg,
footer .site-socials svg,
footer .footer-socials svg { display: block !important; fill: none; stroke: none; }

.site-header .site-socials .telegram svg,
footer .site-socials .telegram svg,
footer .footer-socials .telegram svg { width: 17px !important; height: 17px !important; }

.site-header .site-socials .telegram path,
footer .site-socials .telegram path,
footer .footer-socials .telegram path { fill: #229ed9 !important; }

.site-header .site-socials .whatsapp svg,
.site-header .site-socials .max svg,
footer .site-socials .whatsapp svg,
footer .site-socials .max svg,
footer .footer-socials .whatsapp svg,
footer .footer-socials .max svg { width: 20px !important; height: 20px !important; }

.site-header .site-socials .whatsapp .wa-bubble,
footer .site-socials .whatsapp .wa-bubble,
footer .footer-socials .whatsapp .wa-bubble { fill: #25d366 !important; }

.site-header .site-socials .whatsapp .wa-phone,
footer .site-socials .whatsapp .wa-phone,
footer .footer-socials .whatsapp .wa-phone { fill: #fff !important; }

/* Approved static pages served through Django. */
.unified-public-header { font-family: var(--sw-chrome-font) !important; color: var(--sw-chrome-ink) !important; }
.unified-public-header .uph-logo img {
  display: block !important;
  width: 128px !important;
  height: auto !important;
  max-width: none !important;
  background: transparent !important;
  filter: none !important;
  opacity: 1 !important;
}

.unified-public-header .uph-nav a,
.unified-public-header .uph-menu a {
  font-family: var(--sw-chrome-font) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  letter-spacing: 0 !important;
}

.unified-public-header .uph-menu {
  width: 220px !important;
  min-width: 220px !important;
  max-width: 220px !important;
  padding: 8px !important;
}

.unified-public-header .uph-socials a,
.unified-footer-socials a {
  box-sizing: border-box !important;
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid var(--sw-chrome-line) !important;
  border-radius: 50% !important;
  background: #fff !important;
  box-shadow: none !important;
  transform: none !important;
}

.unified-public-header .uph-tg svg,
.unified-footer-socials .telegram svg { width: 17px !important; height: 17px !important; }
.unified-public-header .uph-wa svg,
.unified-public-header .uph-max svg,
.unified-footer-socials .whatsapp svg,
.unified-footer-socials .max svg { width: 20px !important; height: 20px !important; }

@media (max-width: 1050px) {
  .site-header .logo,
  .site-header .logo-link img,
  .unified-public-header .uph-logo img { width: 100px !important; }
  .site-header .brand-logo,
  .unified-public-header .brand-logo,
  footer .foot::before { width: 100px !important; }
  .site-header .nav a,
  .unified-public-header .uph-nav a { font-size: 11px !important; }
}

@media (max-width: 720px) {
  .site-header .nav,
  .site-header .contactitem,
  .site-header .site-socials,
  .unified-public-header .uph-nav,
  .unified-public-header .uph-socials,
  .unified-public-header .uph-region { display: none !important; }
  .site-header .headbar { justify-content: space-between !important; }
  .site-header .logo,
  .site-header .logo-link img,
  .unified-public-header .uph-logo img { width: 108px !important; }
  .site-header .brand-logo,
  .unified-public-header .brand-logo { width: 108px !important; }
}
.site-context-bar{background:#fff;border-bottom:1px solid #e1e8e3}.site-context-row{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-context-crumbs{display:flex;align-items:center;gap:8px;min-width:0;color:#647386;font-size:13px}.site-context-crumbs a{color:#42617f;text-decoration:none}.site-context-crumbs a:hover{color:#16aa35}.site-context-crumbs span[aria-current="page"]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-direction-switch{display:flex;align-items:center;gap:8px;flex:none}.site-direction-switch a{min-width:124px;padding:9px 18px;border:1px solid #d8e4dc;border-radius:22px;color:#173049;text-decoration:none;text-align:center;font-size:13px;font-weight:700;background:#fff}.site-direction-switch a.active,.site-direction-switch a:hover{border-color:#1bb13b;background:#1bb13b;color:#fff}
.ac-crumbbar,.ao-crumbbar,.aod-crumbbar,.ap-crumbbar,#barn76v2>.wrap>.trail,.mod-project-top .mod-breadcrumbs{display:none!important}
@media(max-width:680px){.site-context-row{align-items:flex-start;flex-direction:column;padding-top:10px;padding-bottom:10px;gap:8px}.site-direction-switch{width:100%}.site-direction-switch a{flex:1;min-width:0;padding:8px 10px}.site-context-crumbs{max-width:100%}}

/* Единый выбор офиса: без системной чёрной рамки, телефон всегда акцентный. */
.site-header label.contactitem{position:relative}.site-header label.contactitem::after{content:"⌄";margin-left:-14px;pointer-events:none;color:#14202a;font-size:15px;line-height:1}.site-header .contactitem select{appearance:none;-webkit-appearance:none;padding-right:20px!important;outline:0!important;box-shadow:none!important}.site-header .contactitem:focus-within,.site-header .contactitem select:focus,.site-header .contactitem select:focus-visible{outline:0!important;box-shadow:none!important}.site-header .phoneitem,.site-header .phoneitem span{font-weight:800!important}

footer .foot-contacts{margin-left:auto;margin-right:18px;display:flex;flex-wrap:wrap;gap:6px 20px;align-items:flex-end}
footer .foot-contacts a{display:flex;flex-direction:column;color:#16241b;font-weight:700;font-size:14px;text-decoration:none;white-space:nowrap}
footer .foot-contacts a small{color:#68778a;font-weight:500;font-size:11px}
footer .foot-contacts a:hover{color:#13842a}
.copy-toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);z-index:9999;background:#13842a;color:#fff;padding:10px 16px;border-radius:10px;font:600 14px/1.3 Arial,sans-serif;box-shadow:0 6px 20px rgba(0,0,0,.2)}
@media(max-width:720px){footer .foot-contacts{margin:12px 0;gap:10px 18px}}

/* Footer 27.09.2026 (Andrey): one phone — the office chosen in the header — plus e-mail; links in one line. */
footer .foot-contacts{flex-wrap:nowrap!important;align-items:center!important;gap:6px 24px!important}
footer .foot-contacts a[data-office]:not(.is-office){display:none!important}
footer .footlinks a{white-space:nowrap}
@media(max-width:1100px){footer .foot{flex-wrap:wrap!important;row-gap:12px!important}footer .foot-contacts{margin-left:0!important}}
