:root{
    --green:#07951b;
    --dark:#10292f;
    --text:#5f6b6f;
    --border:#edf1f0;
    --light:#f5fbf7;
}

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

body{
    font-family:'Inter', sans-serif;
    color:var(--dark);
    background:#fff;
}

.site-container{
    max-width:1180px;
}

/* HEADER */
.main-header{
    width:100%;
    height:105px;
    background:#fff;
    display:flex;
    align-items:center;
    position:sticky;
    top:0;
    z-index:999;
    box-shadow:0 2px 18px rgba(0,0,0,.04);
}

.main-header .navbar{
    width:100%;
    padding:0;
}

.main-logo{
    width:190px;
    height:auto;
    display:block;
}

.main-menu{
    gap:31px;
}

.main-menu .nav-link{
    position:relative;
    padding:42px 0 39px !important;
    color:#132b30;
    font-size:14px;
    font-weight:800;
    line-height:1;
    transition:.25s ease;
}

.main-menu .nav-link:hover,
.main-menu .nav-link.active{
    color:var(--green);
}

.main-menu .nav-link.active::after{
    content:"";
    width:42px;
    height:3px;
    background:var(--green);
    position:absolute;
    left:50%;
    bottom:25px;
    transform:translateX(-50%);
    border-radius:20px;
}

.header-actions{
    display:flex;
    align-items:center;
    gap:28px;
}

.header-phone{
    display:flex;
    align-items:center;
    gap:10px;
    color:#10292f;
    font-size:14px;
    font-weight:900;
    text-decoration:none;
    white-space:nowrap;
}

.header-phone i{
    width:22px;
    height:22px;
    stroke:var(--green);
    stroke-width:3;
}

.header-btn{
    background:var(--green);
    color:#fff;
    text-decoration:none;
    padding:14px 24px;
    border-radius:6px;
    font-size:14px;
    font-weight:900;
    line-height:1;
    box-shadow:0 8px 22px rgba(7,149,27,.18);
    transition:.25s ease;
    white-space:nowrap;
}

.header-btn:hover{
    background:#067d17;
    color:#fff;
    transform:translateY(-1px);
}

/* FOOTER */
.footer-section{
    background:#fff;
    padding:48px 0 0;
    border-top:1px solid var(--border);
}

.footer-row{
    align-items:flex-start;
}

.footer-logo{
    width:180px;
    height:auto;
    margin-bottom:18px;
}

.footer-desc{
    max-width:260px;
    color:var(--text);
    font-size:14px;
    line-height:1.85;
    margin-bottom:18px;
}

.footer-social{
    display:flex;
    gap:12px;
}

.footer-social a{
    width:32px;
    height:32px;
    border-radius:50%;
    background:var(--light);
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    transition:.25s ease;
}

.footer-social a:hover{
    background:var(--green);
}

.footer-social i{
    width:16px;
    height:16px;
    stroke:var(--green);
    stroke-width:2.2;
}

.footer-social a:hover i{
    stroke:#fff;
}

.footer-section h6{
    font-size:15px;
    font-weight:900;
    color:var(--dark);
    margin-bottom:22px;
}

.footer-section ul{
    list-style:none;
    padding:0;
    margin:0;
}

.footer-section ul li{
    margin-bottom:12px;
}

.footer-section ul li a{
    color:var(--text);
    font-size:14px;
    font-weight:500;
    text-decoration:none;
    transition:.25s ease;
}

.footer-section ul li a:hover{
    color:var(--green);
    padding-left:3px;
}

.footer-contact p{
    display:flex;
    align-items:flex-start;
    gap:10px;
    color:var(--text);
    font-size:14px;
    line-height:1.75;
    margin-bottom:10px;
}

.footer-contact i{
    width:18px;
    height:18px;
    min-width:18px;
    stroke:var(--green);
    stroke-width:2.5;
    margin-top:3px;
}

.footer-bottom{
    margin-top:38px;
    padding:16px 0;
    border-top:1px solid var(--border);
    text-align:center;
    color:var(--text);
    font-size:13px;
    font-weight:500;
}

/* RESPONSIVE */
@media(max-width:991px){
    .main-header{
        height:auto;
        padding:14px 0;
    }

    .main-logo{
        width:155px;
    }

    .navbar-collapse{
        padding-top:20px;
    }

    .main-menu{
        gap:0;
    }

    .main-menu .nav-link{
        padding:13px 0 !important;
        font-size:15px;
    }

    .main-menu .nav-link.active::after{
        display:none;
    }

    .header-actions{
        flex-direction:column;
        align-items:flex-start;
        gap:16px;
        margin-top:15px;
        padding-bottom:8px;
    }

    .footer-section{
        padding-top:42px;
    }
}

@media(max-width:575px){
    .site-container{
        padding-left:20px;
        padding-right:20px;
    }

    .main-logo{
        width:145px;
    }

    .header-btn{
        width:100%;
        text-align:center;
        padding:15px 22px;
    }

    .footer-logo{
        width:165px;
    }

    .footer-bottom{
        font-size:12px;
    }
}
.footer-social{
    display:flex;
    align-items:center;
    gap:10px;
    margin-top:18px;
}

.footer-social a{
    width:34px;
    height:34px;
    border-radius:50%;
    background:#f3fbf5;
    color:#07951b;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    transition:.3s;
}

.footer-social a i{
    font-size:15px;
    line-height:1;
}

.footer-social a:hover{
    background:#07951b;
    color:#fff;
    transform:translateY(-3px);
}