/*fonts*/
@font-face {
  font-family: 'Afacad-Regular';
  src:  local('Afacad-Regular'),
				url('../fonts/Afacad-Regular.ttf') format('truetype');
  font-display: swap;
  unicode-range: U+0000-007F,U+0080-00FF,U+0153,U+20AC;
}
@font-face {
  font-family: 'Afacad-Medium';
  src:  local('Afacad-Medium'),
				url('../fonts/Afacad-Medium.ttf') format('truetype');
  font-display: swap;
  unicode-range: U+0000-007F,U+0080-00FF,U+0153,U+20AC;
}
@font-face {
  font-family: 'Afacad-Semibold';
  src:  local('Afacad-Semibold'),
				url('../fonts/Afacad-Semibold.ttf') format('truetype');
  font-display: swap;
  unicode-range: U+0000-007F,U+0080-00FF,U+0153,U+20AC;
}
@font-face {
  font-family: 'Afacad-Bold';
  src:  local('Afacad-Bold'),
				url('../fonts/Afacad-Bold.ttf') format('truetype');
  font-display: swap;
  unicode-range: U+0000-007F,U+0080-00FF,U+0153,U+20AC;
}


@font-face {
  font-family: 'Silk-Serif-semibold';
  src:  local('Silk-Serif-semibold'),
				url('../fonts/Silk-Serif-semibold.otf') format('opentype');
  font-display: swap;
  unicode-range: U+0000-007F,U+0080-00FF,U+0153,U+20AC;
}

@font-face {
  font-family: 'Silk-Serif-Black';
  src:  local('Silk-Serif-Black'),
				url('../fonts/Silk-Serif-Black.otf') format('opentype');
  font-display: swap;
  unicode-range: U+0000-007F,U+0080-00FF,U+0153,U+20AC;
}
@font-face {
  font-family: 'Silk-Serif-Bold';
  src:  local('Silk-Serif-Bold'),
				url('../fonts/Silk-Serif-Bold.otf') format('opentype');
  font-display: swap;
  unicode-range: U+0000-007F,U+0080-00FF,U+0153,U+20AC;
}







