/**
* Posts Blog
*/
.posts-blog {
    position: relative;
    padding-top:10px;
    display: block!important;
}

.posts-blog:not(.has-filters) {
   padding-top:40px;
}


.before-grid {
   color:var(--page-color-background);
}

@media (max-width:992px) {
   .posts-blog:not(.has-filters) {
      padding-top: 30px;
      padding-right: 0;
  }
}
/**
* Posts Blog > Article
*/
.posts-blog article {
   margin-bottom: 30px;
}

.posts-blog article .post-item.inner {
   background: var(--color_2);
   overflow: hidden;
   box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.1);
   position: relative;
}

/**
* Posts Blog > Article > Featured image
*/
.posts-blog article .post-item.inner .post-attachment {
   position: relative;
   padding-top:50%;
   margin-bottom: 0;
}

.posts-blog article .post-item.inner .post-attachment > .item-link {
   display: block;
   position: absolute;
   top:0;
   left:0;
   width: 100%;
   height: 100%;
}

.posts-blog article .post-item.inner .post-attachment img {
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
}


.posts-blog article .post-item.inner .post-attachment > .term-links {
   display: flex;
   flex-wrap: wrap;
   justify-content: flex-end;
   position: absolute;
   bottom:10px;
   right:10px;
   width: auto;
}

.posts-blog article .post-item.inner .post-attachment > .term-links a,
.posts-blog article .post-item.inner .post-attachment > .term-links span {
   display: inline-block;
   margin-left: 5px;
   margin-top: 5px;
   width: auto;
   background-color: var(--color_3);
   background-color: var(--page-color-background);
   color: var(--color_2);
   padding:3px 10px;
   border-radius: 15px;
   font-size: 12px;
   line-height: 14.4px;
   font-weight: 700;
}

.posts-blog article .post-item.inner .post-attachment > .term-links .separator {
   display: none;
}

/**
* Posts Blog > Article > Post content (figcaption)
*/
.posts-blog article .post-item.inner .post-figcaption {
   padding:20px;
}

.posts-blog article .post-item.inner .post-figcaption .post-title {
   margin-bottom: 10px;
   text-transform: uppercase;
}

.posts-blog article.type-post .post-item.inner .post-figcaption .post-title {
   text-transform: none;
   font-size: 16px;
   line-height: 18px;
}

.posts-blog article.type-post .post-metas {
   font-size: 14px;
   line-height: 16px;
}

body.archive article .post-metas .author,
body.search article .post-metas .author,
#single-related-posts  .post-metas .author {
   display: none!important;
}


.posts-blog article .post-item.inner .post-figcaption .post-content {
   font-size: 16px;
   font-weight: 300;
   line-height: 19px;
   letter-spacing: 0;
   text-align: left;
   margin-bottom: 10px;
}

/**
* Posts Blog > Article > Link
*/
.is-root-container .posts-blog article .post-link {
   text-align: center;
   margin-top: 20px;
   margin-bottom: 0;
}

/**
* Posts Blog > Event > Post metas (date, author, custom metas)
*/
.posts-blog article.type-event .post-item.inner {
   border-radius:0px;
   background: var(--color_2);
   overflow: hidden;
   box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
   position: relative;
   padding-top:40px;
}

.posts-blog article.type-event .post-item.inner .title {
   text-transform: uppercase;
   font-size: 15px;
   line-height: 18px;
   margin-bottom: 9px;
}

.is-root-container .posts-blog article.type-event .post-item.inner .post-figcaption .post-metas {
   justify-content: space-between;
   display: flex;
   flex-wrap: wrap;
   align-items: flex-start;
   position: absolute;
   top:0;
   left:0;
   background-color: var(--page-color-background);
   min-height: 40px;
   padding:10px;
   font-size: 16px;
   line-height: 21px;
   width: 100%;
}

.posts-blog.grid article.type-event .post-item.inner .post-figcaption .post-metas {
   min-height: 30px;
   padding:10px 10px;
   font-size: 14px;
   line-height: 22px;
}

.posts-blog article.type-event .post-item.inner .post-figcaption .post-metas > span {
   position: relative;
   display: inline-block;
   font-weight: 700;
   color:var(--color_2);
}

