:root{
  --bg:#ffffff;
  --fg:#12202a;
  --muted:#4b5c68;
  --line:#e6edf2;
  --card:#f7fafc;
  --accent:#0b6aa2;
  --accent2:#0a8f6a;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  background:var(--bg);
  color:var(--fg);
  line-height:1.55;
}
a{color:var(--accent); text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1100px;margin:0 auto;padding:0 18px}
.topbar{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:50}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0}
.brand{display:flex;flex-direction:column;gap:2px}
.brand .title{font-weight:700;font-size:18px;letter-spacing:0.2px}
.brand .tag{font-size:12px;color:var(--muted)}
.utility{display:flex;gap:14px;align-items:center;flex-wrap:wrap;justify-content:flex-end;font-size:13px}
.nav{border-top:1px solid var(--line);background:#fff}
.nav ul{list-style:none;margin:0;padding:10px 0;display:flex;flex-wrap:wrap;gap:14px}
.nav a{display:inline-block;padding:6px 10px;border-radius:10px}
.nav a.active,.nav a:hover{background:var(--card)}
.hero{margin:18px 0 10px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--card)}
.hero img{width:100%;height:280px;object-fit:contain;display:block}
.hero .hero-body{padding:14px 16px 16px}
.badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.badge{font-size:12px;background:#eef6fb;border:1px solid #d7ebf7;color:#064c74;padding:5px 10px;border-radius:999px}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;margin:14px 0 28px}
.card{grid-column:span 12;border:1px solid var(--line);border-radius:14px;background:#fff;padding:14px}
.card h2{margin:0 0 8px;font-size:18px}
.card p{margin:8px 0}
.kv{display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:12px;background:var(--card);border:1px solid var(--line)}
.kv .k{font-size:12px;color:var(--muted)}
.kv .v{font-weight:650}
.cols2{grid-column:span 12}
@media (min-width: 900px){.cols2{grid-column:span 6}}
.note{font-size:13px;color:var(--muted);background:#fbfcfd;border:1px solid var(--line);padding:12px 14px;border-radius:12px}
hr{border:0;border-top:1px solid var(--line);margin:18px 0}
.footer{border-top:1px solid var(--line);margin-top:28px;padding:18px 0 34px;color:var(--muted);font-size:13px}
.small{font-size:12px;color:var(--muted)}
.list-clean{padding-left:18px}
.figure-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:12px;margin:10px 0}
.figure{grid-column:span 12;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}
.figure img{width:100%;height:260px;object-fit:contain;display:block;background:#fff}
.figure .cap{padding:10px 12px;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}
@media(min-width:900px){.figure{grid-column:span 6}.figure img{height:320px}}
.table{width:100%;border-collapse:collapse;font-size:14px}
.table th,.table td{border:1px solid var(--line);padding:10px;text-align:left;vertical-align:top}
.table th{background:var(--card)}




@media print{
  
}



}




@media (max-width: 768px){
  
}



/* FIX: prevent Home/Back buttons from obscuring page titles */


@media (max-width: 768px) {
    
}



/* MOBILE MENU COMPACT FIX */
@media (max-width: 768px) {
  /* Compact menu items */
  nav ul, .menu ul, .mobile-menu ul {
    padding: 4px 8px !important;
  }
  nav li, .menu li, .mobile-menu li {
    margin: 4px 0 !important;
  }
  nav a, .menu a, .mobile-menu a {
    font-size: 14px !important;
    line-height: 1.2 !important;
    padding: 6px 8px !important;
  }

  /* Prevent menu from occupying most of the screen */
  nav, .menu, .mobile-menu {
    max-height: 40vh !important;
    overflow-y: auto !important;
  }

  /* Disable sticky headers stacking with menu on mobile */
  .sticky, .sticky-header, .latest-update, .update-strip {
    position: static !important;
  }
}


/* MOBILE MENU SINGLE-SPACED FINAL FIX */
@media (max-width: 768px) {
  nav ul, .menu ul, .mobile-menu ul {
    padding: 2px 6px !important;
  }
  nav li, .menu li, .mobile-menu li {
    margin: 0 !important;
  }
  nav a, .menu a, .mobile-menu a {
    display: block;
    padding: 4px 6px !important;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.1 !important;
  }
  nav, .menu, .mobile-menu {
    max-height: 30vh !important;
  }
}
