/*
 Theme Name:   VIREVOLTE
 Template:     Divi

*/
/* @import must be at top of file, otherwise CSS will not work */



@font-face {
    font-family: 'Rockford Sans';
    src: url('RockfordSans-Light.eot');
    src: url('RockfordSans-Light.eot?#iefix') format('embedded-opentype'),
        url('RockfordSans-Light.woff2') format('woff2'),
        url('RockfordSans-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Rockford Sans';
    src: url('RockfordSans-HeavyItalic.eot');
    src: url('RockfordSans-HeavyItalic.eot?#iefix') format('embedded-opentype'),
        url('RockfordSans-HeavyItalic.woff2') format('woff2'),
        url('RockfordSans-HeavyItalic.woff') format('woff');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Rockford Sans';
    src: url('RockfordSans-Heavy.eot');
    src: url('RockfordSans-Heavy.eot?#iefix') format('embedded-opentype'),
        url('RockfordSans-Heavy.woff2') format('woff2'),
        url('RockfordSans-Heavy.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}


#logo {
    max-height: 100%;
}



body {
    background-color: #f5f7f7;
    font-family: 'Zilla Slab', serif;
    font-weight: 500;
    font-style: normal;
}


a {
    text-decoration: none;
    color: #36617E;
}

a:hover {
   :/* text-decoration: underline; */
}

.social-link a {
    color: #FFF !important;
}

body h1 { 
    /*  font-family: 'Rockford Heavy Italic'; */
    font-size: 5em;
    color: white;
    
}



@media only screen and (max-width : 479px) {
/* Styles */
   body h1 {font-size: 4.2em;}

}

h2 {
    font-size: 2.8em;
}
@media only screen and (max-width : 479px) {
/* Styles */
   body h2 {font-size: 2.3em;}

}

h3 {
    font-size: 2.4em !important;
    color: #EC991D !important;
}

@media only screen and (min-width : 768px) and (max-width : 1024px) {
    h3 {
    font-size: 2em;
    }

}

.h3-baseline h3 {

color: #000 !important;
font-size: 1.6em !important;
font-weight: 300;
letter-spacing: 1px;
}

.h2-titre-page h2 {
font-size: 1.85em !important;

}

/* 
.et_pb_column h3 {
    font-size: 2.8em;
    color: #EC991D !important;
}
*/


h4 {
    font-size: 2.2em;
    /*color: #EC991D !important;*/
}

@media only screen and (min-width : 768px) and (max-width : 1024px) {
    h4 {
    font-size: 1.8em;
    }
}


body h5 { 
    font-family: 'Zilla Slab', serif;
    font-size: 1.1em;
    color: #f77b0d;   
    font-weight: normal;
    font-style: normal; 
}

/* 
body .et_pb_text_3 h3 {
    font-family: 'Nunito' regular italic;
    font-size: 2.8em;
    color: #000000 !important;
    text-align: right;
}
*/

#main-header {
	background-color: rgba(32,42,50,0.96) !important;
}

#main-footer {
    background-color: #234154;
}



p {
   /* font-family: 'Zilla Slab', serif; */
    font-size: 1.35em;
    font-weight: 400;
    line-height: normal;
    font-style: normal;
    padding:5px; 

}

p:not(.has-background):last-of-type {
    padding-bottom: 1em;
}




.et_pb_contact p input, .et_pb_contact p textarea, .et_pb_subscribe .et_pb_contact_field input, .et_pb_subscribe .et_pb_contact_field textarea {   
    font-size: 17px;

}

.et_pb_section {
    position: relative;
    background-color: rgba(0,40,38,0.02);
}

.et_pb_pricing_table ul li::before {
    font-family: 'ETmodules';
    content: "\52";
    font-size: 120%;
    color: #c79de8;
    float: left;
    margin-left: -1em;
    margin-right: 0.5em;
}
.et_pb_pricing li.et_pb_not_available::before {
    font-family: 'ETmodules';
    content: "\51";
    font-size: 120%;
    color: #ccc;
    float: left;
    margin-left: -1em;
    margin-right: 0.5em;
}

.et_pb_pricing_content_top {
    border-bottom: 0px solid #BEBEBE;
    padding-top: 24px;
}

.et_pb_pricing_content {
    padding: 10px;
}

.et_pb_contact_right .et_pb_contact_captcha_question {
    vertical-align: middle;
    color: #c79de8 !important;
}

body .et_pb_pricing_tables_0 {
    min-height: 250px;
}

.et_pb_toggle {
    border: 1px solid #ec991d;
    border-style: dotted;
    background-color: rgba(0,208,211,0.3);
}

.et_pb_toggle_content {
    padding-top: 20px;
    position: relative;
    color: #fff;
}

.et_pb_toggle_open .et_pb_toggle_title, .et_pb_toggle_open h5.et_pb_toggle_title {
    color: #fff;
    font-size: 2.4em;
}

.et_pb_toggle_close .et_pb_toggle_title, .et_pb_toggle_close h5.et_pb_toggle_title {
    color: #ffbd8c;
    font-size: 1.6em;
}

.et_pb_text h1 {
    font-size: 2.6em;
    color: #000 !important;
    text-transform: uppercase;
    font-family: 'Rockford Heavy';
}


@media only screen and (min-width: 981px) and (max-width : 1024px) {
    .et_pb_text h1 {
        font-size: 28px;
        color: #EC991D !important;
    }
}

@media only screen and (max-width : 479px) {
/* Styles */
   .et_pb_text_0 h1 {
    font-size: 2.4em !important;
    color: #000 !important;
    }
    .et_pb_text h1 {
        font-size: 2.4em;
        color: #000 !important;
    }
        h3 {
    font-size: 2em !important;
    }
        .h3-baseline h3 {
font-family: 'Zilla Slab', serif;
color: #000 !important;
font-size: 1.4em !important;
font-weight: 300 !important;
letter-spacing: 1px;
    }
   
}

@media only screen and (min-width: 981px) and (max-width : 1024px) {
.et_pb_row_2 {
    width: 100%;
    max-width: 96% !important;
    }
}

/* H5 ACTIVITES MONTAGNE */

.montagne-h4 .et_pb_text h4 {
    font-size: 1.5em !important;
    color: #555 !important; 
}

/* LIGNE Resumes Stages et Baptemes COLONNES MEME HAUTEUR */

.flex-SameSize .et_pb_column_1_5{
display: flex;
}

.flex-SameSize .et_pb_column_1_4{
display: flex;
}

.flex-SameSize .et_pb_column_1_3{
display: flex;
}


/* GALERIE titre et légende */

.mfp-title {
    color: orange !important;
    font-size: 1.4em !important;
}

.mfp-figure small {
    color: #bdbdbd !important;
    font-size: 0.9em !important;
    line-height: 1.1em !important;
}

/* COMPTEUR */
@media only screen and (min-width: 981px) and (max-width : 1024px) {
.percent-value {
    font-size: 45px;
    }
}


/*MENU MOBILE*/


.et_mobile_menu {
    position: absolute;
    left: 0;
    padding: 5%;
    background: #fff;
    width: 100%;
    visibility: visible;
    opacity: 1;
    display: none;
    z-index: 9999;
    border-top: 3px solid #2ea3f2;
    box-shadow: 0 2px 5px rgba(0,0,0,.1);
    -moz-box-shadow: 0 2px 5px rgba(0,0,0,.1);
    -webkit-box-shadow: 0 2px 5px rgba(0,0,0,.1);
    font-family: 'Rockford Heavy Italic';
}

.et_mobile_menu li a {
    color: #ec991d !important;
    padding: 8px 5%;
}

.nav li li a, .et_mobile_menu li a {
    font-size: 1em !important;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
#et-top-navigation {
    font-weight: normal;
}

.et_mobile_menu .menu-item-has-children > a {
    font-weight: bold;
    background-color: rgb(240, 240, 240);
    color: #ec991d  !important;
}

#global-header-section .et_mobile_nav_menu {
    width: 85vw!important;
    position: absolute;
    right: 0px;
    margin-right: 0px!important;
    justify-content: right;
    padding-right:10px;
}
#global-header-section #mobile_menu1 {
    margin-left: 0px;
    width: 100%;
    top: 32px;
}


