.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(8,11,20,.94);
  border-bottom: 1px solid rgba(157,255,99,.18);
  box-shadow: 0 10px 35px rgba(0,0,0,.22);
  backdrop-filter: blur(14px);
}
.site-header .brand { color:#fff; text-shadow:0 0 18px rgba(157,255,99,.12); }
.main-nav { display:flex; align-items:center; gap:8px; }
.main-nav > a,.nav-dropdown > button { padding:10px 13px; color:#dce5f3; background:rgba(21,29,46,.62); border:1px solid rgba(255,255,255,.07); border-radius:10px; font-size:13px; font-weight:800; transition:color .2s,background .2s,border-color .2s; }
.nav-dropdown { position:relative; }
.nav-dropdown > button:hover,.main-nav > a:hover { color:var(--lime); background:rgba(157,255,99,.09); border-color:rgba(157,255,99,.32); }
.dropdown-menu { display:none; position:absolute; z-index:50; top:calc(100% - 3px); right:0; min-width:205px; padding:9px; background:#111827; border:1px solid var(--line); border-radius:14px; box-shadow:0 18px 50px rgba(0,0,0,.45); }
.nav-dropdown:hover .dropdown-menu,.nav-dropdown:focus-within .dropdown-menu { display:block; }
.dropdown-menu a { display:block; padding:11px 12px; border-radius:9px; color:var(--muted); font-size:12px; white-space:nowrap; }
.dropdown-menu a:hover { background:var(--panel2); color:var(--lime); }
@media(max-width:900px) and (min-width:721px){.main-nav{gap:14px}.main-nav>a,.nav-dropdown>button{font-size:11px}}
@media(max-width:720px){.site-header{height:auto;min-height:76px;flex-wrap:wrap;padding-bottom:12px}.site-header .main-nav{display:flex;width:100%;gap:16px;padding-top:9px;border-top:1px solid #ffffff10}.main-nav>a,.nav-dropdown>button{font-size:10px}.dropdown-menu{left:0;right:auto}.nav-dropdown:last-child .dropdown-menu{left:auto;right:0}}

footer {
  max-width: 1440px;
  margin: 70px auto 0;
  padding: 38px 34px 26px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 24px;
  color: var(--muted);
  background: linear-gradient(180deg, rgba(16,22,36,.72), rgba(8,11,20,.18));
  border-top: 1px solid var(--line);
}

footer .brand { color: var(--text); }
footer .footer-links {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
}

footer .footer-links a,
footer > p a {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 8px 13px;
  color: var(--muted);
  background: rgba(21,29,46,.72);
  border: 1px solid var(--line);
  border-radius: 10px;
  transition: color .2s, border-color .2s, background .2s;
}

footer .footer-links a:hover,
footer > p a:hover {
  color: var(--lime);
  border-color: rgba(157,255,99,.35);
  background: rgba(157,255,99,.07);
}

footer > p { margin: 0; }
footer::after {
  content: "© 2026 geography-lessons-unblocked. All rights reserved.";
  grid-column: 1 / -1;
  padding-top: 20px;
  text-align: center;
  color: #657189;
  font-size: 10px;
  letter-spacing: .06em;
  border-top: 1px solid #ffffff0d;
}

@media(max-width:800px){
  footer { grid-template-columns: 1fr; justify-items: center; padding: 32px 18px 24px; }
  footer .footer-links { grid-column: 1; }
  footer > p { grid-column: 1; margin: 0; }
  footer::after { grid-column: 1; width: 100%; }
}


/* v26 visual audit: stronger navigation contrast and clearer interaction states */
.site-header{
  background:rgba(8,11,20,.97);
  border-bottom-color:rgba(157,255,99,.24);
  box-shadow:0 10px 32px rgba(0,0,0,.30);
}
.main-nav{gap:9px}
.main-nav > a,.nav-dropdown > button{
  color:#f1f5fb;
  background:rgba(24,33,51,.88);
  border-color:rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.main-nav > a:hover,.main-nav > a:focus-visible,
.nav-dropdown > button:hover,.nav-dropdown > button:focus-visible{
  color:var(--lime);
  background:rgba(157,255,99,.11);
  border-color:rgba(157,255,99,.42);
  outline:none;
}
.site-header nav .active{
  color:#071007!important;
  background:var(--lime)!important;
  border-color:var(--lime)!important;
}
.dropdown-menu{
  background:#0d1422;
  border-color:rgba(255,255,255,.13);
}
.dropdown-menu a{color:#d7dfed;font-weight:700}
.dropdown-menu a:hover,.dropdown-menu a:focus-visible{
  color:var(--lime);
  background:rgba(157,255,99,.09);
  outline:none;
}
@media(max-width:720px){
  .site-header{padding-left:16px;padding-right:16px}
  .site-header .main-nav{
    gap:7px;
    overflow-x:auto;
    padding-bottom:2px;
    scrollbar-width:none;
    flex-wrap:nowrap;
  }
  .site-header .main-nav::-webkit-scrollbar{display:none}
  .main-nav>a,.nav-dropdown>button{
    flex:0 0 auto;
    font-size:11px;
    padding:9px 11px;
  }
}
