/*
Theme Name: C.lechantier
Description: C.lechantier Wordpress Theme
Author: Studio Sentria
Author URI: https://sentria.fr/
Version: 1.0
*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

:root {
    --clc-blue-1: #14324f;
    --clc-blue-2: #036cb9;
    --clc-blue-3: #2e9de6;
    --clc-blue-4: #cde2f1;
    --clc-orange-1: #fd9100;
    --clc-orange-2: #fda733;
    --clc-orange-3: #fac875;
    --clc-orange-4: #ffe3b3;
    --clc-peach-1: #ffebe4;
    --clc-peach-2: #fff2e4;
    --clc-peach-3: #f4efef;
    --clc-shadow: 0px 2px 6px 0px #4647540F;
    --clc-shadow-hovered: 0px 2px 20px 0px #4647540F;
}

::selection {
    background:var(--clc-orange-1)!important;
    color:#FFF;
    text-shadow:none;
}

@font-face {
    font-family: 'BootstrapIcons';
    src: url('../clechantier/fonts/bootstrap-icons.woff2') format('woff2');
    font-style: normal;
    font-weight: 100;
}

/* MAIN */

html {
    scroll-behavior: smooth;
}
.grecaptcha-badge { 
    visibility: hidden; 
}
body {
    color: var(--clc-blue-1);
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    -webkit-font-smoothing: antialiased;
}
body.page-template-configurateur-page {
    background-color: var(--clc-peach-2);
}
.lenis.lenis-smooth {
    scroll-behavior: auto;
}
h1, h2, h3, h4, h5, h6 {
  font-family: "Poppins", sans-serif;
}
h1, h2 {
    font-weight: 600;
    text-wrap: balance;
}
h2 {
    font-size: 2.5rem;
    margin-bottom: 1.25rem;    
}
a {
    color: var(--clc-blue-2);
    text-decoration: none;
    transition: all .3s ease-in-out;
}
.page-content {
    padding-top: 90px;
}
.container {
    padding-top: 4em;
    padding-bottom: 4em;
}
.container.heading-wrapper {
    padding-top: 0;
    padding-bottom: 0;
}
.btn {
    background-color: var(--clc-orange-1);
    border: 2px solid var(--clc-orange-1);
    border-radius: 50px;
    color: #fff;
    font-weight: 500;
    margin-top: 1rem;
    margin-bottom: 1rem;
    padding: 12px 24px;
    transition: all .3s ease-in-out;
}
.btn:hover {
    color: #fff;
    background-color: var(--clc-orange-2);
    border: 2px solid var(--clc-orange-2);
}
.btn:focus {
    box-shadow: none;
}
.btn-alt {
    background-color: transparent;
    color: var(--clc-blue-1);
}
.btn-alt:hover {
    background-color: var(--clc-orange-1);
    color: #fff;
}
.btn-light {
    background-color: #fff;
    border: 2px solid var(--clc-orange-1);
    color: var(--clc-blue-1);
}
.btn-light:hover {
    background-color: var(--clc-peach-3);
    border: 2px solid var(--clc-peach-3);
    color: var(--clc-orange-1);
}
.btn-details {
    display: block;
    text-align: center;
    font-size: .8rem;
    margin-bottom: 1rem;
}
.sub-btn {
    font-weight: 600;
    position: relative;
    transition: all .3s ease-in-out;
}
.sub-btn:hover {
    color: var(--clc-blue-1);
}
.sub-btn::before,
.sub-btn::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 2px;
    background: var(--clc-blue-1);
    top: 100%;
    left: 0;
    pointer-events: none;
    transform-origin: 100% 50%;
    transform: scale3d(0, 1, 1);
    transition: transform 0.3s;
}
.sub-btn:hover::before {
    transform-origin: 0% 50%;
    transform: scale3d(1, 1, 1);
}
.clc-video {
    border-radius: 22px;
    width: 100%;
}

/* HEADER */

header {
    background-color: #fff;
    z-index: 888;
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    transition: all .4s ease-in-out
}
.nav-up {
    top: -120px
}
header .container {
    padding-top: 30px;
    padding-bottom: 30px;
}
header .menu-logo {
    width: 100%;
}
header ul.navbar-nav {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    flex-direction: row;
    justify-content: flex-end;
}
header ul.navbar-nav li {
    font-size: 18px;
    padding: 0 20px;
    position: relative;
}
header ul.navbar-nav li.services-btn:after {
    color: var(--clc-blue-1);
    content: "\f229";
    font-family: "BootstrapIcons";
    font-size: 14px;
    margin-left: 7px;
    vertical-align: middle;
}
header ul.navbar-nav li a {
    color: var(--clc-blue-1);
    font-size: 1rem;
    font-weight: 500;
    padding: 5px 0;
    position: relative;
}
header ul.navbar-nav li.rdv-btn a {
    background-color: transparent;
    border: 2px solid var(--clc-orange-1);
    border-radius: 50px;
    padding: 12px 24px;
    transition: all .3s ease-in-out;
}
header ul.navbar-nav li.rdv-btn a:hover {
    background-color: var(--clc-orange-1);
    border: 2px solid var(--clc-orange-1);
    color: #fff;
}
header .menu-item a::before,
header .menu-item a::after {
    position: absolute;
    width: 100%;
    height: 2px;
    background: var(--clc-orange-1);
    top: 100%;
    left: 0;
    pointer-events: none;
}
header ul.navbar-nav li.rdv-btn a::before,
header ul.navbar-nav li.rdv-btn a::after {
    display: none;
}
header ul.navbar-nav li.contact-header-cta a::before,
header ul.navbar-nav li.contact-header-cta a::after {
    display: none;
}
header ul.navbar-nav li.contact-header-cta a .btn {
    margin-top: 0;
    margin-bottom: 0;
}
header .menu-item a::before {
    content: '';
}
header .menu-item a::before {
    transform-origin: 100% 50%;
    transform: scale3d(0, 1, 1);
    transition: transform 0.3s;
}

header .menu-item a:hover::before, header .current_page_item a:before {
    transform-origin: 0% 50%;
    transform: scale3d(1, 1, 1);
}

@keyframes lineUp {
    0% {
        transform-origin: 50% 100%;
        transform: scale3d(1, 0.045, 1);
    }

    50% {
        transform-origin: 50% 100%;
        transform: scale3d(1, 1, 1);
    }

    51% {
        transform-origin: 50% 0%;
        transform: scale3d(1, 1, 1);
    }

    100% {
        transform-origin: 50% 0%;
        transform: scale3d(1, 0.045, 1);
    }
}

header li a:after {
    content: '';
    transition: opacity 0.3s;
    opacity: 0;
    transition-delay: 0s;
}

