html { scroll-behavior: initial; }

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

.position-relative { position: relative; }

.d-none, .hidden { display: none!important; }
.d-block { display: block!important; }
.d-flex { display: flex!important; align-items: center!important; }
.d-inline { display: inline!important; }

.w-50 { width: 50%!important; }
.w-100 { width: 100%!important; }
.h-100 { height: 100%!important; }

.m-0 { margin: 0!important; }
.m-1 { margin: 1rem!important; }
.my-05 { margin-top: 0.5rem!important; margin-bottom: 0.5rem!important; }
.mt-0 { margin-top: 0!important; }
.mb-0 { margin-bottom: 0!important; }
.mb-05 { margin-bottom: 0.5rem!important; }
.mt-1 { margin-top: 1rem!important; }
.mb-1 { margin-bottom: 1rem!important; }
.me-025 { margin-right: 0.25rem!important; }
.me-05 { margin-right: 0.5rem!important; }
.me-1 { margin-right: 1rem!important; }
.ms-05 { margin-left: 0.5rem!important; }
.ms-1 { margin-left: 1rem!important; }

.pb-0 { padding-bottom: 0!important; }
.p-075 { padding: 0.75rem; }
.p-1 { padding: 1rem; }

.g-10 { display: flex; gap: 10px; flex-direction: column; }

.z-1 { z-index: 1; }
.z-10 { z-index: 10; }
.z-100 { z-index: 100; }

