:root{
    --bg:#0d1117;
    --surface:#161b22;
    --border:#30363d;
    --text:#f0f6fc;
    --muted:#8b949e;
    --accent:#8534F3;
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    background:var(--bg);
    color:var(--text);
    font-family:Inter,Segoe UI,Arial,sans-serif;
    line-height:1.7;
}

main,
.hero{
    width:min(900px,90%);
    margin:auto;
}

.hero{
    padding:120px 0 80px;
}

h1{
    font-size:3.5rem;
    margin-bottom:.5rem;
}

.subtitle{
    color:var(--muted);
    max-width:650px;
    margin-bottom:2rem;
}

.buttons{
    display:flex;
    gap:1rem;
    flex-wrap:wrap;
}

.button{
    color:white;
    text-decoration:none;
    border:1px solid var(--border);
    padding:.8rem 1.2rem;
    border-radius:10px;
    transition:.2s;
}

.button:hover{
    background:var(--surface);
}

.primary{
    background:var(--accent);
    color:#fff;
    border:none;
}

.primary:hover{
    opacity:.9;
}

section{
    margin:5rem 0;
}

h2{
    margin-bottom:1rem;
    font-size:2rem;
}

p{
    color:var(--muted);
    margin-bottom:1rem;
}

.grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:1rem;
    margin-top:2rem;
}

.card{
    background:var(--surface);
    border:1px solid var(--border);
    padding:1.5rem;
    border-radius:12px;
}

.card h3{
    margin-bottom:.75rem;
}

footer{
    border-top:1px solid var(--border);
    text-align:center;
    padding:2rem;
    color:var(--muted);
    margin-top:5rem;
}