header li a:hover::after {
    opacity: 1;
    transition-delay: 0.3s;
}
svg#clechantier-logo {
    overflow: visible;
}
svg#clechantier-logo path, svg#clechantier-logo rect, svg#clechantier-logo polygon {
    fill: var(--clc-blue-1);
}
svg#clechantier-logo circle {
    fill: var(--clc-orange-1);
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-15px);
  }
  60% {
    transform: translateY(-8px);
  }
}
#clechantier-logo:hover #first-dot {
  animation: bounce 1s ease-in-out;
}
#clechantier-logo:hover #second-dot {
  animation: bounce 1s ease-in-out;
  animation-delay: 0.1s;
}
.cmplz-cookiebanner .cmplz-logo img {
    max-width: 150px;
    height: auto;
}
body .cmplz-cookiebanner .cmplz-buttons .cmplz-btn {
    border-radius: 50px;
}
.menu-icon {
    position: relative;
    width: 50px;
    height: 50px;
    cursor: pointer
}
.menu-icon .menu-icon__checkbox {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    cursor: pointer;
    z-index: 2;
    -webkit-touch-callout: none;
    position: absolute;
    opacity: 0
}
.menu-icon div {
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    width: 22px;
    height: 12px
}
.menu-icon span {
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    background-color: var(--clc-orange-1);
    transition: all 0.2s cubic-bezier(.1,.82,.76,.965)
}
.menu-icon span:first-of-type {
    top: 0
}
.menu-icon span:last-of-type {
    bottom: 0
}
.menu-icon.active span:first-of-type,.menu-icon .menu-icon__checkbox:checked+div span:first-of-type {
    transform: rotate(45deg);
    top: 5px
}
.menu-icon.active span:last-of-type,.menu-icon .menu-icon__checkbox:checked+div span:last-of-type {
    transform: rotate(-45deg);
    bottom: 5px
}
.menu-icon.active:hover span:first-of-type,.menu-icon.active:hover span:last-of-type,.menu-icon:hover .menu-icon__checkbox:checked+div span:first-of-type,.menu-icon:hover .menu-icon__checkbox:checked+div span:last-of-type {
    width: 22px
}
#nos-clients .container-fluid {
    margin: 1em 0
}
#nos-clients .container-fluid .col-12 {
    padding: 0
}
.clients-slider .client-slide img {
    max-height: 140px;
    margin: 0 auto
}
.clients-slider-heading {
    display: block;
    text-align: center;
    font-size: 1.5rem;
}
header .services-mega-menu {
    background-color: #fff;
    position: absolute;
    top: 100%;
    left: 0;
    display: flex;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}
header .services-mega-menu.is-visible {
    opacity: 1;
    visibility: visible;
}
.mega-menu-title {
    font-size: 2rem;
    font-weight: 700;
    text-wrap: balance;
}
.mega-menu-item .menu-item-img {
    background-position: center;
    background-size: cover;
    border-radius: 22px;
    height: 100%;
    overflow: hidden;
}
.mega-menu-item .menu-item-title {
    color: var(--clc-blue-1);
    display: block;
    font-family: 'Poppins', sans-serif;
    font-size: 1.25rem;
    margin-bottom: .5rem;
    font-weight: 500;
    line-height: 1.2;
    transition: all .3s ease-in-out;
}
.mega-menu-item:hover .menu-item-title {
    color: var(--clc-orange-1);
}
.mega-menu-item .menu-item-excerpt {
    color: var(--clc-blue-1);
    font-size: .8rem;
    margin-bottom: .8rem;
}
.mega-menu-item .menu-item-debut-price {
    color: var(--clc-orange-1);
    font-size: .8rem;
}
.mega-menu-item .menu-item-debut-price span {
    font-weight: 600; 
}
header .menu-principal .mobile-item {
    display: none;
}

/* HOMEPAGE */

.home .hero-section, .page-template-landing .hero-section {
    align-items: center;
    background: linear-gradient(0deg, rgba(255, 235, 228, 0) 0%, rgba(255, 235, 228, 1) 50%, rgba(255, 235, 228, 0) 100%);
    display: flex;
    margin: 0 auto;
    margin-bottom: 40px;
    overflow: hidden;
    position: relative;
}
.hero-video-wrapper {
    background-color: var(--clc-peach-1);
    border-radius: 22px;
    height: 50vh;
    background-size: cover;
    background-position: center;
    position: relative;
    overflow: hidden;
}
#hero-video {
    border-radius: 22px;
    position: relative;
    width: 100%;
}
.hero-section .container {
    position: relative;
}
.hero-section .container .row {
    align-items: center;
}
.home .hero-section h1 {
    color: var(--clc-blue-1);
    margin-bottom: 1rem;
}
span.dot {
    color:var(--clc-orange-1);
}
.subtitle {
    font-size: 1.25rem;
}
.home .hero-section .subtitle {
    color: var(--clc-blue-1);
    display: block;
    margin-bottom: 1rem;
}
.hero-section img {
    border-radius: 22px;
    width: 100%;
}
.home-introduction {
    text-align: center;
}
.container.home-introduction {
    padding-bottom: 0;
}
.home-introduction .intro-blocks {
    align-items: stretch;
}
#nos-clients {
    background-color: var(--clc-orange-1);
    color: #fff;
    padding: 2em 0 0 0;
}
.page-template-offre #nos-clients {
    padding: 0;
}
.page-template-offre.page-id-547 #nos-clients {
    background-color: var(--clc-blue-1);
}
.page-template-offre #nos-clients .container-fluid {
    margin: 1em 0 0 0;
}
.h2-subtitle {
    display: block;
    font-size: 1.25rem;
    font-weight: 300;
    text-wrap: balance;
}
.faces {
    display: flex;
    justify-content: center;
    margin: 2em auto;
    position: relative;
}
.face-wrapper {
    background-color: var(--clc-peach-1);
    background-position: center;
    background-size: cover;
    border: 2px solid #fff;
    border-radius: 50%;
    height: 100px;
    width: 100px;
    margin-left: -20px;
    position: relative;
    z-index: 1;
}
.intro-block-wrapper {
    padding-right: 2em;
}
.intro-block {
    display: flex;
    flex-direction: column;
    background-color: var(--clc-blue-4);
    height: 100%;    
    border-radius: 22px;
    overflow: hidden;
    position: relative;
    transition: all .3s ease-in-out;
}
.intro-block-content {
    padding: 2em;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.intro-block:hover, .expertise-block:hover, .usage-block:hover {
    box-shadow: var(--clc-shadow-hovered);
}
.intro-block .upper-title {
    background-color: var(--clc-blue-1);
    border-radius: 0 50px 50px 50px;
    color: #fff;
    padding: 14px 20px;
    position: absolute;
    top: -28px;
    left: -28px;
}
.intro-block .upper-title:before {
    color: var(--clc-blue-4);
    content: "\f483";
    font-family: "BootstrapIcons";
    margin-right: 12px;
    vertical-align: bottom;
}
.intro-block .row.row-title-wrapper {
    --bs-gutter-x: 0;
}
.intro-block .row .row-title {
    background-color: var(--clc-blue-1);
    display: block;
    height: auto;
    padding: 2em;
}
.intro-block .row .row-title h3 {
    color: #fff;
    font-size: 2rem;
    font-weight: 600;
    margin-bottom: 0;
}
.intro-block .row div {
    display: grid;
    grid-template-rows: auto 1fr auto;
    height: 100%;
}
.intro-block h2 {
    margin-bottom: 1em;
}
.intro-block div.cta-row {
    align-self: end;
    display: flex;
    height: auto;
    justify-content: space-between;
    padding-top: 1em;
}
.intro-block .visual img {
    user-select: none;
    width: 150%;
}
.intro-block-wrapper:nth-child(2) .intro-block {
    background-color: var(--clc-orange-4);
}
.intro-block-wrapper:nth-child(2) .intro-block .row .row-title {
    background-color: var(--clc-orange-1);
}
.intro-block-wrapper:nth-child(2) .dot {
    color: var(--clc-blue-1);
}
.intro-block-wrapper:nth-child(2) .intro-block .upper-title {
    background-color: var(--clc-orange-1);
}
.intro-block-wrapper:nth-child(2) .intro-block .upper-title:before {
    color: var(--clc-orange-4);
    content: "\f33e";
}
.expertise-blocks {
    padding-top: 2em;
}
.expertise-block-wrapper {
    padding-top: 4em;
    padding-bottom: 4em;
}
.expertise-block {
    background-color: var(--clc-blue-4);
    border-radius: 22px;
    height: 100%;
    padding: 3em 2em 2em 2em;
    position: relative;
    transition: all .3s ease-in-out;
}
.expertise-block-wrapper:nth-child(2) .expertise-block {
    background-color: var(--clc-orange-4);
}
.expertise-block-wrapper:nth-child(3) .expertise-block {
    background-color: var(--clc-peach-1);
}
.expertise-block img {
    position: absolute;
    max-height: 100px;
    top: -50px;
    right: 25px;
    user-select: none;
    transition: all .3s ease-in-out;
}
.expertise-block-wrapper:nth-child(3) .expertise-block img {
    max-height: 120px;
    top: -70px;
}
.expertise-block:hover img {
    transform: translateY(-6px);
}
.expertise-block h3 {
    font-size: 1.5rem;
    margin-bottom: 1rem;
    position: relative;
}
.expertise-block h3:after, .value-block h3:after {
    content: ' ';
    position: relative;
    display: block;
    width: 16px;
    border: 2px solid var(--clc-blue-1);
    -moz-border-radius: 4px;
    -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
    margin-top: 10px;
    margin-bottom: 10px;
}
.upper-animation {
    margin: 0 auto;
    margin-bottom: 2em;
    max-width: 320px;
}
.anim-video {
    border-bottom: 2px solid var(--clc-orange-1);
    margin: 0 auto;
    max-width: 100%;
}
.page-template-offre #valeurs .upper-animation {
    max-width: 540px;
}
.page-template-offre #valeurs .anim-video {
    border-bottom: 0;
}
.hero-anim .anim-video {
    border-bottom: 0;
}
#raisons {
    background-color: var(--clc-blue-1);
    color: #fff;
    padding: 8em 0;
    background-repeat: no-repeat;
    background-position: top right;
}
.raisons-slider .slick-list {
    -webkit-mask-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0)), color-stop(5%, black));
    -webkit-mask-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, black 5%);
    mask-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0)), color-stop(5%, black));
    mask-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, black 5%);
    padding-left: 60px;
    padding-right: 60px;
}
.raisons-slider .slick-list .slick-track {
    display: flex;
}
#raisons .raison-slide {
    height: inherit;
    padding: 0 1em;
}
#raisons .raison-block {
    background-color: rgb(255 255 255 / 5%);
    border-radius: 22px;
    height: 100%;
    padding: 2em;
}
#raisons .raison-block h3 {
    font-size: 1.25rem;
    margin-bottom: 1.25rem;
}
#raisons .wrapper {
    max-width: 450px;
    float: inline-end;
}
.raisons-slider-arrows {
    display: flex;
    margin-top: 1em;
}

