/*-----------------*/
/* LOADER */
/*-----------------*/

  .loaderText
  {
      color: var(--white);
      font-family: var(--font-bold);
  }

  #loader-wrapper .counter {
    text-align: center;
  }
  #loader-wrapper .counter p {
    font-size: 40px;
    font-weight: 100;
    color: var(--primary-color);
    margin-bottom: 20px;
  }
  #loader-wrapper .counter h2 {
    color: white;
    text-align: center;
    font-size: 60px;
    margin-top: -10px;
  }
  #loader-wrapper .counter hr {
    background: var(--primary-color);
    border: none;
    height: 1px;
  }
  #loader-wrapper .counter {
    position: relative;
  }
  #loader-wrapper .counter h1.abs {
    position: absolute;
    top: 0;
    width: 100%;
  }
  #loader-wrapper .counter .color {
    width: 0px;
    overflow: hidden;
    color: var(--primary-color);
  }
 /*-----------------*/
 /* ELEMENTS */
/*-----------------*/
a
{
    display: inline-block;
}
.tc_content a:not([class*="button"])
{
    display: inline;
}
.thumbnail_slider a
{
    height: 100%;
    width: 100%;
}
/*----------------LINKTURN------------------------*/
.linkTurn {
    --size: 11rem;
    width: var(--size);
    height: var(--size);
    display: inline-block;
    font-size: 1.05em;
    font-family: var(--font-bold);
    text-transform: uppercase;
    letter-spacing: 0.15em;
    word-spacing: 0.3em;
    text-decoration: none;
    -webkit-font-smoothing: auto;
}
.link__svg {
    width: 100%;
    height: auto;
    transform-box: fill-box;
    fill: var(--white);
    stroke: var(--white);
    background: var(--secondary-color);
    border-radius: 50%;
    padding: 10px;
    stroke-width: 0.05em;
    box-sizing: border-box;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: all 0.3s cubic-bezier(0.33, 1, 0.68, 1);
}
.link__arrow {
    transform-origin: 50% 50%;
    transition: transform 0.15s cubic-bezier(0.32, 0, 0.67, 0);
}
.linkTurn:hover .link__arrow {
    transform: scale(1.3);
    transition: transform 0.3s cubic-bezier(0.33, 1, 0.68, 1);
}
.link__arrow {stroke-width: 0.075em;transform: rotate(45deg);}
.link__text {
    -webkit-animation: rotateReverse normal infinite 20s linear;
    animation: rotateReverse normal infinite 20s linear;
    transform-origin: 50% 50%;
}
.link--alt {
    font-size: 1.15rem;
    letter-spacing: 0;
    word-spacing: 0;
}

.linkTurn.white svg{
	fill: var(--white);
    stroke: var(--white);
}
/*-----------------*/
/* HEADER */
/*-----------------*/
#header {
    z-index: 99;
    left: 0;
    right: 0;
    top: 0;
}

#logoCoordonnees {
    margin: 0 40px;
    text-align: center;
}

#header.fixed-header .navigmenu .naviglink.lvl-0
{
    padding: 20px 14px;
}

#header-coordonnees
{
    padding: 15px;
    gap: 10px;
}


#logoCoordonnees img
{
    height: 100%;
    width: 100%;
}

#infotelportButton,#infotelfixeButton,.buttonHead a {
    background-color: var(--primary-color);
    padding: 6px 20px 6px 40px;
    border-radius: 50px!important;
    transition: 250ms all ease-in-out;
    display: inline-block;
    margin-left: auto;
    margin-bottom: -15px
}

.buttonHead a {
    line-height: 1.5;
    overflow: hidden;
    font-family: var(--font-text);
    font-size: 14px;
    text-transform: initial
}

.buttonHead a::before {
    --size: 15px;
    content: "";
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    width: var(--size);
    height: var(--size);
    background-image: url(../images/icons/mail-white.svg)
}

#infotelportButton span,#infotelfixeButton span {
    display: none
}

#infotelportButton:hover,#infotelfixeButton:hover {
    background-color: var(--secondary-color)
}

#infotelportButton a,#infotelfixeButton a {
    color: var(--white)
}

#infotelportButton:before,#infotelfixeButton:before {
    background-image: url(../images/icons/mobile-white.svg);
    left: 15px
}

#infotelfixeButton:before {
    background-image: url(../images/icons/phone-white.svg)
}

.infohoraires_other{
    color: var(--primary-color);
    font-size: 1.2em;
}