.bg-transparent { background-color: transparent!important; }
.bg-white { background-color: #ffffff!important; }

.text-center { text-align: center!important; }
.text-right { text-align: right!important; }
.text-decoration-none, .text-decoration-none a { text-decoration: none!important; }
a:hover.text-underline-hover { text-decoration: underline!important; }
.text-uppercase { text-transform: uppercase!important; }
.text-white { color: #ffffff!important; }
.text-danger { color: #b91c1c; }
.text-muted, .text-muted a { color: #6c757d!important; }
.text-lead { font-size: 2rem!important; }

.list-unstyled { padding-left: 0!important; list-style: none!important; }

.color-inherit { color: inherit!important; }

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

.overflow-hidden { overflow: hidden; }

.flag-country { width: 26px; height: auto; vertical-align: middle; margin-right: 0.5rem; }

.card-iframe { border-top-left-radius: 10px; border-top-right-radius: 10px; }
.responsive-iframe { display: block; position: relative; overflow: hidden; width: 100%; padding-top: 56.25%; }
.responsive-iframe iframe { position: absolute; top: 0; left: 0; bottom: 0; right: 0; width: 100%; height: 100%; }

.btn-small { font-size: 12px; padding: 3px 6px; }
.btn-outline { 
    border: 1px solid var(--bde-brand-primary-color)!important; 
    color: var(--bde-brand-primary-color)!important; 
    border-radius: 4px;
    text-decoration: none;
}

.btn-link {
    border: 1px solid #6c757d!important; 
    color: #6c757d!important;
    background-color: #ffffff;
    border-radius: 4px;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 13px;
    padding: 6px 10px;    
}
.btn-link:hover { cursor: pointer; }

.lead { font-size: 1.1rem; } 

.picto-taxonomie { width: 40px; height: 40px; }
.picto-taxonomie-small { width: 24px; height: 24px; }
.picto-taxonomie-vertical { width: 36px; height: 36px; }

.br-20 { border-radius: 20px; }

.small { font-size: 80%; }

.wp-block-quote {
    border-left: .30em solid;
    border-color: var(--bde-brand-primary-color);
    margin: 1.75em 0;
    font-size: 1.1rem;
    padding-left: 1em;
}

/* ---------- BREAKDANCE ---------- */

/* h3 { margin-bottom: 1rem!important; } */

.bde-text.m-0 p { margin: 0!important; }
.bde-text.mt-0 p { margin-top: 0!important; }
.bde-text.mt-05 p { margin-top: 0.5rem!important; }

.bde-rich-text p { display: block!important; }

.breakdance .bde-button .button-primary {
    background-color: var(--bde-brand-primary-color)!important;
    border-color: var(--bde-brand-primary-color)!important;
    text-transform: uppercase!important;
}

.breakdance .bde-button .button-small {
    padding: 0.5rem 0.75rem!important;
    font-size: 1rem!important;
}

article .breakdance { background-color: transparent; }

.breakdance .bde-heading-lld, .shop_table h2 { font-size: 25px; font-weight: 400; margin-bottom: 16px; }

.breakdance .bde-popup.breakdance-popup-open { z-index: 5000!important; }

.bde-button-prev a, .bde-button-next a {
    background-color: var(--bde-brand-primary-color);
    border-color: var(--bde-brand-primary-color);
    text-decoration: none;
    border-radius: 4px!important;
    padding: 0.5rem 0.75rem;
    font-size: 0.9rem; 
    font-weight: 600; 
    color: #ffffff!important;  
}

.bde-button-prev a::before, .bde-button-next a::after {
    font-family: "Font Awesome 5 Free";
    color: #ffffff;
    width: 0.9em;
    height: 0.9em;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font-weight: 600;

}
.bde-button-prev a::before { content: "\f060"; margin-left: 0px; margin-right: 10px; }
.bde-button-next a::after { content: "\f061"; margin-left: 10px; margin-right: 0px; }

.hide-pagination #pagination { display: none !important; }

/* ---------- CARDS ---------- */

.clickable-container, .zoom-img { cursor: pointer; }

/* ---------- FACETS ---------- */

#button-filtres button, #button-filtres a { background-color: var(--couleur-bouton-filtres)!important; }

#compteur-filtres {
    position: absolute;
    top: -8px;
    right: -8px;
    background-color: #ffffff;
    color: var(--couleur-bouton-filtres)!important;
    border: 2px solid var(--couleur-bouton-filtres)!important;
    font-size: 10px;
    z-index: 0;
    padding: 2px 6px;
    border-radius: 50px;
}

.wpgb-facet .wpgb-facet-title { font-size: 18px!important; margin: 0!important; font-family: inherit; font-weight: 400; display: inline-block; }

/* .wpgb-facet .wpgb-inline-list li { margin: 0!important; } */

.wpgb-facet { /* background-color: #ffffff!important;  */width: 100%; border-radius: 4px; }
.wpgb-facet>fieldset:last-child { margin-bottom: 0!important; width: 100%; }

.inline-block .wpgb-facet .wpgb-checkbox-facet li:first-child,
.inline-block .wpgb-facet .wpgb-checkbox-facet li,
.inline-block .wpgb-facet .wpgb-radio-facet li:first-child,
.inline-block .wpgb-facet .wpgb-radio-facet li { display: inline-block!important; margin-right: 20px!important; }

.wpgb-select, .wpgb-date-facet, .wpgb-search-facet .wpgb-input, .wpgb-inline-list .wpgb-button[aria-pressed="false"],
.wpgb-facet .wpgb-checkbox-facet .wpgb-checkbox[aria-pressed="false"] .wpgb-checkbox-control { 
    background-color: #ffffff!important; 
}

.wpgb-facet button.wpgb-reset, .bton-popup-results {
    padding: 8px 12px!important;
    font-size: 16px!important;
    font-weight: 500!important;
    line-height: 20px!important;
    margin: 0!important;
}
.bton-popup-results { background-color: var(--couleur-bouton-filtres)!important; border-radius: 4px; }
.bton-popup-results { color: #ffffff!important; text-decoration: none; }

/* .wpgb-selection-facet { margin-bottom: 20px; } */

.wpgb-sr-only { white-space: normal!important; }

.wpgb-select-dropdown { max-height: 160px!important; }

.wpgb-facet .wpgb-search-facet input[type="search"], .wpgb-facet .wpgb-autocomplete-facet input[type="search"] {
    padding: 6px 10px 6px 5px!important;
}

/* ---------- MAP ---------- */

.leaflet-container a { color: var(--bde-links-color)!important; }
.wpgb-facet .leaflet-popup-content .wpgb-map-marker-title { font-size: 20px!important; }
.leaflet-popup-content { width: 300px!important; }

#map-single .leaflet-marker-icon {
    margin-left: -17px!important;
    margin-top: -20px!important;
    width: 34px!important;
    height: 40px!important;
}

#container-map .wpgb-map-facet .leaflet-cluster-icon {
    color: var(--couleur-texte-cluster);
    background-image: none;
    background-color: var(--couleur-fond-cluster);
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0,0,0,0.25); 
    box-shadow: 0px 0px 3px 1px rgba(0,0,0,0.25);
}

#container-map .wpgb-map-facet .leaflet-cluster-icon.leaflet-digits-1,
#container-map .wpgb-map-facet .leaflet-cluster-icon.leaflet-digits-2 {
    border: 5px solid var(--couleur-border-cluster);
    height: 40px;
    width: 40px;
    margin-top: -20px;
    margin-left: -20px;
    line-height: 29px;
    font-size: 16px;
}