.raisons-slider-arrows button.slick-disabled {
    opacity: .25
}

.raisons-slider-arrows button {
    align-items: center;
    width: 48px;
    height: 48px;
    margin: 1em .25em;
    color: #fff;
    display: flex;
    background: transparent;
    border: 1px solid var(--clc-orange-1);
    border-radius: 50%;
    cursor: pointer;
    justify-content: center;
    transition: all .3s ease-in-out
}

.raisons-slider-arrows button:hover {
    background: var(--clc-orange-1);
    border: 1px solid var(--clc-orange-1);
}

.raisons-slider-arrows button svg {
    color: #fff;
    width: 24px;
    position: relative;
    transition: all .3s ease-in-out
}

.raisons-slider-arrows button svg path {
    fill: var(--clc-orange-1);
    transition: all .3s ease-in-out
}

.raisons-slider-arrows button:hover>svg path {
    fill: #fff
}
#confiance {
    background-color: var(--clc-blue-1);
    color: #fff;
    padding: 8em 0;
    background-repeat: no-repeat;
    background-position: top right;
}
.confiance-slider .slick-list {
    -webkit-mask-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0)), color-stop(5%, black));
    -webkit-mask-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, black 5%);
    mask-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0)), color-stop(5%, black));
    mask-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, black 5%);
    padding-left: 60px;
    padding-right: 60px;
}
.confiance-slider .slick-list .slick-track {
    display: flex;
}
#confiance .confiance-slide {
    height: inherit;
    padding: 0 1em;
}
#confiance .confiance-block {
    background-color: rgb(255 255 255 / 5%);
    border-radius: 22px;
    height: 100%;
    padding: 2em;
}
#confiance .confiance-block h3 {
    font-size: 1.25rem;
    margin-bottom: 1.25rem;
}
#confiance .wrapper {
    max-width: 450px;
    float: inline-end;
}
.confiance-slider-arrows {
    display: flex;
    margin-top: 1em;
}

.confiance-slider-arrows button.slick-disabled {
    opacity: .25
}

.confiance-slider-arrows button {
    align-items: center;
    width: 48px;
    height: 48px;
    margin: 1em .25em;
    color: #fff;
    display: flex;
    background: transparent;
    border: 1px solid var(--clc-orange-1);
    border-radius: 50%;
    cursor: pointer;
    justify-content: center;
    transition: all .3s ease-in-out
}

.confiance-slider-arrows button:hover {
    background: var(--clc-orange-1);
    border: 1px solid var(--clc-orange-1);
}

.confiance-slider-arrows button svg {
    color: #fff;
    width: 24px;
    position: relative;
    transition: all .3s ease-in-out
}

.confiance-slider-arrows button svg path {
    fill: var(--clc-orange-1);
    transition: all .3s ease-in-out
}

.confiance-slider-arrows button:hover>svg path {
    fill: #fff
}
.solution-blurb-wrapper {
    padding: 4em 0;
    position: relative;
}
.solution-blurb {
    position: relative;
}
.solution-blurb .blurb-content {
    background-color: var(--clc-peach-2);
    border-radius: 22px;
    height: 100%;
    min-height: 270px;
    margin: auto;
    margin-top: -40px;
    padding: 3em 2em 2em 2em;
    position: relative;
    text-align: left;
    transition: all .3s ease-in-out;
    width: 80%;
    z-index: 1;
}
.solution-blurb::before {
    content: '';
    position: absolute;
    top: 40px;
    left: 0;
    width: 100%;
    height: 1px;
    border-top: 2px solid var(--clc-orange-1);
    transform: translateY(-50%);
    z-index: 0;
    transition: all .3s ease-in-out;
}
.solution-blurb:hover .blurb-content {
    background-color: var(--clc-peach-1);
    transform: translateY(6px);
}
.solution-blurb:hover .step-number {
    background-color: var(--clc-orange-1);
    color: #fff;
    transform: scale(1.1);
}
.solution-blurbs .solution-blurb-wrapper:first-child .solution-blurb:before {
    -webkit-mask-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0)), to(25%, black));
    -webkit-mask-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, black 25%);
    mask-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0)), to(25%, black));
    mask-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, black 25%);
}
.solution-blurbs .solution-blurb-wrapper:last-child .solution-blurb:before {
    -webkit-mask-image: -webkit-gradient(linear, left top, right top, from(75%, black), to(rgba(0, 0, 0, 0)));
    -webkit-mask-image: linear-gradient(to right, black 75%, rgba(0, 0, 0, 0) 100%);
    mask-image: -webkit-gradient(linear, left top, right top, from(75%, black), to(rgba(0, 0, 0, 0)));
    mask-image: linear-gradient(to right, black 75%, rgba(0, 0, 0, 0) 100%);
}
.solution-blurb .step-number {
    background: #fff;
    border: 2px solid var(--clc-orange-1);
    border-radius: 100%;
    font-size: 1.75rem;
    font-weight: 600;
    margin: 10px auto;
    width: 80px;
    height: 80px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 2;
    transition: all .3s ease-in-out;
}
.solution-blurb h3 {
    font-size: 1.5rem;
    margin-bottom: 1rem;
}

/* PROJECT CARD */