/* MENU flottant */


.menu-flottant {
    width:14em; /* Largeur des items du menu*/
    float: right; /* Je veux que le menu soit à droite*/
    position:fixed; /* Le menu est fixe à l'écran*/
    z-index:9999; /* Il sera au dessus de tous les éléments*/
    top: 60%; /* Il sera à 60% du bord supérieur de l'écran*/
    font-size: 1em; /* Taille de la police*/
    line-height: 2px; /* Hauteur de ligne du menu*/
    color: #fff; /* Couleur de la police*/
    font-weight:700; /* Mettre le texte en gras*/
    text-transform:uppercase; /* Mettre le texte en majuscule*/
    right: -10.5em; /* Décalage du menu sur la droite pour masquer le texte et ne laisser que les icônes de visibles*/
}
.menu-flottant ul {
    list-style: none; /* Le menu est une liste, mais je ne veux pas afficher les puces*/
    margin: 0; /* Choix des marges internes et externes*/
    padding: 0;
}
.menu-flottant ul li {
    display:block; /* Définition des items en tant que bloc*/
    background-color: #333; /* Couleur de fond*/
    height: 3.5em; /* Hauteur des items du menu*/
    padding: 1em 1.2em; /* Marges internes des items du menu*/
    position: relative; /* On leur attribut une position relative*/
    -webkit-transition: -webkit-transform 0.5s; /* Effet de déplacement au passage de la souris*/
    -moz-transition: -webkit-transform 0.5s; /* On le définit plusieurs fois pour assurer la compatibilité entre les navigateurs*/
    transition: transform .5s;
    border-top-left-radius: 7px;
	border-bottom-left-radius: 7px;
}
/*Couleurs de fond des items du menu*/
.menu-flottant ul li:nth-child(1) { 
    background-color: #ec991d; /* 1er item du menu*/
} 
.menu-flottant ul li:nth-child(2) { 
    background-color: #e41b1b; /* 2e item du menu*/
} 
.menu-flottant ul li:nth-child(3) { 
    background-color: #4843D2; /* 3e item du menu*/
} 
/* Si vous en avez plus de 3, ajouteZ ici les mêmes lignes en remplaçant les chiffres et couleurs*/

/* Création de la transformation CSS qui permet d'afficher le menu au passage de la souris*/
.menu-flottant ul li:hover {
    -webkit-transform: translateX(-10em);
    transform: translateX(-10em);
}

/* Mise en forme des liens du menu*/
@media only screen and (max-width: 640px) {
.menu-flottant {
display: none;
}
}

.menu-flottant ul li a {
    display:block; /* On les définit en tant que bloc*/
    color: #FFF; /* Couleur du texte*/
    text-decoration: none; /* On ne veut pas qu'ils soient soulignés par exemple*/
    position: absolute; /* On leur attribut une position absolue*/
    font-size:1em; /* Taille de la police*/
    line-height: 1.5em; /* Hauteur de ligne*/
    height:2em; /* Hauteur*/
    top:0; /* Positionnement*/
    bottom:0;
    right: 0.2em;
    margin:0 auto;
    padding:1em 1.5em;
}
  
/* Mise en forme des icônes du menu*/
  .menu-flottant ul li span {
    float: left;  /* On les cale à gauche */
    line-height: 1.5em; /* Hauteur de ligne */
    height:3em;
    padding-bottom: 1em;
  }  

/* Bouton ET insere depuis description produit WP */

body a.smallorange, a.bigorange {
  border: 1px solid #ec991d;
  color: #FFFFFF !important;;
  line-height: inherit;
  font-size: 0.9em !important;
  margin-left: auto;
  left: auto;
  font-family: Rockford Sans Light, Arial;
  font-weight: normal !important;
  background: #ec991d !important;
  border-radius: 18px;  
}

body a.smallorange:hover, a.bigorange:hover {
  color: #ec991d  !important;
  background: #FFFFFF !important;
  border: 1px solid #ec991d;
}


/*  TABLEAUX */
.entry-content table:not(.variations), body.et-pb-preview #main-content .container table {
    border: 0px solid #eee;
}

.entry-content tr td, body.et-pb-preview #main-content .container tr td {
    border-top: 1px solid #EC991D;
    padding: 6px 2px;
        padding-top: 6px;
        padding-right: 2px;
        padding-bottom: 6px;
        padding-left: 2px;
        font-size: 1.3em;
}


/* FORMULAIRE Forminator */

.bouton-formulaire {
    background: #EC991D !important;
	color: #fff !important;
	border-radius: 7px !important;
	padding-left: 8px !important;
	padding-right: 8px !important;
	padding-top: 5px !important;
	padding-bottom: 5px !important;
	font-size: 1.4em !important;
	font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif !important;
}

.forminator-label {
    font-size: 100% !important;

}

.forminator-ui#forminator-module-237742.forminator-design--default 
.forminator-input, .forminator-ui#forminator-module-237742.forminator-design--default 
.forminator-input:hover, .forminator-ui#forminator-module-237742.forminator-design--default 
.forminator-input:focus, .forminator-ui#forminator-module-237742.forminator-design--default .forminator-input:active {
    background-color: #F0F0F0;
    color: #000000;
}

.forminator-ui#forminator-module-237742.forminator-design--default .forminator-label {
  color: #000;
  font-family: Rockford Sans Light !important;
  font-size: 1.1em;
}

.et-db #et-boc .et_pb_module .forminator-ui.forminator-custom-form[data-design="default"] .forminator-input, .forminator-ui.forminator-custom-form[data-design="default"] .forminator-input {
  width: 100%;
  min-height: 44px;
  border-width: 0px;
  border-radius: 8px;
}





/* WOOCOMMERCE */



body.woocommerce .woocommerce-tabs {
    border: 0px ;
    margin: 30px 0 45px;
}

body.woocommerce div.product .woocommerce-tabs ul.tabs {
    margin: 0 !important;
    padding: 0 !important;
    background: none;
}

.woocommerce ul.products li.product .price, .woocommerce-page ul.products li.product .price, .woocommerce ul.products li.product .price del, .woocommerce-page ul.products li.product .price del {
    color: #EC991D !important;
    font-size: 1.8em;
    margin: 0 !important;
    text-align: center;
    padding-bottom: 0.5em;
    padding-top: 1em;
    background-color: white;
    font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif;
}

@media only screen and (min-width : 320px) and (max-width : 480px) {
.woocommerce ul.products li.product .price, .woocommerce-page ul.products li.product .price, .woocommerce ul.products li.product .price del, .woocommerce-page ul.products li.product .price del {
    color: #EC991D !important;
    font-size: 22px;
    margin: 0 !important;
    text-align: center;
    line-height: 22px;
    padding-bottom: 14px;
    font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif;
}
}

/* Titre produit page Produit */
.et_pb_wc_title h1 {
  font-family: 'Rockford Heavy';
}


/* Prix REDUIT */
.woocommerce ul.products li.product .price ins {
    font-weight: 400 !important;
    color: #EC991D;
}

/* Prix VARIATION */
.woocommerce-variation-price {
  font-size: 1.6em;
}

/* Prix BARRE */
.woocommerce ul.products li.product .price del {
    color: inherit;
    opacity: .5;
    display: block;
    font-size: 0.8em !important;
    line-height: 0.2em;
    color: gray !important;
}

/* Prix BARRE Fiche PRODUIT*/
.woocommerce div.product p.price del, .woocommerce div.product span.price del {
    opacity: .5;
    display: block;
    font-size: 0.9em !important;
      color: #999;
}


/* Prix BARRE lorsque plusieurs prix Fiche PRODUIT*/
.woocommerce div.product span.price, .woocommerce-page div.product span.price {
  color: #EC991D;
line-height:1.1em;
}

.woocommerce span.onsale, .woocommerce-page span.onsale {
    background: #FF0B0B !important;
    font-family: 'Rockford Sans Light';
    text-transform: uppercase;
    font-size: 1.2em;
 }