/*-----------------*/
/* NAVPRIMARY */
/*-----------------*/

.navigtoogle:not(.social,.logo) span:before, .urgence span::before {
    position: absolute;
    top: -2px;
    left: -7px;
    box-sizing: content-box;
    padding: 0 5px;
    width: 100%;
    height: 100%;
    border: 2px solid var(--primary-color);
    content: "";
    opacity: 0;
    transition: opacity .2s , transform .2s;
    transform: scale(.8333);
    backface-visibility: hidden;
    border-radius: 5px
}

.navigtoogle:not(.social,.logoParent).active .naviglink.lvl-0 span:before, .navigtoogle:not(.social,.logoParent) .naviglink.lvl-0:hover span:before, #navprimary .urgence span::before {
    opacity: 1;
    transform: scale(1.2)
}

.navigtoogle:not(.social,.logoParent).active .naviglink.lvl-0, .navigtoogle:not(.social,.logoParent,.lang) .naviglink.lvl-0:hover, #navprimary .urgence {
    transform: scale(.8333);
    color: var(--primary-color);
}

.navigmenu .naviglink.lvl-1, #navprimary .urgence span::before {
    font-family: var(--font-text)
}

#navprimary .urgence span
{
    --red:#f00;
    color: var(--red);
}

#navprimary .urgence span::before
{
    border-color: var(--red);
}


/*-----------------*/
/* HEADERHOME */
/*-----------------*/
#headerHome-accroche
{
    max-width: 800px;
    margin: 0 auto;
}
#headerHome-title
{
    color: var(--primary-color);
}
#headerHome .overlay
{
    background: linear-gradient(to bottom, var(--tertiary-color), var(--overlay-color));
    opacity: 0.7;
}
/*-----------------*/
/* CONTENT / INTRODUCTION */
/*-----------------*/
#contentPage.white
{
    background: var(--black);
}
.home #content .linkTurn
{
    position: absolute; 
    left: 50%;
    transform: translateX(-50%);
    top: initial;
    bottom: -90px;
}
.home #content .title {
    max-width: 1200px;
    width: 100%;
    margin: 0px auto;
    position: relative;
    z-index: 9;
}
.home #content img,#sections .wp-block-image,#news img,.wp-block-media-text__media,.image_content,.nohome .gallery-item
{
    overflow: hidden;
}

/*-----------------*/
/* GALLERY HOME */
/*-----------------*/
#galleryHome .gallery-item {
    margin-bottom: 0;
}

.gallery-icon {
    line-height: 0;
}

.gallery-icon>*:not(a) {
    line-height: 1.2;
}

.gallery-icon {
    height: 100%;
}

.nohome .gallery .gallery-item a img {
    max-height: 450Px;
}
#galleryHome figure.wp-block-gallery.has-nested-images
{
    gap: 0;
}
#galleryHome::before {
    background: url(../images/shape.svg);
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: 100%;
    z-index: 1;
    top: 4px;
    pointer-events: none;
}
/*-----------------*/
/* CTA */
/*-----------------*/


/*-----------------*/
/* PRESTATIONS */
/*-----------------*/
#backgroundPrestations {
    width: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
}

#backgroundPrestations .background-item {
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0;
    -webkit-transform: scale(.99);
    -ms-transform: scale(.99);
    transform: scale(.99);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-transition: opacity 3s cubic-bezier(.19, 1, .22, 1) 0ms, -webkit-transform 2s cubic-bezier(.19, 1, .22, 1) 0ms;
    transition: opacity 3s cubic-bezier(.19, 1, .22, 1) 0ms, -webkit-transform 2s cubic-bezier(.19, 1, .22, 1) 0ms;
    -o-transition: opacity 3s cubic-bezier(.19, 1, .22, 1) 0ms, transform 2s cubic-bezier(.19, 1, .22, 1) 0ms;
    transition: opacity 3s cubic-bezier(.19, 1, .22, 1) 0ms, transform 2s cubic-bezier(.19, 1, .22, 1) 0ms;
    transition: opacity 3s cubic-bezier(.19, 1, .22, 1) 0ms, transform 2s cubic-bezier(.19, 1, .22, 1) 0ms, -webkit-transform 2s cubic-bezier(.19, 1, .22, 1) 0ms
}


#backgroundPrestations .background-item:before {
    content: "";
    position: absolute;
    background: var(--black);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 0;
    opacity: .5
}

