.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.05)}
.header-inner{width:min(calc(100% - 48px),var(--max));height:82px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:flex;align-items:center;gap:14px;min-width:260px}
.brand-mark{width:52px;height:42px;position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;color:#666;border-left:2px solid #777;border-top:2px solid #777}
.brand-mark span{font-size:18px;line-height:1;text-align:center}
.brand-mark i{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--accent);right:2px;top:4px}
.brand-text{display:flex;flex-direction:column;line-height:1.15;text-transform:uppercase;letter-spacing:.18em}
.brand-text strong{font-size:.72rem;font-weight:500}
.brand-text em{font-size:.95rem;font-style:normal;letter-spacing:.35em;margin-top:5px}
.desktop-nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(18px,2.4vw,44px);white-space:nowrap}
.desktop-nav a{font-size:clamp(.88rem,1.05vw,1.05rem);position:relative;padding:31px 0 29px}
.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:20px;height:1px;background:var(--accent-dark);transition:.25s}
.desktop-nav a:hover:after,.desktop-nav a.active:after{right:0}
.menu-toggle{display:none;border:0;background:none;width:42px;height:42px;position:relative;cursor:pointer}
.menu-toggle span{position:absolute;left:8px;right:8px;height:1px;background:#555;transition:.3s}
.menu-toggle span:nth-child(1){top:12px}.menu-toggle span:nth-child(2){top:20px}.menu-toggle span:nth-child(3){top:28px}
.menu-toggle.open span:nth-child(1){top:20px;transform:rotate(45deg)}
.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:nth-child(3){top:20px;transform:rotate(-45deg)}
.mobile-menu{position:fixed;inset:82px 0 auto 0;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}
.mobile-menu nav{width:min(calc(100% - 30px),760px);margin:auto;padding:25px 0 35px;display:flex;flex-direction:column}
.mobile-menu a{padding:14px 0;border-bottom:1px solid #eee;font-size:1.18rem}
@media(max-width:1100px){.desktop-nav{display:none}.menu-toggle{display:block}.header-inner{width:min(calc(100% - 30px),var(--max))}}
@media(max-width:520px){.brand{min-width:0}.brand-text strong{font-size:.58rem}.brand-text em{font-size:.78rem}.brand-mark{width:44px;height:36px}.header-inner{height:72px}.mobile-menu{inset:72px 0 auto}}
