*{
    box-sizing:border-box;
}

body{
    margin:0;
    background:#111;
    color:#fff;
    font-family:
        Inter,
        Segoe UI,
        sans-serif;
}

.hero{

    height:80vh;

    background:
        linear-gradient(
            rgba(0,0,0,.75),
            rgba(0,0,0,.75)
        ),
        url(hero.jpg);

    background-size:cover;
    background-position:center;

    display:flex;
    align-items:center;
    justify-content:center;

    text-align:center;
}

.overlay{
    max-width:900px;
    padding:20px;
}

.hero h1{

    font-size:4rem;
    margin:0;
}

.hero p{

    font-size:1.3rem;
    opacity:.85;
}

.badges{

    display:flex;
    gap:10px;
    justify-content:center;
    flex-wrap:wrap;

    margin:30px 0;
}

.badges span{

    background:#222;
    padding:10px 16px;
    border-radius:999px;
}

.buttons{

    display:flex;
    gap:15px;
    justify-content:center;
    flex-wrap:wrap;
}

.buttons a{

    background:#4CAF50;

    color:#fff;

    text-decoration:none;

    padding:14px 24px;

    border-radius:12px;
}

.features{

    max-width:1200px;
    margin:auto;

    padding:80px 20px;

    display:grid;

    grid-template-columns:
        repeat(auto-fit,minmax(250px,1fr));

    gap:20px;
}

.card{

    background:#1b1b1b;

    padding:24px;

    border-radius:20px;
}

.screenshots{

    max-width:1200px;
    margin:auto;
    padding:20px;
}

.screenshots h2{

    text-align:center;
    margin-bottom:40px;
}

.gallery{

    display:grid;

    grid-template-columns:
        repeat(auto-fit,minmax(220px,1fr));

    gap:20px;
}

.gallery img{

    width:100%;

    border-radius:20px;

    transition:.2s;
}

.gallery img:hover{

    transform:scale(1.03);
}

footer{

    text-align:center;

    padding:50px;

    color:#999;
}

.content{

    max-width:900px;
    margin:auto;
    padding:50px 20px;
}