#container-map .wpgb-map-facet .leaflet-cluster-icon.leaflet-digits-3 {
    border: 5px solid var(--couleur-border-cluster);
    height: 50px;
    width: 50px;
    margin-top: -25px;
    margin-left: -25px;
    line-height: 39px;
    font-size: 16px;
}

#container-map .wpgb-map-facet .leaflet-cluster-icon.leaflet-digits-4 {
    border: 5px solid var(--couleur-border-cluster);
    height: 60px;
    width: 60px;
    margin-top: -30px;
    margin-left: -30px;
    line-height: 49px;
    font-size: 18px;
}

#map-single { width: 100%; height: 400px; }

/* ---------- TOOLTIP ---------- */

.tooltip-word { border-bottom: 1px dotted; cursor: help; }

.breakdance-woocommerce .bde-tabs__panel-content h2 { display: block!important; }

/* ---------- FLUENT FORMS ---------- */

.ff-message-success { border: none!important; box-shadow: none!important; padding: 0!important; }
.radio-inline-block .ff-el-form-check { display: inline-block!important; margin-right: 1em; }
.radio-inline-block .ff-el-form-check span { font-weight: normal!important; }

.ff-btn-next, .ff-btn-prev {
    background-color: var(--bde-brand-primary-color)!important;
    border: none!important;
    border-radius:  4px!important;
    text-transform: uppercase!important;
    padding: 0.3rem 0.5rem!important;
    font-size: .8rem!important;
    cursor: pointer;
}

.ff_g_map { margin-bottom: 20px; }

.fluentform .ff-dropzone .ff_upload_btn.ff-btn { background: #fff!important; }

/* ---------- WOOCOMMERCE ---------- */

.woocommerce-page.woocommerce-account .breakdance-woocommerce .woocommerce-Addresses {
    display: flex;
    flex-direction: row!important;
    gap: 30px!important;
    width: 100%;
    max-width: 953px!important;
    margin: 0 !important;
}

.woocommerce-page.woocommerce-account .breakdance-woocommerce .woocommerce-Addresses .col-1,
.woocommerce-page.woocommerce-account .breakdance-woocommerce .woocommerce-Addresses .col-2 {
    width: 48%!important;
}

.woocommerce-Address-title h2 { margin: 0!important; font-size: 1.5em!important; }

.product-rollover > .product-img-featured { z-index: 1!important; }
.product-rollover > .product-img-galerie { z-index: 0!important; }
.product-rollover:hover > .product-img-featured { z-index: 0!important; }
.product-rollover:hover > .product-img-galerie { z-index: 1!important; }

/* ---------- WOOCOMMERCE SUBSCRIPTIONS ---------- */

.breakdance-woocommerce table.order_details { border-collapse: collapse; }

.breakdance-woocommerce table.order_details thead {
    --bde-woo-tables__border-width-negative: calc( var(--bde-woo-tables__border-width, 1px) * -1 );
    background-color: var(--bde-woo-tables__header-color);
    border-top-left-radius: var(--bde-woo-tables__border-radius);
    border-top-right-radius: var(--bde-woo-tables__border-radius);
    box-shadow: inset var(--bde-woo-tables__border-color) var(--bde-woo-tables__border-width, 1px) 0 0 0, inset var(--bde-woo-tables__border-color) 0 var(--bde-woo-tables__border-width, 1px) 0 0, inset var(--bde-woo-tables__border-color) var(--bde-woo-tables__border-width-negative, -1px) 0 0 0;
    text-align: left;
    font-size: var(--bde-woo-typography__size-small);
    font-family: var(--bde-woo-typography__size-small-font-family);
    color: var(--bde-woo-base-text-color);
    text-transform: uppercase;
    letter-spacing: 1px;
    overflow: hidden;
}

.breakdance-woocommerce table.order_details thead tr th {
    padding: var(--bde-woo-base-medium-gaps);
    font-weight: var(--bde-woo-typography-font-weight-medium);
}

.breakdance-woocommerce table.order_details tbody, .breakdance-woocommerce table.subscription_details tbody {
    border-bottom-left-radius: var(--bde-woo-tables__border-radius);
    border-bottom-right-radius: var(--bde-woo-tables__border-radius);
    box-shadow: inset var(--bde-woo-tables__border-color) 0 0 0 var(--bde-woo-tables__border-width, 1px);
    background-color: var(--bde-woo-tables__background-color);
    overflow: hidden;
}

.breakdance-woocommerce table.subscription_details tbody { border-radius: var(--bde-woo-wrappers__border-radius); }

.breakdance-woocommerce table.order_details tr td, .breakdance-woocommerce table.subscription_details tr td {
    padding: var(--bde-woo-base-big-gaps) var(--bde-woo-base-medium-gaps);
    color: var(--bde-woo-base-text-color);
    font-size: var(--bde-woo-typography__size-standard);
    font-family: var(--bde-woo-typography__size-standard-font-family);
}

.breakdance-woocommerce table.subscription_details tr td { padding: 10px; }

.breakdance-woocommerce table.order_details tfoot tr:last-child {
    border-bottom: none;
    border-top: var(--bde-woo-tables__border-width, 1px) solid var(--bde-woo-base-border-color);
}

.breakdance-woocommerce .woocommerce-customer-details {
    background-color: var(--bde-woo-wrappers__background-color);
    border-radius: var(--bde-woo-wrappers__border-radius);
    border: var(--bde-woo-wrappers__border-width) solid var(--bde-woo-wrappers__border-color);
    box-shadow: var(--bde-woo-wrappers__shadow);
    padding: 24px;
}

.breakdance-woocommerce a.woocommerce-button, .breakdance-woocommerce .subscription_details a.button {
    border-width: auto;
    text-transform: uppercase!important;
    padding: var(--bde-button-padding-sm);
    background: var(--bde-button-secondary-background-color);
    color: var(--bde-button-secondary-text-color);
    border-color: var(--bde-button-secondary-border-color);
    border-radius: var(--bde-button-border-radius);
    border-width: var(--bde-button-border-width);
    font-size: var(--bde-button-font-size);
    line-height: var(--bde-button-line-height);
    font-weight: var(--bde-button-font-weight);
    transition: var(--bde-woo-base-transition);
    transition-duration: var(--bde-transition-duration);
    border-style: solid;
    text-transform: capitalize;
    padding: var(--bde-button-padding-sm);
    text-decoration: none;
    text-align: center;
    justify-content: center;
    align-items: center;
    border-style: solid; 
}

.breakdance-woocommerce .subscription_details a.button {
    padding: 5px 8px;
    font-size: 12px;
}

.breakdance-woocommerce a.woocommerce-button:hover, .breakdance-woocommerce .subscription_details a.button:hover {
    border-color: var(--bde-brand-primary-color);
    background-color: var(--bde-brand-primary-color);
    color: #fff;
}

img.stripe-sepa-icon { display: none; }

/* ---------- COMMENTS ---------- */

.comments-list__comment h4.comments-list__author-name,
.comments-list__comment div.comments-list__metadata { display: inline-block!important; }
.comments-list .children .comments-list__comment { padding-left: 38px !important; }

.comments-list__avatar .avatar, .breakdance-woocommerce .comment_container img.avatar {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1), 0 6px 20px rgba(0, 0, 0, 0.1)!important;
}

