/* -----------------------------------------
   MONA SANS SEMI-EXPANDED (LOCAL FONTS)
----------------------------------------- */

@font-face {
    font-family: "Mona Sans SemiExpanded";
    src: url("../fonts/MonaSans_SemiExpanded-ExtraLight.ttf") format("truetype");
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Mona Sans SemiExpanded";
    src: url("../fonts/MonaSans_SemiExpanded-Light.ttf") format("truetype");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Mona Sans SemiExpanded";
    src: url("../fonts/MonaSans_SemiExpanded-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Mona Sans SemiExpanded";
    src: url("../fonts/MonaSans_SemiExpanded-Medium.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Mona Sans SemiExpanded";
    src: url("../fonts/MonaSans_SemiExpanded-SemiBold.ttf") format("truetype");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Mona Sans SemiExpanded";
    src: url("../fonts/MonaSans_SemiExpanded-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Mona Sans SemiExpanded";
    src: url("../fonts/MonaSans_SemiExpanded-ExtraBold.ttf") format("truetype");
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Mona Sans SemiExpanded";
    src: url("../fonts/MonaSans_SemiExpanded-Black.ttf") format("truetype");
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}


:root {
    --dark-green-color: #142D1C;
    --cream-color: #F6F3F1;
    --light-green-color: #A6CF94;
    --highlight-green-color: #8FA893;
    --white-color: #ffffff;
    --white-color-rgb: 255,255,255;
    --font-primary: "Mona Sans", sans-serif;
    --font-semi-expanded: "Mona Sans SemiExpanded", sans-serif;
    --font-optical-sizing: auto;
    --font-variation-width: 100;
    --font-width-semi-extended: 112.5;
    --font-weight-thin: 200;
    --font-weight-regular: 400;
    --font-weight-medium: 500;
     --font-weight-semi-bold: 600;
    --font-weight-bold: 700;
}

body {
    font-family: var(--font-primary);
    font-optical-sizing: var(--font-optical-sizing);
    font-variation-settings: "wdth" var(--font-variation-width);
}

h1, h2, h3 {
    font-family: var(--font-semi-expanded);
    font-weight: var(--font-weight-semi-bold);
}

h4, h5, h6 {
    font-family: var(--font-semi-expanded);
    font-weight: var(--font-weight-semi-bold);
}

h6 {
    font-size: 20px;
}

.fontSemiExtended {
    font-family: var(--font-semi-expanded);
    font-weight: var(--font-weight-semi-bold);
}

.h-60 {
    height: 60%;
}

.home-hero {
    padding: 250px 8px 0px 8px;
}

.btn-cta-primary {
    gap: 0;
}

.btn-cta-primary:hover {
    transform: scale(.95);
}

.icon-thin {
    width: 4rem;
    height: 4rem;
    stroke-width: 0.3; 
}

.fontThin {
    font-weight: var(--font-weight-thin);
}

.fontRegular {
    font-weight: var(--font-weight-regular);
}

.fontMedium {
    font-weight: var(--font-weight-medium);
}

.fontBold {
    font-weight: var(--font-weight-bold) !important;
}

.home-hero .btn-cta-primary {
    border: none;
}

.home-hero h1 {
    font-size: 5rem;
    line-height: 6.5rem;
}

.about-us img, 
.qualitySection img,
.certificationSection img {
    max-height: 550px;
}

.service-wrap {
    transform: none;
}

.bg-overlay-2 {
    background-image: linear-gradient(180deg, var(--transparent-color-1) 0%, var(--dark-green-color) 100%);
    opacity: 0.8;
}

.impact-box img {
    height: 550px;
}

.pricing-box ul li {
    font-weight: var(--font-weight-medium);
}

.text-faqs h3 {
    font-size: 2rem;
}

.why-box {
    gap: 150px
}

.client-logos img {
    opacity: 1;
    height: 90px;
}

.js-header.is-sticky {
    position: sticky;
    top: 0;
    z-index: 1030;
}

.js-header {
    transition: all 0.3s ease;
}

.js-header .logoSticky {
    display: none;
}

.js-header.is-sticky .logoSticky {
    display: block;
    width: 175px;
    height: auto;
}

.js-header.is-sticky .logoNormal {
    display: none;
}

.js-header.is-sticky .navbar-brand {
    display: flex;
    align-items: center;
}

.wpcf7-acceptance label {
    display: block;
    font-size: 1rem;
}

.link-accettazione:hover {
    transition: all 0.3s ease;
}

.bg-overlay {
    opacity: 0.4;
    z-index: 9;
}

.packageElement img {
    width: 50px;
    height: 50px;
}

.nav-pills .nav-link {
    font-family: var(--font-semi-expanded);
    font-weight: var(--font-weight-semi-bold);
}

.btn-cta-primary {
    font-family: var(--font-semi-expanded);
    font-weight: var(--font-weight-medium);
}

.overCta {
    opacity: 0.9;
}

.nav.nav-pills .nav-item:last-child {
    border-bottom: none;
}












/* COLORI */

body {
    background-color: var(--dark-green-color);
}

.btn-cta-primary {
    background-color: var(--light-green-color);
    color: var(--dark-green-color);
    border: 1px solid var(--light-green-color);
}

.btn-cta-primary .btn-icon-primary:before {
    color: var(--dark-green-color);
}

.btn-cta-primary:hover {
    color: var(--dark-green-color);
}

.footer {
    background-color: var(--light-green-color);
}

a {
    color: var(--dark-green-color);
}

.darkTextColor {
    color: var(--dark-green-color);
}

.lightTextColor {
    color: var(--light-green-color);
}

.highLightTextColor {
    color: var(--highlight-green-color);
}

.home-hero .btn-cta-primary {
    background-color: rgba(var(--white-color-rgb), 0.6);
    color: var(--white-color);
}

.home-hero .btn-cta-primary .btn-icon-primary:before {
    color: var(--white-color);
}

.whiteBackground {
    background-color: var(--white-color);
}

.darkGreenBackground {
    background-color: var(--dark-green-color);
}

.lightGreenBackground {
    background-color: var(--light-green-color);
}

.creamBackground {
    background-color: var(--cream-color);
}

.about-us p {
    color: var(--white-color);
}

.icon-service .icon-inner {
    background-color: var(--white-color);
}

.icon-service .spacer-top-left-25, .team-social .spacer-top-left-25 {
    box-shadow: -10px -10px 0px 0px var(--white-color);
}

.icon-wrapper {
    background-color: var(--light-green-color);
}

.service-content h4 {
    color: var(--white-color);
}

.service-content p {
    color: var(--white-color);
}

.impact-content {
    background-color: var(--dark-green-color);
}

.spacer-bottom-left-50 {
    box-shadow: -10px 10px 0px 0px var(--dark-green-color);
}

.nav-link.active {
    color: var(--light-green-color) !important;
}

.pricing-box p {
    color: var(--dark-green-color);
}

.pricing-box ul li {
    color: var(--dark-green-color);
}

.pricing-box {
    border: 1px solid var(--dark-green-color);
}

.products .btn-cta-primary {
    background-color: var(--white-color);
    border: 1px solid var(--dark-green-color);
}

.text-faqs .spacer-top-left {
    box-shadow: -10px -10px 0px 0px var(--white-color);
}

.text-faqs .wrapper-text {
    background-color: var(--white-color);
}

.accordion .accordion-button {
    background-color: var(--light-green-color);
    color: var(--dark-green-color);
}

.accordion .accordion-button.collapsed {
    color: var(--dark-green-color);
}

.accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='var(--dark-green-color)' class='bi bi-dash' viewBox='0 0 16 16'%3E%3Cpath d='M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8z'/%3E%3C/svg%3E");
}

.accordion-button::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='var(--dark-green-color)' class='bi bi-plus' viewBox='0 0 16 16'%3E%3Cpath d='M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4z'/%3E%3C/svg%3E");
}

.why-box {
    border: 1px solid var(--dark-green-color);
    background-color: var(--dark-green-color);
}

.qualitySection p {
    color: var(--dark-green-color);
}

.our-partners .border-big {
    border: 10px solid var(--white-color);
}

.our-partners .spacer-top-right-25 {
    box-shadow: 10px -10px 0px 0px var(--white-color);
}

.our-partners .spacer-top-left-25 {
    box-shadow: -10px -10px 0px 0px var(--white-color);
}

.bg-overlay-4 {
    background-color: var(--dark-green-color);
}

.nav-link:hover, .nav-link:focus {
    color: var(--light-green-color) !important;
}

.js-header.is-sticky {
    background-color: var(--white-color); /* o il tuo colore */
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.navbar-toggler {
    background-color: var(--dark-green-color);
}

.navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23A6CF94' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

.offcanvas-header .btn-close {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='var(--dark-green-color)'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") !important;
    background-color: var(--light-green-color);
}

.bg-overlay {
    background-color: var(--dark-green-color);
}

.link-accettazione {
    color: var(--dark-green-color);
}

.link-accettazione:hover {
    color: var(--light-green-color);
}

.nav.nav-pills .nav-item {
    border-bottom: 1px solid #fff;
}

.author {
    font-size: .8rem;
}






/* RESPONSIVE */

@media (max-width: 991px){
    .home-hero h1 {
        font-size: 3rem;
        line-height: 3.5rem;
    }

    .carousel-item img {
        object-fit: cover;
    }

    .header-logo {
        height: 46px;
    }

    .section {
        padding-top: 80px;
        padding-bottom: 80px;
    }

    section.services {
        padding-top: 80px;
        padding-bottom: 80px;
    }

    .text-faqs h3 {
        font-size: 1.3rem;
    }

    .form {
        margin-top: 10px;
    }

    .js-header.is-sticky .logoSticky {
        height: 46px;
    }

    .js-header.is-sticky .navbar {
        padding: .5rem 0 !important;
    }

    .why-box.special {
        gap: 1.5rem;
    }

    .certificationSection {
        padding-top: 150px;
    }

    .mtServiceMob {
        margin-top: 1.3rem;
    }

    .packageSection {
        padding-top: 2.3rem;
    }

}

@media (min-width: 992px){
    .certificationSection {
        padding-top: 250px;
    }

    .card-form {
        min-height: 672px;
    }

    .pricing-box {
        min-height: 486px;
    }

    .js-header.is-sticky .nav-link {
        color: var(--dark-green-color);
    }

    .processSection h2 {
        max-width: 340px;
    }

    .processSection h6 {
        max-width: 150px;
    }

}








