/* STYLE CUSTOM */
:root {

    --font_title: 'Poppins-SemiBold';
    --font: 'Manrope';
    --font-sccript: 'Juana-SemiBold';
    --menu-width: 8vw;
    --page-width: calc(100% - var(--menu-width));
    --letter-spacing: 0;
    --logo-size: 12rem;

    /* --------------------------- Menu */
    --menu-font-size: 1rem;

    /* --------------------------- Menu Burger */
    --menu-top: 5.3rem;
    --menu-height: calc(100vh - var(--menu-top));
    --menu-burger-font-size: 1.2rem;
    --icon-color: var(--wp--preset--color--kb-palette-3);

    /* --------------------------- Block Width */
    --small_width: 1050px;
    --medium_width: 1512px;

    /* --------------------------- Inner Block Width */
    --header-inner_width: 1600px;
    --inner_width: 1400px;
    --global-kb-spacing-lg: 3rem;

    /* --------------------------- Global spacing */
    --global-xs-spacing: 1em;
    --global-sm-spacing: 1.5rem;
    --global-md-spacing: 2rem;
    --global-lg-spacing: 2.5em;
    --global-xl-spacing: 3.5em;
    --global-xxl-spacing: 5rem;
    --global-edge-spacing: 1.5rem;
    --global-boxed-spacing: 2rem;

    /* --------------------------- Font Size */
    --global-kb-font-size-xxl: 3.187rem !important;
    --global-kb-font-size-xl: 2.75rem !important;
    --global-kb-font-size-lg: 1.5rem !important;
    --global-kb-font-size-md: 1rem !important;

}

body:not(.wp-admin) * {
    box-sizing: border-box;

}

body * {
    scroll-behavior: smooth;
}

body.custom-background {
    background-size: 38% !important;
}

a, a:hover {
    transition: all .4s;
}

body {
    font-family: var(--font);
    font-weight: 300;


}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font_title);
    font-weight: normal;
    letter-spacing: var(--letter-spacing);

}

h1, h2, h3, h4, h5, h6 {
    line-height: 1em;
}

header h1 {
    line-height: 1em;
}

body p {
    font-size: 1.125em;
}

ul, ol {
    margin-left: 0;
    padding-left: 1em;
}

b, strong {
    font-family: var(--font_title);
    font-weight: normal;
}

a, a:link, a:visited {
    color: var(--wp--preset--color--kb-palette-6);
}

a:hover {
    text-decoration: none;
}

img {
    display: block !important;
}

.site-title {
    display: none;
}

.entry-footer {
    display: none;
}

#primary {
    background: transparent;
}

.entry-content> :not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.wp-block-separator) {
    margin-left: auto;
    margin-right: auto;
    max-width: var(--small_width);
}

.entry-content .alignwide {
    margin-left: auto;
    margin-right: auto;
    max-width: var(--medium_width);

}

.entry-content .alignfull {
    max-width: 100%;
}

.reverse_grid {
    direction: rtl;
}

.alignfull:not(.fullWidth_content, .page_header, #primary_footer, .sub_footer) .kt-row-column-wrap, .blog_container {
    /*max-width: var(--inner_width);*/
    margin: auto;
}
#annonces .annonce{padding:0!important;}
/*————————————————————————————— CUSTOM VAR */
.font_script * {
    font-family: var(--font-sccript);
}

.white-circle .kt-inside-inner-col {
    max-width: 80%;
    width: 600px;
    height: auto !important;
    margin: auto;
    background: white;
    border-radius: 50%;
    padding: 4rem 4rem;
}

/*OVERLAY HEIGHT */
.full_height, .full_height>div {
    height: 100% !important;
    padding: 0 !important;
}




.overlay_95 .kt-row-layout-overlay {
    height: 95%;
}

.overlay_90 .kt-row-layout-overlay {
    height: 90%;
}

.overlay_85 .kt-row-layout-overlay {
    height: 85%;
}

.overlay_80 .kt-row-layout-overlay {
    height: 80%;
}

.overlay_75 .kt-row-layout-overlay {
    height: 75%;
}

.overlay_70 .kt-row-layout-overlay {
    height: 70%;
}

.overlay_75 .kt-row-layout-overlay:before {
    content: "";
    display: block;
    height: 120%;
    width: 99%;
    background: url(images/wood.svg);
    background-position-x: 0%;
    background-position-y: 0%;
    background-repeat: repeat;
    background-size: auto;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: top right;
    position: absolute;
    left: 0%;
    top: 13%;
    opacity: .3;
    mix-blend-mode: overlay;
}

/**/

.w_stroke {
    display: flex;
    align-items: baseline;
    column-gap: .25em;
}

.w_stroke::after {
    content: "";
    display: block;
    height: 2px;
    width: 2em;
    background: var(--wp--preset--color--kb-palette-6);
    transform: translateY(-.25em);

}

/*———————————————————————————- STRUCTURE SITE */
/*-- HEADER*/
.primary_header * {
    transition: none;
}


.primary_header {
    text-align: center;
    /*padding: var(--global-md-spacing, 2rem);*/
    padding: var(--global-md-spacing, 2rem) var(--global-xl-spacing, 3.5em);
    padding-bottom: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: var(--medium_width);
    margin: auto;
    transition: none;
    width: 100%;

}

.dark .primary_header {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    z-index: 200;
}

/*---- LOGO */
.site-branding .custom-logo {
    min-width: var(--logo-size);
    margin-bottom: var(--global-xs-spacing, 1rem);
}

/*-- MENU */
#primary-menu {
    font-family: var(--font);
    justify-content: flex-end;
}

.nav-menu {
    column-gap: 1.5rem;
    justify-content: center;
    align-items: center;

    letter-spacing: .05rem;
    font-size: var(--menu-font-size);
}

.nav-menu a {
    color: var(--wp--preset--color--kb-palette-42);
    font-weight: bold;
    white-space: nowrap;

}

.dark .nav-menu>li>a {
    color: white;
}