.container.projets-grid {
    padding-top: 0;
    padding-bottom: 4em;
}
.projet-card {
    padding-top: 2em;
    padding-bottom: 2em;
}
.projet-card a {
    color: var(--clc-blue-1);
    cursor: pointer;
    position: relative;
}
.projet-card .projet-thumbnail {
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 300px;
    margin-bottom: 20px;
    background-color: var(--clc-peach-1);
    border-radius: 22px;
    display: flex;
    align-items: flex-end;
    position: relative;
    overflow: hidden;
}
.projet-card .projet-thumbnail div {
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all .4s ease-in-out;
}
.projet-card .projet-thumbnail div .see-video {
    background-color: var(--clc-orange-1);
    border-radius: 22px;
    color: var(--clc-peach-2);
    display: block;
    opacity: 0;
    padding: .5em 1em;
    transition: all .4s ease-in-out;
    transform: translateY(10px);
}
.projet-card:hover .projet-thumbnail div {
    transform: scale(102%);
}
.projet-card:hover .projet-thumbnail div .see-video {
    opacity: 1;
    transform: translateY(0px);
}
.projet-card .projet-infos {
    padding: 0 10px;
}
.projet-card .projet-headings {
    display: flex;
    justify-content: space-between;
    margin-bottom: .5em;
}
.projet-card .projet-headings h3 {
    font-size: 1rem;
    padding-right: .5em;
}
.projet-card .projet-headings h4 {
    color: var(--clc-blue-1);
    font-size: 1rem;
    font-weight: 200;
}
.projet-card .projet-thumbnail div .secteur-tags {
    display: block;
    position: absolute;
    left: 1.5em;
    top: 1.5em;
}
.secteur-tags span {
    background-color: transparent;
    border: 1px solid #fff;
    color: #fff;
    border-radius: 50px;
    font-size: .8rem;
    font-weight: 400;
    display: inline-block;
    margin-right: 6px;
    margin-bottom: 6px;
    padding: 4px 14px;
    text-shadow: 0px 0px 2px rgb(0 0 0 / 40%);
}
.projet-tags span {
    background-color: var(--clc-peach-1);
    border: 1px solid var(--clc-peach-1);
    border-radius: 50px;
    font-size: .8rem;
    font-weight: 200;
    display: inline-block;
    margin-right: 6px;
    margin-bottom: 6px;
    padding: 4px 14px;
}
.projet-card .projet-tags span:last-child {
    margin-right: 0;
}
.projets-grid .modal {
    height: 100vh;
    max-height: 100dvh;
}
.modal-backdrop.show {
    opacity: .9;
}
.container .modal-dialog {
    max-width: 1200px;
}
.container .modal-content {
    background-color: transparent;
    border: 0;
    z-index: 99999;
}
.container .modal-header {
    border-bottom: 0;
    padding: 1rem 1rem 0 1rem;
}
.container .modal-header .modal-titles {
    align-items: baseline;
    display: flex;
}
.container .modal-header .modal-titles h3 {
    color: var(--clc-blue-4);
    font-size: 1.25rem;
    padding-right: .5em;
}
.container .modal-header .modal-titles h4 {
    color: var(--clc-orange-4);
    font-size: 1rem;
    font-weight: 200;
    padding-right: .5em;
}
.container .modal-header button.close {
    background-color: transparent;
    border: 0;
    color: var(--clc-peach-3);
}
.container.yt-btn-container {
    padding-top: 0;
}
.yt-iframe {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    height: 0;
}
.yt-iframe iframe {
    border-radius: 22px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.vimeo-player {
    border-radius: 22px;
    position: relative;
    height: auto;
    max-width: 100%;
    overflow: hidden;
    padding-bottom: 56.25%;
}
.vimeo-player iframe {
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    margin-top: -1px;
}
.play-icon {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 40px);
    cursor: pointer;
    z-index: 2;
}
.play-icon-inner {
    display: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 42px;
    height: 51px;
    background: url('/wp-content/themes/clechantier/assets/triangle.svg') center/cover;
    filter: drop-shadow(0px 0px 5px rgb(0 0 0 / 1));
}

/* TESTIMONY CARD */

.avis-clients-container {
    margin: 4em 0;
}
.avis-block {
    margin-bottom: 2em;
}
.avis-block-wrapper {
    background-color: var(--clc-peach-1);
    border-radius: 22px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
    padding: 2em;
    position: relative;
    transition: all .3s ease-in-out;
    z-index: 1;
}
.avis-block-wrapper.with-photo {
    background-color: var(--clc-blue-1);
    background-position: center;
    background-size: cover;
    overflow: hidden;
}
.avis-block-wrapper.with-photo:after {
    position: absolute;
    background: var(--clc-blue-1);
    background: linear-gradient(0deg, rgba(20, 50, 79, 1) 0%, rgba(20, 50, 79, .5) 100%);
    content: ' ';
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 0;
}
.avis-block-wrapper .avis-content {
    position: relative;
    z-index: 1;
}
.avis-block-wrapper .avis-text {
    font-style: italic;
    margin-bottom: 1em;
}
.avis-block-wrapper .avis-text:after {
    content: url(../clechantier/assets/clechantier-quotes.svg);
    position: absolute;
    width: 230px;
    bottom: -3em;
    right: -1em;
    z-index: -1;
    opacity: .75;
}
.avis-block-wrapper.with-photo .avis-text:after {
    opacity: .05;
}
.avis-block-wrapper .avis-info span {
    display: block;
}
.avis-block-wrapper .avis-info {
    font-size: .8rem;
}
.avis-block-wrapper .avis-info .avis-name {
    font-weight: 700;
}
.avis-block-wrapper .avis-info .avis-job {
    font-size: .6rem;
}
.avis-block-wrapper .avis-info .avis-company {
    font-size: .6rem;
    font-weight: 700;
}
.avis-block-wrapper .avis-keywords {
    font-size: 1.75rem;
    font-weight: 600;
}
.avis-block-wrapper.with-photo .avis-content {
    color: #fff;
}
.usages-blocks {
    justify-content: center;
    margin: 4em 0;
}
.usage-block-wrapper {
    margin-bottom: 2em;
}
.usage-block {
    background-color: var(--clc-peach-1);
    border-radius: 22px;
    min-height: 420px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    opacity: .9;
    overflow: hidden;
    position: relative;
    transition: all .3s ease-in-out;
    z-index: 1;
}
.usage-block-link:hover .usage-block {
    opacity: 1;
    transform: scale(1.02);
}
.usage-block video {
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}
.usage-block:after {
    position: absolute;
    background: var(--clc-blue-1);
    background: linear-gradient(0deg, rgba(20, 50, 79, 1) 0%, rgba(20, 50, 79, 0) 100%);
    content: ' ';
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 0;
}
.usage-block-text {
    color: #fff;
    padding: 2em;
    position: relative;
    z-index: 1;
}
.usage-block-text h3 {
    font-size: 1.25rem;
}
.usage-block-text span {
    display: block;
    font-size: .8rem;
}
.usage-top-icon-wrapper {
    padding: 2em;
    position: absolute;
    top: 0;
    z-index: 1;
}
.usage-top-icon {
    background-color: var(--clc-orange-1);
    border-radius: 22px;
    color: #fff;
    height: 42px;
    width: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.usage-top-icon svg {
    position: absolute;
    transition: all .3s ease-in-out;
}
.usage-top-icon .bi-plus-lg {
    opacity: 0;
    transform: scale(.5);
}
.usage-block-link:hover .usage-top-icon .bi-plus-lg {
    opacity: 1;
    transform: scale(1.0);
}
.usage-block-link:hover .usage-top-icon .bi-play-fill {
    opacity: 0;
    transform: scale(.5);
}

/* FAQ */
#faq .accordion {
    margin-bottom: 6em;
    max-width: 700px;
}
#faq .accordion-button {
    color: var(--clc-blue-1);
    font-size: 1.5rem;
    padding: 2rem 0
}
#faq .accordion-body {
    padding: 1rem 0
}
#faq .accordion-button:focus {
    border: 0;
    box-shadow: none
}
#faq .accordion-button:not(.collapsed) {
    background-color: transparent;
    color: var(--clc-orange-1);
    box-shadow: none
}
#faq h3 {
    padding: 0
}
#faq .accordion-button::after {
    background-image: url(/wp-content/themes/clechantier/assets/clechantier-faq-arrows.svg);
    background-size: .75rem;
    background-position: center;
}
#faq .accordion-button:not(.collapsed)::after {
    
}
#faq .accordion-item {
    border-bottom: 1px solid var(--clc-orange-4)
}
.page-template-a-propos .hero-section {
    background-image: url(assets/clechantier-symbol-top-left.svg);
    background-repeat: no-repeat;
}
.value-block-wrapper {
    padding-top: 4em;
    padding-bottom: 4em;
}
.value-block {
    background-color: var(--clc-blue-4);
    border-radius: 22px;
    height: 100%;
    padding: 6em 2em 2em 2em;
    position: relative;
    transition: all .3s ease-in-out;
}
.value-block-wrapper:nth-child(2) .value-block {
    background-color: var(--clc-orange-4);
}
.value-block-wrapper:nth-child(3) .value-block {
    background-color: var(--clc-peach-1);
}
.value-block-wrapper:nth-child(4) .value-block {
    background-color: var(--clc-peach-2);
}
.value-block-wrapper:nth-child(5) .value-block {
    background-color: var(--clc-peach-3);
}
.value-block img {
    position: absolute;
    max-height: 62px;
    top: 1em;
    right: 1em;
    user-select: none;
}
.value-block h3 {
    font-size: 1.5rem;
    margin-bottom: 1rem;
    position: relative;
}

