/* ===== Base theme ===== */
:root{
  --o-bg:#fff7f1; --o-2:#ffc49f; --o:#ff8a3d;
  --b:#1e90ff; --b-2:#cfe0ff;
  --ink:#0A2342; --muted:#5a6d8a; --card:#ffffff;
  --shadow:0 14px 40px rgba(10,35,66,.10);
}
*{box-sizing:border-box}
html,body{margin:0}
body{
  background:linear-gradient(180deg,var(--o-bg) 0%, #ffefe2 100%);
  color:var(--ink);
  font-family:"Comic Sans MS",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  line-height:1.6;
}
.page-wrap{max-width:1200px;margin:auto;padding:0 16px}
a:focus{outline:none; box-shadow:0 0 0 3px var(--b-2); border-radius:10px}

/* ===== Header (new) ===== */
.site-header.new{
  position:sticky; top:0; z-index:1000;
  background:#fff; border-bottom:1px solid #eee;
  box-shadow:0 4px 16px rgba(0,0,0,.04);
}
.site-header.new .nav-inner{
  max-width:1200px; margin:0 auto; padding:10px 16px;
  display:grid; grid-template-columns:auto 1fr auto; gap:16px; align-items:center;
}

/* Brand */
.brand{display:inline-flex; align-items:center; gap:10px; text-decoration:none}
.brand .bolt{width:24px; height:24px; color:#5B6CFF}
.brand-text{font-weight:900; color:#111}
.brand-text span{color:#111}

/* Main nav and dropdowns */
.main-nav{display:flex; align-items:center; gap:16px}
.dropdown{position:relative}
.dd-btn{
  background:transparent; border:0; font-weight:700; color:#333;
  padding:8px 6px; border-radius:8px; cursor:pointer;
}
.dd-btn:hover{background:#f6f7fb}
.dd-menu{
  position:absolute; margin-top:8px; background:#fff; border:1px solid #eee; border-radius:10px;
  box-shadow:0 16px 40px rgba(0,0,0,.08); padding:8px; display:none; min-width:220px;
}
.dropdown.open .dd-menu{display:block}
.dd-menu a{display:block; padding:8px 10px; border-radius:8px; color:#333; text-decoration:none}
.dd-menu a:hover{background:#f6f7fb}

/* Search */
.site-search{
  display:flex; align-items:center; flex:1; min-width:260px; max-width:760px;
  background:#fff; border:1px solid #e6e6ef; border-radius:28px; padding:6px 10px;
}
.site-search input{
  flex:1; border:0; outline:none; font-size:14px; padding:8px 10px; background:transparent;
}
.site-search button{
  display:grid; place-items:center; width:34px; height:34px; border:0; border-radius:50%;
  background:#eef1ff; color:#5B6CFF; cursor:pointer;
}
.site-search svg{width:18px; height:18px; stroke:currentColor; fill:none; stroke-width:2}

/* Actions (login/join) */
.actions{display:flex; align-items:center; gap:12px}
.actions .link{color:#333; text-decoration:none; font-weight:600}
.actions .btn.cta{
  background:#5B6CFF; color:#fff; text-decoration:none; font-weight:800;
  border-radius:28px; padding:10px 14px; display:inline-flex; align-items:center;
}

/* Hamburger (mobile) */
.hamburger{display:none; width:36px; height:36px; border:0; background:transparent}
.hamburger span{display:block; height:2px; background:#111; margin:7px 0; border-radius:2px}

/* Responsive header */
@media (max-width:980px){
  .main-nav{display:none; position:absolute; left:0; right:0; top:56px; background:#fff; padding:12px 16px; border-top:1px solid #eee}
  .main-nav.open{display:block}
  .site-search{max-width:none}
  .hamburger{display:inline-block}
  .site-header.new .nav-inner{grid-template-columns:auto auto}
  .dd-menu{position:relative; margin-top:6px}
}

/* ===== Footer (new) ===== */
.site-footer.new{
  background:#fff; border-top:1px solid #eee; margin-top:40px;
}
.site-footer.new .footer-inner{max-width:1200px; margin:0 auto; padding:28px 16px}
.site-footer.new .bolt{width:24px; height:24px; color:#5B6CFF}

.foot-cols{
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-top:14px;
}
.foot-cols .col h4{margin:0 0 10px; font-size:16px}
.foot-cols .col a{display:block; padding:6px 0; color:#555; text-decoration:none}
.foot-cols .col a:hover{color:#111}

.foot-bottom{
  display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:24px;
}
.foot-bottom .muted{color:#5B6CFF; text-decoration:underline}
.socials a{display:inline-flex; width:36px; height:36px; align-items:center; justify-content:center;
  background:#f5f6ff; border-radius:50%; color:#5B6CFF; text-decoration:none; margin-left:6px}

@media (max-width:900px){
  .foot-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .foot-bottom{flex-direction:column; align-items:flex-start}
}
@media (max-width:560px){
  .foot-cols{grid-template-columns:1fr}
}

/* ===== Utility (optional) ===== */
.btn{display:inline-flex; align-items:center; gap:8px; text-decoration:none; font-weight:800;
  padding:10px 12px; border-radius:12px; border:1px solid var(--o); background:var(--o); color:#fff;}
.btn.ghost{background:#fff; color:var(--o)}
.grid{display:grid; gap:16px}
.card{background:#fff; border:1px solid var(--o-2); border-radius:16px; padding:16px; box-shadow:var(--shadow)}

/* === SEH logo badge + brand text === */
.logo-circle{
  width:32px; height:32px; border-radius:50%;
  background:#5B6CFF; color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-weight:800; font-size:14px; letter-spacing:.5px;
  box-shadow:0 2px 6px rgba(0,0,0,.1);
}
.brand-text{
  font-weight:900; font-size:18px; color:#111;
}
.brand-text span{
  color:#5B6CFF; /* accent “Edu” */
}

/* Footer brand row alignment (if not present already) */
.foot-brand{display:flex; align-items:center; gap:8px}