.nav-menu>li:not(.bt_it)>a:after {
    content: "";
    display: block;
    height: 2px;
    width: 0;
    background: var(--wp--preset--color--kb-palette-6);
    transition: all .6s;
    position: absolute;
    left: 0;
    bottom: -.25rem;

}

.nav-menu>li.menu-item-has-children {
    display: flex;
    align-items: center;
    column-gap: .25rem;

}

.nav-menu>li.menu-item-has-children:after {
    content: "+";
    display: block;
    font-weight: bold;
    font-size: 1.2rem;
    color: var(--wp--preset--color--kb-palette-6);


}

.nav-menu>li.current-menu-item:not(.bt_it)>a, .nav-menu>li.current-menu-ancestor:not(.bt_it)>a {
    color: var(--wp--preset--color--kb-palette-6);
}

.nav-menu>li:not(.bt_it):hover>a:after {
    width: 3rem;
    transition: all .4s;
}

.nav-menu>li.bt_it a {
    display: block;
    background: var(--wp--preset--color--kb-palette-6);
    border: solid 2px transparent;
    border-radius: 5px;
    padding: .5rem 1rem;
    color: white;
}

.nav-menu>li.bt_it a:hover {
    background: var(--wp--preset--color--kb-palette-5);
}

.dark .nav-menu>li.bt_it a:hover {
    background: white;
    color: var(--wp--preset--color--kb-palette-5);
}

/*---- SUB MENU */
.sub-menu {
    flex-direction: column;
    background: transparent;
    box-shadow: none;
    padding-top: .5rem;
}

.sub-menu:before {
    content: "";
    display: block;
    width: 1rem;
    margin-left: 1rem;
    border-style: solid;
    border-color: white transparent;
    border-width: .5rem;
    border-top-width: 0;
}

.sub-menu li:first-of-type a {
    border-radius: 5px 5px 0 0;
}

.sub-menu li:last-of-type a {
    border-radius: 0 0 5px 5px;
}

.sub-menu li a {
    padding: calc(var(--global-xs-spacing, 1rem) / 2);
    background: white;
    white-space: wrap;
    text-align: left;
    border-bottom: dotted 1px #ddd;
    display: block;
    transition: all .4s;
    width: 18rem !important;
    padding: .5rem 1rem;
}

.sub-menu li a:hover {
    background: #f4eee6;
}

/*Animation SUB Menu*/
@keyframes subM {
    from {
        transform: translateY(2rem);
        opacity: 0;

    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.main-navigation ul ul {
    left: auto;
    top: 100%;
    display: none;
    transform: translateY(2rem);
    opacity: 0;
}

.main-navigation ul li:hover>ul {
    display: block;
    animation-name: subM;
    animation-duration: .5s;
    animation-fill-mode: forwards;
}

/*-- MENU BURGER */


body.burger_opened {
    overflow: hidden;
}

.burger .site-branding .custom-logo {
    min-width: calc(var(--logo-size) * .8);
    margin-bottom: var(--global-xs-spacing, 1rem);
}


.menu-toggle, nav.toggled .menu-toggle {
    position: absolute;
    right: var(--global-kb-spacing-XS, 1rem);
    top: var(--global-kb-spacing-md, 2rem);

    z-index: 2001;
    /**/
    border-color: var(--wp--preset--color--kb-palette-2) !important;
    border-top: solid 2px var(--icon-color);
    border-bottom: solid 2px var(--icon-color);
    border-left: none;
    border-right: none;
    background: transparent;
    border-radius: 0;
    font-size: 0;
    box-shadow: none;
    text-indent: -9000px;
    height: 1rem;
    width: 1.8rem;

}

.menu-toggle:before, .menu-toggle:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    background: var(--icon-color);
    height: 2px;
    width: 100%;
    transform-origin: center center;
    transform: translateY(-50%) rotate(0deg);
    transition: all .4s;
}

.burger_opened .menu-toggle, .burger_opened nav.toggled .menu-toggle {
    border-color: transparent !important;
}

.burger_opened .menu-toggle:before {
    transform: translateY(-50%) rotate(45deg);
    transition: all .4s;
}

.burger_opened .menu-toggle:after {
    transform: translateY(-50%) rotate(-45deg);
    transition: all .4s;
}


nav.toggled div[class^="menu-menu-principal"] {
    position: fixed;
    left: 0;
    top: var(--menu-top);
    background: var(--wp--preset--color--kb-palette-12);
    width: 100vw;
    z-index: 2000;
    justify-content: center;
    flex-direction: column;
    text-align: center;
    height: 91vh;
    padding: var(--global-kb-spacing-md, 2rem);
    overflow: auto;
    transition: all .5s;
}

nav.toggled ul {
    flex-direction: column;
    text-align: left;
    width: 100%;
    display: flex !important;
    min-height: auto;
}

.toggled.main-navigation li {
    flex-direction: column;
}

.toggled.main-navigation .nav-menu>li:not(.bt_it)>a::after {
    display: none;
}

nav.toggled ul li:before {
    display: none;
}

nav.toggled ul li a {
    display: block;
    width: 100%;
    font-size: var(--menu-burger-font-size);
    padding-bottom: 1rem;
    padding-top: 1rem;
	color: var(--wp--preset--color--kb-palette-42) !important;

}

nav.toggled ul li a:after {
    display: none;
}

nav.toggled .nav-menu>li.menu-item-has-children::after {
    display: none;
}

.toggled.main-navigation ul ul, .toggled.main-navigation #primary-menu li:hover>ul {
    /*position: static;*/
    padding: 0 0;
    box-shadow: none;
    background: rgba(256, 256, 256, .2);
    gap: 0;
    transform: none;
    position: static;
    opacity: 1;
    animation-name: none !important;
    animation-duration: none !important;
    animation-fill-mode: none !important;


}

.toggled.main-navigation ul ul {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-in;
}

.toggled.main-navigation ul ul a {
    font-weight: normal;
    width: 100% !important;
}

.toggled.main-navigation .menu-item-has-children>a:after {
    content: "+";
    display: inline-block;
    margin-left: .5rem;
}

.toggled.main-navigation .menu {
    min-height: 100%;
}