ul.et_pb_tabs_controls {
    background-color: transparent;
}

ul.et_pb_tabs_controls::after {
    border-top: 0px;
}

.et-db #et-boc .et-l ul.et_pb_tabs_controls {
    background-color: transparent;
}

.woocommerce div.product form.cart .variations label {
    font-size: 1.2em;
    font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif;
    color: #666;
}

.woo-selected-variation-item-name {
  color: #EC991D;
  font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif;
  font-size: 1.1em;
}

.woo-variation-swatches.wvs-show-label .variations td .woo-selected-variation-item-name, .woo-variation-swatches.wvs-show-label .variations td label {
  display: inline-block;
  margin: 0 2px;
  font-size: 1.5em;
  font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif;
  font-weight: 700;
  color: #EC991D;
}

.et_pb_wc_related_products  li.product {
    background-color: white;
    padding: 0.4em !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title, .woocommerce ul.products li.product h3 {
    padding: .5em .3em;
    margin: 0;
    font-size: 1em;
}

.et_pb_bg_layout_light .et-pb-arrow-prev, .et_pb_bg_layout_light .et-pb-arrow-next {
    color: #EC991D !important;
    font-size: 70px;
}

.et_pb_bg_layout_light .et-pb-controllers .et-pb-active-control {
    background-color: #EC991D;
}

.woocommerce .woocommerce-error, .woocommerce .woocommerce-info, .woocommerce .woocommerce-message {
    background: #EC991D;
    border-radius: 6px;
}
/*  Infos Woocommerce et messages */
.et_pb_wc_cart_notice_0 .woocommerce-info, .et_pb_wc_cart_notice_0 .woocommerce-error {
  font-family: 'Rockford Sans Light';
  border-radius: 6px 6px 6px 6px;
}

.showcoupon {
    color: black !important;
    font-family: 'Rockford Sans Light';
}

.showlogin {
    color: black !important;
    font-family: 'Rockford Sans Light';
}

.woocommerce #payment #place_order, .woocommerce-page #payment #place_order {
    float: right;
    color: #FFFFFF !important;
    border-width: 2px !important;
    border-color: #EC991D;
    border-radius: 9px;
    font-size: 1.2em;
    font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif !important;
    background-color: #EC991D !important;
    text-transform: uppercase;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
    font-size: 1.2em !important;
}

.woocommerce-page a.button, .woocommerce a.button, .woocommerce-page a.button:hover, .woocommerce a.button:hover {
    color: #EC991D;
}

#main-content table.cart tr, table.cart tr {
    background-color: white;
}
.woocommerce a.remove {
    font-size: 2em;
}

/* Effacer options variation Produit*/
.reset_variations {
  float: left !important;
  font-size: 1.3em !important;
margin-bottom: 15px;
font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif;
}


/* Quantité en stock */
.woocommerce div.product p.stock {
    font-size: 1.2em;
    font-family: 'Rockford Sans Heavy',Helvetica,Arial,Lucida,sans-serif;
}

/*  Hauteur produits apparentés  */
@media (min-width:981px) {
    .et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-4 li.product, .et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-4 li.product {
    height: 520px !important;
    box-shadow: 2px 2px 29px -2px rgba(0,0,0,0.3) !important;
    }
}


/*  Texte produits apparentés  */
.woocommerce-LoopProduct-link.woocommerce-loop-product__link {
  color: #666;
  font-size: 0.85em !important;
}


/* Bande ajout au panier haut de l'écran
.woocommerce-notices-wrapper {
    z-index: 999999 !important;
}*/

/*  Fil d'Ariane  */
.woocommerce .woocommerce-breadcrumb {
    font-family: Rockford Sans Light,Helvetica,Arial,Lucida,sans-serif !important;
    font-size: 18px !important;
}

.woocommerce .woocommerce-breadcrumb a {
    font-size: 16px;
    font-family: Rockford Sans Light,Helvetica,Arial,Lucida,sans-serif !important;
    color: #EC991D;
}


.woocommerce ul.products li.product {
    box-shadow: 2px 2px 29px -2px rgba(0,0,0,0.1) !important;
    color: #666;
    background-color: white;
    border-radius: 9px;
}

.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product a{
    color: #666;
}

.woocommerce .widget_price_filter .ui-slider .ui-slider-handle {
    background-color: #EC991D;
}

.woocommerce .widget_price_filter .ui-slider .ui-slider-range {
    background-color: #EC991D;
}

/* Produit TABLEAU Info technique  */


.woocommerce table.shop_attributes th {
    width: 200px;
    border-bottom: 0px;
    border-top: 1px solid #EC991D;
    padding: 4px 2px;
    padding-left: 2px;
    font-size: 1.4em;
    font-weight: 500;
}

.woocommerce table.shop_attributes td p {
    margin: 0;
    padding: 2px 2px;
 }
 .woocommerce table.shop_attributes td {
    border-bottom: 0px;
    line-height: 1;
    border-top: 1px solid #EC991D;
    padding: 4px 2px;
    font-size: 1em;
    font-weight: 700;
    color: #EC991D;
}

/* Woocommerce TABLEAU   */
.woocommerce table.shop_table {
  background: white;
}


.woocommerce a {
    color: #000000;
    font-weight:500;
}

/*     Boutique PRIX EN BAS  */
.woocommerce-page.archive ul.products li.product .price
{
/*position: absolute;*/
padding-top: 15px;
bottom: 0;
width: 100%;
}

/*   PRIX EN BAS  class custom-price */
.custom-price .product a.woocommerce-LoopProduct-link {
    height: 100%;
    display: block;
}

.custom-price .product span.price {
    bottom: 0px!important;
    display: block;
    position: absolute;
    width: 100%;
}

@media screen and (max-width:480px){
.custom-price .product span.price{
    position: relative;
}
}

/*   MASQUER Badge Promo Module Produits liés */
.custom-woo-upsell-style .onsale {
    display: none;
}


/*    CATEGORIE PRODUITS UNE COLONNE */
@media screen and (max-width:480px){
.et_pb_shop ul.products li.product {
    width: 100% !important;
    min-width: 100% !important;
}
}

/* BOUTON Woocommerce */
.woocommerce button.button, .woocommerce-page button.button {
    font-size: 18px;
    font-weight: 500;
    padding: 0.3em 1em;
    line-height: 1.7em !important;
    background: #EC991D;
    position: relative;
    /* border: 2px solid; */
    border-radius: 13px;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    color: white;
    font-family: Rockford Sans Light;
}

.woocommerce button.button:hover, .woocommerce-page button.button:hover {
    background: white;
    border: 2px solid #EC991D;
    padding: 0.3em 2em 0.3em 1em;
    color: #EC991D;
}

/* pagination */
.woocommerce nav.woocommerce-pagination ul li {
    border-right: none;
    font-size: 1.3em;
}

.woocommerce nav.woocommerce-pagination ul {
    border: none;
    font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
    background: #EC991D;
    color: #fff;
}

/*     WOOCOMMERCE MESSAGES */
.woocommerce-error, .woocommerce-info, .woocommerce-message {
    padding: 1em 2em 1em 5em;
    margin: 0 0 2em;
    position: relative;
    background-color: #f7f6f7;
    color: #515151;
    border-top: 3px solid #a46497;
    list-style: none outside;
    width: auto;
    word-wrap: break-word;
}


/*     WOOCOMMERCE Nombre de produits affichés */
p.woocommerce-result-count {
  font-size: 16px;
  color: #EC991D;
  font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif;
}

/*     WOOCOMMERCE Ordre de tri */
.orderby {
  background-color: #FFF;
  font-size: 14px;
  font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif !important;
}

/* PANIER */
    /* nom produit */
.product-name a {
    font-size: 1.3em;
    font-family: 'Rockford Sans Heavy',Helvetica,Arial,Lucida,sans-serif;
    color: #000 !important;
}

    /* infos livraison */
p.woocommerce-shipping-destination {
    font-size: 1em;
}


thead {
    font-size: 1.2em;
}

