  /* ---------- nav ---------- */
  #navbar{
    position: fixed; top:0; left:0; right:0; z-index:100;
    padding: 22px 0;
    transition: all .4s ease;
    background: transparent;
  }
  #navbar.scrolled{
    padding: 14px 0;
    background: rgba(255,255,255,.75);
    backdrop-filter: blur(16px) saturate(160%);
    box-shadow: 0 8px 30px -12px rgba(11,31,58,.12);
  }
  .nav-inner{ display:flex; align-items:center; justify-content:space-between; }
  .logo{ display:flex; align-items:center; gap:10px; font-family:'Playfair Display',serif; font-weight:700; font-size:20px; color: var(--navy); }
  .logo .mark{
    width:38px; height:38px; border-radius:10px;
    background: linear-gradient(135deg, var(--navy), var(--blue));
    display:flex; align-items:center; justify-content:center;
    color: var(--gold-light); font-weight:800; font-size:16px; letter-spacing:.02em;
    box-shadow: inset 0 0 0 1px rgba(200,162,77,.4);
  }
  .nav-links{ display:flex; align-items:center; gap:36px; }
  .nav-links a{
    font-size:14.5px; font-weight:600; color: var(--navy); opacity:.75;
    position:relative; padding: 4px 0; transition: opacity .3s ease;
  }
  .nav-links a::after{
    content:''; position:absolute; left:0; bottom:-2px; height:2px; width:0;
    background: var(--gold); transition: width .35s ease;
  }
  .nav-links a:hover{ opacity:1; }
  .nav-links a:hover::after{ width:100%; }
  .nav-cta{ display:flex; align-items:center; gap:18px; }
  .hamburger{ display:none; flex-direction:column; gap:5px; cursor:pointer; padding:8px; z-index:110; }
  .hamburger span{ width:24px; height:2px; background: var(--navy); transition: all .3s ease; }
  .hamburger.open span:nth-child(1){ transform: translateY(7px) rotate(45deg); }
  .hamburger.open span:nth-child(2){ opacity:0; }
  .hamburger.open span:nth-child(3){ transform: translateY(-7px) rotate(-45deg); }

  #mobile-menu{
    position: fixed; inset:0; background: var(--navy); z-index:105;
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:32px;
    transform: translateY(-100%); transition: transform .5s cubic-bezier(.2,.8,.2,1);
  }
  #mobile-menu.open{ transform: translateY(0); }
  #mobile-menu a{ color:#fff; font-family:'Playfair Display',serif; font-size:28px; font-weight:600; }
  #mobile-menu .btn-primary{ margin-top:12px; }
