/* ******************************** */
/* NE PAS MODIFIER */
/* ******************************** */
:focus{outline: none!important}
/* MATOMO */
.matomo-mesure-audience{display:none}
/* overflow sans scroll ni coupure en hauteur */
.overflow-x-clip{overflow-x:clip}
/* masquer une section ayant la classe parent-to-hide  si le widget loop n'a pas d'élément */
.parent-to-hide:has(.e-loop-nothing-found-message){display:none}
/* le widget elementor icon ne gère que la hauteur et width est à 1em => revert-layer : Rétablit la valeur d'une propriété à la valeur qu'elle avait à la couche précédente.*/
.elementor-widget-icon svg{width:revert-layer!important}
/* ******************************** */

/* ******************************** */
/* A MODIFIER */
/* ******************************** */

/* COULEURS */
/* ******************************** */
/*
à mettre à jour et à utiliser dans ce fichier var(--e-global-color-xxxxxxxx)
Une fois les couleurs paramétrées dans Elementor, aller sur le site, inspecter le code et récupérer les éléments couleurs dans
.elementor-kit-6 {

--e-global-color-primary: #A39475;
--e-global-color-secondary: #6C1700;
--e-global-color-text: #FFFFFF;
--e-global-color-accent: #7F7259;
--e-global-color-a7184e6: #FFFFFF;
--e-global-color-2d085e7: #000000;
--e-global-color-507b74e: #333333;
--e-global-color-31ac3d0: #231F20;
--e-global-color-e8ec971: #414143;
*/

.elementor-kit-6 {
  --principal : var(--e-global-color-primary);
  --primary : var(--e-global-color-primary);
  --secondaire: var(--e-global-color-secondary);
  --secondary: var(--e-global-color-secondary);
  --text: var(--e-global-color-text);
  --blanc: var(--e-global-color-a7184e6);
  --noir: var(--e-global-color-2d085e7);
  --anthracite: var(--e-global-color-507b74e);
  --bg-gris-fonce: var(--e-global-color-31ac3d0);
  --bg-gris: var(--e-global-color-e8ec971);
}

.elementor-icon{color:var(--text)}

/* =========================== */
/* padding par défaut pour les sections - tous les containers sont à 0 0 0 0 par défaut */
/* =========================== */
section {--container-default-padding-left:40px!important;--container-default-padding-right:40px!important;}
section section {--container-default-padding-left:0px!important;--container-default-padding-right:0px!important;}
@media (max-width: 1023.98px) {
  section {--container-default-padding-left:30px!important;--container-default-padding-right:30px!important;}
}

@media (max-width: 767.98px) {
  section {--container-default-padding-left:20px!important;--container-default-padding-right:20px!important;}
}

/* =========================== */
/* LISTES A PUCES */
/* =========================== */
/* changement de couleur des puces : ="%23000000  par ="%23CODEHEXA */

/* Pour ajout de nouvelle puce
 1- à partir d'un svg (https://www.svgrepo.com/) ou enregistré depuis AI -
    l'encoder pour une utilisation dans CSS    https://yoksel.github.io/url-encoder/
    Coller le code du SVG dans "Insert SVG:"
    Cliquer sur Single dans "External quotes: single /double"
    Récupérer le code dans "Ready for CSS:" sans background-image:

2- ci-dessous coller dans une variable

3- Mettre à jour background-image: var(--puce) ci-dessous dans dans .elementor-widget-text-editor li:before

*/
.elementor-kit-6{
  /* check */
  --puce-li: url('data:image/svg+xml,%3C%3Fxml version="1.0" encoding="utf-8"%3F%3E%3Csvg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cg id="check"%3E%3Cpath id="Vector" d="M6 12L10.2426 16.2426L18.727 7.75732" stroke="%23000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/%3E%3C/g%3E%3C/svg%3E');

  --puce-blanche-li: url('data:image/svg+xml,%3C%3Fxml version="1.0" encoding="utf-8"%3F%3E%3Csvg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cg id="check"%3E%3Cpath id="Vector" d="M6 12L10.2426 16.2426L18.727 7.75732" stroke="%23FFFFFF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/%3E%3C/g%3E%3C/svg%3E');
  /* square */
  /*
  --puce-li:url('data:image/svg+xml,%3C%3Fxml version="1.0" encoding="utf-8"%3F%3E%3Csvg fill="%23000000" viewBox="0 0 50 50" version="1.2" baseProfile="tiny" xmlns="http://www.w3.org/2000/svg" overflow="inherit"%3E%3Cpath d="M1 1h48v48h-48z"/%3E%3C/svg%3E');
  */
  /* circle */
  /*
  --puce-li:url('data:image/svg+xml,%3C%3Fxml version="1.0" encoding="utf-8"%3F%3E %3Csvg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"%3E%3Ctitle%3Ecircle%3C/title%3E%3Ccircle cx="12" cy="12" r="6" fill-rule="evenodd" fill="%23000000" /%3E%3C/svg%3E');
  */
  /* chevron */
  /*
  --puce-li:url('data:image/svg+xml,%3C%3Fxml version="1.0" encoding="utf-8"%3F%3E %3Csvg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M10 17L15 12L10 7" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" stroke="%23000000" /%3E%3C/svg%3E');
  */
}

