/* Bootstrap */
.btn-primary {
    --bs-btn-bg: #80ab00;
    --bs-btn-border-color: #80ab00;
    --bs-btn-hover-bg: #ffffff;
    --bs-btn-hover-border-color: #80ab00;
    --bs-btn-hover-color: #80ab00;
    --bs-btn-active-bg: #ffffff;
    --bs-btn-active-border-color: #80ab00;
    --bs-btn-disabled-bg: #9ac517;
    --bs-btn-disabled-border-color: #9ac517;
    border-radius: 50px;
    padding: 13px 70px;
    font-weight: 500;
    transition: 0.2s;
}
.bg-primary {
    background-color: #80ab00 !important;
}
.text-primary {
    color: #80ab00 !important;
}

/* Stile per le voci di menu principali (non il dropdown) */
.navbar-nav > .menu-item {
    padding-left: 2em;
    text-transform: uppercase;
    font-weight: 600;
    color: #5d5737 !important;
}

/* Stile per il dropdown */
.navbar-nav .dropdown-menu {
    border: none;
    border-radius: 0;
    border-top: 2px solid #80ab00;
}
.navbar-nav .dropdown-menu > .menu-item {
    font-family: 'Roboto';
    text-transform: uppercase;
    font-weight: 600;
    color: #5d5737 !important;
}

.navbar-nav .dropdown-menu .menu-item > a:active {
    background-color: #80ab00;
    color: white;
}

/* General */
body, .roboto {
    font-family: "Roboto", serif !important;
}
h1, h2, h3, h4, h5, h6, .roboto-slab {
    font-family: "Roboto Slab", serif !important;
}
#language-bar {
    background-color: #5d5737;
    height: 40px;
}
#company-logo {
    max-height: 130px;
}
.letter-spacing-10 {
    letter-spacing: 10px;
}
#pages-header img {
    opacity: 0.80;
}
#pages-header {
    background: black;
}
#pages-header, #pages-header img {
    height: 200px;
}
#pages-header .pages-header-content {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.colored-bg {
    background-color: #fff9e3 !important;
}

/* Home */
#init-bg {
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    box-shadow: inset 0 0 0 2000px rgba(0, 0, 0, 0.2);
    min-height: 630px;
    display: flex;
    justify-content: center; /* Allineamento orizzontale */
    align-items: center;     /* Allineamento verticale */
}
#init-text {
    text-align: center;      /* Centra il testo orizzontalmente */
    padding: 5rem;           /* Mantieni il padding che hai già aggiunto, ma puoi personalizzarlo */
}
#init-text h1 {
    font-size: 51px;
}
#init-text .h3 {
    font-size: 40px;
}
#init-boxes {
    background-color: #80ab00;
    border-radius: 5px;
    bottom: -90px;
    right: 0;
    left: 0;
}
#init-boxes img {
    max-width: 55px;
    max-height: 55px;
}
#init-boxes h5 {
    font-size: 19px;
}
#init-boxes h6 {
    font-size: 16px;
}
#init-boxes .row div:not(:last-child) {
    border-right: 1px solid white;
}
#main-content {
    margin-top: 170px;
}
#main-content .title {
    font-weight: 500;
}
#main-content .subtitle,
#main-content .title {
    font-size: 28px;
}
#services {
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    box-shadow: inset 0 0 0 2000px rgba(255, 249, 227, 0.82);
}
#services #col-dx,
#services #col-sx {
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    box-shadow: inset 0 0 0 2000px rgba(0, 0, 0, 0.39);
    border-radius: 5px;
}
#brands .owl-carousel .owl-stage {
    display: flex;
    align-items: center;
}
#brands img {
    max-height: 100px;
    width: 100%;
    object-fit: scale-down;
}

/* Products */
#products .main-content {
    max-width: 964px;
}
#products .category-image {
    height: 185px;
}
#products-professional .category-image {
    height: 217px;
}
#products .category-logo {
    width: 60px;
    height: 60px;
}
#products .card-body,
#products-professional .card-body {
    background-color: #80ab00;
}
#products .card .card-text {
    letter-spacing: 10px;
}
.product-catalogue {
    border-bottom: 3px solid #80ab00;
}
.product-catalogue .catalogue-image {
    max-width: 240px;
}
.product-catalogue .file img {
    max-width: 25px;
}
.product-catalogue .file .btn {
    padding: 5px 25px;
}
.product-catalogue .file .btn:hover {
    background-color: #80ab00;
    color: white;
}

/* Downloads */
#download-section img {
    width: 35px;
    height: 35px;
}
#download {
    background-color: rgba(255, 249, 227, 0.82);
}
#download img {
    width: 50px;
    height: 50px;
}
#download hr {
    opacity: 1 !important;
    color: #5d5737 !important;
    border-top: 3px solid !important;
}

/* Sidebar */
#category-list ul{
    background-color: rgb(255, 247, 220);
    max-height: 578px;
    overflow-y: scroll;
}
.category-link {
    color: #80ab00;
}
.category-highlight.active {
    background: #80ab00;
}
.category-highlight:hover {
    background-color: #80ab00;
}
.category-highlight:hover a {
    color: white;
}
.category-highlight.active .category-link {
    color: white;
}

.subcategory-list {
    background-color: #f5efda !important;
    overflow-y: unset;
}

/* Error 404 */
#error-404 h1 {
    font-size: 5em;
}

/* Footer */
footer {
    font-size: 14px;
}
#footer-top {
    background: rgb(93, 87, 55);
}
#footer-bottom {
    background: rgb(66, 62, 38);
}
#footer-logo {
    max-width: 180px;
}

