.social-symbols{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.header{height:auto;min-height:0;display:block;padding:0 clamp(24px,4.5vw,100px);position:relative;background:var(--green);color:var(--cream)}
.header-main{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:36px;min-height:166px;padding:25px 0}
.header .brand-logo{width:clamp(290px,26vw,390px);max-width:none;margin:0}
.header-social>p,.contact-social>p{font-size:12px;letter-spacing:.06em;margin:0 0 12px;color:#c8d0c1}
.social-icons{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.social-icons a{width:44px;height:44px;display:grid;place-items:center;border:1px solid #dec39655;border-radius:50%;color:var(--gold);transition:background-color .18s,color .18s,transform .18s}
.social-icons svg{width:22px;height:22px;display:block}
.header-connect{justify-self:end;display:flex;flex-direction:column;align-items:flex-end;gap:15px}
.header-phone{font-size:clamp(21px,1.8vw,31px);font-weight:500;letter-spacing:-.03em;line-height:1.2;white-space:nowrap}
.header-phone:hover{color:var(--gold)}
.header-actions{display:flex;align-items:center;gap:22px}
.language-switch{display:flex;align-items:center;gap:6px}
.language-switch a{display:grid;place-items:center;width:44px;height:44px;flex:none;border-radius:6px;transition:opacity .18s}
.language-switch img{display:block;width:33px;height:22px;border-radius:2px;object-fit:cover}
.language-switch a:focus-visible{outline:2px solid var(--cream);outline-offset:3px}
@media(hover:hover){.language-switch a:hover{opacity:.8}}
.header .header-contact{display:inline-flex;align-items:center;justify-content:center;gap:12px;margin:0;min-height:48px;padding:11px 23px;border:1px solid var(--gold);border-radius:8px;background:var(--gold);color:var(--green);font-family:var(--sans);font-size:14px;font-weight:600;white-space:nowrap;box-shadow:none;transition:background-color .18s,transform .18s}
.header-contact:after{display:none}.header-contact svg{width:19px;height:19px}
.header .desktop-nav{display:flex;justify-content:center;gap:clamp(30px,4vw,70px);border-top:1px solid #dec39640;min-height:72px;margin:0;font-size:17px;font-weight:500;letter-spacing:.015em}
.desktop-nav a{display:flex;align-items:center;min-height:54px}
.header .desktop-nav a:after{bottom:12px}
.header .menu-toggle{display:none}
.contact-social{margin-top:32px;padding-top:25px;border-top:1px solid var(--line)}
.contact-social>p{color:var(--muted)}
.contact-social .social-icons a{color:var(--green);border-color:#253b3038}
.floating-contact{position:fixed;right:26px;bottom:26px;z-index:20;display:flex;align-items:center;gap:11px;padding:14px 21px 14px 17px;min-height:56px;background:var(--gold);color:var(--green);border:1px solid #f6e2bc;border-radius:30px;box-shadow:0 5px 22px #0c1d2430;font-size:14px;font-weight:600;transition:transform .18s,background-color .18s}
.floating-contact svg{width:26px;height:26px}
body:has(dialog[open]) .floating-contact{visibility:hidden}
.home-page .hero{min-height:calc(100svh - 238px)}
@media(hover:hover){.social-icons a:hover{background:var(--gold);color:var(--green);transform:translateY(-2px)}.header .header-contact:hover,.floating-contact:hover{background:#ebd4a9;transform:translateY(-2px)}}
@media(max-width:1050px) and (min-width:761px){.header-main{gap:22px}.header .brand-logo{width:270px}.social-icons{gap:7px}.header-social .social-icons{max-width:150px}.header .desktop-nav{gap:34px;font-size:16px}.header-actions{gap:10px}.header .header-contact{padding:11px 16px}}
@media(max-width:760px){
 .header{padding:0 6%}.header-main{grid-template-columns:minmax(0,1fr) auto;gap:16px 10px;min-height:0;padding:21px 0 17px}
 .header .brand-logo{grid-column:1/-1;grid-row:1;width:min(270px,calc(100% - 54px))}
 .header .menu-toggle{display:flex;grid-column:2;grid-row:1;width:44px;min-height:44px;margin:0;align-items:center;justify-self:end}
 .header-social{grid-column:1;grid-row:2}.header-social>p{display:none}.header-social .social-icons{gap:6px}.header-social .social-icons a{width:36px;height:36px}.header-social .social-icons svg{width:19px;height:19px}
 .header-connect{display:contents}.header-actions{display:contents}.header-phone{grid-column:1;grid-row:3;align-self:center;font-size:18px}
 .language-switch{grid-column:2;grid-row:2;justify-self:end}
 .header .header-contact{grid-column:2;grid-row:3;font-size:12px;min-height:40px;padding:8px 12px;gap:7px}.header-contact svg{width:15px;height:15px}
 .header .desktop-nav{display:none}.header{border-bottom:1px solid #dec39640}.home-page .hero{min-height:calc(100svh - 210px)}
 .floating-contact{right:16px;bottom:calc(16px + env(safe-area-inset-bottom));min-height:52px;padding:12px;gap:0}.floating-contact span{display:none}.floating-contact svg{width:26px;height:26px}
 .mobile-menu nav{margin-top:42px}.mobile-menu .brand-logo{width:min(240px,70vw)}
}
@media(max-width:400px){.header-social .social-icons{gap:4px}.header-social .social-icons a{width:32px;height:34px}}
@media(max-width:360px){.header-main{column-gap:8px}.header-social .social-icons{gap:3px}.header-social .social-icons a{width:30px}.header-phone{font-size:16px}}
@media(prefers-reduced-motion:reduce){.social-icons a,.header-contact,.floating-contact,.language-switch a{transition:none}}
