* {
    box-sizing: border-box;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased; 
    font-smoothing: antialiased; 

}

@font-face {
  font-family: 'Montserrat';
  src: url("../fonts/Montserrat-VariableFont_wght.woff2") format('woff2-variations');
  src: url("../fonts/Montserrat-VariableFont_wght.woff2") format('woff2') tech('variations');
  font-weight: 400 700;
}

html {
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}


html, body {
    box-sizing: border-box;
    font-family: 'Montserrat', helvetica, arial, lucida, sans-serif;
    font-size: 1rem;
    line-height: 1.4rem;
    font-weight: 400;
    font-style: normal;
    background: url(../img/trame-grise.png) top center repeat-y #f4f4f4;
    background-size: 100% auto;
    color: #3d3d3d;
    text-rendering: optimizeLegibility; 
    word-wrap: normal !important;
    -webkit-hyphens: none !important;
    hyphens: none !important;
    -webkit-word-break: normal !important;
    word-break: normal !important;
}

:root {
    --bleu-clair: #61c9f6;
    --bleu-fonce: #1a375f;
}

/* LBO - 01/2024 - Non utilisé */
/*
@font-face {
  font-family: 'FontAwesome';
  font-style: normal;
  font-weight: normal;
  src: url("../fonts/font-awesome/fa-brands-400.eot");
  src: url("../fonts/font-awesome/fa-brands-400.eot?#iefix") format("embedded-opentype"),
       url("../fonts/font-awesome/fa-brands-400.woff2") format("woff2"),
       url("../fonts/font-awesome/fa-brands-400.woff") format("woff"),
       url("../fonts/font-awesome/fa-brands-400.ttf") format("truetype"),
       url("../fonts/font-awesome/fa-brands-400.svg#fontawesome") format("svg");
}
*/

p {
    word-wrap: normal !important;
    -webkit-hyphens: none !important;
    hyphens: none !important;
    -webkit-word-break: normal !important;
    word-break: normal !important;
    margin-bottom: 10px;
    font-family: 'Montserrat', helvetica, arial, lucida, sans-serif;
    margin-top: 0;
    font-style: normal;
    position: relative;
}

.entry-content p {
    margin: 0;
    margin-bottom: 10px;
}

.small p,
.small,
p.small {
    font-size: .8rem;
    line-height: 1.1rem;
}

.big,
p.big {
    font-size: 1.25rem;
    line-height: 1.7rem;
    margin-bottom: 15px;
}

.superbig {
    font-size: 1.7rem;
    line-height: 1.8rem;
}

.cap {
    text-transform: uppercase;
}

ul, ol {
    margin: 0;
    list-style: none;
}

ul li {
    margin: 0;
    padding: 0;
}

a {
    color: var(--bleu-fonce);
    outline: none;
}

a,
a:hover,
a:visited,
a::after,
a:hover::after {
    outline-style: none !important;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

a,
a:visited {
    
}

a img {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    border-radius: 0;
}


:focus {
    outline: none !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-style: normal;
    margin: 0;
    letter-spacing: 0 !important;
}


h1 {
    font-weight: 700;

}


h2 {
    font-weight: 700;
    color: var(--bleu-fonce);
    font-size: 1.8rem;
    line-height: 2.1rem;
    margin-bottom: 20px;
}

h2.after {
    margin-bottom: 30px;
}


h2.before::before {
    content: '';
    display: inline-block;
    width: 160px;
    height: 20px;
    margin-right: 12px;
    background: url(../img/vague-titre.png);
    background-size: auto;
    background-repeat: no-repeat;
    vertical-align: middle;
}



h2.after::after {
    content: '';
    display: block;
    width: 160px;
    height: 20px;
    margin: 15px 0;
    background: url(../img/vague-titre.png);
    background-size: contain;
}

h2.center.after::after {
    margin: 15px auto;
}

h2.blanc.before::before,
h2.blanc.after::after {
    background: url(../img/vague-titre-blanc.png);
    background-size: contain;
}

.bkg-bleu-fonce h2.before::before,
.bkg-bleu-fonce h2.blanc.after::after,
.bkg-bleu-fonce h2.after::after {
    background: url(../img/vague-titre.png);
    opacity: .3;
    background-size: contain;
}


h3 {
    font-weight: 700;
    color: var(--bleu-fonce);
    font-size: 1.3rem;
    margin-bottom: 15px;
    line-height: 1.5rem;
}

h4 {
    color: var(--bleu-fonce);
    font-weight: 500;
    font-size: 1.1rem;
    margin-bottom: 10px;
    line-height: 1.3rem;
}


h5 {
    font-weight: 500;
    color: var(--bleu-fonce);
    font-size: 1rem;
    margin-bottom: 10px;
    line-height: 1.2rem;
}

.semibold {
    font-weight: 500;
}

.bold {
    font-weight: 700;
}


/*************************************************************************/
/************************* GESTION COOKIES *******************************/
/*************************************************************************/

#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert {height: 1px !important; overflow: hidden !important;}
div#tarteaucitronRoot.tarteaucitronBeforeVisible:before {opacity: 0.8 !important; background: #000 !important;}
body #tarteaucitronRoot div#tarteaucitronAlertBig {border-radius: 0 !important; box-shadow: none !important;}
#tarteaucitronRoot #tarteaucitronAlertBig {background-color: #fff !important; color: #737373 !important;}
#tarteaucitronAlertBig #tarteaucitronPrivacyUrl, #tarteaucitronAlertBig #tarteaucitronPrivacyUrlDialog {
	color: #737373 !important; font-family: 'Montserrat', helvetica, arial, lucida, sans-serif !important;
}
div#tarteaucitronAlertBig:before {
	content: 'Nous respectons votre vie privée. En cliquant sur « Tout accepter », vous acceptez l’utilisation de cookies à usages techniques nécessaires à son bon fonctionnement, ainsi que des cookies à des fins statistiques. \a Vous pourrez à tout moment modifier votre choix en cliquant sur le lien "Cookies" situé en bas de la page.' !important;
	/* white-space: pre; */
	font-family: 'Montserrat', helvetica, arial, lucida, sans-serif !important;
	font-size: 16px !important;
	color: #737373 !important;
}
#tarteaucitronAlertBig #tarteaucitronCloseAlert, #tarteaucitronAlertBig #tarteaucitronPersonalize, #tarteaucitronAlertBig #tarteaucitronPersonalize2,
.tarteaucitronCTAButton, #tarteaucitron #tarteaucitronPrivacyUrl, #tarteaucitron #tarteaucitronPrivacyUrlDialog, #tarteaucitronRoot .tarteaucitronDeny,
#tarteaucitronRoot .tarteaucitronAllow {
	border-radius: 0;
	background: #008300;
	color: #fff;
	height: 40px;
}
#tarteaucitronPrivacyUrl {display: none;}
#tarteaucitronRoot .tarteaucitronDeny {opacity: 0.5;}
#tarteaucitronRoot .tarteaucitronCheck::before {content:'' !important;}
#tarteaucitronRoot .tarteaucitronCross::before {content:'' !important;}
#tarteaucitronRoot .tarteaucitronAllow, #tarteaucitronRoot .tarteaucitronDeny {background-color: #7c6663 !important; width: 150px;}
a.tarteaucitronSelfLink {display: none !important;}

#tarteaucitron #tarteaucitronClosePanel {font-size: 16px !important; background-color: red !important; z-index: 21474836471; top:20px;}


/*************************************************************************/
/************************* STRUCTURE *************************************/
/*************************************************************************/

#content {
    margin-top: 0;
    width: 100%;
}


.wrap, .single-product .woocommerce-notices-wrapper {			/* 22/01/2024 - ajoute le wrapper des notices Woocommerce pour que les margin s'appliquent */
    width: 1170px;
    max-width: 98%;
    margin: 0 auto;
}

.hentry {
    background: none;
    border-radius: 0;
    border: 0;
    margin-bottom: 0;
}

.entry-content {
    padding: 0;
}

.hentry header {
    border: 0;
    border-bottom: 0;
    padding: 0;
}

.hentry footer {
    border: 0;
    padding: 0;
}


.clearboth {
    clear: both;
}

.floatleft {
    float: left;
}

.floatright {
    float: right;
}

.center {
    text-align: center;
}

.right {
    text-align: right;
}

.display-table {
    display: table;
    vertical-align: middle;
    height: 100%;
    width: 100%;
}

.display-table-cell {
    display: table-cell;
    vertical-align: middle;
    height: 100%;
    width: 100%;
}

.blanc p,
p.blanc,
.blanc {
    color: #fff;
}

.bkg-blanc {
    background: #fff;
}

.bkg-bleu-clair {
    background: var(--bleu-clair);
}

.bkg-bleu-clair.trame {
    background: url(../img/trame-bleu-clair.png) center center no-repeat var(--bleu-clair);
    background-size: 100% auto;
}

.bkg-bleu-fonce {
    background: var(--bleu-fonce);
}

.bleu-clair {
    color: var(--bleu-clair);
}

.bleu-fonce {
    color: var(--bleu-fonce);
}

.bkg-cover {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.widget {
    padding: 0;
    margin: 0;
}

.widgettitle {
    border: 0;
    margin-bottom: 0;
}

.padding80 {
    padding: 80px;
}

.padding60 {
    padding: 60px;
}

.padding50 {
    padding: 50px;
}

.padding40 {
    padding: 40px;
}

.padding30 {
    padding: 30px;
}

.padding20 {
    padding: 20px;
}

.padding15 {
    padding: 15px;
}

.padding10 {
    padding: 10px;
}

.cartouche {
    margin: 30px auto;
}

.container-flex {
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;    
    display: flex;
    position: relative;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.container-flex-center {
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;    
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
}

.container-flex-nowrap {
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;    
    display: flex;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}


.container-flex-start {
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;    
    display: flex;
    flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
}

.flex-item-moitie {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 48%;
    position: relative;
}


.flex-item-quart {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 23%;
    position: relative;
}


.flex-item-trois-quart {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 70%;
    position: relative;
}

.flex-item-tiers {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 31%;
    position: relative;
}

.flex-item-deux-tiers {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 67%;
    position: relative;
}

.flex-item-auto {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    position: relative;
}

.flex-item-cinq {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 18%;
    position: relative;
}

.flex-item-40 {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 40%;
    position: relative;
}

.flex-item-50 {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 50%;
    position: relative;
}

.flex-item-55 {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 55%;
    position: relative;
}

.flex-item-60 {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 60%;
    position: relative;
}

a.absolute {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 14;
    top: 0;
    left: 0;
}






/************************************************************************************************************************************/
/************************************************** SCROLL TO TOP *******************************************************************/
/************************************************************************************************************************************/

#toTop {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 8222;
}

#toTop::before {
    content: '';
    width: 50px;
    height: 50px;
    top: 0;
    left: 0;
    display: block;
    background: url(../img/totop.png) center center;
    background-size: contain;    
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
}



/**********************************************************************************************************************************************************/
/********************************************************************** TRANSITION PAGES ******************************************************************/
/**********************************************************************************************************************************************************/

