
:root{
  --brand:#0ea5e9; --ink:#0f172a; --muted:#64748b; --ring:#e2e8f0;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:16px/1.6 system-ui,-apple-system,Segoe UI,Inter,Roboto,Arial;color:var(--ink);background:#f8fafc}
.container{max-width:1140px;margin:0 auto;padding:0 16px}
.topbar{background:#0b1220;color:#e5e7eb;font-size:14px}
.topbar .container{display:flex;align-items:center;justify-content:space-between;padding:8px 0}
.header{position:sticky;top:0;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--ring);z-index:40}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.brand{display:flex;gap:10px;align-items:center;font-weight:900}
.brand img{width:38px;height:38px;border-radius:12px}
.menu{display:flex;gap:18px;font-weight:600}
@media(max-width:880px){.menu{display:none} .mobile{display:block}}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:12px;font-weight:700;border:1px solid transparent;cursor:pointer}
.btn.primary{background:var(--brand);color:#fff}
.btn.ghost{border:1px solid var(--ring);background:#fff}
.section{padding:64px 0}
.grid{display:grid;gap:18px}
.cols-2{grid-template-columns:1.15fr 1fr}
.cols-3{grid-template-columns:repeat(3,1fr)}
@media(max-width:980px){.cols-2{grid-template-columns:1fr}.cols-3{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--ring);border-radius:18px;padding:20px;box-shadow:0 10px 30px rgba(2,8,23,.06)}
.small{font-size:12px;color:var(--muted)}
.hero{background:linear-gradient(135deg,#e6f6ff,white,#ecfeff)}
table{width:100%;border-collapse:collapse}
td,th{border:1px solid var(--ring);padding:8px;text-align:left}
.footer{background:#fff;border-top:1px solid var(--ring);padding:32px 0;margin-top:32px}
.footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:16px}
@media(max-width:900px){.footer .cols{grid-template-columns:1fr 1fr}}
kbd{background:#e2e8f0;padding:2px 6px;border-radius:6px}
.notice{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;padding:10px;border-radius:12px}
.good{background:#ecfeff;border:1px solid #a5f3fc;color:#0e7490;padding:10px;border-radius:12px}

/* --- Upgrades --- */
.menu a{font-weight:700;letter-spacing:.02em;position:relative;padding:6px 4px}


/* Carousel */
.carousel{position:relative;border-radius:18px;overflow:hidden;box-shadow:0 10px 30px rgba(2,8,23,.12);border:1px solid var(--ring)}
.carousel-track{display:flex;transition:transform .6s ease}
.carousel-slide{min-width:100%;height:360px;background:#e2e8f0;display:grid;place-items:center}
.carousel-slide img{width:100%;height:100%;object-fit:cover}
.carousel-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;gap:6px;justify-content:center}
.carousel-dots button{width:8px;height:8px;border-radius:999px;border:none;background:#cbd5e1;opacity:.9}
.carousel-dots button.active{background:var(--brand)}
/* Forms */
form label{display:block;font-weight:700;margin-bottom:6px}
form .field{margin-bottom:12px}
input,textarea,select{width:100%;padding:12px;border:1px solid var(--ring);border-radius:12px;background:#fff}
/* Cards polish */
.card h3{margin-top:0}

.menu a{font-weight:600;font-size:16px;letter-spacing:.3px;color:var(--ink);}
.menu a:hover{color:var(--brand)}

/* Nav polish (no underlines) */
.menu a{font-weight:800;letter-spacing:.02em;padding:8px 6px;text-decoration:none !important}
.menu a:hover{opacity:.9}
/* Ensure generic links don't underline inside nav */
header a{text-decoration:none}
