/* ============================ site header ============================== */
.topbar{
  background:var(--road);color:#fff;font-size:.8rem;text-align:center;
  padding:7px 14px;line-height:1.45;
}
.topbar b{color:var(--accent)}

.site-header{
  position:sticky;top:0;z-index:60;
  background:var(--surface);
  border-bottom:1px solid var(--border);
  box-shadow:0 2px 12px rgba(74,74,85,.07);
}
.header-in{
  display:flex;align-items:center;gap:12px;
  min-height:var(--header-h);padding:8px 18px;
  max-width:var(--wrap);margin:0 auto;
}

/* logo */
.logo{display:flex;align-items:center;gap:9px;flex:0 0 auto}
.logo:hover{text-decoration:none}
.logo svg{width:38px;height:38px;flex:0 0 auto}
.logo-image{display:block;width:190px;height:auto;max-height:54px;flex:0 0 auto}
.logo-text{display:flex;flex-direction:column;line-height:1}
.logo-text b{
  font-family:var(--font-head);font-size:1.16rem;font-weight:800;
  color:var(--primary);letter-spacing:-.02em;
}
.logo-text b em{font-style:normal;color:var(--accent);-webkit-text-stroke:.6px #e0ac00}
.logo-text small{font-size:.62rem;color:var(--muted);letter-spacing:.09em;text-transform:uppercase}

/* nav */
.nav{margin-left:auto}
.nav ul{display:flex;align-items:center;gap:2px;list-style:none;margin:0;padding:0}
.nav a{
  display:flex;align-items:center;min-height:44px;padding:8px 11px;
  font-family:var(--font-head);font-weight:700;font-size:.94rem;
  color:var(--road);border-radius:999px;
}
.nav a:hover{background:var(--surface-2);text-decoration:none}
.nav a[aria-current="page"]{background:var(--accent);color:#4a3200}
.header-cta{flex:0 0 auto}

/* burger */
.burger{
  margin-left:auto;width:46px;height:46px;display:grid;place-items:center;
  background:var(--surface-2);border:1px solid var(--border-strong);
  border-radius:12px;cursor:pointer;
}
.burger span{display:block;width:20px;height:2px;background:var(--road);border-radius:2px;position:relative}
.burger span::before,.burger span::after{
  content:"";position:absolute;left:0;width:20px;height:2px;background:var(--road);border-radius:2px;
  transition:transform .2s ease,top .2s ease;
}
.burger span::before{top:-6px}
.burger span::after{top:6px}
body.nav-open .burger span{background:transparent}
body.nav-open .burger span::before{top:0;transform:rotate(45deg)}
body.nav-open .burger span::after{top:0;transform:rotate(-45deg)}

/* mobile drawer */
@media (max-width:1024px){
  .nav{
    position:fixed;inset:0 0 0 auto;width:min(84vw,330px);
    background:var(--surface);box-shadow:-10px 0 40px rgba(74,74,85,.2);
    padding:78px 18px 28px;overflow-y:auto;
    transform:translateX(105%);transition:transform .26s ease;
    margin-left:0;
  }
  body.nav-open .nav{transform:translateX(0)}
  .nav ul{flex-direction:column;align-items:stretch;gap:4px}
  .nav a{min-height:50px;padding:12px 14px;border-radius:12px;font-size:1rem}
  .nav .nav-legal{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}
  .nav .nav-legal a{font-size:.9rem;color:var(--muted)}
  .header-cta{margin-left:auto;order:3}
  .nav-scrim{
    position:fixed;inset:0;background:rgba(43,43,48,.45);
    opacity:0;visibility:hidden;transition:opacity .26s ease;z-index:50;
  }
  body.nav-open .nav-scrim{opacity:1;visibility:visible}
  body.nav-open{overflow:hidden}
}
@media (min-width:1025px){
  .burger,.nav-scrim{display:none}
  .nav .nav-legal{display:none}
}
@media (max-width:420px){
  .logo-text small{display:none}
  .header-cta.btn{padding:10px 14px}
}