/* liste à puces par défaut de l'éditeur html on coupe les puces par défaut */
.elementor-widget-text-editor ul, .elementor-widget-text-editor li{list-style:none;}
/* indentation de la liste à puce*/
.elementor-widget-text-editor ul{padding-inline-start: 1.5rem;margin-bottom: 10px;margin-top: -8px;}
/* indentation au retour à la ligne sous la puce   -  valeur = padding-right + font-size */
.elementor-widget-text-editor li{text-indent: 0px; margin-left: 0px;}
/* .elementor-widget-text-editor li{text-indent: -18px; margin-left: 18px;} */
.elementor-widget-text-editor li{position:relative;}
.elementor-widget-text-editor li:before{--puce-height:30px;width: 30px;height: var(--puce-height);content: "\f30b";position: absolute;left: -30px;/*top: 50%;transform: translate(0, calc( -0.5 * var(--puce-height) ));*/background-repeat: no-repeat;/*background-image: var(--puce-blanche-li)*/;font-family:"Font Awesome 5 Free";color:var(--primary);font-size:24px;top:-4px}

.troisdx-bgcolor .elementor-widget-text-editor li:before{/*background-image: var(--puce-li)*/}

/* =========================== */

/* =========================== */
/* FORMULAIRES  */
/* =========================== */
form{overflow-x:clip}
/* Correctifs suite pb avec module redirection for CF7 (+ wp-config.php) */
.wpcf7 .screen-reader-response{position: static;overflow: visible;clip: inherit;clip-path: inherit;height: auto;width: auto;}
.wpcf7 form.invalid .wpcf7-response-output{background-color:red;color:#fff;font-weight:normal;border-color:red}
/* fin correctifs */

/* FORMULAIRES : champs */
/* ==================*/
form.wpcf7-form{max-width:500px}
input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], .filter-wrapper :not(select), textarea  {color: var(--noir)!important;padding: 10px!important;background-color: #fff!important;border: 1px solid var(--e-global-color-text)!important;border-radius: 0px!important;}
.wpcf7-form [type=submit]{border: 2px solid var(--blanc)!important;border-radius: 4px;background-color: transparent!important;border-color: rgba(255, 255, 255, 0.4) !important;color: rgba(255, 255, 255, 0.5)!important}
.wpcf7-form  [type=submit]:hover, .wpcf7-form [type="submit"]:focus, .wpcf7-form  button:focus, .wpcf7-form  button:hover {color: var(--blanc)!important;border-color: var(--blanc)!important;text-decoration: none;}

/* FORMULAIRES : Messages après envoi + Champ non valide */
/* ==================*/
.wpcf7-not-valid-tip{color:red}
.wpcf7 .screen-reader-response {padding: 10px;margin-bottom: 10px;font-weight:bold}
.wpcf7 .screen-reader-response.invalid{background-color:red;color:#fff;font-weight:normal}
.wpcf7 .screen-reader-response.sent{background-color:green;color:#fff;font-weight:normal}
.wpcf7 .screen-reader-response ul{display:none}
.wpcf7 .screen-reader-response p{margin-bottom:5px}
.wpcf7 input[aria-invalid="true"], .wpcf7 textarea[aria-invalid="true"]{border-color:red!important}
/* =========================== */


/* HEADER */
/* =========================== */
/* Bouton Hamburger - ajout du terme MENU ( à modifier éventuellement) */
/* .wrapper-global-header .elementor-icon-wrapper:after{content:'MENU';font-size: 12px;position:absolute;right: -2px;bottom: -10px;}
*/

/* header scroll */
#header-scroll{ position:fixed;	top:0; right:0; z-index:100; transition: top 0.5s ease-in-out;}
.logged-in #header-scroll{top:32px}

/* couper les effet pour le sticky header */
.wrapper-logo.e-con ,.wrapper-logo.e-con .elementor-widget-container {transition-property: none;transition: background 0, border 0, box-shadow 0, transform 0;}

/* Couper le style d'Elementor pour le menu dropdown focus, hover, active*/
.elementor-nav-menu--dropdown .elementor-item.elementor-item-active, .elementor-nav-menu--dropdown .elementor-item.highlighted, .elementor-nav-menu--dropdown .elementor-item:focus, .elementor-nav-menu--dropdown .elementor-item:hover, .elementor-sub-item.elementor-item-active, .elementor-sub-item.highlighted, .elementor-sub-item:focus, .elementor-sub-item:hover {
    background-color: inherit!important;
    color: inherit!important;
}
.e--pointer-double-line .elementor-item::after, .e--pointer-double-line .elementor-item::before, .e--pointer-overline .elementor-item::after, .e--pointer-overline .elementor-item::before, .e--pointer-underline .elementor-item::after, .e--pointer-underline .elementor-item::before {height:0px!important;}
/* =========================== */

/* ******************************** */
/* STYLE PERSONNALISE GENERIQUE  */
/* ******************************** */

/* couper les effet pour le sticky header */
.wrapper-logo.e-con ,.wrapper-logo.e-con .elementor-widget-container {transition-property: none;transition: background 0, border 0, box-shadow 0, transform 0;}

/* LIENS */
/* =========================== */
.btn-pleine-largeur a{display:inline-block;width:100%}

/* underline des liens d'un couleur différente */
/*
a{text-decoration: none;box-shadow: inset 0 -1px 0 var(--secondary), 0 1px 0 var(--secondary)!important; /*transition: box-shadow .3s;*//*overflow: hidden;}
.lien-sans-style a, a.lien-sans-style, a.elementor-button, a.dialog-close-button,  a.btn, #wpadminbar a{/*border-bottom: none;*//*box-shadow:unset!important;}
header a, #elementor-popup-modal-1083 a, #elementor-popup-modal-3095 a, :not(p).elementor-heading-title a{/*border:none!important;*//*box-shadow:unset!important;}
a:hover, :not(p).elementor-heading-title a:hover{box-shadow: inset 0 -2px 0 var(--secondary), 0 3px 0 var(--secondary)!important;}
.troisdx-bgcolor-secondary a{box-shadow: inset 0 -1px 0 var(--primary), 0 1px 0 var(--primary)!important;}
.troisdx-bgcolor-secondary a:hover{box-shadow: inset 0 -2px 0 var(--primary), 0 3px 0 var(--primary)!important;}

.lien-sans-style a:hover, a.lien-sans-style:hover, a.elementor-button:hover, a.dialog-close-button:hover,  a.btn:hover, .troisdx-bgcolor-secondary .lien-sans-style a:hover, .troisdx-bgcolor-secondary a.lien-sans-style:hover, .troisdx-bgcolor-secondary a.elementor-button:hover, .troisdx-bgcolor-secondary a.dialog-close-button:hover,  .troisdx-bgcolor-secondary a.btn:hover, .troisdx-bgcolor-secondary a.elementor-button-link{background-color: transparent;box-shadow:unset!important;}
*/


/* couper le underline des liens  */
.lien-sans-style a, a.lien-sans-style{}
.lien-sans-style a:hover, a.lien-sans-style:hover{}
/*
.troisdx-bgcolor-primary, .troisdx-bgcolor-primary a, .troisdx-bgcolor-primary a:hover{color: var(--blanc);}
.troisdx-bgcolor-secondary, .troisdx-bgcolor-secondary a, .troisdx-bgcolor-secondary a:hover{color: var(--noir);}
*/

/* widget-troisdx-global-link-container "Si placé en 1er, au hover les liens dessous simulent un hover" */
.troisdx-bgcolor .elementor-widget-troisdx-global-link-container a{}
.elementor-widget-troisdx-global-link-container:hover ~ .elementor-widget-heading a, .elementor-widget-troisdx-global-link-container:hover ~ .elementor-widget-text-editor a{}
.elementor-widget-troisdx-global-link-container:hover ~ .elementor-widget-button a.elementor-button-link{}
.elementor-widget-troisdx-global-link-container:hover ~ .elementor-widget-button a.elementor-button-link:after{}

a.elementor-button{border-color: rgba(255, 255, 255, 0.4)!important;color: rgba(255, 255, 255, 0.5)!important}
a.elementor-button:hover{text-decoration:none!important;border-color:var(--blanc)!important;color:var(--blanc)!important}

/* =========================== */

/* Slider-SWIPER  Pagination */
/* =========================== */
/*
.swiper-pagination-bullets {bottom:40px!important}
.swiper-pagination-bullets .swiper-pagination-bullet{width:17px;height:17px;opacity:1!important;  border : 1px solid var(--principal) ;  padding : 4px ;  background-clip : content-box ;background-color:var(--blanc)!important}
.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active{background-color:var(--noir)!important}

@media (max-width: 767.98px) {
  .swiper-pagination-bullets {bottom:5px!important}
}
*/
/* =========================== */

/* Slider-SWIPER  Navigation */
/* =========================== */
/*
.elementor-swiper-button .cls-1{stroke: var(--noir)!important;}
*/
/* =========================== */


/* MENU OVERLAY */
/* =========================== */
.wrapper-menu-overlay, .container-menu-overlay{overflow-x: clip;overflow-y: clip;}
.contenu-menu-overlay{overflow-x:hidden;}
/* =========================== */




/* ******************************** */
/* STYLE PERSONNALISE MODELES */
/* ******************************** */
/* Logo */
.wrapper-logo{display:none}
.home .wrapper-logo{display:block}

@media (min-width: 768px) {
  .wrapper-logo-sticky{display:none}
}
@media (max-width: 767.98px) {
  .wrapper-logo-sticky{position:absolute;z-index:1500;width:150px;top:10px;left:50%;transform: translate(-50%,0);}
  .home .wrapper-logo-sticky{display:none}
  .sticky-header-active .wrapper-logo-sticky{display:block;width:88px;}
}

.home .sticky-header-active .wrapper-logo-sticky{display:block;width:84px;left:50%;transform: translate(-50%,0);}
/* logo page accueil */
@keyframes zindex {
    0% {
        z-index: 100;
    }
    100% {
        z-index: -1;
    }
}
.home .wrapper-logo{position:fixed;z-index:100;width:253px!important;left:50%!important;--height-screen:calc( 80vh - 70px ) ;top:calc( var(--height-screen)/2 )!important;transform: translate(-50%,0);}

.home .sticky-header-active .wrapper-logo {
  animation-name: zindex;
  top:-250px!important;
  transition: top 1s linear;
}

@keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
.home .wrapper-logo img{
  animation-duration: 2s;
  animation-fill-mode: both;}
.home .sticky-header-active .wrapper-logo img{
  animation-name: fadeOut;
}

@media (max-width: 767.98px) {
  .home .wrapper-logo{width:150px!important; left:50%!important;--height-screen:calc( 60vh - 70px );top:calc( var(--height-screen)/2 )!important;}
}

/* gestion structure page  (visuel à gauche) */
.col-g-visuel-une{background-size:auto 100%!important;z-index:100;height:100vh;position:fixed;top:0;left:0;padding-top:50px}
.col-d-contenu-une .wrapper-contenu-titre-page > .elementor-widget-heading > .elementor-widget-container{display:inline-block}
.col-d-contenu-une{--z-index:150!important}
@media (min-width: 768px) {
  .col-d-contenu-une{margin-left: calc(33% - 13px);  min-height: calc(100vh - 271px);}
  .sticky-active .col-d-contenu-une{--z-index:1!important}
}
@media (max-width: 767.98px) {
  .col-d-contenu-une{--z-index:1!important}
}

/* HEADER */
@media (min-width: 768px) {
  header.elementor.elementor-location-header{margin-left:33%;z-index:200;position:relative}
  .home header.elementor.elementor-location-header{margin-left:0;z-index:200;position:relative}
}
/* MENU */
li.menu-item:hover{background-color:var(--primary)}
li.menu-item:hover a{text-decoration:initial!important}
ul.elementor-nav-menu--dropdown a, ul.elementor-nav-menu--dropdown a:focus, ul.elementor-nav-menu--dropdown a:hover{border-inline-start:28px solid transparent}

/*  listes catégories et réalisations */
.wrapper_link_container{position:absolute;z-index:9;left:0;top:0;width:100%;height:100%;}
.wrapper_link_container .link_container{width:100%;height:100%;}
.link_container a{display:block;width:100%;height:100%}
.link_container a, .link_container a:hover, .link_container a:focus, .link_container a:active{
  text-decoration:none!important;  text-decoration-line: none!important;  text-decoration-thickness: unset!important;  text-decoration-style: unset!important;  text-decoration-color: unset!important;  box-shadow:unset!important;}

.wrapper-liste-moulins{position:relative;}
.wrapper-liste-moulins h2{text-transform:initial;color:var(--primary);display: flex;flex-direction: column;justify-content:flex-end;align-items:center;font-family:"Oswald";padding-left:10px;padding-right:10px;text-align:center}
.liste-cat-moulin,.liste-items-moulin{display: flex;flex-direction: row;justify-content:flex-start;align-items:center;align-content:center;gap: 10px 10px;flex-wrap: wrap;}
.cat-moulin,.item-moulin{position:relative;z-index:10;display: flex;flex-direction: column;justify-content:center;align-items:flex-start;height:100%;width:33%;max-width:300px;min-width:300px;cursor:pointer;}
.cat-moulin-titre, .item-moulin-titre{min-height:100px}
.wrapper_img_moulin{position:relative;z-index: 6;}
.image-hover {display: none;background-color: rgba(108,23,0,0.7);background-image: url(/wp-content/uploads/croix.png);background-repeat: no-repeat;background-position: 50% 50%;position: absolute;z-index: 5;left: 0;top: 0;width: 100%;height: 100%;}
.cat-moulin:hover .image-hover,.item-moulin:hover .image-hover{display:block}
.image-hover .text {position: absolute;z-index: 4;left: 0%;bottom: 20px;width: 100%;}
.image-hover .text p {color: var(--blanc);width: 80%;margin: auto;line-height: 1.1;text-transform: uppercase;text-align: center;}
.wrapper_img_moulin{max-height:300px;overflow:hidden}
.item-moulin-titre{display:none!important}

@media (max-width: 767.98px) {
  .liste-cat-moulin,.liste-items-moulin{flex-direction: column;gap: 30px;}
  .cat-moulin,.item-moulin{width:100%;}
  .cat-moulin-titre, .item-moulin-titre{min-height:inherit}
}


.boutonRetour {margin-top:20px;}
.boutonRetour a{border: solid 1px var(--primary);padding:6px 12px;text-transform: uppercase;}
.boutonRetour:hover a{color: var(--blanc)!important;border-color: var(--blanc);text-decoration:none}




.elementor-slideshow--ui-hidden .elementor-swiper-button-next, .elementor-slideshow--ui-hidden .elementor-swiper-button-prev{opacity:1!important}

.elementor-lightbox .swiper .elementor-swiper-button{
color: hsla(0,0%,93%,.9);
cursor: pointer;
display: inline-flex;
font-size: 25px;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 1;
}

.conteneur-texte{max-width:1000px}
.lien-or a, .lien-or a:hover{color:var(--principal)!important}


/* Modèle 102 fleche – nomdumodèle */
/* =========================== */
.m102bis-element .elementor-heading-title{padding-inline-start: 30px;}
.m102bis-element .elementor-heading-title:before{--puce-height:30px;width: 30px;height: var(--puce-height);content: "\f30b";position: absolute;left: 0px;background-repeat: no-repeat;font-family:"Font Awesome 5 Free";color:var(--primary);font-size:24px;top:3px}
.section-interne-max .m102bis-element .elementor-heading-title:before{color:var(--noir);}
/* =========================== */


/* Modèle XXXX – nomdumodèle */
/* =========================== */

/* =========================== */




/* =========================== */
/* MEDIA QUERY  */
/* =========================== */
/* EN-DESSOUS de ... */

@media (max-width: 1119.98px) {

}

@media (max-width: 1023.98px) {

}

@media (max-width: 767.98px) {

}
