
:root{
  --bg:#ffffff; --ink:#0b2a55; --muted:#5b77a3; --accent:#75aadb; --line:#d9e8f7; --card:#f7fbff;
  --radius:16px; --gap:18px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font:16px/1.7 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial}
a{color:#1274c0;text-decoration:none} a:hover{text-decoration:underline}
.wrap{max-width:1120px;margin:0 auto;padding:28px}
/* NAV */
nav.wrap.nav{position:sticky;top:0;background:var(--bg);z-index:400;border-bottom:1px solid var(--line);display:flex;gap:12px;align-items:center}
nav .logo img{height:32px;display:block}
nav .links{display:flex;gap:10px;align-items:center;flex:1}
nav .links a{display:inline-flex;align-items:center;padding:10px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;white-space:nowrap}
nav .links .spacer{margin-left:auto}
.nav-toggle{position:relative;z-index:2002;z-index:1002;display:none;margin-left:auto;padding:10px 14px;border:1px solid var(--line);border-radius:999px;background:#f7fbff;color:#0b2a55;font-weight:600}
#backdrop{display:none;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:2000;pointer-events:auto}
@media (max-width: 1024px){
  .nav-toggle{position:relative;z-index:2002;z-index:1002;display:inline-flex}
  nav .links{display:none}
  nav.open .links{display:flex;flex-direction:column;gap:14px;position:fixed;right:0;top:0;bottom:0;width:82%;background:#fff;border-left:1px solid var(--line);padding:22px;box-shadow:-8px 0 24px rgba(0,0,0,.12);z-index:2001;overflow:auto;pointer-events:auto}
  nav.open + #backdrop{display:none;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:2000;pointer-events:auto}
}
/* HERO */
.hero{display:grid;gap:18px;grid-template-columns:1fr;margin:22px auto 10px}
.takeaways{background:#eef6ff;border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:14px}
.takeaways h2{margin:0 0 10px 0}
/* GRID + CARDS */
.grid{display:grid;gap:22px;align-items:stretch}
.grid.cols-3{grid-template-columns:repeat(3,1fr)}
.grid.cols-2{grid-template-columns:repeat(2,1fr)}
@media (max-width: 1024px){.grid.cols-3{grid-template-columns:1fr 1fr}}

.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:22px;margin-bottom:12px}
.card h2{margin:0 0 12px 0;font-size:22px}
.card p{margin:0 0 12px 0}
.card ul{margin:0 0 12px 1.2rem}
.card .note{color:var(--muted);font-size:13px}
/* TABLE */
.table{overflow:auto;border:1px solid var(--line);border-radius:12px}
.table table{width:100%;border-collapse:collapse}
.table th,.table td{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.table tr:last-child td{border-bottom:none}
/* KPI */
.kpi{display:grid;gap:12px;grid-template-columns:repeat(4,1fr);margin-top:8px}
.kpi .item{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px}
.kpi .label{color:var(--muted);font-size:12px}
.kpi .value{font-weight:700}
/* FOOTER */
footer.wrap.footer{margin-top:28px;padding:18px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--muted)}

nav .links a{pointer-events:auto}

/* Checkbox-driven mobile drawer (JS-free) */
.navcheck{position:absolute;left:-9999px}
@media (max-width:1024px){
  .nav-toggle{display:inline-flex;cursor:pointer;z-index:2002}
  nav .links{display:none}
  .navcheck:checked ~ .links{
    display:flex;flex-direction:column;gap:14px;
    position:fixed;right:0;top:0;bottom:0;width:78%;
    background:#fff;border-left:1px solid var(--line);padding:22px;
    box-shadow:-8px 0 24px rgba(0,0,0,.1);z-index:2001;overflow:auto
  }
  .navcheck:checked ~ #backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:2000}
}

/* vPro11h responsive update: mobile one-column */

@media (max-width: 768px){
  .grid.cols-2{grid-template-columns: 1fr !important;}
  .grid.cols-3{grid-template-columns: 1fr !important;}
}

@media (min-width: 769px){
  .grid.cols-2{grid-template-columns: repeat(2, 1fr);}
}
