
/* ========== Base ========== */
:root{
  --bg:#ffffff;
  --fg:#0f172a;
  --muted:#475569;
  --primary:#0ea5e9;
  --primary-ink:#0c4a6e;
  --surface:#f8fafc;
  --ring:#bae6fd;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial, Noto Sans, "Apple Color Emoji","Segoe UI Emoji";
  color:var(--fg); background:var(--bg); line-height:1.6;
}
.container{max-width:1120px; margin:0 auto; padding:0 20px}
.flex{display:flex}.grid{display:grid}
a{color:var(--primary); text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%; height:auto}
button{cursor:pointer}
.hide{display:none}

/* ========== Header ========== */
.site-header{position:sticky; top:0; z-index:50; background:rgba(255,255,255,.8); backdrop-filter:saturate(140%) blur(8px); border-bottom:1px solid #e2e8f0}
.nav{display:flex; align-items:center; justify-content:space-between; padding:12px 0}
.brand{display:flex; align-items:center; gap:12px}
.brand img{height:36px}
.nav a{font-weight:600; color:#0f172a; padding:10px 12px; border-radius:10px}
.nav a.active, .nav a:hover{background:#e2f2fe; text-decoration:none}
.menu{display:flex; gap:6px}
.mobile-toggle{display:none; background:transparent; border:0; padding:8px}

/* ========== Hero ========== */
.hero{background:linear-gradient(180deg, #f0f9ff 0%, #ffffff 100%); border-bottom:1px solid #e2e8f0}
.hero .wrap{display:grid; grid-template-columns:1.2fr .8fr; align-items:center; gap:24px; padding:40px 0}
.hero h1{font-size:40px; line-height:1.2; margin:0 0 12px; color:#0f172a}
.hero p{font-size:18px; color:var(--muted); margin:0 0 16px}
.cta{display:flex; gap:12px; flex-wrap:wrap}
.btn{display:inline-flex; align-items:center; gap:8px; padding:12px 16px; border-radius:12px; border:1px solid #0ea5e9; font-weight:700}
.btn.primary{background:var(--primary); color:white; border-color:transparent}
.badges{display:flex; gap:16px; align-items:center; flex-wrap:wrap; margin-top:16px}
.badge{display:inline-flex; align-items:center; gap:8px; padding:8px 10px; background:#f1f5f9; border:1px solid #e2e8f0; border-radius:999px; color:#0f172a; font-weight:600}

/* ========== Sections ========== */
.section{padding:48px 0}
.section h2{font-size:28px; margin:0 0 8px}
.section p.lead{color:var(--muted); margin:0 0 24px}
.cards{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
.card{background:var(--surface); border:1px solid #e2e8f0; border-radius:16px; padding:18px}
.card h3{margin:0 0 6px}
.kbli{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; color:#334155}

/* ========== Footer ========== */
.footer{background:#0b1220; color:#cbd5e1; padding:32px 0; margin-top:40px}
.footer a{color:#93c5fd}
.footer .grid{grid-template-columns:2fr 1fr 1fr; gap:20px}
.subfooter{border-top:1px solid #1f2937; margin-top:16px; padding-top:12px; font-size:14px; color:#94a3b8}

/* ========== Tables ========== */
.table{width:100%; border-collapse:collapse}
.table th, .table td{border:1px solid #e2e8f0; padding:10px; text-align:left}
.table th{background:#f1f5f9}

/* ========== Forms ========== */
.input, textarea{width:100%; padding:12px; border-radius:12px; border:1px solid #cbd5e1; background:white}
label{font-weight:600; font-size:14px; color:#0f172a}
.form-grid{display:grid; grid-template-columns:1fr 1fr; gap:12px}
.form-grid .span-2{grid-column:span 2}

/* ========== Responsive ========== */
@media (max-width: 900px){
  .hero .wrap{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr 1fr}
  .footer .grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 640px){
  .menu{display:none}
  .mobile-toggle{display:block}
  .cards{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
}