.toggled.main-navigation .menu-item.bt_it {
    margin-top: 2rem;
    margin-bottom: 2rem;
    border-bottom: none;
    width: 50%;
    text-align: center;
    justify-content: flex-end;
    flex-grow: 2;
    display: flex;
    align-items: center;
    justify-content: center;
}

/*Gestion des sous-menus TOGGLE en mode burger */

.submenu-toggle {
    position: absolute;
    right: 0;
    top: 2px;

    height: 3.5em;
    border: none;
    border-left-width: medium;
    border-left-style: none;
    border-left-color: currentcolor;
    border-radius: 0;
    width: 3rem;
    border-left: solid 1px #ddd9cd;
    background: none;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--wp--preset--color--kb-palette-6);
    line-height: 1em;
    padding: 0;

    display: none;

}

.toggled.main-navigation .submenu-toggle {
    display: block;
}

.toggled.main-navigation .submenu-toggle+.sub-menu.open {

    max-height: 500px;
    /* Valeur ajustable selon la hauteur des sous-menus */
    transition: max-height 0.3s ease-in;
    border-radius: 0 !important;


}

.toggled.main-navigation .submenu-toggle+.sub-menu a {
    background: #f3efe4;
    border-bottom: solid 1px white;
    border-radius: 0 !important;

}

.toggled.main-navigation .submenu-toggle+.sub-menu:before {
    display: none;
}

/*-- CONTENT */
.page-content, .entry-content, .entry-summary {
    margin: 0;
}

main>article, .page {
    margin: 0 !important;
}


#page .actu_candidature {
    row-gap: 0;
}

#page .actu_candidature article {
    margin-bottom: .5rem;
    border-radius: 15px;
    display: grid;
    overflow: hidden;
	width:100%;
	grid-template-columns: minmax(0, 1fr) minmax(0, 3fr);
}

#page .actu_candidature article .post-thumbnail {
    height: 100%;
    padding: 0;
    
}

#page .actu_candidature article .entry-content-wrap {
    
}

#page .actu_candidature article a {
    text-decoration: none;
    color: var(--wp--preset--color--kb-palette-5);
}

#page .actu_candidature article h2 a {
    color: var(--wp--preset--color--kb-palette-6);
    line-height: 1.2em;
}

/* ACTUALITES HOME */
.chantiers_home .col_1 {
    position: relative;
    z-index: 200;
}

.chantiers_home .full_100>.kt-inside-inner-col {

    width: 200% !important;
    margin-left: -100% !important;
    padding-left: 100% !important;
    z-index: -1;
    position: relative;
}

/*CAROUSEL HOME*/
.carousel_home .slick-track {
    left: calc(100% / 7 * -1);
}

.carousel_home .slick-track>div {
    transform: scale(1);
    transition: all .4s;
}

.carousel_home .slick-track:hover>div:not(:hover) {
    opacity: .8;
    filter: grayscale(.5);
}

.carousel_home .slick-track>div:hover {
    transform: scale(1.05);
    opacity: 1;
    transition: all .4s;
}

.carousel_home .slick-track>div:hover .figure {
    box-shadow: 0 0 10px rgba(0, 0, 0, 1);
}

#page .carousel_home .slick-arrow {
    position: absolute;
    right: var(--global-kb-spacing-md, 2rem);
    left: auto;
    top: -3.9rem;
    height: 2rem;
    width: 2rem;
    transform: none;


}

#page .carousel_home .slick-prev {
    transform: translateX(calc((100% + .5rem) * -1));
}

#page .carousel_home .slick-arrow:before {
    color: var(--wp--preset--color--kb-palette-6) !important;
    font-size: 2rem;
}

/* Carrousel Chantiers */
#cta_chantiers .post-thumbnail-inner {
    border-radius: 15px;
    overflow: hidden;
}

#cta_chantiers a {
    text-decoration: none;
}

#cta_chantiers h2 {
    padding-bottom: var(--global-kb-spacing-xxs, 0.5rem);
    margin-bottom: 0px;
    font-size: var(--global-kb-font-size-lg, 2rem);
}

#cta_chantiers .entry-summary {
    margin: 0;
}

#cta_chantiers p {
    font-size: var(--global-kb-font-size-md, 1.25rem);
    margin: 0;
}

/* Carrousel Kadence */
#page .kb-gallery-carousel {
    margin-bottom: 0;
}

#page .kadence-blocks-gallery-item__caption {
    background: white;
    border-radius: 15px 0 15px 0;
    position: absolute;
    right: 0;
    bottom: 0;
    width: 40%;
    text-align: left;
    padding: 1rem;
    padding-right: 6rem;
}

#page .splide__pagination {
    position: absolute;
    left: 1rem;
    bottom: 1rem;
    justify-content: flex-start;
    flex-wrap: nowrap;
    column-gap: 1rem;
    width: calc(60% - 2rem);
}

#page .splide__pagination li {
    width: 100%;
}

#page .splide__pagination button {
    width: 100%;
    height: .5rem;
    border-radius: .25rem;
    background: white;
    opacity: 1;

}

#page .splide__pagination button.is-active {
    background: var(--wp--preset--color--kb-palette-6) !important;
    opacity: 1 !important;
}

#page .splide__arrows {
    position: absolute;
    right: 1rem;
    bottom: 1.5rem;
    display: flex;
    column-gap: .25rem;

}

#page .splide__arrow {
    position: static;
    transform: none;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
    color: var(--wp--preset--color--kb-palette-6);
    background: transparent;
    border: solid 3px var(--wp--preset--color--kb-palette-6);
    border-radius: 50%;
    height: 2rem;
    width: 2rem;
	background:white;

}

.splide__arrows .slick-next:before, .splide__arrows .slick-prev:before{
	display:none;
}

/* Carrousel testimonials */
.testimonials .kt-testimonial-item-wrap {
    display: flex;
    flex-direction: column-reverse;
    row-gap: 1rem;
}

.testimonials .kt-testimonial-item-wrap .kt-svg-testimonial-icon {
    background: var(--wp--preset--color--kb-palette-6);

}