/* CONFIGURATEUR */

.multi-step-form .left-panel {
    background-color: #fff;
    border-radius: 28px;
    margin: 0 auto;
    padding: 1em;
}
.summary-block {
    background-color: var(--clc-blue-1);
    color: #fff;
}
.modal-configurateur .modal-content {
    background-color: var(--clc-orange-1);
}
.form-breadcrumb .breadcrumb {
    background-color: var(--clc-peach-2);
}
.form-breadcrumb .breadcrumb-item.active {
    color: var(--clc-orange-1);
}
.multi-step-form .type-film-name {
    color: var(--clc-blue-1);
}
.multi-step-form .type-film-desc {
    color: var(--clc-blue-1);
}
.multi-step-form .accordion-button::after {
    background-image: url(/wp-content/themes/clechantier/assets/clechantier-faq-arrows.svg);
    background-size: .75rem;
    background-position: center;
    position: absolute;
    bottom: 20px;
    right: 0;
}
.form-card, .option-card {
    background-color: var(--clc-peach-2);
    border: 2px solid var(--clc-peach-2);
}
.form-card .price {
    color: var(--clc-orange-1);
}
.form-card-wrapper input:checked + .form-card {
    border: 2px solid var(--clc-blue-1);
    background-color: var(--clc-blue-1);
    color: #fff;
}
input[type="range"] {
    background: var(--clc-peach-2);
}
input[type="range"]:hover {
    background: var(--clc-peach-1);
}
input[type="range"]::-webkit-slider-thumb {
    background: var(--clc-orange-1);
}
input[type="range"]::-moz-range-thumb {
    background: var(--clc-orange-1);
}
input[type="range"]::-ms-thumb {
    background: var(--clc-orange-1);
}
input[type="range"]::-webkit-slider-thumb:hover {
  background: var(--clc-orange-2);
}
input[type="range"]::-moz-range-thumb:hover {
  background: var(--clc-orange-2);
}
.camera-rental .form-group span {
    background-color: var(--clc-blue-1);
    color: var(--clc-peach-1);
}
.timelapse-options {
    border: 1px solid var(--clc-orange-4);
}
.options-heading {
    background-color: var(--clc-orange-4);
    color: var(--clc-orange-1);
}
.multi-step-form .form-check {
    background-color: var(--clc-peach-2);
}
.multi-step-form .option-montage-timelapse .form-check {
    background-image: url(https://clechantier.sentria.fr/wp-content/uploads/2025/02/montage-timelapse-clechantier.jpg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: right;
    background-blend-mode: multiply;
}
.multi-step-form label.form-check-label {
    color: var(--clc-blue-1);
    font-family: 'Inter';
}
.multi-step-form input[type="checkbox"] {
    border: 2px solid var(--clc-peach-1);
}
.multi-step-form input[type="checkbox"]:hover {
    background-color: var(--clc-blue-4);
    border-color: var(--clc-blue-1);
}
.multi-step-form .form-check.selected {
    background-color: var(--clc-blue-1);
}
.multi-step-form .form-check.selected label.form-check-label {
    color: #fff;
}
.multi-step-form input[type="checkbox"]:checked {
    background-color: var(--clc-orange-1);
    border-color: var(--clc-orange-1);
}
.modal-configurateur .disable-timelapse-video-option {
    background-color: transparent;
    border: 0;
    color: var(--clc-blue-1);
    font-weight: 500;
    margin-top: 1rem;
    margin-bottom: 1rem;
    padding: 0;
    text-decoration: underline;
    transition: all .3s ease-in-out;
}
.summary-block h4 {
    background-color: #fff;
    border-color: var(--clc-blue-1);
    color: var(--clc-blue-1);
}
.infos-contact label {
    font-family: "Poppins", sans-serif;
}
.infos-contact input, .infos-contact textarea {
    border-color: var(--clc-orange-3);
}
.infos-contact input:focus, .infos-contact textarea:focus {
    border-color: var(--clc-orange-1);
}
.infos-contact input::placeholder, .infos-contact textarea::placeholder {
    color: var(--clc-blue-4);
}
.privacy-policy-notice {
    background-color: var(--clc-peach-3);
}
.form-card-wrapper .form-card-description ul li:before {
    background-color: var(--clc-blue-1);
}
.form-card-wrapper input:checked + .form-card .form-card-description ul li:before {
    background-color: var(--clc-orange-1);
}
.multi-step-form .type-film-starter-price {
    border-left: 1px solid var(--clc-orange-1);
    color: var(--clc-orange-1);
}

/* TEMPLATE OFFRE */

.page-template-offre header .services-btn a:hover::before, .page-template-offre header .services-btn a:before {
    transform-origin: 0% 50%;
    transform: scale3d(1, 1, 1);
}
.page-template-offre .hero-section .container {
    padding-top: 2em;
}
.page-template-offre .breadcrumb {
    background-color: var(--clc-peach-2);
    border-radius: 50px;
    font-size: .8rem;
    font-weight: 500;
    margin-bottom: 2em;
    padding: 8px 16px;
}
.page-template-offre .breadcrumb .offre-anchor {
    color: var(--clc-orange-1);
    font-weight: 400;
}
.page-template-offre .breadcrumb .offre-upper-title {
    padding-left: .5rem;
    font-weight: 600;
}
.page-template-offre .breadcrumb .offre-upper-title::before {
    color: var(--clc-orange-3);
    float: left;
    padding-right: .5rem;
    color: #6c757d;
    content: var(--bs-breadcrumb-divider, ">");
}
.page-template-offre .breadcrumb .offre-upper-title-desc {
    font-style: italic;
    font-weight: 300;
    padding-left: .5rem;
}
.page-template-offre .breadcrumb .offre-upper-title-desc::before {
    color: var(--clc-orange-3);
    float: left;
    padding-right: .5rem;
    color: #6c757d;
    content: var(--bs-breadcrumb-divider, "|");
}
.zoom-section {
    overflow: hidden;
}
.zoom-section-wrapper {
    background-color: var(--clc-orange-1);
    display: block;
    position: relative;
}
.zoom-section-wrapper:after {
    background-color: #fff;
    background-image: url(/wp-content/themes/clechantier/assets/blue-stripe.png);
    content: '';
    background-size: contain;
    height: 22px;
    display: block;
}
.zoom-section-wrapper h2 {
    color: #fff;
}
.zoom-section-wrapper h2 .dot {
    color:var(--clc-blue-1);
}
.dropdown-section h2 {
    margin-bottom: 2em;
}
.dropdown-section-img {
    position: sticky;
    top: 100px;
}
.dropdown-section-img img {
    width: 100%;
}
.tiles-row {
    display: flex;
    flex-wrap: nowrap;
    gap: 1em;
}
.tiles-row .value-block {
    padding: 2em;
}
.chiffres-cles {
    background-color: var(--clc-peach-1);
    background-size: cover;
    background-position: center;
    background-blend-mode: luminosity;
    padding: 4em 0;
    position: relative;
}
.chiffres-cles:before {
    background: #fff;
    background: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, .75) 50%, rgba(255, 255, 255, 1) 100%);
    content: ' ';
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
}
.chiffres-cles .container {
    padding-top: 0em;
    padding-bottom: 0;
    position: relative;
}
.chiffres-cles-wrapper {
    background-color: var(--clc-blue-1);
    border-radius: 22px;
    color: #fff;
    padding: 2em;
}
.chiffres-cles-wrapper h2 {
    margin-bottom: 2rem;
}
.key-figures-row {
    display: flex;
}
.chiffres-cles-wrapper .row .key-number {
    border-right: 1px solid #fff;
}
.chiffres-cles-wrapper .row .key-number:last-child {
    border-right: 0;
}
.key-number-wrapper {
    color: var(--clc-orange-1);
    font-family: "Poppins", sans-serif;
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.2;
}
.key-number-wrapper .key-number-nbr {
    font-size: 3rem;
    font-weight: 600;
}
.key-number-text p {
    display: block;
    font-size: 1.25rem;
    font-weight: 400;
    line-height: normal;
    text-wrap: balance;
}
.page-template-offre .solution-blurbs {
    justify-content: center;
}
.offres-wrapper {
    background-color: var(--clc-peach-1);
    border-radius: 22px;
    padding: 4em 2em;
}
.offres-wrapper h2 {
    margin-bottom: 2em;
    text-align: center;
}
.offer-block {
    background-color: #fff;
    border: 2px solid;
    border-color: #fff;
    border-radius: 22px;
    display: flex;
    flex-direction: column;
    padding: 2em;
    position: relative;
    height: 100%;
}
.offer-block.popular {
    background-color: var(--clc-peach-2);
    border-color: var(--clc-orange-1);
    transform: scale(1.05);
}
.offer-block .hot-deal {
    background-color: var(--clc-orange-4);
    border: 2px solid var(--clc-orange-1);
    border-radius: 22px;
    color: var(--clc-blue-1);
    font-size: .8rem;
    font-weight: 500;
    padding: 6px 16px;
    position: absolute;
    top: -19px;
    left: 2em;
}
.offer-block .offer-header {
    display: block;
    margin-bottom: 1em;
}
.offer-block .offer-header h3 {
    font-size: 1.5rem;
    font-weight: 600;
}
.offer-block .offer-header .offer-main-info span {
    display: block;
}
.offer-block .offer-duration {
    color: var(--clc-orange-2);
    font-style: italic;
}
.offer-block .offer-pricing {
    font-size: 1.1rem;
    font-weight: 600;
}
.offer-block .offer-content {
    flex-grow: 1;
    font-weight: 300;
    margin-bottom: 1em;
}
.offer-block .offer-content ul {
    margin-bottom: 0;
    list-style: none;
    padding-left: 0;
}
.offer-block .offer-content ul li {
    margin-bottom: .5rem;
    position: relative;
    padding-left: 26px;
    line-height: 1.25rem;
}
.offer-block .offer-content ul li:before {
    content: "\f26e";
    font-family: "BootstrapIcons";
    font-weight: normal;
    position: absolute;
    left: 0;
    background-color: var(--clc-blue-1);
    color: white;
    width: 16px;
    height: 16px;
    line-height: 16px;
    text-align: center;
    top: 2px;
    border-radius: 50%;
    font-size: 1rem;
}
.offer-block .offer-cta {
    margin-top: auto;
}
.offer-block .offer-cta .btn {
    margin-bottom: 0;
}
.offres-wrapper .cta-wrapper {
    display: block;
    text-align: center;
    padding-top: 4em;
}