/* Search */
.input-group {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 50px;
    background-color: rgb(255, 247, 220);
    overflow: hidden;
    max-width: 516px;
    height: 56px;
    padding: 0px 5px;
    width: 100%;
}
#search-field { 
    flex: 1;
    background-color: transparent;
    border-radius: 50px;
    border: none;
    outline: none;
    padding: 0px 15px;
}
.form-control {
    width: 100%;
    font-size: 14px;
    font-weight: 700;
    color: rgb(93, 87, 55);
}
#search-product {
    background-color: #86C232;
    border-radius: 50%;
    color: white;
    width: 48px;
    height: 48px;
    border: none;
    padding: 0px;
    cursor: default;
}

/* Product */
#product-title {
    color: #008a41;
}

/* Logo */
#company-logo {
    max-width: 184px;
    width: 100% !important;

}

/* #menu-bar {
    max-width: 100%;
    max-height: 100%;
} */

/* Responsive */
@media (min-width: 1400px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1480px;
    }
}

@media screen and (max-width: 767px) {

    #menu-bar .col-2, #menu-bar .col-4 {
        text-align: center;
        width: 100%;
    }


    .search-form {
        width: 100%;
        max-width: 100%;
        height: 25px;
        display: flex; 
        align-items: center;
        box-sizing: border-box;
    }

    #init-bg {
        height: auto;
        padding: 0px;
    }

    #init-text h1 {
        font-size: 2rem;
    }

    #init-text .btn-primary {
        font-size: 1rem;
        padding: 10px 20px;
    }
}



/* Responsive header navbar */
@media screen and (max-width: 767px) {
    /* Header */
    .main-navigation {
        display: none;
        flex-direction: column;
        width: 100%;
    }
    .menu-toggle {
        display: inline-block;
    }
    .main-navigation.open {
        display: flex;
    }
    header #header-menu ul {
        display: block;
    }
    header #header-menu ul li {
        margin: unset;
        margin-top: 10px;
    }
    #header-top img.position-absolute {
        max-width: 130px;
        position: unset !important;
        width: 100%;
    }

    #menu-bar .menu-toggle {
        font-size: 1.5rem; /* Dimensione icona hamburger */
        color: #333; /* Colore dell'icona */
    }

    #menu-bar .search-form {
        flex-grow: 1; /* La barra di ricerca occupa il massimo spazio disponibile */
    }

    #menu-bar .search-field {
        font-size: 0.9rem; /* Rimpicciolisce il campo di ricerca su schermi piccoli */
    }

    #menu-bar .collapse {
        margin-top: 10px; /* Spaziatura tra la barra di ricerca e il menu */
        display: block;
    }

    #menu-bar nav .navbar-nav {
        display: flex;
        flex-direction: column !important; /* Voci una sotto l'altra */
        align-items: flex-end; /* Allineate a destra */
        text-align: right;
        gap: 10px; /* Spaziatura tra le voci */
    }

}

/* Allineamento del contenuto */
#menu-bar .col-2, 
#menu-bar .col-7, 
#menu-bar .col-3 {
    display: flex;
    align-items: center;
}

/* Ridimensionamento della barra di ricerca */
#menu-bar .search-field {
    font-size: 1rem;
}

/* Menu */
#menu-bar nav .navbar-nav {
    display: flex; /* Dispone le voci in orizzontale */
    justify-content: flex-end; /* Allinea il menu a destra */
    gap: 8px; /* Spaziatura tra le voci */
} 

#menu-bar nav .navbar-nav > li {
    white-space: nowrap; /* Impedisce che il testo delle voci vada a capo */
}

@media (min-width: 768px) {
    #menu-bar #header-navigation {
        text-align: right; /* Allinea il menu a destra su desktop */
    }
}

ul#menu-header-menu {
    overflow: visible;
}
/* Responsive header navbar */

/* Footer menu */
ul#menu-footer-menu {
    list-style: none;
    padding: 0;
    margin-top: 10px;
}

ul#menu-footer-menu li a{
    color: white;
    text-decoration: none;
}

ul#menu-footer-menu li{
    margin-top: 10px;
}

ul#menu-footer-menu-esp li a{
    color: white;
    text-decoration: none;
}

ul#menu-footer-menu-esp li{
    margin-top: 10px;
}
/* Footer menu */
#products .owl-carousel .card{
    max-width: 200px;

}

.contact-us-title {
    color:#80ab00;
}

/* Language menu */
/* Stile per il contenitore */
#language-bar {
    display: flex; /* Utilizzo di Flexbox per l'allineamento */
    justify-content: flex-end; /* Allinea tutto a destra */
    padding: 10px; /* Spaziatura opzionale */
}

/* Stile per il menu */
.language-nav {
    display: flex; /* Flexbox per il contenitore del menu */
    align-items: center; /* Allinea verticalmente al centro */
}

/* Rimuovi il padding e i margini di default */
#menu-language-menu {
    list-style: none; /* Rimuovi i puntini */
    display: flex; /* Menu in orizzontale */
    margin: 0;
    padding: 0;
}

/* Stile per gli elementi del menu */
.language-menu li {
    margin: 0 10px; /* Spaziatura tra gli elementi */
}

/* Stile per i link */
.language-menu a {
    text-decoration: none; /* Rimuovi sottolineatura */
    color: white; /* Colore del testo */
    font-size: 14px; /* Dimensione del carattere */
    font-weight: bold; /* Grassetto */
    text-transform: uppercase;
}

/* Language Menu */

.contact-info-text {
    margin: 0;
}

#menu-language-menu li:first-child {
    border-right: white solid;
    padding-right: 20px;
}

/* bordi barra categorie prodotti home */
.border-link-left {
    border-left: white solid !important;
}
.border-link {
    border-left: white solid !important;
    border-right: white solid !important;
}