.testimonials .kt-testimonial-item-wrap .kt-svg-testimonial-icon svg {
    color: white !important;
    width: 1.8rem;
}

#page .testimonials .splide__pagination button {
    background: var(--wp--preset--color--kb-palette-4);
    opacity: .4;
}

.testimonials .images_inblock {
    width: 240%;
}

/*———————————————————————————— FORMULAIRE */

form ol, form li {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

form label {
    display: none;
    font-size: bold;
    font-size: .9em;
}
form label.show_lab{
	display:block;
}

form ol.col_2, form ol.col_3 {
    display: flex;
    flex-wrap: wrap;
    column-gap: 2rem;
}

form ol.col_3 {
    flex-wrap: nowrap;
    column-gap: 1rem;
}

form ol.col_2 li {
    flex: calc(50% - 1rem);
}

form ol.col_3 li {}

form ol.col_3 li.submit-form {
    width: auto;
}

form input, form select {
    background: white;
    width: 100%;
    padding: .5em 1em !important;
    border-radius: 5px !important;
    border-color: var(--wp--preset--color--kb-palette-4) !important;
}

/*——————————————————————— FORMULAIRE */
form input[type="checkbox"] {
    width: auto;
    margin-right: 1ch;
    margin-top: .4em;

}

form input[type="submit"] {
    color: white;
    background: var(--wp--preset--color--kb-palette-6);
    border-color: var(--wp--preset--color--kb-palette-6) !important;
    padding: .5em 1em !important;
    line-height: 1.5;
}

form p, form li {
    margin-top: 0;
    margin-bottom: .5em;
}

.form_footer {
    display: flex;
    justify-content: space-between;
}

.acceptance .wpcf7-list-item>label {
    display: flex;
    align-items: flex-start;
    ;
}

.wpcf7-spinner {
    display: none;
}

.wpcf7-list-item {
    margin-left: 0;
}
.nb-personnes{
	background: white;
  color: gray;
  padding: 1rem;
  border-radius: 5px;
}
.nb-personnes .wpcf7-list-item-label{ 
	font-size:1.1em!important;
}
.nb-personnes .wpcf7-list-item>label {
    display: flex;
    align-items: flex-start;
    ;
}
.submit-form.inscription input{
	font-size:1.1em!important;
}
/*PAGE CONTACT*/

.form_contact_container form li {
    margin-bottom: 1.5rem;
}

.form_contact_container form ol.col_2 {
    column-gap: 1.5rem;
}

.form_contact_container .acceptance .wpcf7-list-item-label {
    font-size: .8rem;
}

.form_contact_container .form_footer {
    column-gap: 2rem;
    row-gap: 2rem;
    flex-direction: column;
    align-items: center;
}

/* -------------------------------------------------------- */
/* -------------------------------------------------------- */
/* --------------------------------------------- PAGES BLOG */
/* -------------------------------------------------------- */
/* -------------------------------------------------------- */
#breadcrumbs {
    position: absolute;
    left: 54%;
    top: 7rem;
    font-size: .7em;

}

.yoast-breadcrumbs {
    font-size: .7em;
}

#breadcrumbs span span, .yoast-breadcrumbs span span {
    text-transform: uppercase;
    margin-right: .25em;
    background: var(--wp--preset--color--kb-palette-4);
    display: inline-block;
    padding: .25em 2em;
    border-radius: 4em;
    letter-spacing: var(--letter-spacing);
    overflow: hidden;

}

#breadcrumbs a, .yoast-breadcrumbs a {
    text-decoration: none;
    color: white;
    background: var(--wp--preset--color--kb-palette-3);
    display: inline-block;
    padding: .25em 2em;
    border-radius: 4em;
    margin: -.25em -2em;



}

#breadcrumbs a:hover, .yoast-breadcrumbs a:hover {
    background: var(--wp--preset--color--kb-palette-1);
}

#breadcrumbs span span:last-child, .yoast-breadcrumbs span span:last-child {

    white-space: nowrap;
    text-overflow: ellipsis;
    max-width: 12rem;

}

/* ----- BLOG */


.blog_page .latest_posts {

    display: grid;
    /*grid-template-columns: repeat(3, 1fr);*/
    grid-template-columns: 32% auto;

    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: calc(var(--global-row-gutter-md, 2rem) / 1.5);
    /*grid-row-gap: var(--global-row-gutter-md, 2rem);*/
    max-width: var(--inner_width) !important;
    padding-top: var(--global-kb-spacing-sm, 1.5rem);
    /*padding-bottom: var(--global-kb-spacing-sm, 1.5rem);*/
    /* max-width: 100% !important;
    padding: var(--global-kb-spacing-5xl, 10rem) var(--global-kb-spacing-lg, 3rem) var(--global-kb-spacing-lg, 3rem) var(--global-kb-spacing-lg, 3rem);*/

}

.blog_page .latest_posts article:nth-child(1) {
    grid-area: 1 / 1 / 3 / 3;
    height: 60vh;
    min-height: 35rem;
}

.blog_page .latest_posts article:nth-child(2) {
    grid-area: 1 / 3 / 2 / 4;
}

.blog_page .latest_posts article:nth-child(3) {
    grid-area: 2 / 3 / 3 / 4;
}

.blog_page .latest_posts article, body:not(.archive) .list_post article:nth-child(5n + 5), .archive .list_post article:nth-child(1) {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    padding: var(--global-kb-spacing-sm, 1.5rem);
    background: var(--wp--preset--color--kb-palette-5);
    color: white;
    overflow: hidden;
    border-radius: 15px;
}

.blog_page .latest_posts article img, body:not(.archive) .list_post article:nth-child(5n + 5) img, .archive .list_post article:nth-child(1) img {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
    left: 0;
    top: 0;
    opacity: .6;
    transition: all 0.5s ease-in-out;
    mix-blend-mode: soft-light;
}

.blog_page .latest_posts article:hover img, body:not(.archive) .list_post article:nth-child(5n + 5):hover img, .archive .list_post article:nth-child(1):hover img {

    transform: scale(1.1);
    opacity: .15;

}