/* MASONRY GRID */

.gallery-grid {
    padding: 4em 0;
}
.masonry-grid {
    display: grid;
    grid-gap: 20px;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}
.masonry-item {
    overflow: hidden;
    padding: 10px;
    width: 50%;
}
.masonry-item img {
    border-radius: 22px;
    width: 100%;
    height: auto;
    display: block;
}

/* CONTACT FORM MODAL */

.modal.contact-form-modal .modal-dialog {
    max-width: 800px;
}
.modal.contact-form-modal .modal-content {
    border: 0;
    border-radius: 22px;
}
.modal.contact-form-modal .modal-body {
    padding: 2em;
}
.modal.contact-form-modal .modal-content .modal-header {
    background-blend-mode: multiply;
    background-color: var(--clc-blue-1);
    background-size: cover;
    background-position: center;
    border-bottom: 0;
    justify-content: center;
    padding: 3rem 1rem;
    position: relative;
}
.modal.contact-form-modal .modal-content .modal-header button {
    border: 0;
    background-color: transparent;
    position: absolute;
    top: 0;
    right: 0;
    padding: 1rem 2rem;
    z-index: 1;
}
.modal.contact-form-modal .modal-content .modal-header button span {
    color: var(--clc-orange-1);
    font-size: 2rem;
}
.modal.contact-form-modal .modal-content .modal-header .modal-title {
    color: #fff;
    text-align: center;
    z-index: 1;
}
.modal.contact-form-modal .modal-content .modal-header .modal-title span span {
    color: #fff;
}
.modal.contact-form-modal input, .modal.contact-form-modal textarea {
    border: 2px solid var(--clc-orange-3);
    color: var(--clc-blue-1);
    border-radius: 4px;
    font-family: Inter, sans-serif;
    font-size: 1rem;
    margin-bottom: 1em;
    padding: 6px 16px;
    width: 100%;
    transition: all .3s ease-in-out;
}
.modal.contact-form-modal label {
    display: block;
    font-size: 1.25rem;
    text-wrap: balance;
    margin-bottom: .5rem;
    font-family: "Poppins", sans-serif;
}
.altcha .altcha-label label {
    font-size: .8rem;
    margin-bottom: 0;
}
.modal.contact-form-modal input::placeholder, .modal.contact-form-modal textarea::placeholder {
    color: var(--clc-blue-4);
    font-style: italic;
}
.modal.contact-form-modal input:focus, .modal.contact-form-modal textarea:focus {
    border-color: var(--clc-orange-1);
    outline: none;
}
.modal.contact-form-modal input.wpcf7-submit {
    border: 2px solid var(--clc-orange-1);
    border-radius: 50px;
    color: #fff;
    margin-bottom: 1rem;
    padding: 12px 24px;
    transition: all .3s ease-in-out;
}
.modal.contact-form-modal input.wpcf7-submit:hover {
    color: #fff;
    background-color: var(--clc-orange-2);
    border: 2px solid var(--clc-orange-2);
}
.wpcf7 form .wpcf7-response-output {
    border: 0;
}

/* LANDING */

