/* ================= GLOBAL ================= */
html{
    scroll-behavior:smooth;
}
body{
    font-family:"Roboto", sans-serif;
    font-weight:300;
    color:white;
    background:#0f0f0f;
    margin:0;
}

h1,h2,h3{
    font-weight:800;
}


/* ================= CONTAINER ================= */

.container{
    max-width:1440px;
    margin:0 auto;
    padding:0 70px;
}


/* ================= HEADER ================= */

.header{
    background:#000;
    padding:20px 0;
    position:sticky;
    top:0;
    z-index:100;
}

.header-grid{
    display:grid;
    grid-template-columns: 1fr auto 1fr;
    align-items:center;
}


/* ================= LOGO ================= */

.logo{
    text-align:center;
}

.logo img{
    height:45px;
    transition:0.3s;
}

.logo img:hover{
    transform:scale(1.05);
}


/* ================= NAVIGATION ================= */

.nav-left,
.nav-right{
    display:flex;
    align-items:center;
    gap:40px;
    justify-content:center;
}


.nav-left a,
.nav-right a{
    color:white;
    text-decoration:none;
    font-size:20px;
    transition:0.3s;
    margin:0 15px;
}

.nav-left a:hover,
.nav-right a:hover{
    color:#C41B25;
}


/* ================= HERO ================= */

.hero{
    position:relative;
    background:url("../images/pictures1.jpg") center/cover no-repeat;
    padding:160px 0;
    text-align:center;
    width:100%;
}

.hero-overlay{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.8);
}

.hero-content{
    position:relative;
    z-index:2;
}

.hero h1{
    font-size:44px;
    margin-bottom:20px;
}

.hero p{
    font-size:18px;
    margin:0 auto 30px;
    max-width:600px;

}


/* ================= BUTTONS ================= */

.btn{
    background:#C41B25;
    color:white;
    border:none;
    padding:14px 28px;
    cursor:pointer;
    font-size:16px;
    border-radius:15px;
    transition:0.2s;
}

.btn:hover{
    background:#881219;
}

.btn-small{
    background:#C41B25;
    border:none;
    color:white;
    padding:10px 18px;
    border-radius:12px;
    cursor:pointer;
    transition:0.2s;
}

.btn-small:hover{
    background:#881219;
}


/* ================= SERVICES ================= */

#services{
    padding:30px 0 100px;
    text-align:center;
}

#services h2{
    font-size:32px;
}

.services-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
    margin-top:50px;
}


/* ================= CARD ================= */

.card{
    background:#262626;
    border-radius:38px;
    overflow:hidden;
    transition:0.3s;
}

.card.show:hover{
    transform:translateY(-8px);
    box-shadow:0 10px 25px rgba(0,0,0,0.6);
}

.card img{
    width:100%;
    height:180px;
    object-fit:cover;
    border-radius: 38px;
}

.card-content{
    padding:0 25px 25px 25px;
}

.card-content h3{
    font-size:24px;
    color:#C41B25;
    margin-bottom:10px;
}

.card-content p{
    font-size:20px;
    line-height:1.5;
    margin-bottom:20px;
}


/* ================= CONTACT ================= */

#contact{
    padding:30px 0 100px;
    text-align:center;
}


/* ================= FORM ================= */

form{
    max-width:520px;
    margin:40px auto;
    display:flex;
    flex-direction:column;
    gap:12px;
    text-align:left;
}

label{
    font-size:14px;
    opacity:0.8;
}

select,input,textarea{
    padding:12px;
    border:none;
    border-radius:12px;
    font-size:14px;
    background:#262626;
    color:white;
}


textarea{
    min-height:100px;
}

select:focus,
input:focus,
textarea:focus{
    outline:1px solid #ffffff;
}

.checkbox{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:14px;
}

.checkbox input{
    width:16px;
    height:16px;
}


/* ================= ADVANTAGES ================= */

.advantages{
    padding:30px 0 100px;
    background:#1a1a1a;
    text-align:center;
}

.adv-subtitle{
    max-width:600px;
    margin:20px auto 40px;
    font-size:20px;
    opacity:0.8;
}

.advantages-grid{
    display:grid;
    grid-template-columns:repeat(1,1fr);
    gap:30px;
}

.adv-card{
    background:#262626;
    border-radius:38px;
    overflow:hidden;
    transition:0.3s;
}

.adv-card.show:hover{
    transform:translateY(-6px);
    box-shadow:0 10px 25px rgba(0,0,0,0.6);
}

.adv-card img{
    width:100%;
    height:180px;
    object-fit:cover;
    border-radius: 38px;
}