.blog_page .latest_posts article .entry-header, body:not(.archive) .list_post article:nth-child(5n + 5) .entry-header, .archive .list_post article:nth-child(1) .entry-header {
    position: relative;
    z-index: 2;
}

.blog_page .latest_posts article .entry-header h2, body:not(.archive) .list_post article:nth-child(5n + 5) .entry-header h2, .archive .list_post article:nth-child(1) .entry-header h2 {
    margin: 0 !important;
}

.blog_page .latest_posts article .entry-header a, body:not(.archive) .list_post article:nth-child(5n + 5) .entry-header a, .archive .list_post article:nth-child(1) .entry-header a {
    color: white;
    text-decoration: none;
}

.blog_page .latest_posts article .entry-header .entry-title, body:not(.archive) .list_post article:nth-child(5n + 5) .entry-header .entry-title, .archive .list_post article:nth-child(1) .entry-header .entry-title {
    margin-top: 0px;
    margin-bottom: .75rem !important;
    font-size: var(--global-kb-font-size-lg, 2rem);
    letter-spacing: 0.05em;
}

.blog_page .latest_posts article:nth-child(1) .entry-header .entry-title {
    font-size: var(--global-kb-font-size-xl, 3rem);
}

.blog_page .latest_posts article .entry-summary, body:not(.archive) .list_post article:nth-child(5n + 5) .entry-summary, .archive .list_post article:nth-child(1) .entry-summary {
    width: 80%;
    position: relative;
    z-index: 2;
}

.blog_page .form_newsletter {
    max-width: var(--inner_width) !important;
    background-color: white;
    background-image: url('http://localhost:8888/Atelier%20Isac/site-2024/wp-content/uploads/2024/10/texture.jpg');
    background-size: cover;
    background-position: center center;
    background-attachment: scroll;
    background-repeat: no-repeat;
    border-radius: 15px;
    margin-bottom: var(--global-kb-spacing-lg, 2rem) !important;
    overflow: hidden;
}

.blog_page .form_newsletter:before {
    content: "";
    display: block;
    top: 0;
    left: 0;
    position: absolute;
    opacity: .3;
    height: 100%;
    width: 100%;
    z-index: 0;
    filter: opacity(100%);
    opacity: 1;
    background: radial-gradient(ellipse at left top, rgba(255, 255, 255, 0.6) 30%, rgb(255, 255, 255) 100%);
}

/*--- CAT LIST BLOG */
.widget {
    margin: 0 0 .5rem;
}

.list-cat {
    display: flex;
    column-gap: .5em;
    margin-bottom: 1rem !important;
    flex-wrap: wrap;
}

.list-cat, .list-cat li {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.list-cat a {
    font-size: var(--global-kb-font-size-sm, 0.9rem);
    display: block;
    background: var(--wp--preset--color--kb-palette-6);
    color: white;
    text-decoration: none;
    padding: .5em 1.5em;
    border-radius: 4em;
    text-transform: uppercase;
    letter-spacing: var(--letter-spacing);
    margin-bottom: 1em;
}

.list-cat a:hover {
    background: var(--wp--preset--color--kb-palette-5);
}

.blog_page aside .wp-block-social-links {
    font-size: 2.5rem;
    column-gap: .5rem;
    ;
}

/*----*/
.posts_container, .single .the-content {
    display: flex;
    flex-direction: row-reverse;
    column-gap: var(--global-row-gutter-md, 2rem);
    max-width: var(--inner_width) !important;
    padding-bottom: var(--global-kb-spacing-4xl, 8rem);
    margin-left: auto;
    margin-right: auto;

}

.single .the-content {
    max-width: 1269px !important;
    padding-left: var(--global-kb-spacing-md, 2rem);
    padding-right: var(--global-kb-spacing-md, 2rem);
}

/*----*/
.list_post {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--global-row-gutter-md, 2rem);
    width: 80%;


}

.single .the-content>div {
    width: 80%;
    /*margin-right: calc((var(--inner_width) - var(--small_width)) / 2);*/
}

.list_post article {
    display: flex;
    flex-direction: column;
}

.list_post article a {
    color: var(--wp--preset--color--kb-palette-5);
    line-height: 1.2em;
    text-decoration: none;
}

.list_post article h2 {
    margin-bottom: 0;
}

.list_post article a:hover {
    color: var(--wp--preset--color--kb-palette-6);
}

.list_post article .entry-meta {
    font-size: 80%;
}

body:not(.archive) .list_post article:nth-child(5n + 5) {
    grid-column: span 2;
    align-items: center;
    text-align: center;
    justify-content: center;
}

body:not(.archive) .list_post article:nth-child(5n + 5) .entry-summary {
    width: 75%;
}

.blog article .entry-meta span+span:before {
    margin-left: .5rem;
    margin-right: .5rem;
    content: "";
    display: inline-block;
    background-color: currentColor;
    height: .25rem;
    width: .25rem;
    opacity: .8;
    border-radius: 9999px;
    vertical-align: .1875em;
}

.list_post article .thumbnail {
    order: -1;
    overflow: hidden;
    background: var(--wp--preset--color--kb-palette-5);
    border-radius: 15px;

}

.list_post article .thumbnail img {
    width: 100%;
    height: 14rem;
    object-fit: cover;
    transition: all 0.5s ease-in-out;
    display: block;
}

.list_post article .thumbnail:hover img {
    transform: scale(1.2);
    opacity: .4;
    mix-blend-mode: soft-light;
}

body:not(.archive) .list_post article:nth-child(5n + 5) .thumbnail img {
    height: 100%;
}

.list_post article .entry-summary {
    font-size: var(--global-kb-font-size-sm, 0.9rem);
}

.posts_container aside, .single .the-content aside {
    position: sticky;
    top: var(--global-kb-spacing-lg, 3rem);
    left: 0;
    align-self: flex-start;
    width: 25%;
}

.posts_container aside ul {
    padding-left: 0;
    margin-left: 0;
}