.loader-site {
    background: #f1f1f1;
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 15000;
}

#loader-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
    text-align: center;
}

.sk-cube-grid {
    width: 70px;
    height: 70px;
    margin: 20% auto;
}

.sk-cube-grid .sk-cube {
    width: 33%;
    height: 33%;
    background-color: var(--bleu-fonce);
    float: left;
    -webkit-animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
          animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out; 
}
.sk-cube-grid .sk-cube1 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }
.sk-cube-grid .sk-cube2 {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s; }
.sk-cube-grid .sk-cube3 {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s; }
.sk-cube-grid .sk-cube4 {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s; }
.sk-cube-grid .sk-cube5 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }
.sk-cube-grid .sk-cube6 {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s; }
.sk-cube-grid .sk-cube7 {
  -webkit-animation-delay: 0s;
          animation-delay: 0s; }
.sk-cube-grid .sk-cube8 {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s; }
.sk-cube-grid .sk-cube9 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }

@-webkit-keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    -webkit-transform: scale3D(1, 1, 1);
            transform: scale3D(1, 1, 1);
  } 35% {
    -webkit-transform: scale3D(0, 0, 1);
            transform: scale3D(0, 0, 1); 
  }
}

@keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    -webkit-transform: scale3D(1, 1, 1);
            transform: scale3D(1, 1, 1);
  } 35% {
    -webkit-transform: scale3D(0, 0, 1);
            transform: scale3D(0, 0, 1);
  } 
}

#holder {
	opacity: 0;  
	transition: opacity 0.3s ease-in-out;
 	-moz-transition: opacity 0.3s ease-in-out;
 	-webkit-transition: opacity 0.3s ease-in-out;
}

#holder.visible {
	opacity: 1;
	transition: opacity 0.4s ease-in-out;
 	-moz-transition: opacity 0.4s ease-in-out;
 	-webkit-transition: opacity 0.4s ease-in-out;
}



/*************************************************************************/
/**************************** HEADER *************************************/
/*************************************************************************/

header.header-site {
    background: #fff;
    width: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 12;
    box-shadow: 0 4px 6px rgba(0,0,0,0.15);
}