td.product-price {
    font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif;
    font-size: 1.2em !important;
    color: #EC991D !important;
}

td.product-subtotal {
    font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif;
    font-size: 1.3em !important;
    color: #EC991D !important;
}
/* Quantité */
.woocommerce-page .quantity input.qty, .woocommerce .quantity input.qty {
    font-size: 1.2em !important;
    color: black !important;
    border-radius: 3px;
    border: 1px !important;
    border-color: #EC991D !important;
    background-color: #FFF !important;
    height: 49px;
}

/* Sous-total */
.cart-subtotal {
    font-size: 1.2em;
}

/* TOTAL COMMANDE */
.order-total {
    font-size: 1.3em;
}

/* Expedition */
.woocommerce-shipping-totals.shipping {
    font-size: 1.2em;
}

/* Sous-total somme Produits*/
.woocommerce-Price-amount.amount {
    font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif;
    font-size: 0.9em !important;
    
}

/* COMMANDE infos complémentaires*/
.woocommerce-additional-fields {
  font-size: 0.7em;
}

@media only screen and (max-width: 479px) {
.woocommerce-Price-amount.amount {
    font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif;
    font-size: 0.7em !important;    
}
}

/*  TExte champs saisie */
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea {
    font-size: 1em;
    background-color: #fff;
    padding: 10px;
}

/*  Noms champs saisie */
.woocommerce form .form-row label {
  line-height: 1.8;
  font-family: 'Rockford Sans Light';
  font-size: 0.84em;
  color: #000;
}

/*  Texte  paiement méthodes*/
#add_payment_method #payment ul.payment_methods li, .woocommerce-cart #payment ul.payment_methods li, .woocommerce-checkout #payment ul.payment_methods li {
    font-size: 1.2em;
    font-family: 'Rockford Sans Light';
    color: black;
}
.woocommerce-checkout #payment div.payment_box {
  border-radius: 9px;
  background-color: #f9f8f6;
  color: #242424;
}


    /* Bouton commander */
.checkout-button.button.alt.wc-forward {
    color: #FFFFFF !important;
    border-width: 2px !important;
    border-color: #EC991D;
    border-radius: 9px;
    font-size: 1.2em;
    font-family: 'Rockford Sans Light',Helvetica,Arial,Lucida,sans-serif !important;
    background-color: #EC991D !important;
    text-transform: uppercase;
}
        /* Bouton desactiver */
.woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled]{
    padding: 0.3em 1em;
    line-height: 1.7em !important;
    background: #EC991D;
    cursor: not-allowed;
    opacity: .5;
    border-color: #FFF;
    color: #FFF;
}

@media only screen and (max-width: 768px){
.woocommerce #content table.cart td.actions .coupon .button, .woocommerce #content table.cart td.actions .coupon .input-text, .woocommerce #content table.cart td.actions .coupon input, .woocommerce table.cart td.actions .coupon .button, .woocommerce table.cart td.actions .coupon .input-text, 
.woocommerce table.cart td.actions .coupon input, .woocommerce-page #content table.cart td.actions .coupon .button, .woocommerce-page #content table.cart td.actions .coupon .input-text, .woocommerce-page #content table.cart td.actions .coupon input, 
.woocommerce-page table.cart td.actions .coupon .button, .woocommerce-page table.cart td.actions .coupon .input-text, .woocommerce-page table.cart td.actions .coupon input {
    width: 100%;
    box-sizing: border-box;
    }
}

/* Woocommerce TITRES récapitulatif commande */
.wc-bacs-bank-details-heading, .woocommerce-order-details__title, .woocommerce-column__title {
  font-family: 'Rockford Sans Heavy',Helvetica,Arial,Lucida,sans-serif;
  font-size: 2em !important;
}

/* Woocommerce NOM Compte Bancaire */
.woocommerce .woocommerce-customer-details address {
  background: white;
}

/* Woocommerce Details commande et coordonnees bancaires */
.wc-bacs-bank-details.order_details.bacs_details, .woocommerce-order-overview.woocommerce-thankyou-order-details {
  font-size: 1.05em;
  color: black;
  font-family: 'Rockford Sans Light';
}

.woocommerce .wc-bacs-bank-details-account-name {
  font-weight: 700;
  font-size: 1.6em !important;
  font-family: 'Rockford Sans Heavy',Helvetica,Arial,Lucida,sans-serif;
}

/* TABLEAU Description Fiche PRODUIT */
.et_pb_tab_content tr td {
    position: relative;
    background: #ec991d;
    padding: 6px 2px;
    padding-top: 6px;
    padding-right: 2px;
    padding-bottom: 6px;
    padding-left: 2px;
    font-size: 1.2em;
}

/* WOOF Filtres produits */

body.woof_search_is_going nav.woocommerce-breadcrumb {
display: block;
}

.woof label {
    cursor: pointer;
    font-size: 1.35em !important;
    line-height: 1em;
}

.woof_checkbox_label {
    font-size: 1.5em !important ;
}

.woof_price_search_container .price_slider_amount .price_label {
    font-size: 1.4em !important;
}

.woof .widget_price_filter .ui-slider .ui-slider-handle {
    border: 1px solid #D98302;
}
.woof_products_top_panel_ul li ul li {
    font-size: 1.8em;
}

.ui-slideouttab-handle {
    display: block;
    position: absolute;
    cursor: pointer;
    color: white;
    background-color: #EC991D !important;
    font-family: Rockford Sans Light;
    font-size: 18px;
    border-radius: 13px 13px 0 0;
}



/* surcharge WOOF onglet  mobile pour mettre opacité totale */
.ac-code .woof-slide-out-div {
    
    opacity: 1 !important;
}

/* Champs RECHERCHE Ajax Divi Plus */
h4.dipl_ajax_search_item_title {
  font-size: 22px !important;
  color: #000 !important;
}



/* BookandGlide */

.fc-row .fc-content-skeleton td, .fc-row .fc-helper-skeleton td {
    font-family: 'Zilla Slab', serif;
}

.fc td, .fc th {
    font-family: 'Zilla Slab', serif;
}

.ui-widget-content {
    background: none;
}

.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {
    color: #363636;
    background: #EC991D;
}

.fc-day-header.ui-widget-header {
    padding: 5px 2px;
    background: #EC991D;
    border-bottom: none;
}

.ui-widget-header {
        background-image: none;
        background-color: #EC991D;
        border-bottom: none;
}

.wpfc-calendar-wrapper h2 {
    font-size: 1.7em !important;
    padding-top: 10px;
    font-family: 'Rockford Heavy' !important;
}

.wpfc-calendar-wrapper *, .ui-selectmenu-menu {
    font-size: 14px !important;
    font-family: 'Rockford Sans Light';
}

.fc-scroller {
    height: auto !important;
}

.ui-widget button {
    font-family: Trebuchet MS,Tahoma,Verdana,Arial,sans-serif;
    font-size: 1em;
    color: #000000 !important;
}

/*INVERSER ORDRE COLONNES MOBILE*/
@media only screen and (max-width : 980px) {
  .dc_inverser_colonnes-section .dc_inverser_colonnes-ligne {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}

/* Section plein écran */
#section-scroll, .section-scroll-large  {
    transition: all .8s ease;
    -webkit-transition: all .8s ease;
    -moz-transition: all .8s ease;
}

#section-scroll {
    background-color: #ffb341;
}

.section-scroll-large {
    max-width: 100%!important;
    padding-top: 100px!important;
    padding-bottom: 100px!important;
    background-color: #EC991D !important;
    box-shadow: 0px 0px 50px 10px rgba(135,90,20,0.5)!important;
    z-index: 10;
}





/* ----------------
CODE CSS PERSONNAISER 
---------------------*/
.zoom-colonne {
border-radius: 12px 12px 12px 12px;

}


.zoom-colonne:hover {
  transform: scaleX(1.04) scaleY(1.04) !important;
    transition: transform 300ms ease 0ms;
    transition-property: transform;
    transition-duration: 300ms;
    transition-timing-function: ease;
    transition-delay: 0ms;
    box-shadow:0px 2px 18px 0px rgba(0,0,0,0.3);
}



