*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    background:#000;
    color:white;
    font-family:Arial, Helvetica, sans-serif;
}

.hero{
    min-height:100vh;

    background:
        linear-gradient(
            rgba(0,0,0,.65),
            rgba(0,0,0,.65)
        ),
        url("img/hero.jpg");

    background-size: cover;
    background-position: center top;

    display:flex;
    align-items:center;
}

.content{
    max-width:700px;
    padding:60px;

    text-align:center;
}

.logo{
    width:320px;
    max-width:90%;
}

h1{
    font-size:4rem;
    font-family:"Cinzel",serif;
    text-transform:uppercase;
    line-height:1.05;
}

.line{
    width:380px;
    max-width:90%;

    height:3px;
    background:#d40000;

    margin:25px auto;
}

.slogan{
    font-size:1.4rem;
    letter-spacing:4px;

    color:#ddd;
}

.contact{
    margin-top:40px;
    text-align:center;
}

.contact div{
    margin-bottom:15px;
    font-size:1.4rem;
}

.contact i{
    color:#d40000;
    margin-right:10px;
}

.social{
    margin-top:40px;

    display:flex;
    justify-content:center;

    gap:20px;
}

.social a{
    width:60px;
    height:60px;

    border:2px solid #d40000;

    border-radius:12px;

    display:flex;
    justify-content:center;
    align-items:center;

    color:white;
    text-decoration:none;

    font-size:28px;

    transition:.3s;
}

.social a:hover{
    background:#d40000;
}

.services{
    background:#050505;

    display:grid;
    grid-template-columns:repeat(4,1fr);

    gap:30px;

    padding:60px;
}

.box{
    text-align:center;
}

.box h2{
    color:#fff;
    margin-bottom:15px;
}

.box p{
    color:#bbb;
    line-height:1.5;
}

@media(max-width:900px){

    h1{
        font-size:2.5rem;
    }

    .services{
        grid-template-columns:1fr;
    }

    .content{
        padding:30px;
    }
}