:root {
    --sh-primary: #CAE2F2;
    --bt-secondary: #E00303;
    --bt-light: #F2F2F2;
    --bt-gray: #E0E0E0;
    --bt-chisiamo: #7DAFAE;
    --bt-rosa: #EDD7D5;
    --bt-blu: #386271;
    --bt-contatti: #D7D7DD;
    --bt-chisiamomna: #ECD6D4;
    --bt-bgchisiamomna: #93B1A2;
    --bt-corsi: #ECE0B5;
    --bt-servizi: #D38880;
    --bt-modal: #E3E3E3;
    --bt-bordermodal: #D6928B;
    --bt-nextdate: #C5D3CB;
    --bt-textlight: #C1BAB9;
    --bt-gold: #D3B175;
    --bt-blu-scuro: #0D2844;
}

body * {
    font-family: "Manrope", sans-serif;
}

body.adminpage h3 {
    font-family: "Manrope", sans-serif;
}

.fw-500 {
    font-weight: 500 !important;
}

.fw-600 {
    font-weight: 600 !important;
}

.bg-primary {
    background-color: var(--sh-primary) !important;
}

.bg-secondary {
    background-color: var(--bt-secondary) !important;
    color: white !important;
}

.bg-gray {
    background-color: var(--bt-gray) !important;
}

.bg-chisiamo {
    background-color: var(--bt-chisiamo) !important;
}

.bg-chisiamomna {
    background-color: var(--bt-chisiamomna) !important;
}

.bg-bgchisiamomna {
    background-color: var(--bt-bgchisiamomna) !important;
}

.bg-contatti {
    background-color: var(--bt-contatti) !important;
}

.bg-servizi {
    background-color: var(--bt-servizi) !important;
}

.bg-corsi {
    background-color: var(--bt-corsi) !important;
}

.bg-rosa {
    background-color: var(--bt-rosa) !important;
}

.bg-modal {
    background-color: var(--bt-modal) !important;
}

.bg-nextdate {
    background-color: var(--bt-nextdate) !important;
}

.text-primary {
    color: var(--sh-primary) !important;
}

.btn-blu {
    background-color: var(--bt-blu) !important;
    border-color: var(--bt-blu) !important;
    color: var(--bt-rosa) !important;
}

.btn-danger {
    background-color: var(--bt-secondary) !important;
    border-color: var(--bt-secondary) !important;
    color: #000;
}

.btn-success,
.btn-success:hover,
.btn-success:focus,
.btn-success.focus,
.btn-success:active,
.btn-success.active,
.open>.dropdown-toggle.btn-success {
    background-color: white !important;
    border: 1px solid #000 !important;
    color: #000;
}


.text-light {
    color: var(--bt-light) !important;
}

.text-light {
    color: var(--bt-textlight) !important;
}

.bg-light {
    background-color: var(--bt-light) !important;
}

.text-gold {
    color: var(--bt-gold) !important;
}

.bg-gold {
    background-color: var(--bt-gold) !important;
}

.text-percorso-silver {
    color: #FCE0E0;
}

.text-percorso-gold {
    color: #D0E2D8;
}

.border-light {
    border-color: var(--bt-light) !important;
}

.border-img-corsi {
    border-color: #D8E547 !important;
}

.btn-white {
    background-color: #fff;
}

.btn-primary {
    background-color: var(--sh-primary) !important;
    border-color: var(--sh-primary) !important;
    color: #000;
}

.btn-outline-primary,
.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active,
.btn-outline-primary.active {
    background-color: #fff !important;
    border: 2px solid var(--bt-blu-scuro) !important;
    color: var(--bt-blu-scuro);
    font-weight: 600;
}

.btn-secondary {
    background-color: var(--bt-secondary) !important;
    border-color: var(--bt-secondary) !important;
    color: #000;
}

.vh-50 {
    height: 50vh;
}

.btn-dark-blu {
    background-color: var(--bt-blu-scuro) !important;
    border-color: var(--bt-blu-scuro) !important;
    color: #fff;
}

.btn-dark-blu:hover,
.btn-dark-blu:focus {
    background-color: var(--bt-blu-scuro) !important;
    border-color: var(--bt-blu-scuro) !important;
    color: #fff;
    opacity: 0.8;
}

