/* .btn:not(.btn-full) {

    a:not([class*="datepick-"]):not(.mphb-date-cell),
    button:not([class*="datepick-"]),
    input[type="submit"] {
        display: inline-block;
    }
} */
input[type="submit"] {
    border: 0;
}

.btn a:not([class*="datepick-"]):not(.mphb-date-cell),
.btn button:not([class*="datepick-"]),
.btn input[type="submit"],
.bg-secondary a:not([class*="datepick-"]):not(.mphb-date-cell),
.bg-secondary button:not([class*="datepick-"]),
.bg-secondary input[type="submit"] {
    display: inline-block;
    padding: 16px;
    font-weight: var(--fw-semibold);
    font-size: 1rem;
    border-radius: var(--radius-sm) !important;
}

.btn.btn-full a:not([class*="datepick-"]):not(.mphb-date-cell),
.btn.btn-full button:not([class*="datepick-"]),
input[type="submit"].btn-full,
.bg-secondary.btn-full a:not([class*="datepick-"]):not(.mphb-date-cell),
.bg-secondary.btn-full button:not([class*="datepick-"]) {
    width: 100% !important;
}

.btn.btn-lg a,
.btn.btn-lg button,
input[type="submit"].btn-lg,
.bg-secondary.btn-lg a,
.bg-secondary.btn-lg button {
    padding: 20px !important;
    font-size: 1.1rem !important;
}

.btn.btn-primaire a,
.btn.btn-primaire button,
input[type="submit"].btn-primaire,
.bg-secondary.btn-primaire a,
.bg-secondary.btn-primaire button {
    background-color: var(--primary);
    color: var(--white);
    border-color: var(--primary);
    fill: var(--white);
}

.btn.btn-primaire-bord a,
.btn.btn-primaire-bord button,
input[type="submit"].btn-primaire-bord,
.bg-secondary.btn-primaire-bord a,
.bg-secondary.btn-primaire-bord button {
    background-color: var(--white);
    color: var(--primary);
    border-color: var(--primary);
    fill: var(--primary);
}

.btn.btn-white a,
.btn.btn-white button,
input[type="submit"].btn-white,
.bg-secondary.btn-white a,
.bg-secondary.btn-white button {
    background-color: var(--white);
    color: var(--text);
    border-color: var(--white);
    fill: var(--text);
}


/* .card>div {
    background: white;
    padding: 2rem !important;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    margin-bottom: 2rem;
} */

/* Style .card SI elle contient plusieurs enfants */
.card:has(> *:nth-child(2)) {
    background: white;
    padding: 2rem !important;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    margin-bottom: 2rem;
}

/* Style l'enfant unique */
.card>*:only-child {
    background: white;
    padding: 2rem !important;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    margin-bottom: 2rem;
}

@media screen and (max-width: 767) {
    .card:has(> *:nth-child(2)) {
        padding: 1.5rem !important;
    }
}

.highlight-box {
    background: var(--light-green) !important;
    padding: 1.5rem;
    border-radius: 8px;
    border-left: 4px solid var(--dark-green);
    margin-bottom: 1.5rem;
}

.highlight-box.hb-primary {
    background: var(--primary-light) !important;
    border-left-color: var(--primary);
}

.highlight-box.hb-white {
    background: var(--white) !important;
    border-left-color: var(--dark-green);
}

.highlight-box.hb-rouille {
    background: var(--light-rouille) !important;
    border-left-color: var(--rouille);
    color: var(--white);
}

.alert {
    background: var(--warning-light);
    border-left: 4px solid var(--warning);
    padding: 1rem;
    margin-top: 1rem;
    border-radius: 4px;
}


/* Galeries */
.dialog-type-lightbox {
    background-color: rgba(0, 0, 0, .9) !important;
}

.elementor-slideshow__description {
    display: none;
}

.gallery {
    column-count: 4;
    column-gap: 16px;
    display: block !important;
}

/* Réinitialiser complètement les styles des gallery-item */
.gallery .gallery-item {
    break-inside: avoid;
    margin-bottom: 16px;
    display: inline-block !important;
    width: 100% !important;
    float: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.gallery .gallery-item .gallery-icon {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: block !important;
    margin: 0 !important;
    width: 100% !important;
}

.gallery .gallery-item .gallery-icon a {
    display: block !important;
    line-height: 0 !important;
    width: 100% !important;
}

.gallery .gallery-item:hover .gallery-icon {
    transform: translateY(-4px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
}

.gallery .gallery-item .gallery-icon img {
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    min-width: 100% !important;
    display: block !important;
    transition: transform 0.3s ease;
    margin: 0 !important;
    padding: 0 !important;
}

.gallery .gallery-item:hover .gallery-icon img {
    transform: scale(1.05);
}

/* Supprimer les clear: both qui cassent le masonry */
.gallery br {
    display: none !important;
}

/* Cibler spécifiquement gallery-columns-3 */
.gallery.gallery-columns-3 {
    column-count: 3 !important;
}

/* Surcharger la règle Elementor qui limite à 25% */
@media (min-width: 768px) {

    .elementor-image-gallery .gallery-columns-3 .gallery-item,
    .gallery-columns-3 .gallery-item {
        max-width: 100% !important;
    }
}

/* Forcer les dimensions pour portrait et landscape */
.gallery .gallery-item .gallery-icon.portrait,
.gallery .gallery-item .gallery-icon.landscape {
    width: 100% !important;
}

/* Responsive */
@media (max-width: 1200px) {
    .gallery.gallery-columns-3 {
        column-count: 2 !important;
    }
}

@media (max-width: 768px) {
    .gallery.gallery-columns-3 {
        column-count: 1 !important;
        column-gap: 12px !important;
    }

    .gallery .gallery-item {
        margin-bottom: 12px !important;
    }
}

/* @media (max-width: 480px) {
    .gallery {
        column-count: 1 !important;
    }
} */


/* Tabs */
.elementor-widget-n-tabs .e-n-tab-title[aria-selected="false"] {
    color: var(--primary) !important;

    &:hover {
        color: var(--white) !important;
    }
}

.gt_float_switcher {
    font-size: 15px !important;
    box-shadow: none !important;
    /* border: 1px solid var(--gray-400); */
    border-radius: 8px !important;
}

.gt_float_switcher .gt-selected .gt-current-lang {
    padding: 8px 10px !important;
}

.gt_float_switcher img {
    width: 25px !important;
}