.posts-blog article.type-event .post-item.inner .post-figcaption .post-metas > span.place {
   color:var(--color_2);
}

.posts-blog article.type-event .post-item.inner .post-figcaption .post-metas .picto {
   padding-left: 23px;
}

.posts-blog article.type-event .post-item.inner .post-figcaption .post-metas .picto:before {
   content:'';
   position: absolute;
   left:0;
   top:50%;
   transform: translateY(-50%);
   display: block;
   height: 20px;
   width: 20px;
   background-repeat: no-repeat;
   background-position: center;
   background-size: contain;
}

.posts-blog article .post-item.inner .post-figcaption .post-metas .event-date:before {
   background-image: url('../../../static/img/calendar.svg');
   background-image: var(--calendar-color_2);
}

.posts-blog article .post-item.inner .post-figcaption .post-metas .place:before {
   background-image: url('../../../static/img/pin.svg');
   background-image: var(--pin-color_2);
}

/**
* Posts Blog > Article > Post categories
*/
.posts-blog article .post-item.inner .post-figcaption .post-attributes .attribute.featured {
   position: absolute;
   top:20px;
   right: 20px
}

.posts-blog article .post-item.inner .post-figcaption .post-attributes .attribute.featured .term-link {
   display: block;
   font-family: var(--title-font);
   font-style: normal;
   font-weight: 400;
   font-size: 15px;
   line-height: 17px;
   text-align: center;
   text-transform: capitalize;
   background-color: var(--color_5);
   color: var(--color_2);
   padding:5px 10px;
   border-radius: 5px;
   transition: all .3s;
}

.posts-blog article .post-item.inner .post-figcaption .post-attributes .attribute.featured a.term-link:hover {
   background-color: var(--color_6);
   color: var(--color_1);
}

/**
* Posts Blog > Formation > Post Attributes
*/
.posts-blog article .post-item.inner .post-figcaption .post-attributes .attribute {
   min-height: 30px;
   display: flex;
   flex-wrap: wrap;
   padding-left:40px;
   position: relative;
   font-size: 14px;
   line-height: 18px;
}

.posts-blog article .post-item.inner .post-figcaption .post-attributes .attribute span.label {
   position: absolute;
   left:0;
   top:0;
   height: 22px;
   width: 22px;
}

.posts-blog article .post-item.inner .post-figcaption .post-attributes .attribute span.label svg {
   height: 100%;
   width: 100%;
   object-fit: contain;
}


/**
* Blog filters > Layout
*/
.blog-filters {
   background-color: var(--color_2);
   box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.17);
   width: 100%;
   padding:0;
   margin:0 auto 30px;
   z-index: 100;
}

.blog-filters form {
   display: block;
   width: 100%;
}

.blog-filters form .form-header {
   padding:15px 20px 0;
   text-align: right;
}

.blog-filters form .form-content {
   padding:15px 40px;
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   width: 100%;
}

.blog-filters form .form-footer {
   padding:15px 20px;
   display: flex;
   justify-content: center;
   align-items: center;
}

@media (max-width:992px) {
   .blog-filters form .form-content {
      padding: 0;
  }
}

/**
* Blog filters > Filter
*/
.blog-filters form fieldset {
   position: relative;
   max-width: 33.333333%;
   width: 100%;
   display: block;
   padding:0 25px;
}

.blog-filters form fieldset legend {
   font-size: 17px;
   line-height: 20px;
   margin-bottom: 5px;
}

.blog-filters form fieldset .toggle-filter {
   background: var(--color_7);
   border-radius: 8px;
   font-family: var(--special-font);
   font-style: normal;
   font-weight: 400;
   font-size: 17px;
   line-height: 20px;
   padding: 10px 50px 10px 10px;
   z-index: 3;
   display: flex;
   align-items: center;
   margin-bottom: 0;
   cursor: pointer;
   position: relative;
}

.blog-filters form fieldset .default {
   display: none;
}

.blog-filters form fieldset .default.afg-active {
   display: block;
}