.posts_container aside .wp-block-social-links.has-huge-icon-size, .single .the-content aside .wp-block-social-links.has-huge-icon-size {
    column-gap: 0.2em !important;
    font-size: 35px !important;

}

/* ----- SINGLE */
.single .entry-content>article {
    padding-top: var(--global-kb-spacing-md, 2rem);
    ;
    padding-bottom: var(--global-kb-spacing-lg, 3rem);

    margin-left: auto;
    margin-right: auto;
    max-width: var(--medium_width) !important;

}

.single .entry-content>article>header {

    max-width: 100%;
    text-align: left;
    margin: auto;
    background: var(--wp--preset--color--kb-palette-5);
    border-radius: 15px;
    display: flex;
    flex-direction: row-reverse;
    overflow: hidden;
    color: white;
    margin-bottom: var(--global-xxl-spacing, 5rem);
    row-gap: var(--global-kb-gap-sm, 1rem);
    column-gap: var(--global-kb-gap-sm, 1rem);
    align-items: stretch;
}

.single .entry-content>article .intro {
    padding: var(--global-kb-spacing-lg, 3rem);
}

.single .entry-content>article .post-thumbnail {
    height: auto;
    min-height: 35rem;
    background: var(--wp--preset--color--kb-palette-2);
    min-width: 40%;
    display: flex;

}

.single .entry-content>article .post-thumbnail img {
    width: 100%;
    /*height: 100%;*/
    object-fit: cover;
    /*opacity: .4;*/
}

.single .entry-content>article .entry-title {
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    line-height: 1.2em;
    font-size: var(--global-kb-font-size-xxl);


}

.single .entry-content>article .entry-summary {
    padding-top: 0px;
    padding-right: 0px;
    padding-left: 0px;
    font-size: 28px;
    font-size: var(--global-kb-font-size-lg);

}


.single .suggested_posts {

    background: white;
    padding-top: var(--global-kb-spacing-xxl, 5rem);
    padding-bottom: var(--global-kb-spacing-4xl, 8rem);


    background-color: white;
    background-image: url('http://localhost:8888/Atelier%20Isac/site-2024/wp-content/uploads/2024/10/texture.jpg');
    background-size: cover;
    background-position: center center;
    background-attachment: scroll;
    background-repeat: no-repeat;
    border-radius: 15px;
    overflow: hidden;
    position: relative;

}

.single .suggested_posts:after {
    content: "";
    display: block;
    top: 0;
    left: 0;
    position: absolute;
    opacity: .3;
    height: 100%;
    width: 100%;
    z-index: 0;
    filter: opacity(100%);
    opacity: 1;
    background: radial-gradient(ellipse at left top, rgba(255, 255, 255, 0.6) 30%, rgb(255, 255, 255) 100%);
}

.single .suggested_posts>div {
    max-width: var(--inner_width) !important;
    margin: auto;
    display: flex;
    column-gap: var(--global-row-gutter-md, 2rem);
    position: relative;
    z-index: 2;
}

.single .suggested_posts article {
    width: 100%;
}

.single .suggested_posts>div>h2 {
    flex-grow: 2;
    margin-top: 0px;
    margin-bottom: var(--global-kb-spacing-sm, 1.5rem);
    font-size: var(--global-kb-font-size-md, 1.25rem);
    text-transform: uppercase;
    letter-spacing: 0.15em;

}

.single .suggested_posts>div>h2:before {
    content: "";
    display: inline-block;
    background: url(images/arrow.svg) no-repeat left center/contain;
    width: 26px;
    margin-right: 1ch;
    height: 1em;
    position: relative;
    top: .2em;

}

.single .suggested_posts .list_post {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--global-row-gutter-md, 2rem);
    width: 100%;


}

/*------------------------------------*/
/*---------------- COMPOSANTS DU BLOG */
/*------------------------------------*/
/*.single .the-content div p.has-medium-font-size {
    font-size: 1.5em !important;
    opacity: .6;
    line-height: 1.6em;
}*/

.single .the-content div>*:first-child {
    margin-top: 0;
}

.single .the-content div h2 {
    font-size: 2rem;
    color: var(--wp--preset--color--kb-palette-2);
}

.single .the-content div h2:before {
    content: "—";
    margin-right: .25em;
}

.single .the-content div h3 {
    font-size: 1.75rem;
    color: var(--wp--preset--color--kb-palette-2);
    margin-bottom: .25em;
}

.single .the-content div h3+* {
    margin-top: .25em;
}

.single .the-content div *+h2 {
    margin-top: 2em;
}

.single .the-content div blockquote.wp-block-quote {
    border-left: solid 4px var(--wp--preset--color--kb-palette-2);
    margin-left: 0;
    padding: 1rem 2rem;
    background: var(--wp--preset--color--kb-palette-7)
}

.single .the-content div .wp-block-pullquote {
    padding: 0;
    margin: 0;
}

.single .the-content div .wp-block-pullquote blockquote {

    max-width: calc(var(--small_width) * .8);
    margin-left: auto;
    margin-right: auto;
    text-align: center !important;
    padding-top: 1.5em;
}

.single .the-content div .wp-block-pullquote blockquote:before {

    content: "";
    display: block;
    height: 2rem;
    background: url(images/cite.svg) no-repeat center/contain;
}

.single .the-content div .wp-block-pullquote blockquote p {
    margin-bottom: 0;
    font-family: var(--font_serif);
    font-size: var(--global-kb-font-size-xl, 3rem);
    line-height: 1em;
}

.single .the-content div .wp-block-pullquote blockquote cite {
    font-size: 1.125rem;
}

.single .the-content div table th {
    color: white;
    background: var(--wp--preset--color--kb-palette-2)
}

.wp-block-table thead {
    border: 0;
}

.wp-block-table td {
    border-color: white;
}

.wp-block-table tr:nth-child(odd) {
    background: var(--wp--preset--color--kb-palette-7);
}

.wp-block-table tr:nth-child(even) {
    background: var(--wp--preset--color--kb-palette-4);
}

/*---------- ARCHIVE */
.archive main>.entry-content {
    padding-top: var(--global-kb-spacing-sm, 1.5rem);
    padding-bottom: var(--global-kb-spacing-lg, 3rem);
}