header.header-site .wrap {
    height: 78px;
    position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.logo-header {
    height: 100%;
    position: relative;
    width: 230px;
    background-size: auto;
    background-position: center left;
    background-repeat: no-repeat;
}

.baseline-header {
    background-position: center left;
    background-repeat: no-repeat;
    background-size: contain;
    max-width: 50%;
}
.baseline-header p {margin-bottom: 0;}


.mob-only {
    display: none;
}

/* Icone dans header */
header div.my_account_activated .logo_site_header, header div.my_account_activated .my_account_link {width: 25%;}
header div.my_account_activated .baseline-header {width: 50%; text-align: center;}
header .logo_site_header {height: 100%;}
header .my_account_link {text-align: right;}
header .my_account_link a {display: inline-block;}
header .my_account_link div {text-align: center; margin-right: 10px;}
header .my_account_link div:hover {opacity: 0.9;}
header .my_account_link div:hover span {text-decoration: underline;}
header .my_account_link div:before {font-family: 'Material icons'; content: '\e7fd'; font-size: 30px; display: block; color: #fff;}
header .my_account_link span {font-size: 10px; color: #fff;}



/*************************************************************************/
/**************************** FOOTER *************************************/
/*************************************************************************/

.module-reassurance {
    margin: 20px 0;
}

.picto-reassurance {
    width: 80px;
    height: 80px;
    background-size: contain;
    margin: 0 auto 20px;
    cursor: pointer;
}

.tooltip-reassurance {
    border-radius: 6px;
    box-shadow: 0 0 12px rgba(0,0,0,0.2);
    position: relative;
    z-index: 6;
    margin-top: -10px;
    opacity: 0;
    position: absolute;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.tooltip-reassurance.actif {
    margin-top: 0;
    opacity: 1;
    -webkit-transition: all .3s;
    transition: all .3s;
}


.site-footer {
    background: var(--bleu-fonce);
    color: #fff;
    padding: 40px 0;
    font-size: .85rem;
    line-height: 1.1rem;
}

.site-footer a:not(.button):not(.components-button),
.site-footer a {
    color: #fff;
    text-decoration: none;
    font-size: .85rem;
    padding: 4px 0;
}

.site-footer a:not(.button):not(.components-button):hover,
.site-footer a:hover {
    text-decoration: underline;
}

.site-footer nav li {
    margin-bottom: 6px;
}

.footer-centre img {
    width: 180px;
    height: auto;
    margin: 0 auto 10px;
}

.footer-centre a {
    color: var(--bleu-clair) !important;
    text-decoration: underline !important;
}

.footer-centre a:hover {
    color: #fff !important;
}

.footer-droite,
.footer-droite p {
    text-align: right;
}

.footer-droite img {
    width: 260px;
    height: auto;
    margin-right: 0;
    display: inline-block;
}


/*-------------------*/
/* PARTAGE RS */
/*-------------------*/

/* LBO - 01/2024 - Non utilisé */

/*
.bloc-partage {
    width: 100%;
    text-align: right;
}

a.share-icone {
    text-decoration: none !important;
    margin-right: 8px;
}

a.share-icone:last-child {
    margin-right: 0;
}

a.share-icone::before {
    content: '';
    display: inline-block;
    font-size: 1.5rem;
    font-family: 'fontAwesome';
    color: #333;
}

a.share-icone:hover::before {
    color: var(--orange);
}

a.share-icone.share-twitter::before {
    content: '\f081';
}

a.share-icone.share-facebook::before {
    content: '\f082';
}

a.share-icone.share-linkedin::before {
    content: '\f08c';
}
*/


/*---------------- */
/* RESEAUX SOCIAUX */
/*---------------- */

/* LBO - 01/2024 - Non utilisé */
/*

li.linkedin,
li.twitter,
li.facebook,
li.instagram {
    display: inline-block;
    width: auto !important;
    padding: 0;
}

li.linkedin a,
li.twitter a,
li.facebook a,
li.instagram a {
    padding: 0;
}

li.linkedin a::after,
li.twitter a::after,
li.facebook a::after,
li.instagram a::after {
    content: '';
    display: inline-block;
    font-size: 1.3rem;
    font-family: 'fontAwesome';
    color: #333;
    height: 40px;
    padding: 0 10px;
}

li.linkedin a:hover::after,
li.twitter a:hover::after,
li.facebook a:hover::after,
li.instagram a:hover::after {
    color: var(--orange);
}

li.facebook a::after {
    content: '\f39e' !important;
}

li.instagram a::after {
    content: '\f16d' !important;
}

li.twitter a::after {
    content: '\f099' !important;
}

li.linkedin a::after {
    content: '\f0e1' !important;
}

*/

/*************************************************************************/
/******************* STRUCTURE PAGES *************************************/
/*************************************************************************/


.top-image {
    width: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

.top-image.top-single {
    height: 150px;
}

.top-image.top-single.top-sans-image {
    height: 150px;
    max-height: 45vh;
    background: url(../img/trame-bleu-fonce.png) center center repeat-x var(--bleu-fonce);
    background-size: auto auto;
}

.top-image.top-page {
    height: 150px;
}

.top-image.top-page.top-sans-image {
    height: 150px;
    background: url(../img/trame-bleu-fonce.png) center center repeat-x var(--bleu-fonce);
    background-size: auto auto;
}
.page-template-template-caution-form .top-image.top-page.top-sans-image {
	height: 130px;
}

section {
    padding: 40px 0;
}
section.contenu-page {min-height: 50vh;}


/*---------------- */
/* Zone recherche */
/*---------------- */

.top-image.top-home {
    padding: 14vh 0;
}

.top-image.top-home.no-image {
    background: var(--bleu-fonce);
}

.zone-recherche {
    background: rgba(255,255,255,1);
    box-shadow: 0 0 20px rgba(0,0,0,0.2);
    position: relative;
}

.formulaire-recherche form {
    margin-bottom: 0;
}

.zone-recherche .titre-zone-recherche {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

.zone-recherche h2 {
    margin: 8px 0;
    font-size: 1.2rem;
    line-height: 1.5rem;
}

.zone-recherche h2:before {
    height: 15px;
    width: 120px;
}

.zone-recherche .container-flex {
    justify-content: space-around;
}

#ui-datepicker-div {
    z-index: 99999 !important;
}

.formulaire-recherche .critere-recherche select {
    position: relative;
}

.formulaire-recherche .critere-recherche select {
    width: 100%;
    background: url(../img/arrow-select.png) no-repeat 99% 50%;
    background-color: transparent !important;
    appearance: none;
    border: 0 !important;
    border-bottom: 1px solid var(--bleu-fonce) !important;
    padding: 0 10px 0 32px;
    font-size: .85rem;
    line-height: 48px;
    color: var(--bleu-fonce);
    cursor: pointer;
    height: 48px;
}

.formulaire-recherche .option-critere {

}

.formulaire-recherche input[type=text] {
    border: 0;
    height: 48px;
    line-height: 48px;
    padding: 0 10px 0 44px;
    background: #ebebeb;
    width: 100%;
    color: var(--bleu-fonce);
    font-size: .85rem;
    box-shadow: none;
}

.formulaire-recherche input[type=text]::placeholder {
    color: var(--bleu-fonce);
    font-size: .85rem;
}

.formulaire-recherche .critere-recherche::before {
    content: '';
    position: absolute;
    z-index: 3;
    font-family: 'Material icons';
    display: block;
    font-size: 1.5rem;
    color: var(--bleu-fonce);
    top: 30%;
    left: 0;
}

.formulaire-recherche .critere-recherche.recherche-date::before {
    content: '\e878';
    left: 10px;
}

/*
.formulaire-recherche .critere-recherche.recherche-resource_type_permis::before {
    content: '\e532';
}

.formulaire-recherche .critere-recherche.recherche-pa_formule-de-location::before {
    content: '\e8b5';
}

.formulaire-recherche .critere-recherche.recherche-pa_port-de-depart::before {
    content: '\e0c8';
}
*/

.formulaire-recherche input[type=submit] {
    margin-top: 50px;
    background: var(--bleu-clair);
    border: 0;
    color: #fff;
    font-weight: bold;
    font-family: 'Montserrat', helvetica, arial, lucida, sans-serif;
    font-size: .9rem;
    box-shadow: 0 6px 4px rgba(0,0,0,0.15);
    padding: 12px 34px;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.formulaire-recherche input[type=submit]:hover {
    background: var(--bleu-fonce);
    -webkit-transition: all .3s;
    transition: all .3s;
}


/*---------------------  */
/* Zone recherche scroll */
/*---------------------  */

.zone-recherche {
    -webkit-transition: all .3s;
    transition: all .3s;
}

.zone-recherche.scroll {
    background: rgba(255,255,255,1);
    box-shadow: 0 10px 12px rgba(0,0,0,0.2);
    position: fixed;
    top: 0;
    z-index: 22000;
    left: 0;
    width: 100%;
    max-width: 100%;
    padding: 15px 20px 20px;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.zone-recherche.scroll .titre-zone-recherche {
    visibility: hidden;
    opacity: 0;
    height: 0;
}

.zone-recherche.scroll .formulaire-recherche {
    margin-top: 0 !important;
}

.zone-recherche.scroll .formulaire-recherche form {
    margin-bottom: 0;
}

.zone-recherche.scroll .flex-item-quart {
    width: 18%;
}

.zone-recherche.scroll .formulaire-recherche .critere-recherche::before {
    top: 30%;
    vertical-align: middle;
}

.zone-recherche.scroll .formulaire-recherche input[type=submit] {
    margin-top: 0;
}


/*----------------------------  */
/* Zone recherche bottom mobile */
/*----------------------------  */

.zone-recherche.mobile {
    background: rgba(255,255,255,1);
    box-shadow: 0 -4px 6px rgba(0,0,0,0.2) !important;
    position: fixed;
    height: 210px;
    bottom: -210px;
    z-index: 22000;
    left: 0;
    width: 100%;
    max-width: 100%;
    padding: 12px;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.zone-recherche.mobile.actif {
    bottom: 0;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.zone-recherche .button-mobile {
    display: none;
    box-shadow: 0 -4px 6px rgba(0,0,0,0.2);
    position: absolute;
    width: 200px;
    left: 50%;
    margin-left: -100px;
    top: -34px;
    height: 34px;
    line-height: 36px;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    background: var(--bleu-fonce);
    font-size: .8rem;
    font-weight: bold;
    color: #fff;
    text-transform: uppercase;
    text-align: center;
}

.zone-recherche.mobile .button-mobile {
    display: block;
}

.zone-recherche.mobile .formulaire-recherche {
    margin-top: 0 !important;
}

.zone-recherche.mobile .formulaire-recherche form {
    margin-bottom: 0;
}

.zone-recherche.mobile .flex-item-quart {
    width: 48%;
}

.zone-recherche.mobile .formulaire-recherche .critere-recherche::before {
    top: 30%;
    vertical-align: middle;
}

.zone-recherche.mobile .formulaire-recherche input[type=submit] {
    margin-top: 12px;
}


/*---------------- */
/* HOME PRODUITS */
/*---------------- */



/*
.module-accordeon-port dd,
.Zebra_Accordion dd {
    display: none;
}

.module-accordeon-port dt,
.Zebra_Accordion dt {
    cursor: pointer;
}

.accordion-contenu {
    height: auto !important;
}

.module-accordeon-port .accordion-titre,
.Zebra_Accordion .accordion-titre {
    padding: 12px 0;
    margin-bottom: 40px;
    position: relative;
}

.module-accordeon-port .accordion-titre h2,
.Zebra_Accordion .accordion-titre h2 {
    margin: 0;
}

.module-accordeon-port .accordion-titre::after {
    content: '+';
    position: absolute;
    z-index: 19;
    font-weight: bold;
    color: #fff;
    font-size: 1.6rem;
    right: 20px;
    top: 30%;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.module-accordeon-port .accordion-titre.Zebra_Accordion_Expanded::after {
    content: '-';
    -webkit-transition: all .3s;
    transition: all .3s;
}
*/


.ui-tabs .ui-tabs-panel {
    padding: 0;
}

#tabs.ui-widget-content,
#tabs.ui-widget.ui-widget-content {
    border: 0;
    background: none;
    color: inherit;
}

.ui-widget {
    font-family: inherit;
    color: inherit;
}

.ui-tabs {
    padding: 0;
}

.ui-tabs .ui-tabs-nav {
    margin: 0 !important;
    padding: 0;
    width: 103%; 
    margin-left: -1.5% !important; 
}

#tabs .ui-widget-header {
    border: 0;
    background: none;
    color: inherit;
    font-weight: normal;
    border-radius: 0;
}

.ui-tabs .ui-tabs-nav li {
    float: none;
    margin: 0;
    text-align: center;
    white-space: inherit;
}


.ui-dialog {
    max-width: 90% !important;
    z-index: 88889 !important;
    position: fixed !important;
    top: 28% !important;
}

.ui-widget-overlay {
/*    background: #000 !important; */
    opacity: .8 !important;
    z-index: 88888 !important;
}


.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button, html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
    border: 0;
    background: none;
    color: inherit;
    border-radius: 0;
}

.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
    float: none;
    padding: 0;
    color: inherit;
}

.ui-tabs .ui-tabs-nav li.ui-tabs-active {
    margin-bottom: 0;
}



.ports-dispos {
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;    
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.ports-dispos li {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    position: relative;
    color: var(--bleu-clair) !important;
    background: #fff !important;
    padding: 20px 12px !important; 
    font-size: 1.2rem !important;
    font-weight: bold !important;
    box-shadow: 0 0 14px rgba(0,0,0,0.15);
    -webkit-transition: all .3s;
    transition: all .3s;
}

.ports-dispos li a {
    position: absolute; 
    top: 0; 
    z-index: 5;
    left: 0; 
    width: 100%; 
    height: 100%; 
}

.ports-dispos li.ui-state-active {
    background: var(--bleu-clair) !important;
    color: #fff !important;
    box-shadow: none;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.ports-dispos li:not(.ui-state-active):hover {
    box-shadow: 0 0 6px rgba(0,0,0,0.15);
    -webkit-transition: all .3s;
    transition: all .3s;
}

.ports-dispos:not(.nb-ports-1) li div::after {
    content: '\ea50';
    display: inline-block;
    margin-left: 10px;
    vertical-align: middle;
    font-family: 'Material icons';
    font-size: 1.4rem;
/*    color: var(--bleu-clair); */
    -webkit-transition: all .3s;
    transition: all .3s;
}


li.nbre-items-01 {
    width: 100%;
}

li.nbre-items-02 {
    width: 48%;
}

li.nbre-items-03 {
    width: 31%;
}

li.nbre-items-04 {
    width: 23%;
}

li.nbre-items-05 {
    width: 18%;
}


.contenu-port {
    margin-top: 40px;
}

.module-bateau-home {
    margin-bottom: 40px;
    box-shadow: 0 12px 12px rgba(0,0,0,0.15);
    -wekbit-transition: all .5s;
    transition: all .5s;
}

.module-bateau-home a::after {
    content: '\e315';
    font-size: 2rem;
    font-family: 'Material icons';
    color: var(--bleu-clair);
    position: absolute;
    bottom: 20px;
    right: 20px;
    z-index: 18;
    -wekbit-transition: all .3s;
    transition: all .3s;
}

.module-bateau-home:hover {
    background: var(--bleu-clair);
    -wekbit-transition: all .2s;
    transition: all .2s;
}

.module-bateau-home a:hover::after {
    right: 12px;
    color: #fff;
    -wekbit-transition: all .3s;
    transition: all .3s;
}

.module-bateau-home:hover .bleu-fonce:not(.info-creneau),
.module-bateau-home:hover .prix-bateau {
    color: #fff;
    -wekbit-transition: all .3s;
    transition: all .3s;
}

.module-bateau-home:hover .image-bateau img {
    opacity: .7;
}

.module-bateau-home .image-bateau {
    width: 100% !important;
    text-align: center;
}

.module-bateau-home .image-bateau img {
    height: 100%;
    min-width: 100%;
    min-height: 100%;
    max-width: none !important;
    width: auto;
    display: block;
    margin-left: auto;
    margin-right: auto;
    -wekbit-transition: all .3s;
    transition: all .3s;
}

.slider {
	width: 100%;
	overflow: hidden;
	position: relative;
    background: #000;
}

.slide { 
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	float: left;
	position: absolute;
    -wekbit-transition: all .3s;
    transition: all .3s;
}

body.home .slider,
body.home .slide {
	height: 180px !important; 
}



#slideposition {
    position: relative;
    bottom: 30px;
    left: 0;
    width: auto;
    text-align: center;
/*    z-index: 500; LBO passe à 50 car dialog ui à 90*/
    z-index: 50;
    margin-bottom: -22px;
}

#slideposition ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: block;
}

#slideposition ul li.indicator {
    display: inline-block;
    height: 12px;
    width: 12px;
    background: #fff;
    margin: 0 4px;
    padding: 0;
    border-radius: 50%;
    overflow: hidden;
    cursor: pointer;
}


#slideposition ul li.indicator.active {
    background: var(--bleu-clair);
}

.module-bateau-home.slides-01 #slideposition {
    display: none !important;
}

.infos-bateau {
    
}

.infos-bateau .info-creneau {
    margin: 15px 0;
    padding: 6px 8px;
    background: #f2f2f2;
    font-weight: bold;
}

.infos-bateau .prix-bateau {
    font-weight: bold;
    color: var(--bleu-clair);
    font-size: .85rem;
    -wekbit-transition: all .3s;
    transition: all .3s;
}

.infos-bateau p {
    margin-bottom: 5px;
}

.module-bateau-home .button.product_type_booking.add_to_cart_button {
    display: none !important;
}


/*------------------------*/
/* Résultats de recherche */
/*------------------------*/

.zone-resultats {
    opacity: 0;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.zone-resultats.actif {
    opacity: 1;
    -webkit-transition: all .6s;
    transition: all .6s;
}

.container-resultats {
    position: relative;
    min-height: 220px;
}

.loading-resultats {
    left: 50%;
    top: 40px;
    display: block;
    margin-left: -20px;
    position: absolute;
    z-index: 8;
    opacity: 0;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.loader-gif-search {
    width: 130px;
    height: 130px;
    background: url(../img/loader-search-bateau.gif) center center no-repeat #fff;
    background-size: contain;
    position: absolute;
    left: 50%;
    margin-left: -65px;
    top: 30px;
    border-radius: 50%;
    z-index: 9;
    opacity: 0;
    -webkit-transition: all .1s;
    transition: all .1s;
}

.loader-gif-search.actif {
    opacity: 1;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.message-attente {
    opacity: 0;
    font-size: .85rem;
    line-height: 1.2rem;
    width: 260px;
    color: var(--bleu-fonce);
    font-weight: bold;
    position: absolute;
    top: 180px;
    left: 50%;
    margin-left: -130px;
    -webkit-transition: all .1s;
    transition: all .1s;
}

.message-attente.actif {
    opacity: 1;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.loading-resultats.actif {
    opacity: 1;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.sk-fading-circle {
    width: 40px;
    height: 40px;
}

.sk-fading-circle .sk-circle {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

.sk-fading-circle .sk-circle:before {
    content: '';
    display: block;
    margin: 0 auto;
    width: 15%;
    height: 15%;
    background-color: var(--bleu-fonce);
    border-radius: 100%;
    -webkit-animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
          animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
}
.sk-fading-circle .sk-circle2 {
  -webkit-transform: rotate(30deg);
      -ms-transform: rotate(30deg);
          transform: rotate(30deg);
}
.sk-fading-circle .sk-circle3 {
  -webkit-transform: rotate(60deg);
      -ms-transform: rotate(60deg);
          transform: rotate(60deg);
}
.sk-fading-circle .sk-circle4 {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
}
.sk-fading-circle .sk-circle5 {
  -webkit-transform: rotate(120deg);
      -ms-transform: rotate(120deg);
          transform: rotate(120deg);
}
.sk-fading-circle .sk-circle6 {
  -webkit-transform: rotate(150deg);
      -ms-transform: rotate(150deg);
          transform: rotate(150deg);
}
.sk-fading-circle .sk-circle7 {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}
.sk-fading-circle .sk-circle8 {
  -webkit-transform: rotate(210deg);
      -ms-transform: rotate(210deg);
          transform: rotate(210deg);
}
.sk-fading-circle .sk-circle9 {
  -webkit-transform: rotate(240deg);
      -ms-transform: rotate(240deg);
          transform: rotate(240deg);
}
.sk-fading-circle .sk-circle10 {
  -webkit-transform: rotate(270deg);
      -ms-transform: rotate(270deg);
          transform: rotate(270deg);
}
.sk-fading-circle .sk-circle11 {
  -webkit-transform: rotate(300deg);
      -ms-transform: rotate(300deg);
          transform: rotate(300deg); 
}
.sk-fading-circle .sk-circle12 {
  -webkit-transform: rotate(330deg);
      -ms-transform: rotate(330deg);
          transform: rotate(330deg); 
}
.sk-fading-circle .sk-circle2:before {
  -webkit-animation-delay: -1.1s;
          animation-delay: -1.1s; 
}
.sk-fading-circle .sk-circle3:before {
  -webkit-animation-delay: -1s;
          animation-delay: -1s; 
}
.sk-fading-circle .sk-circle4:before {
  -webkit-animation-delay: -0.9s;
          animation-delay: -0.9s; 
}
.sk-fading-circle .sk-circle5:before {
  -webkit-animation-delay: -0.8s;
          animation-delay: -0.8s; 
}
.sk-fading-circle .sk-circle6:before {
  -webkit-animation-delay: -0.7s;
          animation-delay: -0.7s; 
}
.sk-fading-circle .sk-circle7:before {
  -webkit-animation-delay: -0.6s;
          animation-delay: -0.6s; 
}
.sk-fading-circle .sk-circle8:before {
  -webkit-animation-delay: -0.5s;
          animation-delay: -0.5s; 
}
.sk-fading-circle .sk-circle9:before {
  -webkit-animation-delay: -0.4s;
          animation-delay: -0.4s;
}
.sk-fading-circle .sk-circle10:before {
  -webkit-animation-delay: -0.3s;
          animation-delay: -0.3s;
}
.sk-fading-circle .sk-circle11:before {
  -webkit-animation-delay: -0.2s;
          animation-delay: -0.2s;
}
.sk-fading-circle .sk-circle12:before {
  -webkit-animation-delay: -0.1s;
          animation-delay: -0.1s;
}

@-webkit-keyframes sk-circleFadeDelay {
  0%, 39%, 100% { opacity: 0; }
  40% { opacity: 1; }
}

@keyframes sk-circleFadeDelay {
  0%, 39%, 100% { opacity: 0; }
  40% { opacity: 1; } 
}


.zone-recherche.resultats-recherche {
    margin: 0;
    box-shadow: none;
}

.zone-recherche.resultats-recherche.scroll {
    box-shadow: 0 6px 6px rgba(0,0,0,0.15);
}
/*
.zone-recherche.resultats-recherche .flex-item-quart {
    width: 18%;
}
*/
.formulaire-recherche .critere-recherche::before {
    
}

.cta-radius,
.zone-recherche.resultats-recherche .formulaire-recherche input[type=submit] {
    margin-top: 25px;
    background: #fff;
    border: 1px solid var(--bleu-clair);
    color: var(--bleu-clair);
    font-weight: bold;
    font-family: 'Montserrat', helvetica, arial, lucida, sans-serif;
    font-size: .75rem;
    height: 32px;
    text-decoration: none !important;
    line-height: 28px;
    border-radius: 18px;
    box-shadow: none;
    display: inline-block;
    padding: 0 18px;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.cta-radius:hover,
.zone-recherche.resultats-recherche .formulaire-recherche input[type=submit]:hover {
    background: var(--bleu-clair);
    color: #fff;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.zone-choix-jour {
    width: 60%;
    margin: 0 auto;
    min-height: 100px;
}

.choix-jour-flexible {
    height: 80px;
    margin-top: 10px;
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,0.15);
    text-align: center;
    color: var(--bleu-fonce);
    padding: 18px;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.choix-jour {
    height: 100px;
    background: var(--bleu-fonce);
    font-weight: bold;
    color: #fff;
    margin-top: 0;
    padding: 18px;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.indicateur-dispo {
    text-align: center;
    font-size: .65rem;
    width: 26px;
    height: 26px;
    color: var(--bleu-fonce);
    border: 1px solid var(--bleu-fonce);
    font-weight: bold;
    line-height: 24px;
    margin: 8px auto 0;
    border-radius: 50%;
    background: #fff;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.choix-jour .indicateur-dispo {
    border-color: #fff;
    margin: 12px auto 0;
}

.pas-de-dispo {
    color: #b1b1b1;
}

.pas-de-dispo .indicateur-dispo {
    border-color: #b1b1b1;
    background: url(../img/picto-pas-de-dispo-bateau.png) center center no-repeat;
    background-size: contain;
}

.owl-carousel {
    width: 100%;
    margin: 0 auto;
}

.owl-carousel .owl-stage-outer {
    
}

.owl-nav {
    position: absolute;
    width: 100%;
    z-index: 82;
    top: 50%;
    left: 0;
    margin-top: -19px;
}

.owl-carousel .owl-nav button::before {
    content: "›";
    display: block;
    position: absolute;
    z-index: 6;
    width: 38px;
    height: 38px;
    top: 0;
    left: 0;
    font-weight: bold;
    font-size: 1.8rem;
    text-align: center;
    line-height: 34px;
    color: #b1b1b1;
}

.owl-carousel .owl-nav button.owl-prev::before {
    transform: rotate(180deg);
    width: 36px;
}

.owl-carousel .owl-nav button.owl-prev,
.owl-carousel .owl-nav button.owl-next {
    background: #fff;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 1px solid #b1b1b1;
    position: absolute;
}

.owl-carousel .owl-nav button.owl-prev {
    left: -50px;
}

.owl-carousel .owl-nav button.owl-next {
    right: -50px;
}


.container-zone-choix {
    width: 100%;
    text-align: center;
    position: relative;
}

.container-zone-choix .wrap {
    width: 100%;
}

.container-zone-choix.scroll .wrap {
    width: 1170px;
    max-width: 98%;
}



.container-zone-choix.scroll {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 48523;
    background: #fff;
    border-top: 1px solid #eaeaea;
    border-bottom: 1px solid #eaeaea;
    min-height: 50px;
	box-shadow: 0 0 20px rgb(0,0,0);	/* ajout LBO 10/02/2024 pour mieux séparer le sticky des résultats de recherche */
}

.container-zone-choix.scroll .zone-choix-jour {
    min-height: 1px;
/*    width: 55%; */
}

.container-zone-choix.scroll .choix-jour,
.container-zone-choix.scroll .choix-jour-flexible {
    height: 80px; 
/*    min-height: 50px; */
    margin-top: 0;
    padding-top: 10px;
    box-shadow: none;
}
    
.container-zone-choix .owl-item {
    height: 100%;    
}
    
.opacity {
    opacity: 0;
    -webkit-transition: all .3s;
    transition: all .3s;
}



.message-no-results {
    margin: 30px 0;
}

.message-no-results img {
    max-width: 100%;
    height: auto;
}

.listing-resultats {
    margin-top: 60px;
}

li.item-recherche {
    background: #fff;
    position: relative;
    margin-bottom: 24px;
    -webkit-transition: all .3s;
    transition: all .3s;
}

li.item-recherche .flex-item-moitie {
    width: 45%;
}

li.item-recherche .flex-item-quart {
    width: 27%;
}

li.item-recherche .flex-item-quart .flex-item-moitie {
    width: 50%;
}


li.item-recherche .entete-item-bateau {
    height: auto;
    text-align: left;
    color: var(--bleu-fonce);
    font-weight: bold;
    margin-bottom: 12px;
    padding-bottom: 12px;
    font-size: 1.2rem;
    border-bottom: 2px solid #f1f1f1;
}

li.item-recherche .entete-item-bateau .picto-creneau::before {
    content: '\e8b5';
    font-family: 'Material icons';
    display: inline-block;
    font-size: 1.1rem;
    margin-right: 12px;
    color: var(--bleu-fonce);
    vertical-align: middle;
}

/* Affichage pour créneau commencé */
li.item-recherche .entete-item-bateau .picto-creneau.creneau-commence {color: var(--bleu-clair);}
li.item-recherche .entete-item-bateau .creneau-commence.picto-creneau::before {color: var(--bleu-clair);}
li.item-recherche .entete-item-bateau .texte-creneau-commence {font-size: 0.8rem; color: var(--bleu-clair); text-transform: uppercase;}

li.item-recherche h2 {
    margin: 0;
    font-size: 1.2rem;
    text-align: left;
    line-height: 1.5rem;
}

li.item-recherche h2::before {
    height: 15px;
    width: 120px;
    background-size: contain;
    display: none;
}

li.item-recherche .flex-item-moitie.padding10.nombre-bateaux {
    padding: 10px 0;
}

.nombre-bateaux-dispo {
    background: #f2f2f2;
    color: #8e8e8e;
    height: 100%;
}

.nombre-bateaux-dispo .quantite-dispo {
    margin-top: 12px;
    margin-bottom: 0;
}

.resultat-formule-de-location {
    font-weight: bold;
    border-bottom: 10px solid #fff;
    text-align: center;
    padding-bottom: 16px;
}

.resultat-formule-de-location .display-table-cell::before {
    content: '\e8b5';
    font-family: 'Material icons';
    display: block;
    font-size: 1.2rem;
    margin: 0 auto 4px;
    /*margin-right: 8px;*/
    color: #fff;
    /*vertical-align: middle;*/
}

.prix-formule-de-location {
    
}

.prix-formule-de-location {
    margin-bottom: 0;
    position: relative;
}

.ensemble-prix {
    /* font-weight: bold; */
    text-align: left;
    padding-left: 12px;
    font-size: .85rem;
}

.prix-formule-de-location .apartirde {
    font-size: .8rem;
    font-weight: normal;
    line-height: 1.3rem;
    display: none;
}

.prix-formule-de-location .arrow-price {
    font-size: .85rem;
    font-weight: normal;
    margin-top: 6px;
}


.prix-formule-de-location .arrow-price::after {
    content: '\e315';
    font-size: 1.2rem;
    vertical-align: middle;
    margin-left: 5px;
    font-family: 'Material icons';
    -wekbit-transition: all .3s;
    transition: all .3s;
}


.prix-formule-de-location .prix .woocommerce-Price-amount {
    font-size: 1.15rem;
    line-height: 1.3rem;
    text-align: left;
    font-weight: bold;
	display: block;		/* évite que les prix à 4 chiffres soient scindés en 2 lignes */
}

.resultat-formule-de-location,
.prix-formule-de-location {
/*    height: 50%; */
}

.prix-formule-de-location {
    height: 100%;
    -webkit-transition: all .3s;
    transition: all .3s;
    
}


.recherche-caracteristiques {
    color: var(--bleu-fonce);
}

.recherche-caracteristiques .item-caract {
    margin-bottom: 12px;
    font-size: .85rem;
    line-height: 1.3rem;
}

.recherche-caracteristiques .item-caract::before {
    content: '\e8b5';
    font-family: 'Material icons';
    display: inline-block;
    font-size: 1rem;
    margin-right: 8px;
    color: var(--bleu-fonce);
    vertical-align: middle;
}

.recherche-caracteristiques .item-caract.caract-formule::before {
    content: '\e8b5';
}

.recherche-caracteristiques .item-caract.caract-coque::before {
    content: '\e176';
}

.recherche-caracteristiques .item-caract.caract-modele::before {
    content: '\e532';
}

.recherche-caracteristiques .item-caract.caract-capacite::before {
    content: '\e7fb';
}

.recherche-caracteristiques .item-caract.caract-port::before {
    content: '\e0c8';
}

.recherche-caracteristiques .item-caract.resource_type_permis::before {
    font-family: 'boatrentalmanager';
	content: '\e904';
	font-weight: 600;
}
.recherche-caracteristiques .item-caract.resource_poids_maxi::before {
    font-family: 'boatrentalmanager';
	content: '\e905';
	font-weight: 600;
}


li.item-recherche:hover {
    box-shadow: 0 0 10px rgba(0,0,0,0.3);
    -webkit-transition: all .3s;
    transition: all .3s;
}


li.item-recherche:hover .prix-formule-de-location {
    background: var(--bleu-fonce);
    -webkit-transition: all .3s;
    transition: all .3s;
}




/*---------------- */
/* PAGE PRODUIT */
/*---------------- */

section.single-boat.scroll {
    padding-top: 170px;
    -webkit-transition: all .3s;
    transition: all .3s;
}

select,
input[type=text],
input[type=email],
textarea {
    font-family: 'Montserrat', helvetica, arial, lucida, sans-serif;
    font-weight: 400;
}

/* ZONE NOM DU PRODUIT EN HAUT DE PAGE */
.container-titre-single {
    box-shadow: 0 6px 6px rgba(0,0,0,0.15);
    -webkit-transition: all .3s;
    transition: all .3s;
}
.container-titre-single h1 {
    font-size: 2.5rem;
    margin-bottom: 0;
    -webkit-transition: all .3s;
    transition: all .3s;
}
/*
.container-titre-single h1 span {
    text-transform: lowercase;
}
*/
.container-titre-single h2 {
    font-size: 1.6rem;
    margin-bottom: 15px;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.container-titre-single h2.formule-picto {margin-bottom:0;}

.container-titre-single .container-flex {align-items: center;}
	
.container-titre-single h2::before {
    content: '\e8b5';
    display: inline-block;
    color: var(--bleu-fonce);
    font-family: 'Material icons';
    font-size: 1.3rem;
    margin-right: 10px;
    vertical-align: middle;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.container-titre-single h2.formule-picto::before {content: '\e8b5';}
.container-titre-single h2.port-picto::before {content: '\e0c8';}
.container-titre-single .cta-radius {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 3;
}


/*------------------------*/
/* Container titre scroll */
/*------------------------*/

.container-titre-single.scroll {
    position: fixed;
    top: 0;
    left: 0;
    background: var(--bleu-fonce);
    box-shadow: none;
    width: 100%;
    z-index: 3621;
    padding: 0;
    height: 40px;
    line-height: 40px;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.container-titre-single.scroll .wrap {
    text-align: center;
    width: 768px;
}

.container-titre-single.scroll .wrap .flex-item-tiers,
.container-titre-single.scroll .wrap .flex-item-moitie {
    width: 50%;
}

.container-titre-single.scroll h1 {
    font-size: 1.3rem;
    line-height: 40px;
    color: #fff;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.container-titre-single.scroll h2 {
    font-size: 1rem;
    line-height: 40px;
    display: inline-block;
    color: #fff;
    margin-right: 25px;
    margin-bottom: 0;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.container-titre-single.scroll h2::before {
    color: #fff;
    font-size: .9rem;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.container-titre-single.scroll .cta-radius {
    display: none;
}


.single-product div.product form.cart {
    margin: 0;
    padding: 0;
}

/*--------------------------*/
/* Sélecteur type de bateau */
/*--------------------------*/

.zone-selecteur-modele-bateau {
    background: #fff;
    margin: 20px 0 40px;
    width: 100%;
    text-align: center;
    box-shadow: 0 6px 6px rgba(0,0,0,0.15);
    -webkit-transition: all .3s;
    transition: all .3s;
}

.displaynone {
    display: none !important;
}

.zone-selecteur-modele-bateau label:not(.select-actif) {
    cursor: pointer;
}
.zone-selecteur-modele-bateau label {
    padding: 25px 20px;
    text-align: center;
    width: 20%;
    border-right: 1px solid #e4e4e4;
    color: var(--bleu-fonce);
    vertical-align: middle;
    font-size: 1rem;
    display: inline-block;
    margin: 0 !important;
    position: relative;
    -webkit-transition: all .5s;
    transition: all .5s;
}

.zone-selecteur-modele-bateau label.elements-1 {width: 100%;}
.zone-selecteur-modele-bateau label.elements-2 {width: 50%;}
.zone-selecteur-modele-bateau label.elements-3 {width: 33.3%;}
.zone-selecteur-modele-bateau label.elements-4 {width: 25%;}
.zone-selecteur-modele-bateau label.elements-5 {width: 20%;}

.zone-selecteur-modele-bateau label.select-actif,
.zone-selecteur-modele-bateau label:last-child {
    border-right: 0;
}

.zone-selecteur-modele-bateau label.select-actif {
    background: var(--bleu-fonce);
    color: #fff;
    font-weight: bold;
}

.zone-selecteur-modele-bateau label.select-actif::after {
    content: '\e5c5';
    display: block;
    bottom: -18px;
    width: 100%;
    left: 0;
    font-size: 2.5rem;
    text-align: center;
    position: absolute;
    font-family: 'Material icons';
    color: var(--bleu-fonce);
    z-index: 6;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.zone-selecteur-modele-bateau label:hover {
    background: var(--bleu-fonce);
    color: #fff;
    -webkit-transition: all .3s;
    transition: all .3s;
}


/*---------------------------------*/
/* Sélecteur type de bateau scroll */
/*---------------------------------*/

.zone-selecteur-modele-bateau.scroll {
    position: fixed;
    width: 100%;
    z-index: 3622;
    left: 0;
    top: 40px;
/*    height: 73px; */
    margin: 0;
    border-top: 1px solid #fff;
    box-shadow: 0 6px 6px rgba(0,0,0,0.15);
    -webkit-transition: all .3s;
    transition: all .3s;
}

.zone-selecteur-modele-bateau label {
    font-size: .85rem;
    padding: 15px 20px;
}

.zone-selecteur-modele-bateau.scroll label {
/*    height: 73px; */
}
    
.zone-selecteur-modele-bateau.scroll label.select-actif::before {
    top: auto;
    bottom: -17px;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.zone-bouton-dispo-mobile {
    position: fixed;
    bottom: 0;
    z-index: 16002;
    background: #fff;
    padding: 6px;
    box-shadow: 0 -6px 8px rgba(0,0,0,0.15);
    width: 100%;
    left: 0;
    display: none;
}

.zone-bouton-dispo-mobile a {
    color: #fff;
    font-size: .9rem;
    width: 100%;
    background-color: var(--bleu-fonce) !important;
    border-color: var(--bleu-fonce) !important;
    display: block;
    text-align: center;
    padding: 8px;
}

.resource_block {
    -webkit-transition: all .3s;
    transition: all .3s;
}

.container-resource {
    position: relative;
    min-height: 300px;
}

.loading-resource {
    left: 50%;
    top: 80px;
    display: block;
    margin-left: -20px;
    position: absolute;
    z-index: 8;
    opacity: 0;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.loading-resource.actif {
    opacity: 1;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.zone-reservation-single {
    border: 1px solid #d0d0d0;
    box-shadow: 0 8px 8px rgba(0,0,0,0.15);
}

.container-general .woocommerce {
/*    display: none; */
}
/*
.storefront-breadcrumb {
    display: none;
}
*/
.storefront-full-width-content .content-area {
    float: none;
}

.content-area {
    margin: 0;
}

.storefront-product-pagination {
    display: none;
}

body.single-product .slider {
/*	height: 380px;
    min-height: 200px; */
	overflow: hidden;
	position: relative;
    background: transparent;
}

body.single-product  #slideposition {
    position: relative;
    bottom: 30px;
    left: 0;
    width: auto;
    text-align: center;
/*    z-index: 500; LBO passe à 50 car dialog ui à 90 */
    z-index: 50;
    margin-bottom: -22px;
}

#slideposition ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: block;
}

#slideposition ul li.indicator {
    display: inline-block;
    height: 12px;
    width: 12px;
    background: #fff;
    margin: 0 4px;
    padding: 0;
    border-radius: 50%;
    overflow: hidden;
    cursor: pointer;
}


#slideposition ul li.indicator.active {
    background: var(--bleu-clair);
}

.module-bateau-home.slides-01 #slideposition {
    display: none !important;
}


.resource_images {
/*    opacity: 0; */
    margin: 0 0 20px; 
    position: relative;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.resource_images.actif {
    opacity: 1;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.resource_images::before {
    content: '';
    display: block;
    width: 100px;
    height: 100px;
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 6;
    /* background: url(img/macaron-15kg.png) center center no-repeat; */
    background-size: contain;
}


.resource_images img {
    max-width: 100%;
    height: auto;
}

.resource_description,
.resource_caracteristiques {
    padding: 15px 30px;
    background: #fff;
    margin: 0;
}

.resource_description {
    padding-top: 0;
}

.resource_description p {margin-bottom:20px;}

.resource_description .resource_taxo_multiples {margin-top: 40px;}
.resource_description .resource_taxo_multiples span {font-size: 0.85rem;}
.resource_description .resource_taxo_multiples span.resource_taxo_label {margin-right: 8px;}
.resource_description .resource_taxo_multiples span.resource_taxo_label::after {content: ' : ';}
.resource_description .resource_taxo_multiples span.resource_taxo_valeur {background-color: #f4f4f4; margin: 0 8px; padding: 2px 6px;}
.resource_description .resource_taxo_multiples span:nth-child(2) {margin-left: 0;}

.resource_caracteristiques {
    font-size: .85rem;
    text-align: center;
    color: var(--bleu-fonce);
	line-height: 1.15rem;
}

.resource_caracteristique {
    padding: 0 25px;
    /* margin-bottom: 15px; */
}

.resource_caracteristiques .resource_caracteristique:nth-child(1) {
    padding-left: 0;
}

.resource_caracteristiques .resource_caracteristique:last-child {
    padding-right: 0;
}

.resource_caracteristique span::before {
    content: '';
    display: block;
    font-family: 'boatrentalmanager';
	font-size: 40px;
	line-height: 40px;
	margin-bottom: 5px;
	color: var(--bleu-clair);
}

.resource_caracteristique.taxo-resource_longueur_bateau span::before {
    /* background: url(../img/caracteristique-icone-longueur.png) center center no-repeat; */
    /* background-size: contain; */
	
	content: "\e901";
}

.resource_caracteristique.taxo-resource_moteur_bateau span::before {
    /* background: url(../img/caracteristique-icone-puissance.png) center center no-repeat; */
    /* background-size: contain; */
	
	content: "\e903";
	font-size: 40px;
}

.resource_caracteristique.taxo-resource_poids_maxi span::before {
    /* background: url(../img/caracteristique-icone-poids.png) center center no-repeat; */
    /* background-size: contain; */
	
	content: "\e905";
}

.resource_caracteristique.taxo-resource_type_permis span::before {
    /* background: url(../img/caracteristique-icone-type.png) center center no-repeat; */
    /* background-size: contain; */
	
	content: "\e904";
}

.resource_caracteristique.taxo-resource_capacite_bateau span::before {
    /* background: url(../img/caracteristique-icone-personnes.png) center center no-repeat; */
    /* background-size: contain; */
	
	content: "\e902";
}

.resource_caracteristique.taxo-resource_type_bateau span::before {
    /* background: url(../img/caracteristique-icone-coque.png) center center no-repeat; */
    /* background-size: contain; */
	
	content: "\e900";
}


.resource_description::before {
    content: '';
    margin: 0 0 30px;
    display: block;
    width: 160px;
    height: 20px;
    background: url(../img/vague-titre.png);
    background-size: auto;
    background-repeat: no-repeat;
    opacity: .3;
}

/*-------------------- */
/* PAGE PRODUIT DROITE */
/*-------------------- */


.lbo-right-part fieldset {
    margin: 0;
    padding: 0;
    background: transparent;
}

.lbo-right-part.flex-item-tiers.scroll {
    position: sticky;
    top: 0;
}

.wc-bookings-booking-form {
    border: 0;
    padding: 0;
}

/* LBO 17/04/2021 - enleve modele de bateau (texte saisi en admin) */
/*#wc-bookings-booking-form .form-field.form-field-wide.wc_booking_field_modele-de-bateau.wc_bookings_field_resource {*/
#wc-bookings-booking-form .form-field.form-field-wide.wc_bookings_field_resource {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
/* LBO 17/04/2021 - enleve modele de bateau (texte saisi en admin) */
/*.wc_booking_field_modele-de-bateau label, .select_boat_model label {*/
#wc-bookings-booking-form .wc_bookings_field_resource label, .select_boat_model label {
    display: none;
}
/* LBO 17/04/2021 - enleve modele de bateau (texte saisi en admin) */
/*.wc_booking_field_modele-de-bateau select, .select_boat_model select {*/
#wc-bookings-booking-form .wc_bookings_field_resource select, .select_boat_model select {
    display: none;
}
/* Ancienne présentation sélecteur de bateau */
#wc-bookings-booking-form .wc_bookings_field_resource select, .select_boat_model select {
    height: 60px;
    width: 100%;
    cursor: pointer;
    padding: 0 15px;
    background-position: 99% 50%;
    background-image: url(../img/select_arrow.png);
    background-color: #fff;
    background-repeat: no-repeat;
    -webkit-appearance: none;
}


/* ----------- */
/* DATE PICKER */
/* ----------- */

.wc-bookings-booking-form fieldset .picker.hasDatepicker {
    margin-bottom: 0;
}

.ui-datepicker table,
.wc-bookings-booking-form .wc-bookings-date-picker .ui-datepicker table,
#wc-bookings-booking-form .wc-bookings-date-picker .ui-datepicker table {
    background: #fff;
    font-size: .9rem;
    font-family: 'Montserrat', helvetica, arial, lucida, sans-serif;
    font-weight: 400;
    color: #aeaeae;
}

/* Month header */
.wc-bookings-date-picker .ui-datepicker-header {
    height: 60px;
    background: var(--bleu-fonce);
    border-radius: 0;
    /*margin-bottom: 30px;*/
}
.wc-bookings-date-picker .ui-datepicker .ui-datepicker-title {
    font-family: 'Montserrat', helvetica, arial, lucida, sans-serif;
    font-weight: 700;
    line-height: 60px;
    padding: 0;
    margin: 0;
}
/* Previous/Next month arrow */
.wc-bookings-date-picker .ui-datepicker .ui-datepicker-prev,
.wc-bookings-date-picker .ui-datepicker .ui-datepicker-next {
    background: transparent;
    height: 60px;
    line-height: 60px;
    top: 0;
}
.wc-bookings-date-picker .ui-datepicker .ui-datepicker-prev.ui-state-hover,
.wc-bookings-date-picker .ui-datepicker .ui-datepicker-next.ui-state-hover {
    background: transparent;
}
/* Days of the week header font color */
.ui-datepicker table thead th,
.wc-bookings-booking-form .wc-bookings-date-picker .ui-datepicker table thead th,
#wc-bookings-booking-form .wc-bookings-date-picker .ui-datepicker table thead th {
    font-weight: 700 !important;
    color: var(--bleu-clair) !important;
}
/* Dates non disponibles */
#wc-bookings-booking-form .wc-bookings-date-picker .ui-datepicker td.ui-datepicker-unselectable a, #wc-bookings-booking-form .wc-bookings-date-picker .ui-datepicker td.ui-datepicker-unselectable span {
	text-decoration : line-through;
}
/* Available calendar days background color */
.wc-bookings-date-picker .ui-datepicker td.bookable a.ui-state-default {
    background: #85c655 !important;
    /* font-weight: bold; */
    font-weight: 500;
}
/* Available calendar day hover background color */
#wc-bookings-booking-form .wc-bookings-date-picker .ui-datepicker td.bookable a:hover {
	background-color: #69a141 !important;
}
/* Fully booked calendar days */
.wc-bookings-date-picker .ui-datepicker td.fully_booked span,
.wc-bookings-date-picker .ui-datepicker td.fully_booked a {
    background: #890707 !important;
	color: inherit;
}

.wc-bookings-date-picker .ui-datepicker td.bookable-range .ui-state-default {
	background: var(--bleu-fonce) !important;
    font-weight: 700 !important;
}
/* Jour sélectionné */
.wc-bookings-date-picker .ui-datepicker td.ui-datepicker-current-day a.ui-state-default {
    background: var(--bleu-fonce) !important;
/*    background: #69a141 !important; */
}

#wc-bookings-booking-form .form-field {
    margin: 20px 0;
}

/* Correction bug affichage quand une période sélectionné intègre un state disabled. Cela donne une opacity à 0.35 */
.ui-state-disabled.bookable-range {opacity: 1;}

/* ---------------------- */
/* SELECTION DE L'HORAIRE */
/* ---------------------- */

/* Version 2 select : heure de début et heure de fin */

.block-picker select {
/*    display: inline-block; */
    height: 40px;
    width: 100%;
    border: 1px solid #cccccc;
    font-size: .9rem;
    color: #333;
    cursor: pointer;
    padding: 0 15px;
    background-position: 99% 50%;
    background-image: url(../img/select_arrow.png);
    background-color: #fff;
    background-repeat: no-repeat;
    -webkit-appearance: none;
    margin-top: 4px;
}
.wc-bookings-time-block-picker label {
    display: none;
}

/* Version créneaux sous forme de li */

#wc-bookings-booking-form .form-field .block-picker li {
	width:100%;
}

#wc-bookings-booking-form .form-field .block-picker h3 {
    font-size: 1.1rem;
    line-height: 1.45rem;
}

.form-field .block-picker li,
#wc-bookings-booking-form .form-field .block-picker li.block {
    float: none;
    display: inline-block;
    width: 30%;
    min-width: 30%;
    margin-right: 5%;
}

.form-field .block-picker li:last-child,
#wc-bookings-booking-form .form-field .block-picker li:nth-of-type(3) {
    margin-right: 0;
}

#wc-bookings-booking-form .form-field .block-picker li:nth-of-type(4) {
    margin-top: 18px;
}

.form-field .block-picker li a,
#wc-bookings-booking-form .form-field .block-picker li a {
    width: 100% !important;
    text-align: center;
    font-family: 'Montserrat', helvetica, arial, lucida, sans-serif;
    font-weight: 500;
    font-size: .8rem !important;
    padding: 10px 0 0 !important;
    height: 60px !important;
    color: var(--bleu-fonce) !important;
    border: 2px solid var(--bleu-fonce) !important;
}
.wc-bookings-booking-form .block-picker li:nth-child(even) a {
	background-color: #fff;
}
.booking-spaces-left {
    line-height: .9rem;
}

#wc-bookings-booking-form .block-picker li a.selected,
#wc-bookings-booking-form .block-picker li a:focus,
#wc-bookings-booking-form .block-picker li a:hover {
    background: var(--bleu-fonce) !important;
    color: #fff !important;
}

/* Ajout pour gestion texte info créneau commencé */
#wc-bookings-booking-form .block-picker .texte-block-creneau_commence {margin-top: 10px; font-size: 0.85rem; line-height: 1.1rem; display: none;}

/* ------------------------- */
/* INPUT NOMBRE DE PERSONNES */
/* ------------------------- */

.wc_bookings_field_persons label {
    font-size: .85rem;
    margin-bottom: 5px;
    line-height: 1.1rem;
    font-weight: 500;
    color: var(--bleu-fonce);
    width: 50%;
    float: left;
    height: 50px;
    background: #f4f4f4;
    border: 1px solid #fff;
    color: rgba(0,0,0,0.4);
    padding: 8px 12px 12px;
    
}

.wc_bookings_field_persons input {
    height: 50px !important;
    background: #fff !important;
    width: 50% !important;
    border: 1px solid #f4f4f4 !important;
    padding: 0 15px !important;
    box-shadow: none !important;
    float: left;
}

/* ----------------------------------- */
/* CONTAINER AFFICHAGE PRIX ET OPTIONS */
/* ----------------------------------- */

.container-montant {
/*    display: block !important; */
    margin: 15px 0;
    background: #fff;
    border: 2px solid var(--bleu-clair);
    padding: 15px;
    font-size: .85rem;
    color: var(--bleu-fonce);
}

.wc-bookings-booking-cost {
    font-weight: 700;
    width: 100%;
}

.wc-bookings-booking-cost strong {
    font-weight: 700;
    color: var(--bleu-clair); 
    display: block;
    text-align: right;
    font-size: 1.3rem;
    margin-top: -22px; 
}

.container-montant.avec-options .wc-bookings-booking-cost strong {
     font-size: .85rem;
}

.wc_bookings_lbo_options_details {
    margin-top: 15px;
    margin-bottom: 13px;
    padding-bottom: 15px;
    border-bottom: 3px solid #eaeaea;
}

/* .wc_bookings_lbo_options_details .ligne-option:first-child { */
.wc_bookings_lbo_options_details .ligne-option {
    margin-bottom: 12px;
}
.wc_bookings_lbo_options_details .ligne-option:last-child {
	margin-bottom: 0;
}
.wc_bookings_lbo_options_details .prix-option {
    display: block;
    text-align: right;
/*    font-weight: 700; */
/*    color: #b1b1b1;  */
    margin-top: -22px; 
}

.wc_bookings_lbo_options_details .ligne-option label {
    cursor: pointer !important;
}

/* Style checkbox */


.wc_bookings_lbo_options_details input[type="checkbox"] {
    display: none;
}

.wc_bookings_lbo_options_details input[type="checkbox"] + label::before {
    content: '';
    display: inline-block;
    width: 18px;
    line-height: 17px;
    height: 18px;
    vertical-align: sub;
    border: 1px solid var(--bleu-clair);
    margin-right: 10px;
}

.wc_bookings_lbo_options_details input[type="checkbox"]:checked + label::before {
    content: '\e5ca';
    font-family: 'Material Icons';
    font-size: 1.3rem;
    line-height: 17px;
    color: #fff;
    text-align: center;
    background-color: var(--bleu-clair);
    border-color: var(--bleu-clair);
}

.wc_bookings_lbo_booking_total {
    font-weight: 700;
}

.wc_bookings_lbo_booking_total strong {
    font-weight: 700;
    color: var(--bleu-clair);
    font-size: 1.3rem; 
    display: block;
    text-align: right;
    margin-top: -22px; 
}


/* ------------------------------- */
/* BOUTON DE VALIDATION (RESERVER) */
/* ------------------------------- */


.wc-bookings-booking-form-button {
    background-color: var(--bleu-clair) !important;
    border: 2px solid var(--bleu-clair) !important;
    width: 100%;
    text-transform: uppercase;
    font-weight: 700;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.wc-bookings-booking-form-button:hover {
    background-color: var(--bleu-fonce) !important;
    border: 2px solid var(--bleu-fonce) !important;
    -webkit-transition: all .3s;
    transition: all .3s;
}

/* Test d'info sous bouton add to cart */
.zone-reservation-single .text_info_add_to_cart {font-size: 0.85rem; line-height:1.3; background-color: #F4F4F4; padding: 12px; text-align: center;}

/* Recap dates au dessus du bouton add to cart */
div.recap_dates_booking {text-align: center; padding-bottom: 10px; font-size: 0.85rem; padding-top:10px; font-weight: 600; background-color: #F4F4F4;}

.zone-reservation-single .text_info_add_to_cart, div.recap_dates_booking {background-color: #F4F4F4;}

/* -------------------------- */
/* BLOC INFOS COMPLEMENTAIRES */
/* -------------------------- */

.product-infos-complementaires {
    padding: 30px 20px 20px;
    background: #fff;
    font-size: .85rem;
    line-height: 1.1rem;
    margin-top: 50px;
    /* color: #949393; */
    position: relative;
    width: 100%;
}

.product-infos-complementaires::before {
    content: '';
    width: 60px;
    height: 60px;
    background: url(../img/icone-infos.png) center center no-repeat;
    background-size: contain;
    position: absolute;
    z-index: 6;
    top: -30px;
    left: 50%;
    margin-left: -30px;
}



/*-------------------- */
/* PAGES STANDARD */
/*-------------------- */

.contenu-page h1 {
    color: var(--bleu-fonce);
    font-size: 3rem;
    font-weight: 700;
    /* margin-bottom: 40px !important; */
	margin-bottom: 20px;
    line-height: 3.3rem;
    letter-spacing: 0;
}

.contenu-page h1::after {
    content: '';
    display: block;
    width: 160px;
    height: 20px;
    margin: 15px 0;
    background: url(../img/vague-titre.png);
    background-size: contain;
}

header.entry-header {
    text-align: left !important;
    padding: 0 0 30px !important;
}

.entry-content {
    margin-top: 20px;
}

.zone-filtres {
    background: #fff;
    margin: 30px 0;
    box-shadow: 0 8px 8px rgba(0,0,0,0.15);
    padding: 20px;
}

.zone-filtres .storefront-sorting {
    margin-bottom: 0;
}


/*-------------------- */
/* CHECKOUT */
/*-------------------- */

.woocommerce-message a.button.wc-forward {
    display: none !important;
}


h3#order_review_heading,
.woocommerce-billing-fields h3 {
    font-weight: 700;	
	background-color: var(--bleu-fonce);
	color: #fff;
	margin-bottom: 0;
    padding: 20px;
	font-size: 1.1rem;
}

/* N'affiche pas l'entête du tableau (produit - sous total) */
#order_review table thead {display: none;}

/* Ajoute un bloc titre "Paiement" entre order review et paiement */
.woocommerce-checkout-review-order #payment::before {
	content: 'Paiement';
	display: block;
    font-weight: 700;
	background-color: var(--bleu-fonce);
	color: #fff;
	margin-bottom: 0;
    padding: 20px;
	font-size: 1.1rem;
}	

/* Pavé description de la méthode de paiement */
#payment .payment_methods li .payment_box {font-size: 0.85rem; padding: 10px;}

.woocommerce-billing-fields__field-wrapper {
    padding: 30px;
    background: #fff;
}

.woocommerce-billing-fields__field-wrapper input,
.woocommerce-billing-fields__field-wrapper textarea {
    box-shadow: none !important;
    background: #f1f1f1 !important;
    border-bottom: 2px solid #f1f1f1 !important;
    margin-bottom: 15px;
}

.woocommerce-billing-fields__field-wrapper input:focus,
.woocommerce-billing-fields__field-wrapper textarea:focus {
    box-shadow: none !important;
    background: #f1f1f1 !important;
    border-bottom: 2px solid var(--bleu-clair) !important;
}

.woocommerce-billing-fields__field-wrapper label {
    /* display: none; */
}

.woocommerce-checkout .woocommerce-form-login {background-color: #fff; padding: 30px;}
.woocommerce-checkout .woocommerce-form-login p:first-child, .woocommerce-form-login p.lost_password {display: none;}
.woocommerce-checkout .woocommerce-form-login button.woocommerce-form-login__submit {margin-top: 10px;}


.woocommerce-account-fields {margin-top: 20px;}
.woocommerce-account-fields .create-account label {margin-bottom: 8px;}
.woocommerce-account-fields input[type=password] {background-color: #fff;}

.woocommerce-billing-fields__field-wrapper label abbr {text-decoration: none; cursor: default;}
.woocommerce-billing-fields__field-wrapper p.form-row input::placeholder {color: transparent;}

.woocommerce-billing-fields__field-wrapper p {
    margin-bottom: 0;
}

#billing_country_field label {
    display: block;
}

select#lbo_connu_via,
#billing_country_field select {
    height: 50px;
    width: 100%;
    border: 0;
    color: #444;
    cursor: pointer;
    padding: 0 15px;
    background-position: 99% 50%;
    background-image: url(../img/select_arrow.png);
    background-color: #fff;
    background-repeat: no-repeat;
    -webkit-appearance: none;
}

.select2-container--default .select2-selection--single {
    border-radius: 0;
    height: 50px;
    margin-bottom: 15px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 50px;
}

.woocommerce-additional-fields__field-wrapper label {
    display: none;
}

.woocommerce-additional-fields__field-wrapper textarea {
    width: 100%;
    background: #fff;
    box-shadow: none;
    min-height: 140px;
}

select#lbo_connu_via {
    margin-top: 15px;
}

#order_review thead th {
    color: #fff !important;
    background: var(--bleu-fonce) !important;
}

th.product-total {
    text-align: right;
}

.cart_item .product-name {
    width: 70%;
}

.cart_item .product-total {
    text-align: right;
}

.fee th,
.cart-subtotal th,
.order-total th {
    width: 70%;
}

.fee td,
.cart-subtotal td,
.order-total td,
.cart-discount td {
    text-align: right;
}

/* N'affiche pas la mention : "dont XX€ TVA" */
.woocommerce-checkout-review-order-table td .includes_tax {display: none;}

.product-name {
    font-size: 1.1rem;
    line-height: 1.4rem;
    color: var(--bleu-clair);
    font-weight: 700;
}

.product-name .variation {
    color: var(--bleu-fonce);
    font-size: .9rem;
    line-height: 1.3rem;
}


.product-name .variation dt,
.product-name .variation dd {
    display: inline-block;
    padding-bottom: 10px;
    border-bottom: 1px solid #eaeaea;
}

.product-name .variation dt {
    font-weight: 400;
    width: 30%;
}

.product-name .variation dd {
    width: 68%;
}

.variation-Datedelocation {
    margin-top: 20px;
}

.order-total .woocommerce-Price-amount.amount {
    font-weight: 700;
    color: var(--bleu-clair);
    font-size: 1.1rem;
}

.payment_method_stripe::before {
    /* display: none; */
        
}

#place_order {
    background: var(--bleu-fonce) !important;
    border: 0 !important;
    text-transform: uppercase;
}

#place_order:hover {
    background: var(--bleu-clair) !important;
    text-transform: uppercase;
}


/* ---------------------------------------------- */
/* ORDER-PAY (paiement d'une commande créée en BO */
/* ---------------------------------------------- */
.woocommerce-order-pay #order_review #payment .form-row {padding:0;}

.woocommerce-order-pay #order_review .woocommerce-terms-and-conditions-wrapper {padding: 1.41575em;}
.woocommerce-order-pay #order_review .woocommerce-terms-and-conditions-wrapper + button {margin-bottom: 20px;}
.woocommerce-order-pay #order_review .shop_table td.product-total, .woocommerce-order-pay #order_review .shop_table td.product-total,
.woocommerce-order-pay #order_review .shop_table td.product-subtotal {text-align: right;}
.woocommerce-order-pay #order_review .shop_table .wc-booking-summary {padding:10px;}
.woocommerce-order-pay #order_review .shop_table tfoot td {background-color: #f8f8f8; font-weight: bold;}

@media (max-width: 768px) {
	.woocommerce-order-pay #order_review .button#place_order {width:50%; margin-left:25%; margin-right:25%;}
}

/*-------------------- */
/* THANK YOU */
/*-------------------- */

.woocommerce-notice--success.woocommerce-thankyou-order-received {
    display: none;
}

.order_details {
    background: #fff;
}

ul.order_details {
	margin-bottom: 20px;
}

.order_details::before {
    display: none !important;
}

.order_details::after {
    content: '';
    /* background: url(../img/vague-titre.png) !important; */
    /* height: 20px !important; */
    /* width: 100% !important; */
    /* background-repeat: repeat-x !important; */
    /* opacity: .2; */
    /* background-size: contain !important; */
    /* background-position: center center !important; */
	opacity: 0;
}


ul.order_details {
    margin-top: 0;
}

ul.woocommerce-thankyou-order-details {display: flex; justify-content: space-between;}
ul.order_details.woocommerce-thankyou-order-details li:first-child {padding-top: 1em;}

.woocommerce-thankyou-order-details li {
    *display: inline-block;
    *width: 23%;
}

.woocommerce-thankyou-order-details li strong {
    color: var(--bleu-clair);
}

ul.order_details li {
    text-transform: none;
    border-bottom: 0;
}

.order-again {
    display: none;
}

.wc-booking-summary-list {
    font-weight: 400;
}

.wc-booking-summary .wc-booking-summary-actions {
    display: none;
}

.woocommerce-table--order-details thead th {
    background: var(--bleu-fonce);
    color: #fff;
    font-weight: 700;
}

.woocommerce-table--order-details tfoot td,
.woocommerce-table--order-details tfoot th {
    background: var(--bleu-clair);
    color: #fff;
    font-weight: 700;
}
.woocommerce-order-received .woocommerce-table--order-details td.woocommerce-table__product-total,
.woocommerce-order-received .woocommerce-table--order-details tfoot td {
	text-align: right;
}

.woocommerce-table__product-name.product-name a {
    text-decoration: none;
    color: var(--bleu-clair);
    font-weight: 500;
}


.wc-booking-summary {
    border: 0;
    background: #f1f1f1;
    border-radius: 0;
    padding: 30px;
}

.woocommerce-customer-details address {
    background: #fff;
    padding: 20px;
    font-style: normal;
}


section.woocommerce-customer-details {
    padding-top: 0;
}


.banniere-assurance {
    margin: 40px 10% 20px;
    max-width: 80%;
    padding: 20px;
    border-radius: 18px;
    background: #fff;
/*    box-shadow: 0 8px 8px rgba(0,0,0,0.15); */
    border: 1px solid var(--bleu-clair);
}

.banniere-assurance img {
    max-width: 150px;
    height: auto;
    border-radius: 0;
}

.banniere-assurance a {
    margin-top: 15px;
}


/*-------------------- */
/* CAUTION */
/*-------------------- */

.module-informations {

}

.module-informations img {
    width: 100%;
    height: auto;
    margin: 20px 0;
}

.module-informations dl {
    margin-bottom: 0;
}

.module-informations dl dd:last-child {
    border: 0;
    padding-bottom: 0;
    margin-bottom: 0;
}

.module-informations .variation dt:last-of-type {
    border: 0;
    padding-bottom: 0;
}

.page-template-template-caution-form .product-infos-complementaires {
    margin-top: 0;
}
.page-template-template-caution-form .product-infos-complementaires li {
	margin-bottom:8px;
}
.page-template-template-caution-form .module-caution-success li {
	list-style-position: inside;
	list-style-type: disc;	
}
.page-template-template-caution-form .texte-succes-caution {
	font-size: 0.9rem;
	margin-bottom: 20px;
}

.module-caution {
    margin-bottom: 0;
}

.module-caution .container-input {
    color: #31325F;
    height: 35px;
    background: #fff;
    border: 1px solid #eaeaea;
    padding: 10px;
    margin-bottom: 20px;
    position: relative;
}


.module-caution #card-number::after {
    content: '';
    display: block;
    position: absolute;
    z-index: 3;
    width: 30px;
    height: 35px;
    background: url(../img/credit-card.svg) center center no-repeat;
    background-size: contain;
    top: 0;
    right: 10px;
}