.custom-row .et_pb_button_module_wrapper .custom_btn {
    position: absolute;
    bottom: 22px;
    display: block;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media only screen and (max-width: 479px) {
.et-db #et-boc .et-l    .deux_colonnes .et_pb_column {
    width: 50%!important;
}
}

.huit-colonnes {
    width: 12%;
    float: left;
}
/*Ecran de maximum 960px*/
@media (max-width: 960px){
.huit-colonnes {
    width: 50%;
    }
}

/*Ecran de maximum 680px*/
@media (max-width: 680px){
.huit-colonnes {
    width: 100%;
    }
}


.custom-blurb  .et_pb_blurb_content{
    max-width:550px !important;
}
@media only screen and ( min-width: 981px ){
.custom-blurb .et_pb_module.et_pb_blurb {
    max-width: 220px !important;
}
}

@media only screen and ( min-width: 981px ){
.flex-SameSize .et_pb_module.et_pb_blurb {
  max-width:   100% !important;
}
.flex-SameSize.custom-blurb .et_pb_column_1_4 {
  width: 17.6% !important;
}
.flex-SameSize.custom-blurb {
  justify-content: center;
}
}

.flex-SameSize .et_pb_column_1_3 {
    justify-content: center;
}

@media only screen and ( min-width: 981px ){
.flex-SameSize .et_pb_blurb_content {
    display: block !important;
}
}

.custom-blurb2  .et_pb_blurb_content{
    max-width:550px !important;
}
.custom-blurb2 .et_pb_module.et_pb_blurb {
    max-width: 272px !important;
}

.custom-counter .percent-value::before {
    content: "+ de ";
}
@media screen and (max-width:480px){
.et_pb_wc_related_products ul.products.columns-3 li.product {
    min-width: 100%;
}
}
.picto-compte img {
    vertical-align: text-bottom !important;
        height:20px;
}



#main-content {
    margin-top: 0px!important;
}

/*TEST JULIEN masque le terme Etiquette */
.tagged_as {
    font-size: 0px;
}

.tagged_as a {
    font-size : 18px!important
}


.et-db #et-boc .et-l .et_pb_section_0_tb_header.et_pb_section {
 /*   padding-top: 1vw; */
/*    padding-bottom: 1vw;*/
    background-color: #FFFFFF!important;
}

.et-db #et-boc .et-l .et_pb_section_0_tb_header {
    width: 100%;
    z-index: 10;
    box-shadow: 0px 2px 50px 0px rgb(0 0 0 / 8%);
    z-index: 200;
    position: relative;
    transition: filter 300ms ease 0ms;
    position: fixed;
    top: 0;
}

#et-boc .area-outer-wrap .da-close {
    font-size: 50px;
    }

/* Prix barré */

/*  del bdi {
  font-size: 15px !important;
    position:relative; 
    top:80px; 
}
ins bdi{
    position:relative; 
    top:87px;
}

*/

.menu-elts-custom {
background-color: #FFF4E4;
}

.et-menu li li.menu-item-has-children > a:first-child::after {
    right: 4px;
    top: 8px;
}

.et-menu-nav li.mega-menu > ul > li {
  width: 20%;
  margin: 0;
}

.et-db #et-boc .et-l .et-menu-nav li.mega-menu > ul > li {
  width: 16.6%;
  margin: 0;
}

.et-db #et-boc .et-l .et_pb_shop_0_tb_body.et_pb_shop .woocommerce ul.products li.product h2

{
font-size: 1.8em !important;
font-family: 'Rockford heavy';
}

.decalage-img {
    margin-left:-15px !important;
margin-top:15px !important;
}

/* 
@media all and (min-width:981px){
#page-container .et_pb_button:after{
    font-size: 25px;
    top: 10px;
    right: 5px;
}}
*/

.custom-h2 h2 {
font-size:2.6em !important;
letter-spacing:0.15em;
}

@media only screen and (max-width : 479px) {
.custom-h2 h2 {
font-size:2.2em !important;
letter-spacing:0.15em;
}
}

@media only screen and (max-width: 980px) {
.five-columns .et_pb_column {width: 20% !important;
margin-right:0% !important;}
}

#et-boc .et-l .five-columns .et_pb_column .et_pb_image {
    margin: auto!important;
}

/* Scroll MENU Mobile */

.et_mobile_menu {   
    overflow-y: scroll !important;
    max-height: 80vh !important;
    -overflow-scrolling: touch !important;
    -webkit-overflow-scrolling: touch !important;
}

 #global-header-section .et_mobile_menu {
    height: 560px !important;
    overflow-x: hidden;
    overflow-y: visible !important;
}

/* MAPS MARKER */

.maps-marker-pro .mmp-popup-name {
  font-size: 1.5em;
  font-family: Rockford Sans Light;
  color: #EC991D;
}

/* PICTOS VIREVOLTE */
.pictos {   
        max-width: 160px;
}

/* WOO Discount rule */
.awdr_discount_bar_content {
    font-family: 'Rockford Sans Light';
    font-size: 1.2em;
}




/* Début ZOOM sur image effet Ken Burns*/

.kb-zoomout .et_pb_slide .et_parallax_bg {
  animation: zoomout 7s forwards;
  -ms-animation: zoomout 7s forwards;
  -webkit-animation: zoomout 7s forwards;
  -o-animation: zoomout 7s forwards;
  -moz-animation: zoomout 7s forwards;
}

.kb-zoomin .et_pb_slide .et_parallax_bg {
  animation: zoomin 7s forwards;
  -ms-animation: zoomin 7s forwards;
  -webkit-animation: zoomin 7s forwards;
  -o-animation: zoomin 7s forwards;
  -moz-animation: zoomin 7s forwards;
}

.kb-zoomin-right .et_pb_slide .et_parallax_bg {
  animation: zoomin-right 7s forwards;
  -ms-animation: zoomin-right 7s forwards;
  -webkit-animation: zoomin-right 7s forwards;
  -o-animation: zoomin-right 7s forwards;
  -moz-animation: zoomin-right 7s forwards;
}

.kb-zoomout-right .et_pb_slide .et_parallax_bg {
  animation: zoomout-right 7s forwards;
  -ms-animation: zoomout-right 7s forwards;
  -webkit-animation: zoomout-right 7s forwards;
  -o-animation: zoomout-right 7s forwards;
  -moz-animation: zoomout-right 7s forwards;
}

.kb-zoomout .et_parallax_bg {
  animation: zoomout 7s forwards;
  -ms-animation: zoomout 7s forwards;
  -webkit-animation: zoomout 7s forwards;
  -o-animation: zoomout 7s forwards;
  -moz-animation: zoomout 7s forwards;
}

.kb-zoomin .et_parallax_bg {
  animation: zoomin 17s forwards;
  -ms-animation: zoomin 17s forwards;
  -webkit-animation: zoomin 17s forwards;
  -o-animation: zoomin 17s forwards;
  -moz-animation: zoomin 17s forwards;
}

.kb-zoomin-right .et_parallax_bg {
  animation: zoomin-right 7s forwards;
  -ms-animation: zoomin-right 17s forwards;
  -webkit-animation: zoomin-right 17s forwards;
  -o-animation: zoomin-right 17s forwards;
  -moz-animation: zoomin-right 17s forwards;
}

.kb-zoomout-right .et_parallax_bg {
  animation: zoomout-right 7s forwards;
  -ms-animation: zoomout-right 17s forwards;
  -webkit-animation: zoomout-right 17s forwards;
  -o-animation: zoomout-right 17s forwards;
  -moz-animation: zoomout-right 17s forwards;
}