/* ---------- COMMENTS ---------- */

#table-of-contents ul { list-style: none; padding-left: 0; }

#table-of-contents li { margin-bottom: 4px; }

#table-of-contents li a {
    color: #535353;
    text-decoration: none;
    font-size: 14px;
}

#table-of-contents li a:hover { color: var(--bde-links-color)!important; }

.toc-level-2 { font-weight: 600; margin-left: 0; }
.toc-level-3 { margin-left: 20px; }
.toc-level-4 { margin-left: 40px; }

/* ---------- WORDPRESS ---------- */

.wp-block-image { margin: 1rem 0 1rem 0!important; }
figure.aligncenter { margin: 0 auto!important; }
figure.alignleft { width: auto!important; float: left!important; margin: 0 1rem 1rem 0!important; }
figure.alignright { width: auto!important; float: right!important; margin: 0 0 1rem 1rem!important; }

figure > figcaption { display: block!important; }

.mejs-time { line-height: 8px!important; }

@media (min-width: 1120px) {
    #container-map { position: sticky!important; top: 0!important; }
    #container-btn-show { display: none; }
}

@media (max-width: 1119px) {
    #container-map { position: fixed; }
    #container-btn-show {
        position: fixed;
        z-index: 100;
        bottom: 0; right: 0; left: 0;
        display: block!important;
        text-align: center;
        margin-bottom: 1.5rem;
    }
}

@media (max-width: 767px) {
    .wp-block-image .alignleft, .wp-block-image .alignright,
    .wp-block-image.alignleft, .wp-block-image.alignright {
        display: block!important;
        float: none!important;
        margin: 0 0 1.5em 0!important;
    }
/*     .wp-block-image .alignleft *, .wp-block-image .alignright *,
    .wp-block-image.alignleft *, .wp-block-image.alignright * { width: 100%!important; margin: 0!important; } */
}