.module-caution button {
    background: var(--bleu-fonce);
    width: 100%;
    margin-top: 10px;
    color: #fff;
    text-transform: uppercase;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.module-caution button:hover {
    background: var(--bleu-clair);
    -webkit-transition: all .3s;
    transition: all .3s;
}

.input-moitie {
    width: 47%;
}

.rouge {
    color: #cd0000;
}

.bkg-rouge {
    background: #cd0000;
}

#card-errors {
    font-weight: bold;
    font-size: 1rem;
    line-height: 1.4rem;
    color: #cd0000;
    margin-top: 15px;
}


/*-------------------- */
/* CONTRATS */
/*-------------------- */

page[size="A4"] {  
    width: 21cm;
    height: 29.7cm;
    padding: 30px;
}

#availability_search select option[data-default] {color: #777;}


/* ---------------------------- */
/* ---------------------------- */
/* ---- ESPACE MON COMPTE ----  */
/* ---------------------------- */
/* ---------------------------- */


/* Login */
@media (min-width: 768px) {
	body.woocommerce-account #customer_login {display: flex; justify-content: space-between;}
	body.woocommerce-account .col2-set#customer_login .col-1, .col2-set.addresses .col-1 {
		width: 45%; float: none;
	}
	body.woocommerce-account .col2-set#customer_login .col-2, .col2-set.addresses .col-2 {
		width: 45%; float: none;
	}
}