@keyframes zoomout {
  0% {
    -ms-transform: scale3d(1.3, 1.3, 1.3) translate3d(-0px, 0px, 0px);
    -webkit-transform: scale3d(1.3, 1.3, 1.3) translate3d(0px, 0px, 0px);
    -o-transform: scale3d(1.3, 1.3, 1.3) translate3d(0px, 0px, 0px);
    -moz-transform: scale3d(1.3, 1.3, 1.3) translate3d(0px, 0px, 0px);
    transform: scale3d(1.3, 1.3, 1.3) translate3d(0px, 0px, 0px);
    animation-timing-function: linear;
  }

  100% {
    -ms-transform: scale3d(1, 1, 1) translate3d(0px, 0px, 0px);
    -webkit-transform: scale3d(1, 1, 1) translate3d(0px, 0px, 0px);
    -o-transform: scale3d(1, 1, 1) translate3d(0px, 0px, 0px);
    -moz-transform: scale3d(1, 1, 1) translate3d(0px, 0px, 0px);
    transform: scale3d(1, 1, 1) translate3d(0px, 0px, 0px);
  }
}


@keyframes zoomin {
  0% {
    -ms-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -webkit-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -o-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -moz-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    animation-timing-function: linear;
  }

  100% {
    -ms-transform: scale3d(1.5, 1.5, 1.5) translate3d(-0px, 0px, 0px);
    -webkit-transform: scale3d(3.5, 3.5, 3.5) translate3d(0px, 0px, 0px);
    -o-transform: scale3d(1.5, 1.5, 1.5) translate3d(0px, 0px, 0px);
    -moz-transform: scale3d(1.5, 1.5, 1.5) translate3d(0px, 0px, 0px);
    transform: scale3d(1.5, 1.5, 1.5) translate3d(0px, 0px, 0px);
  }
}

@keyframes zoomout-right {
  0% {
    -ms-transform: scale3d(1.5, 1.5, 1.5) translate3d(-150px, -20px, 0px);
    -webkit-transform: scale3d(1.5, 1.5, 1.5) translate3d(-150px, -20px, 0px);
    -o-transform: scale3d(1.5, 1.5, 1.5) translate3d(-150px, -20px, 0px);
    -moz-transform: scale3d(1.5, 1.5, 1.5) translate3d(-150px, -20px, 0px);
    transform: scale3d(1.5, 1.5, 1.5) translate3d(-150px, -20px, 0px);
    animation-timing-function: linear;
  }

  100% {
    -ms-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -webkit-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -o-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -moz-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
  }
}

@keyframes zoomin-right {
  0% {
    -ms-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -webkit-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -o-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -moz-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    animation-timing-function: linear;
  }

  100% {
    -ms-transform: scale3d(1.5, 1.5, 1.5) translate3d(-150px, -20px, 0px);
    -webkit-transform: scale3d(1.5, 1.5, 1.5) translate3d(-150px, -20px, 0px);
    -o-transform: scale3d(1.5, 1.5, 1.5) translate3d(-150px, -20px, 0px);
    -moz-transform: scale3d(1.5, 1.5, 1.5) translate3d(-150px, -20px, 0px);
    transform: scale3d(1.5, 1.5, 1.5) translate3d(-150px, -20px, 0px);
  }
}

/* Fin ZOOM sur image effet Ken Burns*/


.section-bas-page {
  opacity: 0;
  transform: translateY(30px);
  pointer-events: none;
  transition: all 0.5s ease;
}

.section-bas-page.visible {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}


/*  bouton */
.cs-product-card__cta a.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:999px;
}

/* Responsive */
@media (max-width: 980px){
  .cs-product-card{ min-height: 340px; }
  .cs-product-card__img img{ height: 170px; }
}
@media (max-width: 767px){
  .cs-product-card{ min-height: 320px; }
  .cs-product-card__img img{ height: 160px; }
}

/* Titres pages Baptemes et Stages 2026 */
/* HERO TITLE (H1 sur 2 lignes) */
.hero-title{
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
}

.hero-title .hero-kicker,
.hero-title .hero-main{
  display: block;
  margin: 0 !important;
  padding: 0 !important;
}

/* Ligne 1 = “Baptême parapente” */
.hero-title .hero-kicker{
  font-size: 2.2rem; /* desktop */
  line-height: .95 !important;
}

/* Ligne 2 = “Découverte” */
.hero-title .hero-main{
  font-size: 5rem; /* desktop */
  line-height: .85 !important;
  margin-top: .15em !important;
  text-shadow: 0.06em 0.06em 0.11em rgba(0,0,0,0.3);
}

/* Tablette */
@media (max-width: 980px){
  .hero-title .hero-kicker{ font-size: 2.4rem; }
  .hero-title .hero-main{ font-size: 4rem; }
}

/* Mobile */
@media (max-width: 767px){
  .hero-title .hero-kicker{ font-size: 1.4rem; }
  .hero-title .hero-main{ font-size: 2.4rem; }
}
    
    
/* ========== Cartes produits : image full background + overlay centré ========== */

.cs-product-card{
  position: relative;
  overflow: hidden;
  border-radius: 14px;
  min-height: 340px;          /* ajuste */
  display: flex;
}

/* Le lien image devient un “fond” */
.cs-product-card__img{
  position: absolute;
  inset: 0;
  display: block;
  text-decoration: none;
}

/* Image WooCommerce en cover */
.cs-product-card__img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Dégradé pour lisibilité (overlay) */
.cs-product-card::after{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.45), rgba(0,0,0,.1));
  pointer-events: none;
}

/* Badge promo */
.cs-product-card__badge{
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 999;
  background: #EC991D;
  color: #FFF;
  font-weight: 700;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 1.1rem;
}

/* Contenu au-dessus de l’image */
.cs-product-card__content{
  position: relative;
  z-index: 3;
  width: 100%;
  padding: 18px;
  display: flex;
  flex-direction: column;
  justify-content: center;    /* ✅ centrage vertical */
  align-items: center;        /* ✅ centrage horizontal */
  text-align: center;
  gap: 10px;
}

/* Titre */
.cs-product-card__title{
  margin: 0;
  font-size: 1.65rem !important;
  line-height: 1.1;
}
.cs-product-card__title a{
  color: #fff;
  text-decoration: none;
}

/* Prix */
.cs-product-card__price,
.cs-product-card__price *{
  color: #fff !important;
  font-weight: 700;
    font-size: 1.2rem;

}

/* Prix promo : nouveau prix sur la ligne suivante */
.cs-products-swiper .cs-product-card__price del{
  display: block;
  margin-bottom: 4px; /* espace entre barré et nouveau prix */
}

.cs-products-swiper .cs-product-card__price ins{
  display: block;
  text-decoration: none; /* optionnel (Woo met parfois underline) */
}

/* Bouton Woo */
.cs-product-card__cta a.button{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.85);
  background: rgba(255,255,255,.15);
  color: #fff;
    font-size: 1.1rem;
}

/* Hover léger */
.cs-product-card:hover .cs-product-card__img img{
  transform: scale(1.02);
  transition: transform .2s ease;
}

/* Responsive */
@media (max-width: 980px){
  .cs-product-card{ min-height: 320px; }
  .cs-product-card__content{ padding: 16px; }
}
@media (max-width: 767px){
  .cs-product-card{ min-height: 300px; }
  .cs-product-card__title{ font-size: 1rem; }
}


/* --- FIX overlay centré (titre + prix + bouton) --- */
.cs-products-swiper .cs-product-card{
  position: relative;
}

/* Le contenu au centre (vraiment) */
.cs-products-swiper .cs-product-card__content{
  position: absolute;
  inset: 0;
  z-index: 3;

  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  text-align: center;
  padding: 18px 18px 10px 18px;
}

/* Overlay centré dans la carte, mais contenu aligné à gauche */
.cs-products-swiper .cs-product-card__content{
  position: absolute;
  inset: 0;
  z-index: 3;

  display: flex;
  flex-direction: column;
  justify-content: center;

  padding: 18px;
  text-align: left;
  align-items: flex-start; /* ✅ aligne le contenu à gauche */
}

/* Titre + prix alignés à gauche */
.cs-products-swiper .cs-product-card__title,
.cs-products-swiper .cs-product-card__price{
  text-align: left !important;
  width: 100%;
}

