/* ===== Header and navigation ===== */
header{position:sticky;top:0;z-index:50;background:var(--crimson-deep);border-bottom:1px solid var(--line-on-dark);}
.nav{display:flex;align-items:center;justify-content:space-between;padding:0.85rem 1.5rem;max-width:var(--container);margin:0 auto;}
.brand{display:flex;align-items:center;gap:0.85rem;}
.brand-badge{width:48px;height:48px;border-radius:50%;background:var(--cream);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;box-shadow:0 0 0 3px rgba(249,240,227,0.25);}
.brand-badge img{width:78%;height:78%;object-fit:contain;}
.brand-text{color:var(--cream);}
.brand-text .chapter{font-family:var(--font-display);font-weight:600;font-size:1.02rem;letter-spacing:0.01em;}
.brand-text .org{font-size:0.74rem;opacity:0.78;letter-spacing:0.04em;}
nav.links{display:flex;align-items:center;gap:1.6rem;}
nav.links a{color:var(--cream);font-weight:600;font-size:0.92rem;padding:0.4rem 0.1rem;border-bottom:2px solid transparent;transition:border-color 0.2s ease,opacity 0.2s ease;}
nav.links a:hover,nav.links a.active,nav.links .current-menu-item>a{border-color:var(--crimson-bright);}
nav.links a.nav-cta{background:var(--cream);color:var(--crimson-deep);padding:0.45rem 1.25rem;border-radius:var(--radius);font-weight:700;font-size:0.88rem;border:2px solid var(--cream);letter-spacing:0.01em;transition:background 0.2s ease,color 0.2s ease,border-color 0.2s ease;}
nav.links a.nav-cta:hover{background:transparent;color:var(--cream);border-color:var(--cream);}
.nav-toggle{display:none;background:none;border:0;color:var(--cream);font-size:1.6rem;cursor:pointer;}

@media(max-width:980px){.brand-text{display:none;}}
@media(max-width:720px){
  nav.links{position:absolute;top:100%;left:0;right:0;background:var(--crimson-deep);flex-direction:column;align-items:flex-start;padding:1rem 1.5rem 1.5rem;gap:0.9rem;border-bottom:1px solid var(--line-on-dark);display:none;}
  nav.links.open{display:flex;}
  .nav-toggle{display:block;}
  .nav-cta{order:99;}
}