:root { --nav-glass: rgba(30, 58, 95, 0.75); }
.glass-header { position:fixed; top:20px; right:50%; width:calc(100% - 40px); height:68px; padding:0 28px; box-sizing:border-box; display:flex; align-items:center; justify-content:space-between; gap:24px; border:1px solid rgb(255 255 255 / 18%); border-radius:40px; background:linear-gradient(145deg,rgb(36 83 121 / 94%) 0%,rgb(25 60 91 / 96%) 45%,rgb(28 58 91 / 98%) 100%); backdrop-filter:blur(18px) saturate(135%); -webkit-backdrop-filter:blur(18px) saturate(135%); box-shadow:inset 0 1px 0 rgb(255 255 255 / 14%),inset 0 0 0 1px rgb(255 255 255 / 6%),0 18px 42px rgb(0 0 0 / 18%); transform:translateX(50%) translateY(0); opacity:1; pointer-events:auto; z-index:10; }
.header-logo { display:inline-flex; align-items:center; width:64px; color:#fff; text-decoration:none; }
.header-logo svg { display:block; width:100%; height:auto; }
.header-nav { display:flex; align-items:center; gap:clamp(12px,1.45vw,24px); }
.header-nav a { position:relative; padding:7px 1px; color:rgb(255 255 255 / 85%); font-size:.95rem; text-decoration:none; transition:color .25s ease; white-space:nowrap; }
.header-nav a::after { content:''; position:absolute; right:50%; bottom:1px; width:0; height:2px; border-radius:99px; background:#14B8A6; box-shadow:0 0 9px rgb(20 184 166 / 70%); transition:width .28s ease,right .28s ease; }
.header-nav a:hover,.header-nav a.active { color:#14B8A6; }
.header-nav a:hover::after,.header-nav a.active::after { right:0; width:100%; }
.header-cta { padding:9px 18px; border-radius:8px; background:#14B8A6; color:#fff; text-decoration:none; font-size:.9rem; white-space:nowrap; transition:background .25s ease,transform .25s ease; }
.header-cta:hover { background:#0f8f82; transform:translateY(-2px); }
.mobile-header-logo,.mobile-menu-toggle { display:none; }
.mobile-menu-toggle { border:0; cursor:pointer; color:#fff; }
.mobile-menu-toggle span { display:block; width:22px; height:2px; margin:4px auto; border-radius:99px; background:currentColor; transition:transform .25s ease,opacity .2s ease; }
body { padding-top:104px; }
@media (max-width:768px) {
  .mobile-header-logo { position:absolute; top:20px; left:20px; z-index:101; width:52px; height:52px; display:flex; align-items:center; justify-content:center; color:#fff; text-decoration:none; }
  .mobile-header-logo svg { display:block; width:52px; height:auto; }
  .mobile-menu-toggle { position:fixed; top:20px; right:20px; z-index:101; width:52px; height:52px; padding:0; border-radius:14px; background:var(--nav-glass); backdrop-filter:blur(16px) saturate(1.2); -webkit-backdrop-filter:blur(16px) saturate(1.2); box-shadow:inset 0 1px 0 color-mix(in oklch,rgb(255 255 255 / 15%) 65%,transparent),inset 0 0 0 1px color-mix(in oklch,rgb(255 255 255 / 6%) 55%,transparent),0 12px 32px rgb(0 0 0 / 12%); display:grid; place-content:center; }
  body::before { content:''; position:fixed; inset:0; background:rgba(0,0,0,.5); z-index:99; opacity:0; visibility:hidden; transition:opacity .3s ease,visibility .3s ease; pointer-events:none; }
  body.menu-open::before { opacity:1; visibility:visible; pointer-events:auto; }
  .glass-header { top:0; right:0; width:260px; height:100svh; flex-direction:column; align-items:flex-start; justify-content:flex-start; padding:90px 24px 24px 20px; border-radius:24px 0 0 24px; transform:translateX(100%); opacity:1; visibility:hidden; pointer-events:none; transition:transform .35s cubic-bezier(.16,1,.3,1),visibility .35s ease; box-shadow:-10px 0 40px rgb(0 0 0 / 20%); z-index:100; overflow-y:auto; }
  .glass-header.is-open { transform:translateX(0); visibility:visible; pointer-events:auto; }
  .header-logo { display:inline-flex; width:92px; flex:0 0 auto; align-self:flex-start; margin:0 0 28px; }
  .header-cta { display:inline-block; text-align:center; margin-top:24px; align-self:flex-start; margin-right:8px; }
  .header-nav { width:100%; display:flex; flex-direction:column; gap:4px; align-items:flex-start; }
  .header-nav a { padding:12px 8px 12px 0; font-size:clamp(1rem,4vw,1.1rem); background:transparent !important; width:auto; }
  .header-nav a.active { color:#14B8A6; }
  .header-nav a::after { display:none; }
  .mobile-menu-toggle[aria-expanded="true"] span:nth-child(1) { transform:translateY(6px) rotate(45deg); }
  .mobile-menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity:0; }
  .mobile-menu-toggle[aria-expanded="true"] span:nth-child(3) { transform:translateY(-6px) rotate(-45deg); }
}
@media (max-width:380px) { .mobile-header-logo { top:14px; left:14px; width:48px; height:48px; } .mobile-header-logo svg { width:48px; } .mobile-menu-toggle { top:14px; right:14px; width:48px; height:48px; } }