*{box-sizing:border-box}
html{height:100%}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Noto Sans','Helvetica Neue',Arial,sans-serif;background:#0f1115;color:#e6e6e6;min-height:100vh;display:flex;flex-direction:column}
img{max-width:100%;height:auto;display:block}
:root{--container-max:1024px}
.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:clamp(12px,2vw,24px)}
.site-header{background:#151820;border-bottom:1px solid #242837}
.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.brand{font-weight:700;font-size:clamp(18px,2.5vw,22px)}
.nav-center{flex:1;text-align:center}
.nav-right a{color:#cbd5e1;text-decoration:none;padding:10px 10px;border-radius:6px}
.nav-right a:hover{color:#fff;background:#1b1f2a}
.nav-toggle{display:none;background:#1b1f2a;color:#fff;border:0;border-radius:6px;padding:8px 10px;font-size:18px}
.nav a{color:#cbd5e1;text-decoration:none;margin-right:12px;padding:10px 10px;border-radius:6px}
.nav a:hover{color:#fff;background:#1b1f2a}
.nav a.active{background:#1b1f2a;color:#fff}
.hero{padding:clamp(24px,4vw,40px) 0}
.hero h1{margin:0 0 8px 0;font-size:clamp(26px,5vw,40px)}
.hero p{margin:0;color:#b0b8c0}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:24px}
.card{background:#151820;border:1px solid #242837;border-radius:8px;padding:16px}
.card:hover{border-color:#3a4158;transform:translateY(-1px);transition:all .15s ease}
.btn{display:inline-block;background:#2563eb;color:#fff;text-decoration:none;padding:8px 12px;border-radius:6px}
.site-footer{border-top:1px solid #242837;background:#151820;margin-top:auto}
body>main.container{flex:1}
@media (max-width:480px){
  :root{--container-max:100%}
  .cards{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
  .nav a{margin-right:8px}
}
@media (max-width:768px){
  .nav-toggle{display:block}
  .nav{width:100%;display:none}
  body.nav-open .nav{display:block}
  .nav a{display:block;margin-right:0}
}
@media (min-width:768px){
  :root{--container-max:1024px}
  .cards{gap:20px}
}
@media (min-width:1280px){
  :root{--container-max:1400px}
  .cards{gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
}
@media (min-width:1536px){
  :root{--container-max:1600px}
  .hero{padding:48px 0}
}
@media (min-width:1920px){
  :root{--container-max:1720px}
  .cards{gap:28px}
}
