

/* html{
  font-size: 18px;
}
@media (min-width: 2000px){
  :root, html { font-size: 24px; }
} */

/* Titles */
/* body{
  font-family: 'Minion Pro';
} */

.mce-toolbar .mce-listbox button { width: 100px !important; }
.mce-toolbar .mce-listbox[aria-label="Font Sizes"] button{ width: 60px !important; }


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

.h1, h1 {
  font-size: calc(2rem + 1.5vw);
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  font-weight: 700 !important;
  text-transform: uppercase;
  color:inherit;
  text-wrap: balance;
}

@media (min-width:1200px){
  .titre-s{ font-size:1.8rem }
  .titre-xl{ font-size:2.8rem }
  .titre-xxl{ font-size:3.4rem }
}


.button-xl{ --button-padding: 22px 40px 25px 38px; font-weight: bold !important;}

.dispositifs{ list-style: none; padding: 0; display: flex; margin: 1rem 0 0 0; }
.dispositifs li{ margin-right: 10px; position: relative; padding: 0 !important;}
.dispositifs li:before{ 
    content: "" !important;
    display: inline-block;
    background: #fff no-repeat center url(../images/info2.svg);
    width: 18px;
    left: initial !important;
    height: 18px;
    position: absolute !important;
    top: 0;
    right: 0 !important;
    z-index: 4;
    background-size: 12px;
    border-radius: 50%;
    pointer-events: none;
    box-shadow: 1px 0px 5px rgba(0, 0, 0, .1);
 }
.dispositifs li div{ 
display: flex;
justify-content: center;
align-items: center;
color: #fff;
text-transform: uppercase;
border-radius: 50%;
width: 60px;
height: 60px;
padding: 10px;
text-align: center;
font-size: 0.7rem;
line-height: 0.7rem;
font-weight: bold;
}

/* Tooltop */
[data-tooltip] { position: relative; z-index: 2; cursor: pointer;  }
[data-tooltip]:before,
[data-tooltip]:after { visibility: hidden; opacity: 0; pointer-events: none; transition: all 300ms ease; transform: translateX(-50%) translateY(-10px); }