.adv-card h3{
    margin:20px 0 10px;
    color:#C41B25;
    font-size:24px;
}



.adv-card p{
    font-size:20px;
    padding:0 25px 25px 25px;
    line-height:1.5;
}


/* ================= ANIMATION ================= */

.fade-in{
    opacity:0;
    transform:translateY(40px);
    transition:all 0.8s ease;
}

.fade-in.show{
    opacity:1;
    transform:translateY(0);
}


/* ================= MESSENGERS ================= */

.messengers{
    position:fixed;
    bottom:20px;
    right:20px;
    display:flex;
    flex-direction:column;
    gap:10px;
}

.messengers a{
    background:#C41B25;
    color:white;
    padding:10px 14px;
    text-decoration:none;
    border-radius:6px;
    font-size:14px;
}


/* ================= FOOTER ================= */

footer{
    text-align:center;
    margin-top:60px;
    border-top:1px solid #222;
    background-color: #262626;
    padding:60px 0 30px;
}


.footer-grid{
    display:grid;
    grid-template-columns:2fr 1.5fr 2fr;
    gap:60px;
    align-items:start;
}

.footer-grid > div{
    align-self:start;
}

.footer h2{
    margin:0 0 20px;
}

.footer-logo{
    height:80px;
}

.footer-about p{
    font-size:14px;
    line-height:1.6;
    opacity:0.8;
    margin:0;
}


/* ================= SOCIAL ICONS ================= */

.socials{
    display:flex;
    justify-content:center;
    gap:20px;
}

.socials img{
    width:32px;
    height:32px;
    border-radius:4px;
    transition:0.3s;
}


.socials img:hover{
    transform:scale(1.2);
}




/* ================= FOOTER BOTTOM ================= */

.footer-bottom{
    text-align:center;
    margin-top:40px;
    font-size:13px;
    opacity:0.7;
}



/* BURGER */

.burger{
    display:none;
    flex-direction:column;
    gap:6px;
    cursor:pointer;
    z-index:100;
}

.burger span{
    width:26px;
    height:3px;
    background:white;
    display:block;
    transition:0.3s;
}

/* BURGER ACTIVE */

.burger.active span:nth-child(1){
    transform:rotate(45deg) translate(6px,6px);
}

.burger.active span:nth-child(2){
    opacity:0;
}

.burger.active span:nth-child(3){
    transform:rotate(-45deg) translate(6px,-6px);
}
/* MOBILE MENU */

.mobile-menu{
    position:fixed;
    top:70px;
    left:0;
    width:100%;
    box-sizing:border-box;
    background:#000;
    padding:20px;

    display:grid;
    grid-template-columns:1fr 1fr ;
    gap:15px;

    transform:translateY(-150%);
    transition:0.3s;
    z-index:90;
}

.mobile-menu.active{
    transform:translateY(0);
}

.mobile-menu a{
    display:flex;
    align-items:center;
    justify-content:center;

    height:55px;

    background:#1f1f1f;
    color:white;
    text-decoration:none;

    border-radius:12px;
    font-size:16px;
    transition:0.2s;
}

.mobile-menu a:hover{
    background:#C41B25;
}
/* ================= MOBILE ================= */

@media(max-width:900px){

    .container{
        padding:0 25px;
    }

    /* HEADER */

    .header-grid{
        grid-template-columns:1fr auto;
    }

    .nav-left,
    .nav-right{
        position:fixed;
        top:80px;
        left:0;
        width:100%;
        background:#000;
        flex-direction:column;
        gap:20px;
        padding:30px 0;
        transform:translateY(-150%);
        transition:0.3s;
    }

    .nav-left.active,
    .nav-right.active{
        transform:translateY(0);
    }

    .burger{
        display:flex;
    }

    /* HERO */

    .hero{
        padding:100px 0;
    }

    .hero h1{
        font-size:30px;
    }

    .hero p{
        font-size:16px;
    }

    /* SERVICES */

    .services-grid{
        grid-template-columns:1fr;
    }

    /* ADVANTAGES */

    .advantages-grid{
        grid-template-columns:1fr;
    }

    /* FORM */

    form{
        width:100%;
    }

    /* BUTTON */

    form button{
        width:100%;
    }

    /* FOOTER */

    .footer-grid{
        grid-template-columns:1fr;
        text-align:center;
        gap:40px;
    }

    .footer-logo{
        margin:auto;
    }

    .socials{
        justify-content:center;
    }

}
@media(max-width:800px){

    .nav-left,
    .nav-right{
        display:none;
    }

    .burger{
        display:flex;
    }

}