/* Bouton Woo dans le carrousel produits : supprime la grosse bordure */
.cs-products-swiper .cs-product-card__cta a.button,
.cs-products-swiper .cs-product-card__cta a.button.alt{
  border: 1px solid rgba(255,255,255,.85) !important;
  padding: 4px 7px !important;
  background: rgba(255,255,255,.15) !important;
  color: #fff !important;
  border-radius: 999px !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

/* ==============================
   CARROUSEL PRODUITS - NAV & PAGINATION
   ============================== */

/* Permettre aux flèches de dépasser sans créer de scroll */
.cs-products-swiper{
  position: relative;
  overflow: visible;
  padding-bottom: 22px; /* place pour la pagination en dessous */
}

/* Pagination sous le carrousel */
.cs-products-swiper .swiper-pagination{
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: auto !important;
  text-align: center;
  z-index: 10;
}

/* --- Bullets => traits --- */
.cs-products-swiper .swiper-pagination-bullet{
  width: 20px;
  height: 4px;
  border-radius: 999px;
  background: #EE6055;     /* orange du site */
  opacity: .35;
  margin: 20px 5px !important;
}

.cs-products-swiper .swiper-pagination-bullet-active{
  opacity: 1;
width: 40px;
}

/* Flèches : couleur + pastille + position extérieure */
.cs-products-swiper .swiper-button-prev,
.cs-products-swiper .swiper-button-next{
  color: #EE6055; /* orange */
  width: 42px;
  height: 42px;
  border-radius: 999px;
  background: rgba(255,255,255,.85);
  box-shadow: 0 10px 24px rgba(0,0,0,.12);
  top: 50%;
  transform: translateY(-50%);
  z-index: 20;
}

/* Taille de l’icône */
.cs-products-swiper .swiper-button-prev::after,
.cs-products-swiper .swiper-button-next::after{
  font-size: 16px;
  font-weight: 700;
}

/* Position à l’extérieur */
.cs-products-swiper .swiper-button-prev{ left: -44px; }
.cs-products-swiper .swiper-button-next{ right: -44px; }

/* Hover */
.cs-products-swiper .swiper-button-prev:hover,
.cs-products-swiper .swiper-button-next:hover{
  background: #ffffff;
}

/* Tablette : flèches moins dehors */
@media (max-width: 980px){
  .cs-products-swiper .swiper-button-prev{ left: -18px; }
  .cs-products-swiper .swiper-button-next{ right: -18px; }
}

/* Mobile : flèches plus petites et à l’intérieur */
@media (max-width: 767px){
  .cs-products-swiper .swiper-button-prev,
  .cs-products-swiper .swiper-button-next{
    width: 30px;
    height: 30px;
  }
  .cs-products-swiper .swiper-button-prev::after,
  .cs-products-swiper .swiper-button-next::after{
    font-size: 14px;
  }
  .cs-products-swiper .swiper-button-prev{ left: 6px; }
  .cs-products-swiper .swiper-button-next{ right: 6px; }
}

/* Met le bloc texte en bas de la carte */
.cs-products-swiper .cs-product-card__content{
  justify-content: flex-end !important; /* au lieu de center */
  padding-bottom: 16px;                /* ajuste */
  gap: 6px;                            /* espace entre titre/prix/bouton */
}

/* Overlay content : occupe toute la carte + pousse le contenu en bas */
.cs-products-swiper .cs-product-card{
  position: relative;
  overflow: hidden;
}

.cs-products-swiper .cs-product-card__content{
  position: absolute;
  inset: 0;
  z-index: 3;

  display: flex;                 /* ✅ indispensable */
  flex-direction: column;        /* ✅ indispensable */
  justify-content: flex-end;     /* ✅ en bas */
  align-items: flex-start;       /* ✅ à gauche (comme tu veux) */

  padding: 18px;
  gap: 6px;
  text-align: left;
}


.cs-products-swiper .cs-product-card__title h3{
  margin: 0 0 0px !important;
}
.cs-products-swiper .cs-product-card__price{
  margin: 0 !important;
  line-height: 1.1;
}

.cs-products-swiper .cs-product-card__attr--homologation {
  font-size: .9rem;
  line-height: 1.15;
  font-weight: 600;
  opacity: .9;
  margin-top: 2px;
    color: orange;
}

.cs-products-swiper .cs-product-card__attr{
  font-size: .9rem;
  line-height: 1.15;
  opacity: .9;
  margin-top: 2px;
}

.cs-products-swiper .cs-product-card__attr--homologation{
  font-weight: 700;
}

.cs-products-swiper .cs-product-card__attr--cat{
  font-size: .85rem;
  font-weight: 700;
  opacity: .85;
    color: orange;
    }

.cs-products-swiper{
  position: relative;
  padding: 0 56px 22px;   /* zone flèches + place pagination */
  overflow: hidden;       /* évite scroll horizontal */
}

.cs-products-swiper .swiper-button-prev{ left: 10px; }
.cs-products-swiper .swiper-button-next{ right: 10px; }

@media (max-width: 980px){
  .cs-products-swiper{ padding: 0 40px 22px; }
}
@media (max-width: 767px){
  .cs-products-swiper{ padding: 0 28px 22px; }
}

/* SECTION HERO : plein écran (ou ajuste 80vh/70vh) */
.et_pb_section.cs-shop-hero{
  min-height: 55vh !important;          /* <- mets 80vh si tu veux moins haut */
  display: flex !important;
  flex-direction: column !important;
  padding-bottom: 4vh !important;
}

/* Les 2 lignes doivent être des enfants flex propres */
.et_pb_section.cs-shop-hero > .et_pb_row{
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

/* 1ère ligne (titre + image) : prend l’espace et se colle au bas */
.et_pb_section.cs-shop-hero > .et_pb_row:not(.cs-shop-logos){
  flex: 1 1 auto;                         /* <- remplit l’espace */
  display: flex;
  align-items: flex-end;                  /* <- colle le contenu en bas */
  margin-bottom: 20px !important;
  padding-bottom: 0 !important;
}

/* 2ème ligne (logos) : en bas de section */
.et_pb_section.cs-shop-hero > .cs-shop-logos{
  flex: 0 0 auto;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 10px !important;        /* petit “souffle” au bas */
  position: relative !important;          /* neutralise tout ancien absolute */
  left: auto !important;
  bottom: auto !important;
  transform: none !important;
}

/* Centre les logos dans leurs colonnes */
.et_pb_section.cs-shop-hero > .cs-shop-logos .et_pb_column{
  display: flex;
  justify-content: center;
}


/* Cartes catégories */

/* Carte catégorie : titre sur l'image */
.cs-cats-swiper .cs-cat-card{
  position: relative;
  display: block;
  text-decoration: none;
  color: #fff;
    font-family: "Rockford Heavy";

}

/* Image */
.cs-cats-swiper .cs-cat-card__img{
  display: block;
  border-radius: 14px;
  overflow: hidden;
}

.cs-cats-swiper .cs-cat-card__img img,
.cs-cats-swiper .cs-cat-card__img-fallback{
  width: 100%;
  height: 280px;            /* ajuste */
  object-fit: cover;
  display: block;
}

/* Dégradé pour lisibilité du titre */
.cs-cats-swiper .cs-cat-card__img::after{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.65), rgba(0,0,0,.05));
  pointer-events: none;
}

/* Titre en overlay */
.cs-cats-swiper .cs-cat-card__title{
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 12px;
  z-index: 2;
    font-size : 1.85rem !important;
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: .03em;
  line-height: 1.1;
  font-size: 1.05rem;
}

/* Hover léger */
.cs-cats-swiper .cs-cat-card:hover .cs-cat-card__img img{
  transform: scale(1.02);
  transition: transform .2s ease;
}

/* Responsive */
@media (max-width: 767px){
  .cs-cats-swiper .cs-cat-card__img img,
  .cs-cats-swiper .cs-cat-card__img-fallback{
    height: 150px;
  }
  .cs-cats-swiper .cs-cat-card__title{
    font-size: 1rem;
  }
}

/* Réserve de la place sous le carrousel pour la pagination */
.cs-products-swiper,
.cs-cats-swiper{
  position: relative;
  padding-bottom: 60px; /* ajuste */
}