[data-tooltip]:before { content: attr(data-tooltip); box-shadow: 1px 1px 10px rgba(0, 0, 0, .2); position: absolute; bottom: 110%; left: 50%; margin-bottom: 5px; display: inline-block; min-width: 200px; padding: 10px; border-radius: 3px; background-color: #fff; color: #000; text-align: center; font-size: 11px; line-height: 1.2; text-transform: none; font-weight: normal; }
[data-tooltip]:after { position: absolute; bottom:111%; left: 50%; width: 0; border-top: 5px solid #fff; border-right: 5px solid transparent; border-left: 5px solid transparent; content: " "; font-size: 0; line-height: 0; }

[data-tooltip]:hover:before,
[data-tooltip]:hover:after { visibility: visible; opacity: 1; transform: translateX(-50%) translateY(0px); }


.surtitre {
    display: inline-block;
    border: 1px solid currentColor;
    padding: 2px 10px 3px 10px;
    text-transform: uppercase;
    font-size: 0.8rem;
    margin: 0;
}

.barlow-condensed-light {
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.barlow-condensed-regular {
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.align-top { vertical-align: top!important }
.align-middle { vertical-align: middle!important }
.align-bottom { vertical-align: bottom!important }

.align-items-start { align-items: flex-start!important }
.align-items-end { align-items: flex-end!important }
.align-items-center { align-items: center!important }

.bigger { font-size:larger }

.border-primary{ border:2px solid var(--primary) }
.border-secondary{ border:2px solid var(--secondary) }
.border-radius { border-radius:var(--border-radius) }
.border-none { border:none !important }

.clamp{ overflow:hidden; display:-webkit-box; text-overflow:ellipsis; -webkit-box-orient:vertical }
.clamp p{ margin:0; }
.clamp.clamp-1{ max-height:calc(1 * var(--line-height)); -webkit-line-clamp:1 }
.clamp.clamp-2{ max-height:calc(2 * var(--line-height)); -webkit-line-clamp:2 }
.clamp.clamp-3{ max-height:calc(3 * var(--line-height)); -webkit-line-clamp:3 }
.clamp.clamp-4{ max-height:calc(4 * var(--line-height)); -webkit-line-clamp:4 }

.font-primary{ font-family:var(--font-primary) }
.font-secondary{ font-family:var(--font-secondary) }

.fw-lighter { font-weight: lighter!important }
.fw-light { font-weight: 300!important }
.fw-normal { font-weight: 400!important }
.fw-medium { font-weight: 500!important }
.fw-semibold { font-weight: 600!important }
.fw-bold { font-weight: 700!important }
.fw-bolder { font-weight: bolder!important }

.g-0{ gap:0 !important }
.g-1{ gap:1rem !important }
.g-2{ gap:2rem !important }
.g-3{ gap:3rem !important }

.m-0{ margin:0 !important }
.m-auto{ margin: auto!important }

.mb-0{ margin-bottom:0 !important }
.mb-1{ margin-bottom:1rem !important }
.mb-2{ margin-bottom:2rem !important }
.mb-3{ margin-bottom:3rem !important }
.mb-4{ margin-bottom:4rem !important }
.mb-5{ margin-bottom:5rem !important }

.mt-0{ margin-top:0 !important }
.mt-1{ margin-top:1rem !important }
.mt-2{ margin-top:2rem !important }
.mt-3{ margin-top:3rem !important }
.mt-4{ margin-top:4rem !important }
.mt-5{ margin-top:5rem !important }

.d-inline { display: inline!important }
.d-inline-block { display: inline-block!important }
.d-inline-flex { display: inline-flex!important }
.d-block { display: block!important }
.d-flex { display: flex!important }
.d-none { display: none!important }

.h-100{ height:100% !important }
.h-auto{ height:auto !important }

.img-circle { border-radius:50% }

.overflow-visible{ overflow:visible !important }
.overflow-hidden { overflow:visible !important }
.overflow-scroll { overflow:scroll  !important }

.lead { font-size:1.25rem; font-weight:300 }

.lh-1 { line-height: 1!important }
.lh-sm { line-height: 1.25!important }
.lh-base { line-height: 1.5!important }
.lh-lg { line-height: 2!important }

.p-0{ padding:0 !important }
.p-1{ padding:1rem !important }
.p-2{ padding:2rem !important }

.pt-0{ padding-top:0 !important }
.pt-1{ padding-top:1rem !important }
.pt-2{ padding-top:2rem !important }
.pt-3{ padding-top:3rem !important }
.pt-4{ padding-top:4rem !important }
.pt-5{ padding-top:5rem !important }

.pb-0{ padding-bottom:0 !important }
.pb-1{ padding-bottom:1rem !important }
.pb-2{ padding-bottom:2rem !important }
.pb-3{ padding-bottom:3rem !important }
.pb-4{ padding-bottom:4rem !important }
.pb-5{ padding-bottom:5rem !important }

.smaller { font-size:smaller }

.sr-only { border: 0; clip: rect(0, 0, 0, 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.sr-only-focusable:active,
.sr-only-focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }

.td-none { text-decoration: none!important }
.td-underline { text-decoration: underline!important }
.td-line-through { text-decoration: line-through!important }

.text-lowercase { text-transform: lowercase!important }
.text-uppercase { text-transform: uppercase!important }
.text-capitalize { text-transform: capitalize!important }

.text-left{ text-align:left }
.text-center{ text-align:center }
.text-right{ text-align:right }

.text-wrap { white-space: normal!important }
.text-nowrap { white-space: nowrap!important }
.text-break { word-wrap: break-word!important; word-break: break-word!important }

.z-n1 { z-index:-1!important }
.z-0 { z-index: 0!important }
.z-1 { z-index: 1!important }
.z-2 { z-index: 2!important }
.z-3 { z-index: 3!important }

.zoom-img:hover img,
.zoom-img:focus img{ transform:scale(1.05) }


.format-video:before{ content:""; pointer-events: none; z-index: 3; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.4) }
.format-video:after{ content:""; pointer-events: none; z-index:4; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background:url(../images/play.svg) no-repeat center center }



/* Colors text ---------------------------------------------------------------*/
.color-primary{ color:var(--primary) }
.color-secondary{ color:var(--secondary) }
.color-tertiary{ color:var(--tertiary) }


/* Icons ---------------------------------------------------------------------*/

i.icon { width:2em; height:2em; font-size:1rem; background:var(--bg-darker); display:inline-flex; align-items:center; justify-content:center; max-width:initial; vertical-align:middle }

/* Icons Sizes */
i.medium { font-size:2rem }
i.large { font-size:2.8rem }

/* Icons shapes */
i.square  { border-radius:0px }
i.rounded { border-radius:4px }
i.circle  { border-radius:50% }

/* Colors */
i.primary { color:var(--primary) }

i.reverse,
i.primary.reverse { background:var(--primary); color:#fff }

i.border { background:transparent; border:var(--border) }
i.border-primary { background:transparent; border:1px solid var(--primary) }

.bg-primary i:not([class*="color-"]).primary{ color:var(--body-color) }
.bg-primary i:not([class*="color-"]).border-primary { border-color:var(--body-color) }
.bg-primary i:not([class*="color-"]).reverse { background:var(--black); color:#fff }
.bg-primary i:not([class*="color-"]).primary.reverse { background:#fff; color:var(--primary) }

.bg-primary i[class*="color-"].reverse:not(.primary) { color:var(--primary) }

.bg-dark i.reverse { color:var(--black) }
.bg-dark i.reverse[class*="color-"]:not(.primary) { color:var(--primary) }

/* Backgrounds  ------------------------------------------------------------- */

.bg-grey{ background:var(--grey) }
.bg-white{ background:var(--white) }
.bg-light{ background:var(--light) }
.bg-black{ background:var(--black) }
.bg-dark{ background:var(--dark) }
.bg-primary{ background:var(--primary) }
.bg-secondary{ background:var(--secondary) }
.bg-tertiary{ background:var(--tertiary) }
.bg-body { background-color:var(--body-bg) }
.bg-lighter{ background:var(--bg-lighter) }
.bg-darker{ background:var(--bg-darker) }
.bg-none{ background:none }
.bg-transparent{ background:transparent }

.has-primary-background-color{ background-color:var(--primary) !important }
.has-secondary-background-color{ background-color:var(--secondary) !important }
.has-tertiary-background-color{ background-color:var(--tertiary) !important }
.has-light-background-color{ background-color:var(--light) !important }
.has-dark-background-color{ background-color:var(--dark) !important }

.has-primary-to-secondary-gradient-background { background:linear-gradient(115deg, var(--primary) 0%, var(--secondary) 100%) }
.has-primary-to-tertiary-gradient-background { background:linear-gradient(115deg, var(--primary) 0%, var(--tertiary) 100%) }


/* Texts color */
.has-primary-color{ color:var(--primary) !important }
.has-secondary-color{ color:var(--secondary) !important }
.has-tertiary-color{ color:var(--tertiary) !important }
.has-light-color{ color:var(--light) !important }
.has-dark-color{ color:var(--dark) !important }
.has-white-color{ color:var(--white) !important }
.has-black-color{ color:var(--black) !important }

/* Grid custom -------------------------------------------------------------- */
.grid-container {container-type: inline-size; }
.grid{ --columns:3; display: grid; grid-template-columns:repeat(var(--columns), minmax(100px, 1fr)); grid-gap:2rem }
.grid > div:empty{ display:none }
.grid.grid-1{ --columns:1 }
.grid.grid-2{ --columns:2 }
.grid.grid-3{ --columns:3 }
.grid.grid-4{ --columns:4 }
.grid.grid-5{ --columns:5 }
@container (width <= 1250px) {
  .front .grid.grid-4,
  .front .grid.grid-5{ --columns:3 }
}
@container (width <= 820px) {
  .front .grid.grid-5,
  .front .grid.grid-4,
  .front .grid.grid-3{ --columns:2 }
}
@container (width <= 650px) {
  .front .grid.grid-5,
  .front .grid.grid-4,
  .front .grid.grid-3,
  .front .grid.grid-2{ --columns:1 }
}

/* Grid flex ---------------------------------------------------------------- */
.grid-flex > div{ margin-bottom:3rem }
.grid-flex > div:last-of-type{ margin-bottom:0 }
@media (min-width:782px) {
  .grid-flex{ display:flex }
  .grid-flex > div{ flex:1; margin:0 1rem }
  .grid-flex > div:first-of-type{ margin-left:0 }
  .grid-flex > div:last-of-type{ margin-right:0 }
}



/* Layout ------------------------------------------------------------------- */
@media (max-width:589px){
  .hide-xs{ display:none }
  /* xs reverse */
  .is-style-columns-xs-reverse,
  .xs-reverse{ flex-direction:column-reverse; flex-wrap:initial !important }

  .text-xs-left{ text-align:left }
  .text-xs-center{ text-align:center }
  .text-xs-right{ text-align:right }
}
@media (min-width:590px) and (max-width:781px){
  .hide-sm{ display:none }
  /* sm row */
  .sm-row{ flex-direction: row; flex-wrap: nowrap !important; }
  .sm-row.is-style-columns-sm-reverse{ flex-direction: row-reverse; }
  /* sm reverse */
  .sm-reverse{ flex-direction: column-reverse; flex-wrap: initial !important; gap:30px }
  .sm-reverse.sm-row{ flex-direction:row-reverse }
  .is-style-columns-sm-reverse{ flex-direction:column-reverse; flex-wrap: initial !important; gap: 30px; }
  .is-style-columns-sm-reverse.sm-row{ flex-direction:row-reverse; }
  .is-style-columns-sm-reverse.sm-row > .wp-block-column{ margin-left:0; margin-right:0 }
}
@media (min-width:782px) and (max-width:991px){
  /* md column */
  .md-column{ flex-direction:column; flex-wrap:nowrap }
  .md-column .wp-block-column{ margin-left:0; margin-right:0 }
  .is-style-columns-md-column{ flex-direction:column; flex-wrap:nowrap }
  .is-style-columns-md-column .wp-block-column{ margin-left:0 !important; margin-right:0 !important }
}


/* Form 7 ------------------------------------------------------------------- */
.wpcf7 label{ display:block; font-weight:600 }
.wpcf7 p:last-of-type{ margin-bottom:0 }
.wpcf7 .wpcf7-acceptance input { margin-right:10px }
.wpcf7 .wpcf7-acceptance label { font-weight:normal; font-size:.95rem }
.wpcf7 .wpcf7-not-valid-tip { font-size:.9rem }
.wpcf7 .wpcf7-spinner { display: block; text-align: center; margin: 1rem auto 0 auto; }

/* Form Contact simple */
.contact-form-simple{ display: grid; grid-template-columns: 1fr 1fr; grid-gap:0 30px }
.contact-form-simple p:nth-of-type(n+3){ grid-column: 1 / span 2 }
@media (max-width:781px){
  .contact-form-simple{ display:block }
}

/* Image formats ------------------------------------------------------------ */
.format{ display:block; position:relative; overflow:hidden }

.format iframe,
.format object,
.format embed,
.format img{ position:absolute; top:0; left:0; width:100%; height:100%; }
.format img{ object-fit:cover; transition:all 200ms ease }

.format-3-1{ padding-bottom:33.33% }
.format-16-9{padding-bottom:56.25% }
.format-4-3{ padding-bottom:75% }
.format-1-1{ padding-bottom:100% }
.format-6-7{ padding-bottom:116.66% }
.format-3-4{ padding-bottom:133.33% }

.format .components-resizable-box__container {
  position: static !important;
}


/* Social networks ---------------------------------------------------------- */
.social-networks{ margin:0; padding:0; list-style:none; font-size:1rem; display:block }
.social-networks li{ display:inline-block; margin:2px; transition:all 200ms ease }
.social-networks li:hover{ transform:rotate(360deg) }
.social-networks li a{ display: inline-flex; width: 30px; height: 30px; background: var(--primary); padding: 7px; border-radius: var(--border-radius); text-decoration:none; justify-content: center; }
.social-networks li a svg{ fill:white }
.social-networks li.network-facebook { --primary:#4c66a4 }
.social-networks li.network-twitter{ --primary:#15b4c9 }
.social-networks li.network-linkedin{ --primary:#006599 }
.social-networks li.network-instagram{ --primary:#bc2a8d }
.social-networks li.network-skype{ --primary:#40beee }
.social-networks li.network-youtube{ --primary:#cc2423 }
.social-networks li.network-twitch { --primary:#9147ff }
.social-networks li.network-steam { --primary:#171a21 }
.social-networks li.network-pinterest { --primary:#bd081c }
.social-networks li.network-whatsapp { --primary:#4CAF50 }
.social-networks li.network-email { --primary:#171a21 }
.social-networks li.network-url { --primary:#171a21 }
.social-networks li.network-myspace { --primary:#003398 }
.social-networks li.network-soundcloud { --primary:#F75219 }
.social-networks li.network-wikipedia { --primary:#000000 }
.social-networks li.network-tumblr { --primary:#34526F }
.header-top .social-networks li{ padding:0; border-top:none }


.is-style-chapeau{ font-size:1.25rem; line-height: 2.25rem; font-weight:600 }

.pt-blog { margin:0 0 1rem 0; position: relative }
.pt-blog .pt-blog-image{ margin:0 0 1.7rem 0 }
.pt-blog .pt-blog-description{ margin:0 0 1.5rem 0 }

/* FAQ */
.pt-faq-toggle { position:relative; display:block; border-bottom:var(--border) }
.pt-faq-toggle .pt-faq-title{ position: relative; display:block; padding:22px 50px 22px 0; text-decoration:none }
.pt-faq-toggle .pt-faq-title h3{ margin:0; font-size:1.2rem; font-weight:600; }
.pt-faq-toggle .pt-faq-title svg { width:16px; fill:currentColor; font-size: 1.5rem; position: absolute; top: 0; right:20px; height: 100%; display: flex; align-items: center; justify-content: center; transition:all 200ms ease }
.pt-faq-toggle .pt-faq-title.opened svg { transform:rotate(180deg) }
.pt-faq-toggle .pt-faq-description{ display:none; margin-top:-10px }

/* Button */
.wp-block-button__link { 
  background:var(--primary); 
  border:2px solid var(--primary);
  color:#fff; 
  padding:var(--button-padding); 
  text-decoration:none; 
  font-size:1rem; 
  font-weight:500; 
  border-radius:var(--border-radius); 
  position: relative; 
  overflow: hidden!important; 
  transition: all 200ms ease-in-out;   
  z-index:1; 
  display: inline-block;
  font-family: var(--font-primary);
  text-transform: none;
}
.wp-block-button__link:not(.button-big-tel):is(:hover, :focus){ color: var(--primary); text-decoration: none;  }
.wp-block-button__link::before { content: ''; height:100%;; width: 100%; display: block;  position: absolute; left: 0; opacity: 0; bottom: 0; background: #fff; z-index: -1; transform: scale(0);  transition: all 200ms cubic-bezier(0.77, 0, 0.175, 1);  } 
.wp-block-button__link:not(.button-big-tel):hover::before,
.wp-block-button__link:not(.button-big-tel):focus::before{ opacity:1; transform: scale(1);  }
.wp-block-button__link.has-secondary-background-color{  border-color:var(--secondary) }
.wp-block-button__link.has-tertiary-background-color{ border-color:var(--tertiary) }
.wp-block-button__link.has-light-background-color{ border-color:var(--light); color: var(--gray-500) !important; }
.wp-block-button__link.has-dark-background-color{ border-color:var(--dark) }
.wp-block-button__link.has-secondary-background-color:is(:hover, :focus){ color:var(--secondary) }
.wp-block-button__link.has-tertiary-background-color:is(:hover, :focus){ color:var(--tertiary) }
.wp-block-button__link.has-light-background-color:is(:hover, :focus){ color:var(--light) }
.wp-block-button__link.has-dark-background-color:is(:hover, :focus){ color:var(--dark) }
.wp-block-button__link[style*="background-color"]{ border-color:transparent }  /* Custom color */
.wp-block-button__link svg{ fill:currentColor }  /* Custom color */

.is-style-outline { color:var(--primary) }
.is-style-outline .wp-block-button__link{ background:transparent }
.is-style-outline .wp-block-button__link::before { background:var(--primary)  } 
.is-style-outline .wp-block-button__link:not(.button-big-tel):is(:hover, :focus) { color: #fff !important; border-color:var(--primary) } 
.is-style-outline .wp-block-button__link.has-secondary-color{ border-color:var(--secondary) }
.is-style-outline .wp-block-button__link.has-tertiary-color{ border-color:var(--tertiary) }
.is-style-outline .wp-block-button__link.has-light-color{  border-color:var(--light) }
.is-style-outline .wp-block-button__link.has-dark-color{ border-color:var(--dark) }
.is-style-outline .wp-block-button__link.has-secondary-color::before{ background:var(--secondary);  }
.is-style-outline .wp-block-button__link.has-tertiary-color::before{ background:var(--tertiary); }
.is-style-outline .wp-block-button__link.has-light-color::before{ background:var(--light);  }
.is-style-outline .wp-block-button__link.has-dark-color::before{ background:var(--dark); }
.is-style-outline .wp-block-button__link[style*="color"]:is(:hover, :focus){ color:var(--dark) !important; }
.is-style-outline .wp-block-button__link[style*="color"]::before{ background:transparent }

.wpcf7 input[type="submit"]{
    background: var(--primary);
    border: none;
    color: #fff;
    padding: var(--button-padding);
    text-decoration: none;
    font-family: var(--font-primary);
    font-size: 1rem;
    text-transform: none;
    font-weight: 500;
    border-radius: var(--border-radius);
    position: relative;
    overflow: hidden !important;
    transition: all 200ms ease-in-out;
    z-index: 1;
    min-width: 200px;
}
.wpcf7 input[type="submit"]:is(:hover, :focus){
    background: #fff;
    color: var(--primary);
}


.chapeau{ font-size:1.25rem; line-height: 2.25rem; }

/* Lenis smoothscroll */ 
html.lenis, html.lenis body { height: auto; }
.lenis:not(.lenis-autoToggle).lenis-stopped { overflow: clip; }
.lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }
.lenis.lenis-smooth iframe { pointer-events: none; }
.lenis.lenis-autoToggle { transition-property: overflow; transition-duration: 1ms; transition-behavior: allow-discrete; }

.text-highlighted{ background: var(--primary); color: #fff;}

.front .text-highlighted {
  position: relative;
  font-weight: 500;
  display: inline-flex;
  padding: 0 5px;
  background: transparent;
  color: inherit;
}
.front .text-highlighted::after {
  transition: clip-path 1s ease;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 0 5px;
  content: attr(data-text);
  color: #fff;
  background-color: var(--primary);
  clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
  pointer-events: none;
}
.front .text-highlighted.animated::after {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.front .bg-primary .text-highlighted::after { background-color: var(--secondary); }

.front .bg-primary .wp-block-button__link {
    background: var(--secondary);
    border: 2px solid var(--secondary);
}
.front .bg-primary .wpcf7 input[type="submit"]{
    background: var(--secondary);
}

.contenu-centre{ text-align: center; }
.contenu-droite{ text-align: right; }

.container-medium { max-width: 750px; }
.contenu-centre .container-medium{ margin-left: auto; margin-right:auto; }
.contenu-droite .container-medium{ text-align: right; margin-left: auto; }

.contenu-droite .slick-prev { right: initial; left:0px }
.contenu-droite .slick-next { right: initial; left:40px }

@media (min-width: 720px) {
  .media-gauche .grid > div:first-of-type{ order: 1 }
}

.grecaptcha-badge{ display: none; }

.wp-block-group.bg-primary + .wp-block-group.bg-primary{ margin-top:1px; }


.front input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), 
.front select, 
.front textarea { background-color: transparent; border: none; border-bottom: 1px solid #000; border-radius: 0; padding: 12px 0px; }

.front :is(.texte-claire) :is(input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), select, textarea) { color: var(--body-color-light); border-bottom: 1px solid var(--body-color-light) }

.front :is(.texte-sombre) ::-webkit-input-placeholder { color:var(--body-color) !important; }
.front :is(.texte-sombre) :-moz-placeholder { color:var(--body-color) !important; opacity:  1; }
.front :is(.texte-sombre) ::-moz-placeholder { color:var(--body-color) !important; opacity:  1; }
.front :is(.texte-sombre) :-ms-input-placeholder { color:var(--body-color) !important; }
.front :is(.texte-sombre) ::-ms-input-placeholder { color:var(--body-color) !important; }
.front :is(.texte-sombre) ::placeholder { color:var(--body-color) !important; }

.front :is(.texte-claire) ::-webkit-input-placeholder { color:var(--body-color-light) !important; }
.front :is(.texte-claire) :-moz-placeholder { color:var(--body-color-light) !important; opacity:  1; }
.front :is(.texte-claire) ::-moz-placeholder { color:var(--body-color-light) !important; opacity:  1; }
.front :is(.texte-claire) :-ms-input-placeholder { color:var(--body-color-light) !important; }
.front :is(.texte-claire) ::-ms-input-placeholder { color:var(--body-color-light) !important; }
.front :is(.texte-claire) ::placeholder { color:var(--body-color-light) !important; }


.overlay-sombre,
.overlay-clair{ position: relative; }

.overlay-sombre:before,
.overlay-clair:before{ background:rgba(0, 0, 0, .7); content:''; display:block; position:absolute; top:0; left:0; width:100%; height:100%; z-index:1 }

.overlay-sombre > *:not(img),
.overlay-clair > *:not(img){ position:relative; z-index:2 }

.overlay-clair:before{ background:rgba(255, 255, 255, .7) }

.visually-hidden {
  position: absolute;
  width: 1px; 
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden; 
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}


@media (max-width: 781px) {
  .grid.grid-2-sm {
      --columns: 2 !important;
  }
}


ul ::marker, ol ::marker {
  color: #000;
}
b, strong{ font-weight:700  }

span.ico{ color: transparent; width: 50px; height: 50px; border-radius: 50%; background: var(--primary) no-repeat center center; background-size: 30px; display: inline-block; vertical-align: middle; margin: 0 10px 0 0; }
span.ico.ico-calendar{ background-image: url(../images/calendar.svg);}
span.ico.ico-pin{ background-image: url(../images/pin.svg); } 
@media (max-width:767px) {
  .blibli{ padding: 0 }
}


/* MODELE 2 */
body.modele-2 .btn-go-top { display: none !important; }
body.modele-2 .layout-wrapper { position: relative;  }
body.modele-2 .layout-wrapper > header { top:20px; border:none; position: absolute !important;  padding-left: 7svw !important; padding-right: 4svw !important; }
body.modele-2 .slider .slide .slide-media { min-height: 105svh; }
body.modele-2 .hauteur-normale .slider .slide .slide-media { min-height: 65svh; }
body.modele-2 .nav-contact-mobile { position: fixed; bottom: 0; left: 0; width: 100%; display: flex; gap: 10px; z-index: 22; padding: 10px; }
body.modele-2 .nav-contact-mobile .btn-mail{ width: 100%; }
body.modele-2 .nav-contact-mobile .btn-tel{ padding-left: 0; padding-right: 0; display: flex; align-items: center; justify-content: center; flex: 0 0 55px;}
body.modele-2 .nav-contact-mobile .btn-tel span{ display: none; }
body.modele-2 .nav-contact-mobile .btn-tel svg{ height: 29px; width: 22px; }
@media (min-width:1200px) {
  body.modele-2 .nav-contact-mobile { display: none; }
  body.modele-2 .layout-wrapper { width: 67%; margin-left: 0 }
  body.modele-2.front .alignwide { width: 100%; padding-left: 7svw !important; padding-right: 4svw !important; }
}
@media (max-width: 1199px) {
  body.modele-2 .header-logo img { max-height: 70px; }
  body.modele-2 .layout-wrapper { padding-bottom: 70px; }
}

body.modele-2 .sidebar-contact { position: fixed;  top: 0; right: 0; width:100%; height: 100%; z-index:555; overflow: auto; transform: translateX(100%); transition:all 500ms ease }
body.modele-2 .sidebar-contact > .section { min-height: 100% }
body.modele-2 .sidebar-contact h2{ font-size:20px }
body.modele-2 .sidebar-contact .btn-close-mail{ position: absolute; top: 20px; right: 20px; padding: 0; width: 30px; height: 30px; display: flex; align-items: center; justify-content: center; z-index:999; }
html.sidebar-opened{ overflow: hidden; }
html.sidebar-opened body.modele-2 .sidebar-contact { transform: translateX(0) }
body.modele-2 .sidebar-contact .alignwide { padding-left: 2rem !important; padding-right: 2rem !important; }
body.modele-2 .sidebar-contact .alignwide .container { padding: 3rem 0; }
body.modele-2 .sidebar-contact .wpcf7 input[type="submit"] { width: 100%; }
@media (min-width:1200px) {
  body.modele-2 .sidebar-contact { width: 33%; box-shadow: -1px -1px 23px rgba(0, 0, 0, .1); transform: none; }
  body.modele-2 .sidebar-contact .btn-close-mail{ display: none; }
}
@media (max-width: 1600px) {
  body.modele-2 .layout-content > div:first-of-type.hauteur-normale .slider .slide .slide-media { min-height: 105svh; }
}

.footer-logos{ display: flex; gap:20px; list-style: none; padding: 0; flex-wrap: wrap; }
.footer-logos li{  }
.footer-logos li img { max-height:100px; width: auto; }

.section { position: relative; }
.section-bg{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index:0}
.section-bg > img{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit:cover }
.section-bg + *{ position:relative; z-index: 2; }

a.button-big-tel{ text-decoration: none;
  transition: all 300ms ease;}
a.button-big-tel:is(:hover, :focus){ transform: translateY(-4px); box-shadow: 0px 7px 10px rgba(0, 0, 0, .1);}
.button-big-tel span.tel-hover {
  opacity: 0;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  display: inline-block;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  transition: all 300ms ease;
  font-size:1.65rem;
  font-weight: bold;
}
.button-big-tel span.tel-hover span { font-size:.8rem; font-weight: normal; }
.button-big-tel.show span.tel-hover { opacity: 1; }
.button-big-tel.show > *:not(.tel-hover) { opacity: 0; }