.page-template-landing header ul.navbar-nav li.contact-header-cta a.btn {
    margin-top: 0;
    margin-bottom: 0;
    padding: 12px 24px;
}
.page-template-landing .hero-ctas {
    display: flex;
    align-items: flex-start;
}
.page-template-landing .hero-ctas .btn:first-of-type {
    margin-bottom: .5rem;
}
.page-template-landing .secteur-block-wrapper {
    margin-bottom: 2em;
}
.page-template-landing .secteur-block {
    display: flex;
    flex-direction: column;
    background-color: var(--clc-peach-2);
    height: 100%;
    border-radius: 22px;
    overflow: hidden;
    position: relative;
    transition: all .3s ease-in-out;
}
.page-template-landing .secteur-block a {
    color: inherit;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.page-template-landing .secteur-block .secteur-heading {
    padding: 2em;
}
.page-template-landing .secteur-block .secteur-heading h3 {
    font-size: 1.25rem;
    font-weight: 600;
}
.page-template-landing .secteur-block .secteur-heading .secteur-desc {
    font-size: .8rem;
    line-height: normal;
}
.page-template-landing .secteur-block .secteur-heading .secteur-desc p {
    margin-bottom: 0;
}
.page-template-landing .secteur-block .secteur-visual {
    height: 380px;
    overflow: hidden;
}
.page-template-landing .secteur-block .secteur-visual .secteur-visual-img {
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all .4s ease-in-out;
}
.page-template-landing .secteur-block:hover .secteur-visual-img {
    transform: scale(102%);
}
#tarifs {
    background-color: var(--clc-peach-3);
}
.pricing-col-wrapper {
    border: 1px solid #fff;
    border-radius: 22px;
    overflow: hidden;
    height: 100%;
}
.pricing-col {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.pricing-col-wrapper .pricing-cta .btn {
    border-radius: 11px;
    width: 100%;
}
.pricing-table {
    padding: 4em 0 0 0;
}
.pricing-table .col-12 {
    margin-bottom: 2em;
}
.pricing-col .pricing-header {
    background-color: var(--clc-peach-2);
    padding: 2em 2em 1em 2em;
    min-height: 390px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.pricing-table .col-12:nth-child(2) .pricing-header {
    background-color: var(--clc-peach-1);
}
.pricing-table .col-12:nth-child(3) .pricing-header {
    background-color: var(--clc-orange-4);
}
.pricing-table .col-12:nth-child(3) .pricing-col .description {
    border-bottom: 1px solid var(--clc-orange-3);
}
.pricing-col .pricing-content {
    padding: 2em 2em 0em 2em;
}
.pricing-col h3{
    font-weight: 300;
    line-height: 2.25rem;
    margin-bottom: 1rem;
}
.pricing-col h3 strong {
    display: block;
    font-size: 2.5rem;
    font-weight: 600;
}
.pricing-col .description {
    border-bottom: 1px solid var(--clc-orange-4);
    margin-bottom: 1em;
    text-wrap: balance;
}
.pricing-col .pricing-from {
    font-size: .8rem;
    display: inline-block;
}
.pricing-col .pricing {
    font-size: 2rem;
    font-weight: 600;
}
.pricing-col .pricing .tax {
    font-size: 1.25rem;
    padding-left: 4px;
}
.pricing-col .pricing .frequency {
    font-size: 1rem;
    font-weight: 400;
}
.pricing-col .pricing .pricing-asterisk {
    font-size: 1rem;
    font-weight: 400;
}
.pricing-col .pricing .pricing-details {
    display: block;
    font-weight: 400;
    font-size: .6rem;
    font-style: italic;
}
.pricing-col .accordion-button.btn.options-btn {
    color: var(--clc-blue-1);
    border: 2px solid var(--clc-blue-1);
    border-radius: 50px;
    font-size: .8rem;
    font-weight: 600;
    width: 100%;
    background-color: transparent;
}
.pricing-col .accordion-button.btn.options-btn::after {
    background-image: url(/wp-content/themes/clechantier/assets/clechantier-faq-arrows.svg);
    background-size: .75rem;
    background-position: center;
    transition: all .3s ease-in-out;
}
.pricing-col .accordion-button.btn.options-btn:hover::after {
    background-image: url(/wp-content/themes/clechantier/assets/clechantier-faq-arrows-white.svg);
}
.pricing-col .accordion-button.btn.options-btn:not(.collapsed)::after {
    background-image: url(/wp-content/themes/clechantier/assets/clechantier-faq-arrows-white.svg);
}
.pricing-col .btn.options-btn:hover, .pricing-col .btn.options-btn:not(.collapsed) {
    background-color: var(--clc-blue-1);
    color: #fff;
}
.pricing-col .btn.options-btn .options-btn-details {
    font-weight: 400;
    font-size: .7rem;
    padding-left: 4px;
}
.pricing-col .pricing-options {
    background-color: var(--clc-blue-4);
    border-radius: 10px;
    padding: 1em 2em;
    font-size: .8rem;
}
.pricing-col .pricing-options .pricing-options-intro {
    display: block;
    font-weight: 600;
    font-style: italic;
    margin-bottom: 1em;
}
.pricing-col .features .details {
    display: block;
    font-size: .6rem;
    font-style: italic;
}
.pricing-col .features ul {
    list-style-type: none;
    padding-left: 0;
}
.pricing-col .features ul li {
    line-height: normal;
    margin-bottom: .75rem;
    padding-left: 30px;
    position: relative;
}
.pricing-col .features ul li:before {
    content: url(../clechantier/assets/orange-tick.svg);
    display: inline-block;
    position: absolute;
    height: 18px;
    left: 2px;
    width: 18px;
}
.pricing-col .pricing-options ul {
    list-style-type: none;
    padding-left: 0;
}
.pricing-col .pricing-options ul li {
    line-height: normal;
    margin-bottom: .5rem;
    padding-left: 24px;
    position: relative;
}
.pricing-col .pricing-options ul li:before {
    content: url(../clechantier/assets/blue-tick.svg);
    display: inline-block;
    position: absolute;
    height: 16px;
    left: 0px;
    width: 16px;
}
.pricing-col .pricing-options-wrapper {
    padding: 1em 2em;
}
.pricing-col .pricing-options-wrapper .accordion-item {
    background-color: transparent;
}

/* SINGLE POST */

.single-post h2 {
    font-size: 2rem;
}
.single-post img {
    border-radius: 22px;
}


/* 404 & MENTIONS LEGALES */

.error404 .mentions {
    min-height: 70vh;
    padding-top: 10em;
    padding-bottom: 7em;
    position: relative;
}
.error404 h1 {
    margin-bottom: 2rem;
}
svg#sentria-logo {
    display: block;
    fill: var(--clc-blue-1);
    height: 24px;
    transition: all .4s ease-in-out
}
svg#sentria-logo:hover {
    fill: var(--clc-orange-1);
}
.mentions {
    padding-top: 8em;
    padding-bottom: 8em;
}

/* FOOTER */

footer .footer {
    background: linear-gradient(0deg, rgba(255, 235, 228, 1) 0%, rgba(255, 235, 228, 0) 100%);
}
footer .footer h2 {
    margin-bottom: 2rem;
}
footer .text {
    max-width: 600px;
}
footer .sub-title {
    display: block;
    margin-bottom: 1rem;
    font-weight: 600;
    font-size: 1.25rem;
}
footer .text ol {
    list-style: none;
    counter-reset: item;
    font-size: 1.5rem;
    font-weight: 600;
    padding-left: 3.5rem;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}