.archive main>.entry-content>header {
    display: none;
}

.archive .list_post article:nth-child(1) {
    grid-column: span 3;
    height: 60vh;
    min-height: 40rem;
}

.archive .list_post article:nth-child(1) .entry-header, .archive .list_post article:nth-child(1) .entry-summary {
    width: 60%;
}

.archive .list_post article:nth-child(1) .entry-header h2 {
    font-size: var(--global-kb-font-size-xl, 3rem) !important;
    margin-bottom: .2em !important;
}


/*---------------- CTA */
/* Contact*/
.label_contact {
    position: absolute;
    right: 0;
    bottom: 0;
}

/*---------------- HEROS */
/* Home */
.page_header_model1 .kb-row-layout-id7_4e84a7-2e>.kt-row-column-wrap {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    /* Deux colonnes de même largeur */
    grid-template-rows: auto auto;
    /* Deux rangées */
    gap: 20px;
    /* Espacement optionnel entre les enfants */
}

/* Enfant 1 - Texte */
.page_header_model1 .ch_1 {
    grid-column: 1 / span 2;
    /* Occupe les deux colonnes */
    grid-row: 1;
    /* Sur la deuxième rangée pour être en dessous de l'enfant 2 */

}

/* Enfant 2 - Image */
.page_header_model1 .ch_2 {
    grid-column: 2;
    /* Colonne 2 */
    grid-row: 1 / span 2;
    /* Occupe deux rangées */
}

/* Enfant 3 - Label */
.page_header_model1 .ch_3 {
    grid-column: 1 / span 1 !important;
    /* Colonne 1 seulement */
    grid-row: 2;
    /* Deuxième rangée */
}

.page_header_model1 .ch_2 * {
    height: 100%;
}

.page_header_model1 .ch_1 .kt-inside-inner-col:before {
    top: 6rem;
    bottom: -20rem;
    left: 30%;
    right: 4rem;
}

.wdthIt_30 {
    width: 30%;
}

.wdthIt_40 {
    width: 40%;
}

.wdthIt_50 {
    width: 50%;
}

.wdthIt_60 {
    width: 60%;
}

/*HERO PAGE METIER*/
.page_header_model2 .ch_3 {
    transform: translateY(-3rem);
}

.page_header_model2 .ch_3>div:before {
    top: -5rem;
    bottom: -3rem;
    left: -28%;
    right: 4rem;
}





/*HERO PAGE ECO CONCEPTION*/
.kadence-column10_f514f6-75 {

    position: absolute;
    top: 0;
    /* Aligne le haut de la colonne droite avec le conteneur */
    right: 0;
    /* Aligne le côté droit */
    width: 55%;
    /* Assurez-vous que la largeur est réglée comme vous le souhaitez */
    z-index: 2;
}

/*---------------------------- RESPONSIVE */

@media (max-width: 1240px) {}


@media (max-width: 767px) {

    :root {

        --logo-size: 6rem;

        --global-xs-spacing: 1em;
        --global-sm-spacing: 1.5rem;
        --global-md-spacing: 2rem;
        --global-lg-spacing: 2.5em;
        --global-xl-spacing: 3.5em;
        --global-xxl-spacing: 5rem;
        --global-edge-spacing: 1.5rem;
        --global-boxed-spacing: 2rem;

        /* --------------------------- Font Size */
        --global-kb-font-size-xxl: 2.187rem !important;
        --global-kb-font-size-xl: 1.75rem !important;
        --global-kb-font-size-lg: 1.25rem !important;
        --global-kb-font-size-md: 1rem !important;

    }



    form ol.col_2 li {
        flex: 100%;
    }

    .acceptance .wpcf7-list-item>label {
        display: flex;
        align-items: flex-start;
    }

    .form_footer {

        flex-direction: column;
    }

    /* HEADER */
    .primary_header {
        padding: var(--global-xs-spacing, 1rem) var(--global-kb-spacing-md, 2rem);
        padding-bottom: 0;
    }
	/* HEROES */
    .wp-block-kadence-image .kb-image-ratio-square {
        padding-bottom: 100% !important;
    }

    .overlay_75 .kt-row-layout-overlay {
        margin-top: 4rem;
        height: 78%;
    }

    .wdthIt_40 {
        width: 100%;
    }

    /*HEADERS & Heros*/
    .page_header_model1 .ch_3 {
        grid-column: inherit !important;
        grid-row: inherit;
    }

    .full_height, .full_height>div {
        height: inherit !important;
    }
	
	
	
	
	
	/* Home */
.page_header_model1 .kb-row-layout-id7_4e84a7-2e>.kt-row-column-wrap {
    display: inherit;
    grid-template-columns: inherit;
    /* Deux colonnes de même largeur */
    grid-template-rows: inherit;
    /* Deux rangées */
    gap: inherit
    /* Espacement optionnel entre les enfants */
}

/* Enfant 1 - Texte */
.page_header_model1 .ch_1 {
    grid-column: inherit;
    /* Occupe les deux colonnes */
    grid-row: inherit;
    /* Sur la deuxième rangée pour être en dessous de l'enfant 2 */

}

/* Enfant 2 - Image */
.page_header_model1 .ch_2 {
    grid-column: inherit;
    /* Colonne 2 */
    grid-row: inherit;
    /* Occupe deux rangées */
}

/* Enfant 3 - Label */
.page_header_model1 .ch_3 {
    grid-column: inherit !important;
    /* Colonne 1 seulement */
    grid-row: inherit;
    /* Deuxième rangée */
}

.page_header_model1 .ch_2 * {
    height: inherit;
}

.page_header_model1 .ch_1 .kt-inside-inner-col:before {
    top: inherit;
    bottom: inherit;
    left: inherit;
    right: inherit;
}

.wdthIt_30, .wdthIt_40, .wdthIt_50 , .wdthIt_60 {
    width: 100%;
}

/*HERO PAGE METIER*/
.page_header_model2 .ch_3 {
    transform: none;
}

.page_header_model2 .ch_3>div:before {
    display:none;
}
/*HERO PAGE ECO CONCEPTION*/
.kadence-column10_f514f6-75 {

    position: static;
    top: 0;
    /* Aligne le haut de la colonne droite avec le conteneur */
    right: 0;
    /* Aligne le côté droit */
    width: inherit;
    /* Assurez-vous que la largeur est réglée comme vous le souhaitez */
    z-index: 2;
}
	.kb-row-layout-id12_f70679-e4, .kb-row-layout-id12_34a06d-dc{background:white;}
	/*--------------- SLIDER */
	.carousel_home .slick-track{
		left:inherit;
	}
	.kadence-blocks-gallery-item__caption{display:none;}
	
	/*——————————————— BLOG */
	.blog_page .latest_posts, .list_post {
    	display:block;
		width: 100%;
  		padding-top: var(--global-kb-spacing-xs, 1rem);
    	padding-right: var(--global-kb-spacing-xs, 1rem);
    	padding-bottom: 0px;
    	padding-left: var(--global-kb-spacing-xs, 1rem);
  	}
	.blog_page .latest_posts .entry-summary, .archive .list_post article:nth-child(1) .entry-summary{
		display:none;
	}
	.blog_page .latest_posts article, .archive .list_post article:nth-child(1) {
  		height: auto!important;
  		min-height: 15rem!important;
	}
	
	.posts_container aside, .single .the-content aside{display:none;}
	.archive .list_post article:nth-child(1) .entry-header, .archive .list_post article:nth-child(1) .entry-summary{
		width:100%;
	}
	
	.single .entry-content > article > header{
		flex-direction:column-reverse;
		margin-right:var(--global-kb-spacing-xs, 1rem);
		margin-left:var(--global-kb-spacing-xs, 1rem);
		margin-bottom:2rem;
		
	}
	.single .entry-content > article .intro{
		padding-right:var(--global-kb-spacing-xs, 1rem);
		padding-left:var(--global-kb-spacing-xs, 1rem);
	}
	.single .the-content > div{
		width:100%;
	}
	
	.single .entry-content > article .post-thumbnail{
		min-height:15rem;
	}
	.single .suggested_posts .list_post{
		display:block;
	}
	.single .the-content{
		padding-right:var(--global-kb-spacing-xs, 1rem);
		padding-left:var(--global-kb-spacing-xs, 1rem);
	}
	form ol.col_2, form ol.col_3{
		flex-direction:column;
	}
	
}
/*---------------------*/
@media (max-width: 1200px) {
    :root {
        --logo-size: 10rem;
    }

    .nav-menu {
        column-gap: 1rem;
    }
}