#backgroundPrestations .background-item.active,
#backgroundPrestations .background-item.on {
    opacity: 1;
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05)
}

#prestations .widget_parentpage li:not(.active) {
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px)
}


.bloc_prestations {
    position: relative;
    overflow: hidden;
    min-height: 700px;
}

.bloc_prestations.on {
    backdrop-filter: blur(8px);
}

.bloc_prestations:before {
    pointer-events: none;
    z-index: 10;
    display: block;
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    opacity: 1;
    transition: opacity ease 0.5s;
}

.bloc_prestations.on .prestations-img img {
    opacity: 0;
}

.bloc_prestations .prestations-img {
    opacity: 1;
    min-height: inherit;
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-position: center center;
    transition: all ease 0.5s;
    width: 100%;
    height: auto;
}

.bloc_prestations.off .prestations-img {
    opacity: 0;
}

.bloc_prestations .prestations-img .blocthumb:before,
.bloc_prestations .prestations-img .blocthumb:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    transition: opacity ease-in-out 0.3s;
}

.bloc_prestations .prestations-img .blocthumb:after {
    z-index: 2;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.6) 100%);
}

.prestations-content .liresuite {
    margin-top: 40px;
}

#foregroundPrestations {
    grid-gap: 0;
    position: relative;
    z-index: 2;
}

.prestations-wrapper {
    height: 100%;
    display: flex;
}

.bloc_prestations .prestations-content {
    transition: opacity ease 0.5s;
    position: relative;
    z-index: 2;
    width: 100%;
    text-shadow: 0px 0px 8px rgb(0 0 0 / 20%);
    padding: 50px 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    align-items: center;
}


.bloc_prestations .title-presta {
    transition: opacity ease 0.5s;
    opacity: 1;
    transition: all ease 0.5s;
}

.bloc_prestations .icone-presta {
    width: 50px;
    margin: 0 auto 20px;
}

.bloc_prestations.on .title-presta {
    transform: translateY(0);
}

.prestations-content h2,
.prestations-content h3 {
    text-transform: uppercase;
    letter-spacing: 2px;
    /* font-size: 34px; */
}

.prestations-content .title_content,
.prestations-content .content_link,
.prestations-content .tc_excerpt {
    color: var(--white);
}

/* .bloc_prestations.off .title-presta{opacity: 0;} */


.bloc_prestations .txt-presta {
    font-size: 15px;
    line-height: 1.7;
    max-width: 500px;
    margin: 0 auto;
    transition: all 0.6s cubic-bezier(0.77, 0, 0.175, 1);
    max-height: 0;
    opacity: 0;
}

.bloc_prestations .txt-presta .content_link {
    color: var(--white);
    line-height: 1.5;
    display: block;
    margin-bottom: 40px;
}

.bloc_prestations.on .txt-presta {
    max-height: 400px;
    opacity: 1;
    -webkit-transition: all 0.8s cubic-bezier(0.77, 0, 0.175, 1);
    -o-transition: all 0.8s cubic-bezier(0.77, 0, 0.175, 1);
    transition: all 0.6s cubic-bezier(0.77, 0, 0.175, 1);
}



/*-----------------*/
/* ACTU / NEWS */
/*-----------------*/
#news .button {
    background: #fff0;
    background-image: url(../images/arrow.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    --size: 100px;
    width: var(--size);
    height: var(--size);
    transition: all 0.4s;
}
#news .button:hover {
    transform: rotate(-45deg);
}
#news .button span {
    font-size: 0;
}
#news .button {
    --size: 50px;
}
#news .marquee-wrapper {
    position: absolute;
    top: -250px;
    width: 100%;
    overflow: hidden;
}
#news .marquee-text {
    display: inline-block;
    white-space: nowrap;
    font-family: var(--font-alt);
    text-transform: uppercase;
    font-size: 10vw;
    background-image: url(../images/backgroundFond.jpg);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    animation: marquee-scroll 40s linear infinite alternate;
}
@keyframes marquee-scroll {
    0% {
        transform: translateX(0%);
    }
    100% {
        transform: translateX(-50%);
    }
}
/*-----------------*/
/* SECTIONS */
/*-----------------*/
#sections {
    position: relative;
    z-index: 10
}

.sectionsbloc .specialthumb {position: relative}
.chiffres
{
    display: flex;
    align-items: stretch;
    flex-wrap: wrap!important;
}
.chiffres .wp-block-column
{
    border: 1px solid #00000020;
    padding: 10px;
    text-align: center;
}