.btn-dark-blu:active,
.btn-dark-blu.active {
    background-color: var(--bt-blu-scuro) !important;
    border-color: var(--bt-blu-scuro) !important;
    color: #fff;
    opacity: 0.9;
}

.sottoc {
    background-color: var(--bt-blu-scuro);
    color: #FFFFFF;
}

@media screen and (max-width: 991px) {
    .sottoc .h6 {
        font-size: 14px;
    }
}

.blink {
    text-decoration: blink;
    -webkit-animation-name: blinker;
    -webkit-animation-duration: 0.6s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-direction: alternate;
}

header {
    z-index: 100;
}

header .logo {
    height: 30px;
    width: auto;
}

.footer-logo {
    height: 30px;
    width: auto;
}

.favorite-icon-lista {
    top: 15px;
    left: 15px;
    z-index: 10;
}

.menu-categorie-principale {
    font-size: 14px;
}

.collapse-icon {
    width: 15px;
    position: relative;

    & span {
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 100%;
        border: 1px solid;
    }

    & span.plus {
        transform: translateY(-50%) rotate(90deg);
    }
}

button[aria-expanded="true"] .collapse-icon span.plus {
    width: 0;
}

.filtro label {
    position: relative;
    padding-left: 25px;

    &::before {
        content: "";
        position: absolute;
        left: 0;
        top: 50%;
        display: block;
        width: 18px;
        height: 18px;
        transform: translate(0, -50%);
        border: 1px solid;
        transition: all 0.2s;
    }

    &:has(>input:checked)::before {
        background-color: var(--bt-blu-scuro);
    }

    &::after {
        content: "";
        position: absolute;
        left: 6px;
        top: 3px;
        display: block;
        width: 6px;
        height: 14px;
        transform: rotate(45deg);
        transition: all 0.2s;
    }

    &:has(>input:checked)::after {
        border-right: 2px solid #fff;
        border-bottom: 2px solid #fff;
    }
}

.avvisoCarrello {
    background: white;
    display: inline-block;
    width: 300px;
    text-align: center;
    border-radius: 25px;
    border: 1px solid #4b4b4b;
    position: absolute;
    top: 40px;
    right: 0;
    padding: 10px;
    font-size: 12px;
    color: #000;
    z-index: 1;
}

.pre {
    white-space: pre;
}

.sliderProdottiEvidenza .slick-list {
    padding: 0 30% 0 0 !important;
}

.sliderMarchi .slick-list {
    padding: 0 30% 0 0 !important;
}

.breadcrumb {
    font-size: 14px !important;
    display: flex;
    flex-direction: row;
    gap: .5rem;
}

.breadcrumb-item.active {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.breadcrumb-item+.breadcrumb-item {
    padding-left: 0;
}

.cursor-pointer {
    cursor: pointer;
}

/* Sopra a 768px */
@media (min-width: 768px) {
    .sliderProdottiEvidenza .slick-list {
        padding: 0 20% 0 0 !important;
    }

    .sliderMarchi .slick-list {
        padding: 0 20% 0 0 !important;
    }

    .w-md-50 {
        width: 50% !important;
    }

    .w-md-40 {
        width: 40% !important;
    }

    .w-md-auto {
        width: auto !important;
    }
}

/* Sopra a 992px */
@media screen and (min-width: 992px) {
    header .logo {
        height: 50px;
    }

    .footer-logo {
        height: 50px;
    }
}

/* Sopra a 1024px */
@media screen and (min-width: 1024px) {
    .sliderProdottiEvidenza .slick-list {
        padding: 0 0 0 0 !important;
    }

    .sliderMarchi .slick-list {
        padding: 0 0 0 0 !important;
    }
}


/* Sotto a 768px */
@media (max-width: 767.98px) {
    .container {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    .icon-category {
        height: 30px;
        width: auto !important;

    }

    .breadcrumb {
        font-size: 12px !important;
    }

    .h3-category {
        font-size: 18px !important;
    }

    .foto-icon-category {
        max-height: 30px !important;
    }
}

/* Sotto a 992px */
@media screen and (max-width: 991.98px) {
    #mainNav {
        background-color: #fff;
        position: fixed;
        top: 90px;
        left: 0;
        width: 100%;
        border-bottom: 1px solid #c0c0c0;
    }
}

.card-img-top.zoomFoto {
    max-height: 500px;
    object-fit: contain;
}

.vh-100-header {
    height: calc(100vh - 471px);
}