@media (max-width: 1140px) {
    :root {

        --logo-size: 8rem;
    }

    .menu-toggle {
        display: block;
    }

    nav div[class^="menu-menu-principal"] {
        position: fixed;
        left: 0;
        top: 100vh;
        /*background: var(--wp--preset--color--kb-palette-5);*/
        width: 100vw;
        z-index: 2000;
        justify-content: center;
        flex-direction: column;
        text-align: center;
        height: 91vh;
		height: 0;
        padding: var(--global-kb-spacing-md, 2rem);
        overflow: auto;
    }

    nav div[class^="menu-menu-principal"] .nav-menu>li {
        width: 100%;
        border-bottom: solid 1px #ddd9cd;

    }



}

/* |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| */
/* ||||||||||||||||||||||||||||||||||||||||||| TRANSITION DE PAGE */
/* |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| */

/* Style de l'overlay pour couvrir la page lors de la transition */
#page-transition-overlay {
    position: fixed;
    top: 0;
    right: 0;
    /* Positionné à droite de l'écran */
    width: 100vw;
    /* Largeur de l'overlay */
    height: 100vh;
    /* Hauteur de l'overlay */
    background-color: var(--wp--preset--color--kb-palette-5);
    /* Couleur de l'overlay */
    z-index: 9999;
    opacity: 0;
    /* Invisible par défaut */
    pointer-events: none;
    /* Aucune interaction lorsque l'overlay est invisible */
    animation-duration: 1s;
    /* Durée des animations */
    animation-fill-mode: forwards;
    /* Conserve le dernier état de l'animation */
    border-left: solid 0 white;
}


#page {
    opacity: 1;
    transition: all .5s;
}

body.active #page {
    opacity: 0;
    transition: all .5s;
}

@keyframes overlayEnter {
    0% {
        transform: translateX(100%);
        /* Commence complètement à droite */
        opacity: 1;
        /* Invisible au début */
        border-left: solid 80vw white;
    }

    100% {
        transform: translateX(0);
        /* Fin de l'animation, overlay visible */
        opacity: 1;
        border-left: solid 0 white;
        /* Rendre l'overlay visible */
    }
}

@keyframes overlayExit {
    0% {
        transform: translateX(0);
        /* Commence en position visible */
        opacity: 1;
        border-right: solid 0 white;
        /* Visible au début */
    }

    100% {
        transform: translateX(-100%);
        /* Fin de l'animation, overlay sort à droite */
        opacity: 1;
        border-right: solid 80vw white;

        /* L'overlay devient invisible */
    }
}

/* Classes pour contrôler les animations */
body.active #page-transition-overlay {
    animation-name: overlayEnter;
    /* Animation d'entrée */
}

body.active #page-transition-overlay:after {}

body:not(.active) #page-transition-overlay {
    animation-name: overlayExit;
    /* Animation de sortie */
}

/* Ajout d'un effet de fondu ou de spinner dans l'overlay */
#page-transition-overlay::before {
    content: '';
    position: absolute;
    bottom: 1rem;
    right: 1rem;
    transform: translate(-50%, -50%);
    width: 50px;
    height: 50px;
    border: 5px solid #fff;
    border-top-color: transparent;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    z-index: 200;
}

#page-transition-overlay .kt-inside-inner-col {
    align-items: center;
    min-height: 100vh;
}

@keyframes spin {
    0% {
        transform: translate(-50%, -50%) rotate(0deg);
    }

    100% {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}