.chiffres h2
{
    font-size: 1.3em;
    line-height: 1;
    margin-bottom:10px ;
    margin-top: -20px!important;
    background: var(--background-color);
    padding: 0 10px;
}
.chiffres h3
{
    font-size: 0.85em;
    line-height: 1.3;
    margin: 0;
    font-family: var(--font-text);
    color: var(--font-text);
}
/*-----------------*/
/* REASSURANCES */
/*-----------------*/
.nohome #reassurances {background-image: url(../images/home-bg2.jpg);}

.nohome #reassurances .picto-container li {
    position: relative;
    flex: 1 1 50%;
    text-align: left;
    flex-direction: row;
    padding: 19px 40px
}

.nohome #reassurances .picto-container li:first-child, 
.nohome #reassurances .picto-container li:nth-child(3) {
    text-align: right;
    flex-direction: row-reverse
}

.nohome #reassurances .picto-container {flex-wrap: wrap}

.nohome #reassurances .picto-container li p {
    margin: 0 0 0 40px;
    text-transform: uppercase;
    font-family: var(--font-bold);
    letter-spacing: 1px;
    color: var(--white)
}

.nohome #reassurances .picto-container li:first-child:before, 
.nohome #reassurances .picto-container li:nth-child(3):before {
    right: 20px;
    left: auto
}

.nohome #reassurances .picto-container li:first-child p, 
.nohome #reassurances .picto-container li:nth-child(3) p {margin: 0 40px 0 0}

.nohome #reassurances .picto-container li:before {
    content: "";
    --size: 70px;
    width: var(--size);
    height: var(--size);
    border: solid 2px var(--primary-color);
    position: absolute;
    top: 0;
    left: 20px
}

.home #reassurances {
    z-index: 3;
    overflow: hidden;
    height: 300px;
    display: grid;
    align-items: center;
    position: relative;
    margin-bottom: -60px;
    margin-top: -120px;
}

.home .picto-container li {
    flex-direction: row;
    margin: 0;
    padding: 0 50px;
    min-width: max-content;
    color: var(--white);
}

.home .picto-container li svg, 
.home .picto-container li img {--size: 25px;}

.picto-container li p {
    color: var(--white);
    font-family: var(--font-bold);
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.home .picto-container li p {margin: 0 0 0 14px;}

.home #reassurances-container {
    background: var(--secondary-color);
    transform: rotate(3deg);
    padding: 20px 100px;
    box-sizing: border-box;
    width: calc(100% + 100px);
    max-width: calc(100% + 100px);
    left: -50px;
    position: relative;
}

.home .picto-container {
    animation: marquee 80s linear infinite;
    position: relative;
    flex-wrap: nowrap;
    flex-direction: row;
}

.home #reassurances-containerBis {
    content: "";
    background: var(--tertiary-color);
    transform: rotate(-3deg);
    z-index: -1;
    padding: 0 70Px;
    width: calc(100% + 100Px);
    max-width: calc(100% + 100Px);
    left: -50Px;
    position: absolute;
    height: 70px;
    display: flex;
    align-items: center;
}

.home #reassurances-containerBis span {
    color: var(--white);
    font-size: 15px;
    font-family: var(--font-title);
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: bold;
}

.home #reassurances-containerBis span:last-child {margin-left: auto;}



/*-----------------*/
/* certifications */
/*-----------------*/

/*-----------------*/
/* PARTENAIRES */
/*-----------------*/

/*-----------------*/
/* NEWSLETTER */
/*-----------------*/

/*-----------------*/
/* AGENCES */
/*-----------------*/

/*-----------------*/
/* CONTACTFORM */
/*-----------------*/



/*-----------------*/
/* FOOTER */
/*-----------------*/
.wrapperFooter {
    background: var(--title-color);
    box-shadow: 0px 0px 30px #1a1a2612;
    padding: 10px
}

.imgFooter {
    background: url(../images/home-bg2.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover
}
#footerLinks {
    padding: 20px;
    /* margin: 0 auto 50px; */
    border-top: 1px solid rgb(0 0 0 / 10%);
    text-transform: uppercase;
    letter-spacing: 0px;
    font-size: 11px;
    font-weight: bold;
}
#footer .cekome_form .blc_checkbox label a:hover{color: var(--white);}
#footer #footerbloc {padding: 40px 15px}
#footer #wrapperForm .title{margin-bottom: 20px;}