/* Pagination (traits/bullets) en bas, sous les cartes */
.cs-products-swiper .swiper-pagination,
.cs-cats-swiper .swiper-pagination{
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: auto !important;
  margin: 0 auto;
  text-align: center;
  z-index: 10;
}

/* CATEGORIES : bullets => traits */
.cs-cats-swiper .swiper-pagination-bullet{
  width: 20px;
  height: 3px;
  border-radius: 999px;
  background: #EE6055;
  opacity: .35;
  margin: 0 5px !important;
}

.cs-cats-swiper .swiper-pagination-bullet-active{
  opacity: 1;
    width: 40px;
}

/* S'assure que l'overlay respecte le border-radius */
.cs-cats-swiper .cs-cat-card__img{
  position: relative;
  border-radius: 14px;
  overflow: hidden;
}

/* Dégradé uniquement en bas + transparent sur les côtés (angles visibles) */
.cs-cats-swiper .cs-cat-card__img::after{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;

  /* bas plus sombre, côtés transparents => coins visibles */
  background:
    radial-gradient(120% 90% at 50% 100%,
      rgba(0,0,0,.65) 0%,
      rgba(0,0,0,.35) 45%,
      rgba(0,0,0,0) 75%),
    linear-gradient(to top,
      rgba(0,0,0,.45) 0%,
      rgba(0,0,0,0) 60%);
}

/* ==========================
   MUR CATEGORIES
   Desktop 5 / tablette paysage 4 / mobile 2
   ========================== */

.cs-cats-wall{
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 18px;
}

.cs-cats-wall .cs-cat-card{
  position: relative;
  display: block;
  width: 100%;
  margin: 0;
  text-decoration: none;
  color: #fff;
  overflow: hidden;
  border-radius: 14px;
}

.cs-cats-wall .cs-cat-card__img{
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 14px;
}

.cs-cats-wall .cs-cat-card__img img,
.cs-cats-wall .cs-cat-card__img-fallback{
  width: 100%;
  height: 220px !important;
  object-fit: cover;
  display: block;
}

.cs-cats-wall .cs-cat-card__img::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background: linear-gradient(to top, rgba(0,0,0,.65), rgba(0,0,0,.05));
}

.cs-cats-wall .cs-cat-card__title{
  position:absolute;
  left:12px;
  right:12px;
  bottom:12px;
  z-index:2;
  color:#fff;
  text-transform:uppercase;
  font-family: "Rockford Sans", Arial, Helvetica, sans-serif;
  font-weight:900;
  letter-spacing:.03em;
  line-height:1.05;
  font-size:1.35rem !important;
}

/* Tablette horizontale */
@media (min-width: 768px) and (max-width: 1200px){
  .cs-cats-wall{
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
  }

  .cs-cats-wall .cs-cat-card__img img,
  .cs-cats-wall .cs-cat-card__img-fallback{
    height: 200px !important;
  }

  .cs-cats-wall .cs-cat-card__title{
    font-size: 1.15rem !important;
  }
}

/* Mobile */
@media (max-width: 767px){
  .cs-cats-wall{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .cs-cats-wall .cs-cat-card__img img,
  .cs-cats-wall .cs-cat-card__img-fallback{
    height: 145px !important;
  }

  .cs-cats-wall .cs-cat-card__title{
    left: 9px;
    right: 9px;
    bottom: 9px;
    font-size: .78rem !important;
    line-height: 1.08;
    letter-spacing: .02em;
  }
}

/* Contenu superposé (titre + meta) */
.cs-cats-wall .cs-cat-card__content{
  position:absolute;
  left:12px;
  right:12px;
  bottom:12px;
  z-index:2;
  display:flex;
  flex-direction:column;
  gap:5px;
}

.cs-cats-wall .cs-cat-card__title{
  position:static !important;
}

.cs-cats-wall .cs-cat-card__meta{
  color:#fff;
  font-family:"Rockford Sans", Arial, sans-serif;
  font-size:.82rem;
  line-height:1.1;
  font-weight:500;
  opacity:.95;
  text-transform:none;
}

@media (max-width:767px){
  .cs-cats-wall .cs-cat-card__content{
    left:8px;
    right:8px;
    bottom:8px;
    gap:3px;
  }

  .cs-cats-wall .cs-cat-card__meta{
    font-size:.62rem;
  }
}

/* ============================================================
   BARRE DE RÉSERVATION STICKY — pages stages & baptêmes
   (couleur d'accent par page via --vv-resa-accent)
   ============================================================ */
.vv-resa-bar{
  position:fixed;
  left:0; right:0; bottom:0;
  z-index:99990;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  padding:12px 20px;
  background:rgba(20,20,20,.97);
  border-top:3px solid var(--vv-resa-accent,#ff8b00);
  box-shadow:0 -4px 18px rgba(0,0,0,.25);
  transform:translateY(100%);
  transition:transform .45s ease;
}
.vv-resa-bar--visible{
  transform:translateY(0);
}

@keyframes vv-resa-slide-up{
  from{ transform:translateY(100%); }
  to{   transform:translateY(0); }
}

.vv-resa-bar__texte{
  color:#fff;
  font-size:1rem;
  font-weight:500;
  line-height:1.3;
  text-align:center;
  font-family:'Rockford Sans', sans-serif;
  font-weight:300; /* Light */
}

.vv-resa-bar__titre{
  font-family:'Rockford Sans', sans-serif;
  font-weight:900; /* Heavy */
  text-transform:uppercase;
}

.vv-resa-bar__btn{
  flex-shrink:0;
  display:inline-block;
  padding:10px 26px;
  border-radius:30px;
  background:var(--vv-resa-accent,#ff8b00);
  color:#fff !important;
  font-weight:700;
  font-size:.95rem;
  text-decoration:none;
  white-space:nowrap;
  transition:transform .15s ease, filter .15s ease;
}

.vv-resa-bar__btn:hover{
  transform:translateY(-2px);
  filter:brightness(1.12);
  color:#fff;
}

.vv-resa-bar__btn--complet{
  background:#555;
  cursor:default;
  opacity:.8;
}
.vv-resa-bar__btn--complet:hover{
  transform:none;
  filter:none;
}

.vv-resa-bar__session{
  color:orange;
  font-family:'Rockford Sans', sans-serif;
  font-weight:300;
  font-size:.85rem;
  white-space:nowrap;
  border-left:2px solid var(--vv-resa-accent,#ff8b00);
  padding-left:12px;
  display:flex;
  flex-direction:column;
  gap:2px;
}
.vv-resa-bar__session strong{ font-weight:900; color:#fff; }
.vv-resa-bar__session em{ font-style:normal; color:orange; font-weight:700; }
.vv-resa-bar__session__nb{ font-size:.75rem; color:orange; }
.vv-resa-bar__session__derniere{
  font-size:.75rem;
  font-family:'Rockford Sans', sans-serif;
  font-weight:900;
  color:orange;
  text-transform:uppercase;
  letter-spacing:.06em;
}

@media (max-width:767px){
  .vv-resa-bar__accroche{ display:none; }

  .vv-resa-bar__session{
    border-left:none;
    border-top:1px solid rgba(255,255,255,.2);
    padding-left:0;
    padding-top:4px;
    text-align:center;
    white-space:normal;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:center;
    gap:4px;
  }
  .vv-resa-bar__session__nb,
  .vv-resa-bar__session__derniere{
    font-size:.75rem;
  }
}

/* Évite que la barre masque le bas du contenu */
body.has-resa-bar{
  padding-bottom:70px;
}

@media (max-width:767px){
  .vv-resa-bar{
    flex-direction:column;
    gap:5px;
    padding:7px 12px;
  }
  .vv-resa-bar__texte{ font-size:.82rem; }
  .vv-resa-bar__btn{ width:100%; text-align:center; padding:8px 0; font-size:.88rem; }
  .vv-resa-bar__session{
    font-size:.75rem;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:center;
    gap:3px;
    white-space:normal;
  }
  .vv-resa-bar__session__nb,
  .vv-resa-bar__session__derniere{ width:100%; text-align:center; }
  body.has-resa-bar{ padding-bottom:95px; }
}