.blue{color: #112934}
.bg-blue{background: #112934}
.blue-lite{color: #B4D1DE}
.bg-blue-lite{background: #B4D1DE}

.blue-lite-2{
  color: #6F98AE;
}

.beige{color:  #DDCAB4}
.bg-beige{background:  #DDCAB4}
.brown{color: #A49D8E}
.bg-brown{background: #A49D8E}

/*colors*/
.hover-white:hover,
.white{color: white}
.bg-hover-white:hover,
.bg-white{background: white}
.hover-black:hover,
.black{color: black}
.bg-hover-black:hover,
.bg-black{background: black}

/*components*/
.read-more{
  font-family: 'Afacad-Medium';
  font-size: 18px;
  color: white;
  display: flex;
  align-items: center;
  border: 1px solid white;
  width: fit-content;
  padding: 7px 14px;
  border-radius: 16px;
  transition: 0.4s;
}
.read-more:hover{border-radius: 0px}
body .read-more img{
  width: 20px;
  margin-right: 13px;
}

.return-hp.size-16{
  font-size: 16px;
  font-family: 'Afacad-Regular';

}
.woocommerce .loader::before{content: none}
.loader-special {
  border: 4px solid #ff7528;
  border-top: 4px solid white;
  border-radius: 50%;
  width: 23px;
  height: 23px;
  animation: spin 1s linear infinite;
  margin-left: 0px;
  position: absolute;
  right: 0;
  left: 0;
  margin: auto;
  background: #ff7528;
  top: 1.5px;
}
@keyframes spin {
  0% {transform: rotate(0deg)}
  100% {transform: rotate(360deg)}
}
.uppercase{text-transform: uppercase}
.big-title{
  font-family: 'Silk-Serif-Black';
  font-size: 80px;
  line-height: 81px;
}
.text strong{
  font-weight: bold;
}

.text.mini {font-size: 18px;}
.big-title-2{
  font-family: 'Silk-Serif-Black';
  font-size: 70px;
  line-height: 75px;
}
.big-title-3{
  font-family: 'Silk-Serif-Black';
  font-size: 100px;
  line-height: 100px;
}
.number{
  font-family: 'Silk-Serif-Black';
  font-size: 120px;
  line-height: normal;
}
.medium-title{
  font-family: 'Silk-Serif-Bold';
  font-size: 40px;
  line-height: normal;
}
.text{
  font-family: 'Afacad-Regular';
  font-size: 24px;
  line-height: normal;
}
.text-bold{
  font-family: 'Silk-Serif-Bold';
  font-size: 30px;
  line-height: 34px;
}
.text-bold-2{
  font-family: 'Afacad-Bold';
  font-size: 24px;
}
.mini-text{
  font-family: 'Afacad-Regular';
  font-size: 16px;
  line-height: normal;
}
.mini-title{
  font-family: 'Silk-Serif-Bold';
  font-size: 28px;
  line-height: normal;
}

.cta{
  padding: 13px 60px;
  font-family: 'Afacad-Bold';
  font-size: 24px;
  border-radius: 70px;
  display: table;
}
.cta.mini{padding:  13px 31px}
  .cta-white{
    border: 1px solid white;
    color: white;
  }
.cta-white-outline{
  border: 1px solid rgba(255,255,255,0.5);
  color: white;
  background: transparent;
  margin-left: 10px;
  transition: 0.3s;
}
.cta-white-outline:hover{
  background: white;
  color: #112934;
}

  .cta-white.bis{
    color: #b4d1de;
    border-color: #b4d1de;
  }

.cta-beige{
  border: 1px solid #DDCAB4;
  color: #DDCAB4;
}
.cta-beige{
  border: 1px solid #DDCAB4;
  color: #DDCAB4;
}

.prix-sidebar{
  font-size: 60px;
  font-family: 'Afacad-Bold';
  margin-bottom: 75px;
}
.main-title{
  font-family: 'Silk-Serif-Black';
  font-size: 80px;
  line-height: 88px;
}
.medium-title{}
.medium-title-2{}
.mini-title{}
.cta{}
.label{
  font-family: 'Afacad-Medium';
  font-size: 14px;
  border: 1px solid #FFFFFF;
  color: white;
  display: table;
  border-radius: 70px;
  padding: 9px 21px;
}
.card{
  z-index: 9;
  width: 397px;
  position: relative;
}
.card .img{
  position: relative;
  height: 289px;
  overflow: hidden;
}
.card .label{
  position: absolute;
  bottom: 23px;
  z-index: 999;
  left: 23px;
}
.card .mini-title{margin-bottom: 18px}
.card .mini-text{margin-bottom: 20px}
.read-time{
  font-family: 'Silk-Serif-semibold';
  font-size: 14px;
}
.card img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: table;
}
.card .content{padding: 30px 25px 20px 25px}
.radius-right{border-top-right-radius: 82px}
.radius-left{border-top-left-radius: 82px}
.group-title .medium-title{
  top: 30Px;
  position: relative;
}
.card-programme .content{
  border: 1px solid #B4D1DE;
  border-top: none;
  background: white;
  padding-top: 18px;
}
.lots{
  font-family: 'Afacad-Semibold';
  font-size: 20px;
  margin-bottom: 9px;
}
.card.card-programme .mini-title {
  margin-bottom: 0px;
  line-height: 30px;
  margin-bottom: 12px;
}
.card.card-programme  .mini-text{margin-bottom: 0px}
.card .group-picto{
  display: flex;
  margin-top: 20px;
}
.card .group-picto a{
  height: 32px;
  width: 32px;
  border-radius: 100%;
  border: 1px solid #112934;
  margin-right: 10px;
  position: relative;
  font-family: 'Afacad-Medium';
  font-size: 18px;
  color: #112934;
  transition: all 0.4s, border-radius 0s;
}
.card .group-picto a.tel{color: white}
.card .group-picto a:hover{
  border-radius: 70px;
  justify-content: flex-start;
  padding-left: 7px;
}
.card .group-picto a.view:hover{width: 130px}
.card .group-picto a.plaquette:hover{width: 125px}
.card .group-picto a.vv:hover{width: 150px}
.card .group-picto a.tel:hover{width: 112px}
.card .group-picto a.view span{width: 77px}
.card .group-picto a.plaquette span{width: 77px}
.card .group-picto a.vv span{width: 99px}
.card .group-picto a.tel span{width: 77px}
.card .group-picto a img{
  width: 18px;
  height: 15px;
  object-fit: contain;
  position: relative;
  top: 7px;
  left: 6px;
}
.card .group-picto a:hover img{margin-right: 7px}
.card .group-picto a span{
  position: absolute;
  top: 5px;
  left: 12px;
  opacity: 0;
  transition:  0.5s;
}
.card .group-picto a:hover span{
  opacity: 1;
  left: 38px;
}
.card .group-picto a.tel{background: #112934}
.card-programme .img img{transition: 0.6s}
.card-programme .img:before{
  content: "";
  height: 100%;
  width: 100%;
  background: #00000040;
  position: absolute;
  left: 0;
  display: block;
  top: 0;
  z-index: 999;
  border-top-left-radius: 82px;
  opacity: 0;
}
.card-programme:hover .img img{height: 110%}
.card-programme:hover .img:before{opacity: 1}
.tel-cta{
  padding: 13px 24px;
  font-family: 'Afacad-Bold';
  font-size: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 70px;
  position: fixed;
  right: 140px;
  top: 108px;
  z-index: 99999;
  border: 1px solid #112934;
  transition: 0.5s
}
.tel-cta.fixed{top: 52px}
.tel-cta img{
  margin-right: 11px;
  width: 24px;
}
.cta{transition: 0.5s}
.cta:hover,
.tel-cta:hover{
  border-radius: 0px;
}
body .bloc-content-bg-img{
  padding-top: 100px;
  padding-bottom: 200px;
  background-size: cover;
  background-position: center;
  background-color: rgb(17 41 52);
}
@media screen and (min-width: 1321px){
  .bloc-equipe:after,
  body .bloc-content-bg-img:after{
    content: "";
    background: #DDCAB4;
    height: 100%;
    width: 1px;
    position: absolute;
    right: 140px;
    top: 0px;
  }
}


.bloc-content-bg-img .big-title-3{margin-bottom: 65px}
.bloc-content-bg-img .text{
  margin-bottom: 75px;
  width: 715px;
}
.bloc-citation .col-big,
.bloc-big-wording .col-big,
.bloc-invest .col-big{
	border: 1px solid #FFFFFF;
	border-radius: 0px 80px 0px 0px;
  padding-right: 150px;
  margin-top: 140px;
  padding-top: 75px;
  border-left: none;
  padding-bottom: 150px;
  border-bottom: none;
  z-index: 9;
}
.bloc-invest .big-title-3{margin-bottom: 45px}
.bloc-invest .text{
  padding-right: 70px;
  margin-bottom: 50px;
}
 img.img-right-col{
  width: 680px;
  height: calc(100% - 47px);
  border-radius: 80px 0px 0px 0px;
  border: 1px solid #FFFFFF;
  position: absolute;
  bottom: 0;
  border-bottom: none;
  border-right: none;
  right: 0;
  object-fit: cover;
}
.bloc-terrain{
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
}
.bloc-terrain:before{
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: rgb(17 41 52 / 40%)
}
.bloc-4-col  .data{
  font-family: 'Silk-Serif-Black';
  font-size: 90px;
}
.bloc-4-col ul{
  display: flex;
  flex-wrap: wrap;
}
.bloc-4-col ul li{
  width: 25%;
  flex: 25%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-left: 35px;
  padding-right: 35px;
  padding-top: 92px;
  padding-bottom: 92px;
  position: relative;
}
.bloc-4-col p{
    z-index: 99;
    position: relative;
    font-size: 17px;
    line-height: normal;
}

.bloc-4-col ul li:before{
  content: "";
  width: 95%;
  height: 100%;
  position: absolute;
  transition: 0.4s;
  left: 0;
  top: 0;

}


.bloc-4-col ul li:hover:before {
  width: 100%;
  background: #112934
}



body .bloc-post{
 padding-top: 90px;
 padding-bottom: 200px;
}
body .bloc-post .big-title-2{margin-bottom: 15px}
body .bloc-post .text{
  margin-bottom: 75px;
  width: 800px;
  max-width: 100%;
}
.bloc-4-col.with-border li:nth-child(even){
  border-right: 1px solid #DDCAB4;
  border-left: 1px solid #DDCAB4;
}
.bloc-4-col.with-border li{
  padding-top: 100px;
  padding-bottom: 100px;
}
.bloc-4-col.with-border ul{
  border-top:  1px solid #DDCAB4;
  border-bottom:  1px solid #DDCAB4;
  padding: 0px;
  background: #112934
}
.bloc-4-col.with-border ul li,
.bloc-4-col.with-border ul li:hover{
  background: white;
}
.bloc-4-col.with-border li:nth-child(2){
  left: -25%;
  position: relative;
  transition: 0.65s
}
.bloc-4-col.with-border li:nth-child(3){
  left: -50%;
  position: relative;
  transition: 0.65s
}
.bloc-4-col.with-border li:nth-child(4){
  left: -75%;
  position: relative;
  transition: 0.65s
}
.bloc-4-col.with-border.vue li{left: 0px}
.bloc-4-col.with-border img{width: 60px}
.bloc-video-text{display: flex}
.bloc-video-text .group-title .medium-title{
  margin-bottom: 55px;
  display: flex;
  align-items: center;
}
.bloc-video-text .text{margin-top: 50px}
.bloc-video-text .group-title .medium-title img{
  width: 40px;
  margin-right: 20px;
  top: 2px;
  position: relative;
}
.plyr video{object-fit: cover}
.video-play,
.video-play > .plyr,
.plyr__video-wrapper{
  height: 100%;
}
.bloc-video-text .content-col-large{
  padding-bottom: 220px;
  padding-top: 185px;
}
/*bloc-text-image */
.bloc-text-image .col-big{
  margin-top: 0px;
  padding-top: 0px;
  border-left: none;
  padding-bottom: 100px;
  border-bottom: none;
  z-index: 9;
  width: 950px;
  float: left;
}
.bloc-text-image {display: flex}
.bloc-text-image.center {align-items: center}
.bloc-text-image.center .col-big{padding-bottom: 0px}
.bloc-image-text .text,
.bloc-text-image .text{margin-top: 29px}
.bloc-image-text .medium-title,
.bloc-text-image .medium-title{margin-top: 10px}
.bloc-image-text .cta,
.bloc-text-image .cta{margin-top: 66px}
.bloc-text-image img.img-right-col {
  height: 645px;
  width: 600px;
  position: relative;
  float: right;
  border-top: 1px solid #DDCAB4;
  border-left: 1px solid #DDCAB4;
  margin-left: auto;
}
.bloc-text-image{border-bottom:  1px solid #DDCAB4}
/* bloc-image-text */
.bloc-image-text img.img-right-col{
  border: none;
  border-top: 1px solid #DDCAB4;
  border-right: 1px solid #DDCAB4;
  border-radius: 0px 80px 0px 0px;
}
.bloc-image-text .bloc-image-text{}
.bloc-image-text .col-big {
  border-left: none;
  padding-bottom: 90px;
  border-bottom: none;
  z-index: 9;
  width: 850px;
  float: left;
  padding-left: 90px;
}
.bloc-image-text .img-left-col{
  height: 645px;
  width: 600px;
  float: left;
  object-fit: cover;
  border-radius: 0px 80px 0px 0px;
  border-top: 1px solid #DDCAB4;
  border-right: 1px solid #DDCAB4;
  position: relative;
  bottom: 0;
}
.bloc{margin: 25px 0px}
.bloc-image-text {border-bottom: 1px solid #DDCAB4}
.wysiwyg p{
  font-family: 'Afacad-Regular';
  font-size: 24px;
  line-height: normal;
  margin-bottom: 25px;
  color: #0F2146;
}
.wysiwyg ul li{
  list-style-type: disc;
  margin-left: 20px;
  font-family: 'Afacad-Regular';
  font-size: 24px;
  line-height: normal;
  margin-bottom: 25px;

  
  color: #0F2146;
}
.wysiwyg.programmes ul li {
  margin-bottom: 10px
}

.bloc-content .wysiwyg {width: 1310px}
.wysiwyg h2{
  font-family: 'Silk-Serif-Black';
  font-size: 70px;
  line-height: 75px;
  color: #112934;
  margin-bottom: 10px;
}
.wysiwyg h3{
  font-family: 'Silk-Serif-Bold';
  font-size: 40px;
  line-height: normal;
  color: #6F98AE;
  margin-bottom: 25px;
}
.wysiwyg strong{font-family: 'Afacad-Medium'}
.bloc-image-text{display: flex}

.bloc-image iframe,
.bloc-image img{
  width: 1450px;
  max-width: calc(100% - 35px);
  height: 795px;
  border-radius: 0px 80px 0px 0px;
  z-index: 9;
  position: relative;
}
.bloc-image {margin-bottom: 100px}
.bloc-image .text-image{
  width: calc(100% - 140px);
  float: right;
  padding: 18px 110px;
  display: flex;
}
.bloc-image .text-image p{
  margin-right: 70px;
}
.bloc-image .text-image{
  bottom: -25px;
  position: absolute;
  z-index: 9;
  right: 0;
}
.bloc-image .shape{
  height: 540px;
  position: absolute;
  bottom: 40px;
  width: calc(100% - 140px);
  right: 0;
}
.bloc-image .text-image p{
  font-size: 30px;
  line-height: normal;
  font-family: 'Silk-Serif-Bold';
}
.bloc-video .plyr--video {border-radius: 0px}
.bloc-video .plyr--video {border-top-right-radius: 80px}


.bloc-video .video-play {
    width: 1450px;
    height: 795px;
    border-radius: 0px 80px 0px 0px;
    z-index: 9;
    position: relative;
    max-width: calc(100% - 35px);
}

.bloc-video .video-play .plyr__video-wrapper::before{
  content: "";
  background: rgb(0 0 0 / 21%);
  height: 100%;
  width: 100%;
  z-index: 9;
  position: absolute;
  border-radius: 0px 80px 0px 0px;
}
 body .bloc-video  .video-play > div > button.plyr__control.plyr__control--overlaid:hover,
 body .bloc-video  .video-play > div > button.plyr__control.plyr__control--overlaid{
   left: inherit;
  right: 30px;
  bottom: 75px;
 }
.bloc-citation .col-big,
.bloc-big-wording .col-big{
  width: 1450px;
  max-width: calc(100% - 35px)
}
.bloc-citation .col-big{
  max-width: calc(100% - 175px);
  padding-right: 20px;


}
.bloc-citation svg{
  position: absolute;
  right: -135px;
  top: 35px;
}
.bloc-big-wording .cta.mini{margin-top: 75px}
.bloc-multi-image{
  display: flex;
  justify-content: center;
}
.bloc-multi-image .inner{
  width: 1135px;
  margin: auto;
  height: 1030px;
  position: relative;
}
.bloc-multi-image .inner img{
  object-fit: cover;
  position: absolute
}
.bloc-multi-image .inner .img-1{
  width: 399px;
  height: 346px;
  top: 0;
  left: 147px;
  border-radius: 80px 0px 0px 0px;
}
.bloc-multi-image .inner .img-2{
  right: 0;
  width: 546px;
  height: 472px;
  top: 169px;
  border-radius: 0px 80px 0px 0px;
}
.bloc-multi-image .inner .img-3{
  width: 546px;
  height: 473px;
  bottom: 169px;
  left: 0;
  border-radius: 0px 0px 0px 80px;
}
.bloc-multi-image .inner .img-4{
  width: 399px;
  height: 346px;
  bottom: 0;
  right: 148px;
  border-radius: 0px 0px 80px 0px;
  border: 1px solid #d8c9b9;
}
.bloc-multi-image:before{
  content: "";
  height: 462px;
  position: absolute;
  left: 0;
  width: 100%;
  background: #B4D1DE;
  top: calc(50% - 231px);
}
.bloc-double-image {
  display: flex;
  grid-gap: 40px;
  justify-content: center;
}
.bloc-double-image img{
  border-radius: 0px 0px 0px 80px;
  width: 546px;
  height: 473px;
  object-fit: cover;
  z-index: 9;
  border: 1px solid #d8c9b9;
}
.bloc-double-image::before{
  content: "";
  background: #DDCAB4;
  height: 1px;
  width: 100px;
  position: absolute;
  top: 50%;
}

@media screen and (max-width: 1620px){

  .bloc-text-image  .padd-on-left{padding-right: 80px}
  .bloc-image-text .col-big{padding-right: 80px}
  .bloc-multi-image .inner .img-1 {
    width: 349px;
    height: 306px;
    top: 65px;
    left: 177px;
  }
  .bloc-multi-image .inner .img-2 {
    width: 506px;
    height: 432px;
    right: 30px;
  }
  .bloc-multi-image .inner .img-3 {
    width: 506px;
    height: 433px;
    left: 30px;
  }
  .bloc-multi-image .inner .img-4 {
    width: 359px;
    height: 306px;
    bottom: 65px;
    right: 177px;
  }

}

@media screen and (max-width: 1350px){
  .bloc-double-image img {
      width: 446px;
      height: 373px;
  }

  .bloc-multi-image .inner .img-3 {
      height: 433px;
      left: 126px;
      width: 400px;
  }
  .bloc-multi-image .inner .img-2 {
      height: 300px;
      width: 400px;
      right: 136px;
  }
  .bloc-multi-image .inner .img-4 {bottom: 204px}
}

@media screen and (max-width: 1250px){

  .bloc-multi-image .inner {
      height: auto;
      position: relative;
      width: 100%;
      padding: 0px 35px;
      gap: 30px;
  }
  .bloc-multi-image:before{
    content: none;
  }
body    .bloc-multi-image{
    background: #B4D1DE;
    padding: 50px 0px;
  }

  body .bloc-multi-image .inner img {
    position: relative;
    top: 0 !important;
    left: 0 !important;
    width: calc(25% - 23px) !important;
    right: 0 !important;
    border-radius: 0px !important;
    border-top-left-radius: 80px !important;
    height: 300px !important;
  }
}