table.shop_table_responsive tr td[data-title]::before {content: attr(data-title) " : ";}

body.woocommerce-account .entry-content {background-color: #fff; padding: 30px 20px; box-shadow: 0 0 2px;}
body.woocommerce-account .entry-header {display: none;}		/* N'affiche pas le titre de la page qui n'apporte pas grand chose */
/* Menu */
.woocommerce-MyAccount-navigation ul li a::before {display: none;}	/* N'affiche pas les icones du menu */
.woocommerce-MyAccount-navigation ul li.is-active {background-color: #808080; }
.woocommerce-MyAccount-navigation ul li.is-active a {color: #fff; font-weight: bold;}
.woocommerce-MyAccount-navigation ul li {padding-left: 10px; padding-right: 10px;}
.woocommerce-MyAccount-navigation ul li:not(.is-active):hover {background-color: #f1f1f1;}

/* Titre */
body.woocommerce-account .woocommerce-MyAccount-content h2 {margin-bottom: 40px;}

/* Dashboard */
body.woocommerce-account p+h2 {margin-top: 40px;}
body.woocommerce-account .wc-dashboard .bookings-list-blocks .booking {/*box-shadow: 0 0 10px;*/}
body.woocommerce-account .wc-dashboard .bookings-list-blocks .booking .container_booking {background-color: #f5f5f5;}
body.woocommerce-account .dashboard-kpi {display: flex; justify-content: space-between; margin-bottom: 50px;}
body.woocommerce-account .dashboard-kpi div {width: 28%; text-align: center; padding: 20px; /*box-shadow: 0 0 10px;*/ border-radius: 10px; background-color: #f5f5f5;}
body.woocommerce-account .dashboard-kpi div:hover {background-color: var(--bleu-fonce);}
body.woocommerce-account .dashboard-kpi div:hover a {color: #fff;}
body.woocommerce-account .dashboard-kpi div a {text-decoration: none;}
body.woocommerce-account .dashboard-kpi div span {display: block;}
body.woocommerce-account .dashboard-kpi div span.data_kpi {font-size: 30px; font-weight: bold; margin-bottom: 20px;}
body.woocommerce-account .dashboard-kpi div span.label_kpi {font-size: 80%;}

/* Liste des réservations */
/* ---------------------- */

body.woocommerce-account .to_be_paid_bookings, body.woocommerce-account .upcoming_bookings {margin-bottom: 60px;}

/* Bookings à payer */
body.woocommerce-account .to_be_paid_bookings .texte_explicatif {margin-bottom: 40px; position: relative;}
body.woocommerce-account .to_be_paid_bookings .texte_explicatif:before {font-family: 'Material icons'; content: '\e004'; display: block; position: absolute; top: 40%; left:0; font-size: 30px; color: var(--bleu-fonce);}
body.woocommerce-account .to_be_paid_bookings .texte_explicatif div {margin-left: 40px; padding-left: 20px; border-left: 1px var(--bleu-fonce) solid;}
body.woocommerce-account .to_be_paid_bookings .liste_bookings .booking {display: flex; flex-wrap: wrap; align-items: center; text-align: center; padding: 20px; background-color: #f9f9f9; border: 1px #ff4500 solid; border-radius: 10px; width: 100%;}
body.woocommerce-account .to_be_paid_bookings .liste_bookings .booking .booking_id {width: 15%}
body.woocommerce-account .to_be_paid_bookings .liste_bookings .booking .booking-details {width: 55%;}
body.woocommerce-account .to_be_paid_bookings .liste_bookings .booking .booking-actions {width: 30%;}
body.woocommerce-account .to_be_paid_bookings .liste_bookings .booking .booking-details span {display: block; font-size: 15px;}
body.woocommerce-account .to_be_paid_bookings .liste_bookings .booking-actions a.button.primary {padding: 15px 0; background-color: var(--bleu-fonce); color: #fff;}
body.woocommerce-account .to_be_paid_bookings .liste_bookings .booking-actions a.button:last-child {margin-bottom: 0;}
body.woocommerce-account .to_be_paid_bookings .liste_bookings .booking-actions a.button:not(.primary) {*display: none;}

/* Bookings à venir et commencés : format blocks */
body.woocommerce-account .bookings-list-blocks .booking {border-bottom:1px solid #eaeaea; padding-bottom: 25px; margin-top: 25px;}
body.woocommerce-account .bookings-list-blocks .booking .container_booking {display: flex; flex-wrap: wrap; width: 100%;}
body.woocommerce-account .bookings-list-blocks .booking:last-child {border-bottom:0; padding-bottom: 0; margin-top: 25px;}
body.woocommerce-account .bookings-list-blocks .booking .booked-resource {width: 30%;}
body.woocommerce-account .bookings-list-blocks .booking .booking-details {width: 50%;}
body.woocommerce-account .bookings-list-blocks .booking .booking-actions {width: 20%;}
body.woocommerce-account .bookings-list-blocks .booking .booking-details, body.woocommerce-account .bookings-list-blocks .booking .booking-actions {padding: 10px 20px;}
body.woocommerce-account .bookings-list-blocks .booking .booking-actions {padding-right: 0;}
body.woocommerce-account .bookings-list-blocks .booking.location-en-cours .booking-details, body.woocommerce-account .bookings-list-blocks .booking.location-en-cours .booking-actions {background-color: #f5f5f5;}
body.woocommerce-account .bookings-list-blocks .booking.location-en-cours .container_booking {background-color: #f5f5f5;}
body.woocommerce-account .bookings-list-blocks .booking .booking-details span {display: block; font-size: 15px;}
body.woocommerce-account .bookings-list-blocks .booking .booking-details span.booking_id {font-size:80%; margin-top: 10px;}	/* Numéro de résa */
body.woocommerce-account .booking-actions a.button {padding: 5px; line-height: 1; width: 100%; text-align: center; margin-bottom: 10px; font-weight: normal; font-size: 13px;}
body.woocommerce-account .booking-actions a.button.primary {font-weight: bold; font-size: 14px;}


/* View Order */
/* ---------- */
body.woocommerce-account .woocommerce-order-details {padding-top: 0;}
/* style bouton payer */
body.woocommerce-account .view-order-pay {text-align: center; margin-bottom: 30px;}


body.woocommerce-account .woocommerce-table--order-details td.woocommerce-table__product-total {text-align: right;}
body.woocommerce-account .woocommerce-table--order-details tfoot td {text-align: right;}