.blog-filters form fieldset .toggle-filter:after {
   content: '';
   display: block;
   position: absolute;
   height: 20px;
   width: 20px;
   right: 15px;
   top: 51%;
   transition: all .3s;
   transform: translateY(-50%);
   background-image: var(--chevron-down-color_3);
   background-repeat: no-repeat;
   background-size: contain;
   background-position: center;
}

.blog-filters form fieldset .toggle-filter.afg-active:after {
   transform: scaleY(-1) translateY(50%);
}

.blog-filters form fieldset .filter-modal {
	position:absolute;
	top:100%;
	left:35px;
	width: calc(100% - 70px);
	max-height: 0;
   overflow: hidden;
	z-index: 4;
	background-color: var(--color_2);
	opacity: 1;
	pointer-events: none;
	transition: all .3s;
   padding:0 15px;
   border-bottom-left-radius: 8px;
   border-bottom-right-radius: 8px;
   box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.1);
}

.standalone-blog-filters form fieldset .filter-modal {
	position:absolute;
	top:100%;
	left:8px;
	width: calc(100% - 16px);
}

.blog-filters form fieldset .filter-modal.afg-active {
	opacity: 1;
   padding:15px;
	pointer-events: all;
   max-height: 300px;
   overflow: scroll;
}

.blog-filters form fieldset .filter-modal label {
   display: flex;
   align-items: center;
   font-style: normal;
   font-weight: 400;
   cursor: pointer;
   font-size: 14px;
   line-height: 18px;
   padding-top: 5px;
   padding-bottom: 5px;
   border-bottom: 1px solid var(--color_5);
}

.blog-filters form fieldset .filter-modal label.big {
   font-size: 17px;
   line-height: 20px;
   padding-top: 7px;
   padding-bottom: 7px;
}

.blog-filters form fieldset .filter-modal label:last-of-type {
   border-bottom: unset;
}

.is-root-container .blog-filters input[type="checkbox"] + *:before {
   top:9px;
   transform: unset;
}

.is-root-container .posts-blog:after {
   position: absolute;
   content: '';
   display: block;
   z-index: 20;
   height: 100%;
   width: 0;
   top: 0;
   left: 50%;
   transform: translateX(-50%);
   background-color: rgba(255,255,255,.8);
   transition: all .3s;
   opacity: 0;
   pointer-events: none;
   border-left: 2px solid var(--color_3);
   border-left: 2px solid var(--page-color-background);
   border-right: 2px solid var(--color_3);
   border-right: 2px solid var(--page-color-background);
}

.is-root-container .posts-blog.afg-active:after {
   opacity: 1;
   width: 100%;
   pointer-events: all;
}

/**
* Blog filters > Reset button
*/
.is-root-container .blog-filters input[type="reset"] {
   font-weight: 400;
   font-size: 17px;
   line-height: 20px;
   background-color: unset;
   width: auto;
   display: inline-block;
   color:var(--color_3);
}

@media (max-width:992px) {
   .is-root-container .blog-filters input[type="reset"] {
      font-size: 13px;
      line-height: 15px;
   }
}

/**
* Blog filters > Selected filters
*/
.selected-filters .selected-filter {
   padding: 4px 25px 4px 10px;
   min-height: 24px;
   display: inline-flex;
   align-items: center;
   background-color: var(--color_3);
   color:var(--color_2);
   border-radius: 15px;
   font-size: 12px;
   line-height: 14px;
   font-weight: 700;
   position: relative;
   margin: 4px 8px 4px 0;
}

.selected-filters .selected-filter .remove {
   height: 10px;
   width: 10px;
   background-image: url('../../../static/img/close.svg');
   background-image: var(--close-color_2);
   background-repeat: no-repeat;
   background-position: center;
   background-size: contain;
   position: absolute;
   right: 7.5px;
   top:50%;
   transform: translateY(-50%);
}

@media(max-width:992px) {
   .posts-blog.slider {
      padding-left:15px;
      padding-right:15px;
   }
}

@media(max-width:768px) {
   .posts-blog.slider .swiper-arrows {
      display: none;
   }
}