footer .text ol li {
    margin-bottom: .5rem;
    counter-increment: item;
    position: relative;
}
footer .text ol li:before {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    content: counter(item);
    background: var(--clc-orange-3);
    border-radius: 100%;
    color: #fff;
    font-size: 1rem;
    width: 38px;
    height: 38px;
    left: -54px;
}
footer .credits {
    background-color: var(--clc-blue-1);
    color: #FFF;
}
footer .clechantier-footer-logo {
    display: block;
    max-width: 200px;
}
footer svg#clechantier-logo path, footer svg#clechantier-logo rect, footer svg#clechantier-logo polygon {
    fill: #fff;
}
footer .legals-row {
    font-size: .8rem;
}
footer .legals-row .legals {
    text-align: right;
}
footer .legals-row .legals a {
    color: #fff;
    font-weight: 600;
}
footer h3 {
    color: var(--clc-orange-1);
    font-size: 1rem;
}
footer .footer-menu-row {
    padding: 2rem 0;
}
footer .footer-menu-row ul {
    list-style-type: none;
    padding-left: 0;
}
footer .footer-menu-row ul li {
    line-height: 1.25rem;
    margin-bottom: .5rem;
}
footer .footer-menu-row ul li a {
    color: #fff;
}
footer .footer-menu-row ul li.contact-header-cta a {
    line-height: 1.25rem;
    margin-bottom: .5rem;
}
footer .footer-menu-row ul li a button, footer .footer-menu-row ul li a button:hover, .footer-menu-row ul li a button:focus {
    background-color: transparent;
    color: #fff;
    border: 0;
    margin: 0;
    padding: 0;
    line-height: 1.25rem;
    font-weight: 400;
}
footer .menu-principal .services-btn {
    display: none;
}
.social .nav-item .nav-link {
    font-size: 1.5rem;
}
.social .nav-item .nav-link:hover {
    color: var(--clc-orange-1);
}
footer .phone-ctas {
    align-items: center;
    display: flex;
}
footer .phone-ctas .btn {
    margin-right: 1em;
}
footer .phone-ctas .call-us {
    font-size: .8rem;
}
footer .phone-ctas .call-us a {
    color: var(--clc-blue-1);
    display: block;
    font-size: 1.25rem;
    font-weight: 700;
}
footer .phone-ctas .call-us a:before {
    color: var(--clc-orange-1);
    content: "\f5b4";
    font-family: "BootstrapIcons";
    margin-right: 6px;
    vertical-align: bottom;
}
footer .footer-cta-config-link {
    display: block;
    margin-top: 1em;
    height: 100%;
}
footer .footer-cta-config-wrapper {
    background-color: var(--clc-blue-1);
    background-position: center;
    background-size: cover;
    overflow: hidden;
    border-radius: 22px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-width: 500px;
    height: 300px;
    padding: 2em;
    position: relative;
    transition: all .3s ease-in-out;
    z-index: 1;
}
footer .footer-cta-config-wrapper:after {
    position: absolute;
    background: var(--clc-blue-1);
    background: linear-gradient(0deg, rgba(20, 50, 79, 1) 0%, rgba(20, 50, 79, .5) 100%);
    content: ' ';
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 0;
}
footer .footer-cta-config-wrapper .footer-cta-config {
    color: #fff;
    position: relative;
    z-index: 1;
}
footer .footer-cta-config-wrapper .footer-cta-config:after {
    content: url(../clechantier/assets/clechantier-quotes.svg);
    position: absolute;
    width: 230px;
    bottom: -3em;
    right: -1em;
    z-index: -1;
    opacity: .1;
}
footer .footer-cta-config-wrapper .footer-cta-config .btn-title {
    font-weight: 500;
    line-height: 1.2;
    font-family: "Poppins", sans-serif;
    font-size: 1.25rem;
}
footer .footer-cta-config-wrapper .footer-cta-config-content {
    align-items: center;
    justify-content: space-between;
    display: flex;
}
footer .footer-cta-config-wrapper .btn-icon {
    background-color: var(--clc-orange-1);
    border-radius: 22px;
    color: #fff;
    height: 42px;
    width: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
}
footer .footer-cta-config-wrapper .btn-icon svg {
    position: absolute;
    transition: all .3s ease-in-out;
}
.steppin-stone-wrapper {
    padding-right: 2em;
}
.steppin-stone {
    display: flex;
    border-bottom: 1px solid var(--clc-blue-1);
    margin-bottom: 2em;
    max-width: 600px;
}
.steppin-stone .img-wrapper {
    width: 40%;
}
.steppin-stone .steppin-title {
    padding-left: 1em;
    width: 60%;
}
.steppin-stone .title-wrapper {
    border: 1px solid var(--clc-orange-1);
    display: block;
    border-radius: 22px;
    padding: 2em;
    position: relative;
}
.steppin-stone .title-wrapper::before {
    content: "";
    display: block;
    width: 80px;
    height: 1px;
    background-color: var(--clc-orange-1);
    position: absolute;
    top: 80px;
    left: -80px;
}
.steppin-stone .title-wrapper::after {
    content: '';
    position: absolute;
    top: 8px;
    left: 8px;
    width: 100%;
    height: 100%;
    border: 1px solid var(--clc-orange-1);
    border-radius: 16px 28px 28px 28px;
    pointer-events: none;
    box-sizing: border-box;
}
.steppin-stone .title-wrapper h2 {
    margin-bottom: 0;
    text-align: center;
}
.faq-illustration {
    display: flex;
    justify-content: center;
    position: sticky;
    top: 100px;
}
.faq-illustration .faq-img {
    max-width: 240px;
}
.calendly-widget-wrapper {
    max-width: 370px;
    border: 1px solid var(--clc-blue-1);
    border-radius: 22px;
    margin: 0 auto;
    overflow: hidden;
}
.calendly-widget-wrapper .calendly-inline-widget {
    height: 500px;
}
h3.calendly-title {
    color: var(--clc-blue-1);
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 1rem;
    text-align: center;
}

/* MEDIA QUERIES */

@media (min-width: 1024px) {

}

@media (max-width: 1399px) {

}

@media (max-width: 1199px) {

}

@media only screen and (min-width: 992px) {
    header ul.navbar-nav li:last-child {
        padding-right: 0;
    }
}

@media only screen and (max-width: 991px) {
    h1 {
        font-size: 2.5rem;
    }  
    h2 {
        font-size: 2rem;
    }
    header .mobile-menu {
        height:0;
        visibility: hidden;
        background: #fff;
        flex-direction: column;
        opacity: 0;
        display: flex!important
    }
    header .mobile-menu .col-12 {
        text-align: center
    }
    header.active .mobile-menu {
        z-index: 999999;
        justify-content: center;
        height: auto;
        visibility: visible;
        padding: 3em 0;
        transition: all .4s ease-in-out;
        opacity: 1
    }
    header .row {
        --bs-gutter-x: 0
    }
    header .container {
        border-bottom: 0;
        padding-top: 20px;
        padding-bottom: 20px;
    }
    header ul.navbar-nav {
        flex-direction: column;
        letter-spacing: 1px;
        font-size: 22px;
        padding: .5em 0
    }
    header ul.navbar-nav li {
        padding: 10px 10px
    }
    header .menu-principal li::after {
        display: none
    }
    header .menu-principal li.contact-btn {
        margin-top: 14px;
    }
    .gallery-grid {
        padding: 1em 0;
    }
    .masonry-item {
        overflow: hidden;
        padding: 10px 0;
        width: 100%;
    }
    .solution-blurbs {
        overflow: hidden;
    }
    .solution-blurb::before {
        transform: translateY(-50%) rotate(90deg);
    }
    .intro-block .visual img {
        max-width: 200px;
    }
    .face-wrapper {
        height: 60px;
        width: 60px;
    }
    header .menu-principal .mobile-item {
        display: block;
    }
    header .menu-principal .services-btn {
        display: none;
    }
    .intro-block-wrapper {
        margin-bottom: 4em;
    }
    .intro-block {
        height: auto;
    }
    .intro-block .upper-title {
        left: -6px;
    }
    footer .footer-cta-config-link {
        width: 100%;
        height: 300px;
    }
    footer .footer-cta-config-wrapper {
        min-width: auto;
    }
    footer .phone-ctas {
        flex-direction: column;
        margin: 1em 0;
    }
    footer .legals-row .legals {
        text-align: left;
    }
    .tiles-row {
        flex-direction: column;
    }
    .value-block-wrapper {
        padding-top: 1em;
        padding-bottom: 1em;
    }
    .offres-wrapper .offres-col {
        margin-bottom: 3em;
    }
    .steppin-stone .title-wrapper {
        padding: 1.5em;
    }
    .steppin-stone .title-wrapper h2 {
        font-size: 1.25rem;
    }
    .steppin-stone .title-wrapper::before {
        width: 40px;
        top: 40px;
        left: -40px;
    }
    .chiffres-cles-wrapper .row .key-number {
        border-bottom: 1px solid #fff;
        border-right: 0;
        padding-bottom: 2em;
        padding-top: 2em;
    }
    .chiffres-cles-wrapper .row .key-number:last-child {
        border-bottom: 0;
    }
    .vimeo-player {
        display: none;
    }
    .page-template-landing .hero-ctas {
        flex-direction: column;
        align-items: center;
        margin-bottom: 2em;
    }
}

@media only screen and (min-width: 768px) {
    .hero-ctas .btn:first-of-type {
        margin-right: 1rem;
    }
}

@media only screen and (max-width: 767px) {

}
