/* Shared public identity. Loaded after the page-family styles. */
:root{--site-header-offset:104px;scroll-padding-top:var(--site-header-offset)}
.site-brand{display:inline-flex;align-items:center;gap:11px;min-width:0;flex-shrink:0;text-decoration:none}
.site-brand>svg{width:37px;height:37px;flex-shrink:0;stroke-width:1.5;color:var(--ink)}
.site-brand__roof{stroke:var(--copper)}
.site-brand .site-brand__name{display:block;font-size:26px;line-height:1.1;font-weight:600;letter-spacing:-.055em;white-space:nowrap;text-transform:none}
.site-brand__accent{color:var(--copper)}
.site-brand__domain{font-size:.78em;letter-spacing:-.035em;color:var(--muted)}
.site-brand small{display:block;margin-top:6px;font-size:8px;font-weight:400;line-height:1.4;letter-spacing:.13em;white-space:nowrap}
.site-header{position:sticky;top:0;z-index:20;background:rgba(243,242,238,.97);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.site-header .header__inner{height:auto;min-height:88px;gap:24px}
.site-header .desktop-nav{gap:20px;font-size:12px}
.site-header .location,.site-header .header__cta{display:none}
.header-phone{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:11px;flex-shrink:0;min-height:54px;padding:9px 16px;border:1px solid #cfb3a3;border-radius:var(--radius);background:var(--copper-light);color:var(--ink);overflow:hidden;text-decoration:none;transition:background .2s,border-color .2s;white-space:nowrap}
.header-phone>svg{position:relative;z-index:1;width:21px;height:21px;color:var(--copper);flex-shrink:0;stroke-width:1.6}
.header-phone__copy{position:relative;z-index:1;display:flex;flex-direction:column;gap:4px}
.header-phone__number{font-size:19px;font-weight:600;line-height:1.1;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
.header-phone__label{font-size:10px;line-height:1.2;color:#79513e;letter-spacing:.02em}
.header-phone::after{content:"";position:absolute;z-index:0;inset:-80% auto -80% 0;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.8),transparent);transform:translateX(-250%) skewX(-18deg);animation:phone-glint 7s ease-in-out infinite;pointer-events:none}
.header-phone:hover{background:#e7d2c3;border-color:var(--copper)}
.header-phone:focus-visible{outline:3px solid var(--copper);outline-offset:4px}
@keyframes phone-glint{0%,64%{transform:translateX(-250%) skewX(-18deg)}88%,100%{transform:translateX(430%) skewX(-18deg)}}
.site-header .mobile-menu{max-height:calc(100dvh - var(--site-header-offset));overflow-y:auto;overscroll-behavior:contain}
.placeholder-header.site-header{padding:0;border-bottom:1px solid var(--line)}
.placeholder-header .header__inner{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1536px;margin-inline:auto;padding-inline:48px}
.site-footer .site-brand{max-width:100%}
.site-contacts{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr) auto;gap:20px 32px;padding-top:28px;margin-top:3px;border-top:1px solid var(--line);font-size:12px;line-height:1.65;min-width:0}
.site-contacts__label{display:block;margin-bottom:7px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#656761}
.site-contacts .site-contacts__name{margin-top:0;font-size:13px;font-weight:500;line-height:1.55;color:var(--ink)}
.site-contacts__details{margin:0;display:grid;gap:4px}
.site-contacts__details>div{display:flex;flex-wrap:wrap;gap:7px}
.site-contacts dt{color:#656761}.site-contacts dd{margin:0;font-variant-numeric:tabular-nums}
.site-contacts__phone{display:inline-block;font-size:19px;font-weight:600;line-height:1.4;letter-spacing:-.025em;color:var(--copper)}
.site-contacts .site-contacts__city{margin-top:6px;font-size:12px;color:#656761}
.site-footer .footer__legal{overflow-wrap:anywhere}
@media(min-width:1600px){.site-header .header__inner{padding-inline:0}.placeholder-header .header__inner{padding-inline:48px}}
@media(max-width:1250px) and (min-width:961px){.site-header .header__inner{padding-inline:30px;gap:18px}.site-header .desktop-nav{gap:13px;font-size:11px}.site-brand .site-brand__name{font-size:23px}.header-phone{padding-inline:12px}.header-phone__number{font-size:17px}}
@media(max-width:960px){:root{--site-header-offset:92px}.site-header .header__inner{min-height:76px;gap:20px}.site-header .header__inner>.site-brand{margin-right:auto}.header-phone{margin-left:auto}.site-contacts{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.site-contacts__call{grid-column:1/-1}}
@media(max-width:700px){
 :root{--site-header-offset:132px}
 .site-header .header__inner,.placeholder-header .header__inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:0;height:auto;padding:13px 20px 12px;gap:11px 14px}
 .site-header .header__inner>.site-brand{grid-column:1;grid-row:1;margin:0;justify-self:start}
 .site-brand .site-brand__name{font-size:24px}
 .site-brand>svg{width:31px;height:31px}
 .site-brand small{font-size:7px;letter-spacing:.1em;margin-top:4px}
 .site-header .menu-toggle{grid-column:2;grid-row:1;justify-self:end;margin:0;min-width:44px;min-height:44px;padding:6px}
 .header-phone{grid-column:1/-1;grid-row:2;width:100%;margin:0;min-height:44px;padding:10px 16px;gap:12px}
 .header-phone__copy{flex-direction:row;align-items:center;gap:15px}
 .header-phone__number{font-size:19px}
 .header-phone__label{font-size:10px}
 .site-contacts{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;padding-top:26px;margin-top:28px}
 .site-contacts__call{grid-column:auto}
 .site-footer .site-brand .site-brand__name{font-size:25px}
}
@media(max-width:370px){.site-header .header__inner,.placeholder-header .header__inner{padding-inline:16px;gap:10px}.site-brand .site-brand__name{font-size:22px}.site-brand{gap:8px}.site-brand>svg{width:28px;height:28px}.header-phone__label{display:none}.header-phone__number{font-size:19px}}
@media(prefers-reduced-motion:reduce){.header-phone::after{animation:none;display:none}.header-phone{transition:none}}