@media(max-width:992px) {
   .blog-filters form fieldset {
      max-width: 100%;
      width: 100%;
      padding: 0 15px;
      margin-bottom: 30px;
   }

   .blog-filters form fieldset:last-of-type {
      margin-bottom: 0;
   }
}

/**
* Blog filters > Submit
*/
.blog-filters form input[type="submit"],
.blog-filters form input[type="submit"]:hover {
   background-color: var(--color_3);
   color: var(--color_2);
}

.blog-filters form input[type="submit"]:hover {
   background-color: var(--page-color-background);
   color: var(--page-color-text);
}

/**
* Blog > Slider > Coverflow
*/
.is-root-container .coverflow .post-link a {
   margin-top: 35px;
   min-height: 38px;
}

.is-root-container .coverflow .swiper-slide:not(.swiper-slide-visible),
.is-root-container .coverflow .swiper-slide-visible,
.is-root-container .coverflow .swiper-slide-visible + .swiper-slide-visible + .swiper-slide-visible {
   transform: scale(.7) translateZ(0);
   transition: all 1s;
}

.is-root-container .coverflow .swiper-slide-visible + .swiper-slide-visible {
   transform: scale(1) translateZ(0);
}

@media(max-width:992px) {
   .is-root-container .coverflow .swiper-slide:not(.swiper-slide-visible),
   .is-root-container .coverflow .swiper-slide-visible,
   .is-root-container .coverflow .swiper-slide-visible + .swiper-slide-visible + .swiper-slide-visible {
      transform: scale(1) translateZ(0);
   }
}

/**
* Share blog filters selection
*/
.blog-filters form .form-header {
   position: relative;
   padding-right:50px;
}

.share-filters {
   position: absolute;
   right:20px;
   left:auto;
   top:10px;
}

.share-filters > button {
   font-size:0;
   letter-spacing: 0;
   height: 17px;
   width: 17px;
   background-image: var(--share-2)!important;
   background-size: cover;
}

.share-filters .acseo-modal {
   background-color: var(--color_2);
   top:50%!important;
   left:50%!important;
   transform:translateY(-50%) translateX(-50%)!important;
   width:calc(100% - 100px)!important;
   height:80px!important;
   min-height:50px!important;
   padding:15px!important;
   font-size: 14px;
   border-radius: 6px;
   max-width: var(--boxed-2);
}

@media (max-width:992px) {
   .share-filters .acseo-modal {
      left:15px!important;
      width:calc(100% - 30px)!important;
      min-width:calc(100% - 30px)!important;
      height:auto!important;
      max-height: 100px;
   }
}

.share-filters .acseo-modal > * {
   margin:0;
   text-align: left;
}

.share-filters .acseo-modal .label {
   margin-bottom:3px;
}

.share-filters .acseo-modal .value-wrapper {
   font-size: 12px;
   max-width: 100%;
   border:1px solid var(--page-color-background);
   border-radius: 3px;
   position: relative;
   overflow: hidden;
   cursor:copy;
}

.share-filters .acseo-modal .value-wrapper:after {
   position: absolute;
   top:0;
   left:0;
   z-index: 4;
   height: 100%;
   width: 100%;
   background-color: var(--page-color-background);
   color:var(--color_2);
   content:'Adresse copiée';
   opacity: 0;
   pointer-events: none;
   transition: all .3s;
   display: flex;
   align-items: center;
   padding:0 5px;
   font-size: 13px;
}

.share-filters .acseo-modal .value-wrapper.acseo-active:after {
   opacity: 1;
   pointer-events: all;
}

.share-filters .acseo-modal .value {
   display: block;
   overflow: hidden;
   white-space: nowrap;
   padding: 3px 5px;
   color:var(--color_1-5);
}

button.copy {
   z-index: 2;
   position:absolute;
   cursor:pointer;
   border:unset;
   right:3px;
   top:3px;
   height: 22px;
   width:22px;
   border-radius: 3px;
   background-color:var(--page-color-background);
   background-image:var(--copy-color_2);
   background-repeat: no-repeat;
   background-position: 0 1px;
   background-size: cover;
   font-size: 0;
   letter-spacing: 0;
   box-shadow: 0px 0px 10px var(--color_2);
}



