@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* ============================================================
   ESLnote shared site chrome — "Clean Professional" (Concept 1)
   Loaded after each page's inline <style> so these rules win
   ties. Page content markup is untouched.
   ============================================================ */
:root{
  --esl-navy:#124076;
  --esl-navy-deep:#0c2f59;
  --esl-amber:#ff9800;
  --esl-ink:#1c2b3a;
  --esl-muted:#5b6b7f;
  --esl-border:#e3eaf3;
}

body{
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  color:var(--esl-ink);
  background-color:#ffffff;
  -webkit-font-smoothing:antialiased;
}

/* ---------- Header / navigation (unified, matches homepage) ---------- */
body > header{
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(255,255,255,.94);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--esl-border);
}

.wrap.nav{
  max-width:1100px;
  margin:0 auto;
  padding:0 24px;
  height:66px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.brand{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:800;
  font-size:1.25rem;
  letter-spacing:-.01em;
  color:var(--esl-navy);
  text-decoration:none;
}
.brand b{
  color:var(--esl-amber);
  font-weight:800;
}

.links{
  display:flex;
  align-items:center;
  gap:26px;
}
.links a{
  color:var(--esl-navy);
  font-weight:600;
  font-size:.94rem;
  text-decoration:none;
  transition:color .2s;
}
.links a:hover,
.links a:focus{
  color:var(--esl-amber);
  text-decoration:none;
}

/* Neutralize old per-page nav rules that used the bare <nav> element */
nav.links{
  background:transparent;
  border:none;
  padding:0;
  width:auto;
  position:static;
}
nav.links a{
  margin:0;
}

.hamb{
  display:none;
  background:none;
  border:none;
  cursor:pointer;
  padding:8px;
}
.mmenu{
  display:none;
}

/* ---------- Headings ---------- */
h1{
  color:var(--esl-navy);
  letter-spacing:-.01em;
}
h2{
  color:var(--esl-navy);
}

/* ---------- Back / action buttons ---------- */
.buttons a{
  background:var(--esl-navy);
  color:#ffffff;
  border-radius:10px;
  font-weight:700;
  transition:background .2s, transform .2s;
}
.buttons a:hover{
  background:var(--esl-amber);
  transform:translateY(-2px);
}

/* ---------- Footer ---------- */
footer{
  background:var(--esl-navy-deep);
  color:#dfe7f2;
  text-align:center;
  padding:22px 1rem;
  font-size:.92rem;
  margin-top:3rem;
}
footer a{
  color:var(--esl-amber);
  font-weight:600;
}

/* ---------- Mobile navigation ---------- */
@media (max-width:860px){
  .links{
    display:none;
  }
  .hamb{
    display:block;
  }
  .mmenu{
    display:none;
    flex-direction:column;
    padding:10px 24px 18px;
    border-top:1px solid var(--esl-border);
    background:#ffffff;
  }
  .mmenu.open{
    display:flex;
  }
  .mmenu a{
    padding:10px 0;
    font-weight:600;
    color:var(--esl-navy);
    border-bottom:1px solid var(--esl-border);
    text-decoration:none;
  }
}
