@import "https://fonts.googleapis.com/css?family=Roboto+Mono:100";

:root{
    font-size:62.5%;
    --ff-bricolage-grotesque: "Bricolage Grotesque", sans-serif;
    --ff-gabarito: "Gabarito", sans-serif;
    --color-red: #e60023;
}
html{
    scroll-behavior:smooth;
    transition:all .5s ease
}
body{
    width:100%;
    height:100%;
    font-family: var(--ff-gabarito);
    font-size:1.6rem;
    color:#2c2121;
    overflow-x:hidden
}
html{
    width:100%;
    height:100%
}
@font-face{
    font-family:'Beauty';
    src:local('Beauty'),url(/media/font/Beauty.otf) format('opentype'),url(/media/font/Beauty.ttf) format('truetype')
}
body div.ppms_cm_consent_bar,body div.ppms_cm_consent_bar:focus,body div.ppms_cm_consent_bar:hover{
    width:calc(100% - 32px)!important;
    max-width:320px!important
}
#tarteaucitronRoot,
#tarteaucitronRoot *{
    font-family:'Bricolage Grotesque',Arial,sans-serif!important
}
#tarteaucitronRoot #tarteaucitronAlertBig{
    width:min(94vw,1120px)!important;
    left:50%!important;
    right:auto!important;
    bottom:1.6rem!important;
    top:auto!important;
    transform:translateX(-50%)!important;
    padding:1rem 1.2rem!important;
    border:1px solid rgba(42,45,46,.1)!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#2a2d2e!important;
    box-shadow:0 1rem 3rem rgba(42,45,46,.16)!important;
    text-align:left!important;
    box-sizing:border-box!important
}
#tarteaucitronRoot.tarteaucitronSize-bottom #tarteaucitronAlertBig,
#tarteaucitronRoot.tarteaucitronSize-top #tarteaucitronAlertBig{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:1rem!important
}
#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert{
    display:block!important;
    flex:1 1 auto!important;
    padding:0!important;
    margin:0!important;
    max-height:none!important;
    max-width:41rem!important;
    font-size:1.25rem!important;
    line-height:1.25!important;
    font-weight:500!important;
    color:#2a2d2e!important
}
#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert strong{
    color:#bd0003!important;
    font-weight:800!important
}
#tarteaucitronAlertBig #tarteaucitronPrivacyUrl,
#tarteaucitronAlertBig #tarteaucitronPrivacyUrlDialog,
#tarteaucitron #tarteaucitronPrivacyUrl,
#tarteaucitron #tarteaucitronPrivacyUrlDialog{
    color:#bd0003!important;
    background:transparent!important;
    padding:0!important;
    margin:.3rem 0 0!important;
    font-size:1.25rem!important;
    font-weight:700!important;
    text-decoration:underline!important
}
#tarteaucitronAlertBig #tarteaucitronPersonalize,
#tarteaucitronAlertBig #tarteaucitronPersonalize2,
#tarteaucitronAlertBig #tarteaucitronCloseAlert,
#tarteaucitronRoot button.tarteaucitronCTAButton,
#tarteaucitronRoot .tarteaucitronAllow,
#tarteaucitronRoot .tarteaucitronDeny{
    min-width:11rem!important;
    margin:.3rem!important;
    padding:.85rem 1.25rem!important;
    border:1px solid #46494a!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#2a2d2e!important;
    font-size:1.05rem!important;
    line-height:1.1!important;
    font-weight:800!important;
    letter-spacing:.02em!important;
    text-transform:uppercase!important;
    text-align:center!important;
    box-shadow:none!important;
    transition:background-color .25s ease,color .25s ease,border-color .25s ease,transform .25s ease!important
}
#tarteaucitronAlertBig #tarteaucitronPersonalize,
#tarteaucitronAlertBig #tarteaucitronPersonalize2,
#tarteaucitronRoot .tarteaucitronAllow{
    border-color:#bd0003!important;
    background:#bd0003!important;
    color:#fff!important
}
#tarteaucitronAlertBig #tarteaucitronCloseAlert{
    border-color:#fbe8eb!important;
    background:#fbe8eb!important;
    color:#2a2d2e!important
}
#tarteaucitronAlertBig #tarteaucitronPersonalize:hover,
#tarteaucitronAlertBig #tarteaucitronPersonalize2:hover,
#tarteaucitronRoot .tarteaucitronAllow:hover,
#tarteaucitronAlertBig #tarteaucitronCloseAlert:hover,
#tarteaucitronRoot .tarteaucitronDeny:hover{
    transform:translateY(-2px)!important
}
#tarteaucitronRoot #tarteaucitron{
    width:min(92vw,900px)!important;
    max-height:82vh!important;
    border-radius:2rem!important;
    overflow:hidden!important;
    border:1px solid rgba(42,45,46,.12)!important;
    background:#fff!important;
    color:#2a2d2e!important;
    box-shadow:0 2rem 7rem rgba(42,45,46,.22)!important
}
#tarteaucitronRoot #tarteaucitronServices .tarteaucitronMainLine{
    background:#f4f2f4!important;
    border:0!important
}
#tarteaucitronRoot #tarteaucitronServices{
    background:#fff!important;
    color:#2a2d2e!important
}
#tarteaucitronRoot #tarteaucitronServices .tarteaucitronLine,
#tarteaucitronRoot #tarteaucitronServices .tarteaucitronTitle,
#tarteaucitronRoot #tarteaucitronServices ul{
    background:#fff!important;
    color:#2a2d2e!important;
    border-color:#ededed!important
}
#tarteaucitronRoot #tarteaucitronServices .tarteaucitronTitle{
    background:#f4f2f4!important;
    padding:1.1rem 1.4rem!important
}
#tarteaucitronRoot #tarteaucitronServices .tarteaucitronLine{
    padding:1.2rem 1.4rem!important
}
#tarteaucitronRoot #tarteaucitronInfo{
    max-width:78%!important;
    margin:.8rem auto 2rem!important;
    padding:1.4rem 0!important;
    color:#2a2d2e!important;
    border-color:#d9d9d9!important;
    font-size:1.45rem!important;
    line-height:1.45!important
}
#tarteaucitronRoot .tarteaucitronH1,
#tarteaucitronRoot .tarteaucitronH2,
#tarteaucitronRoot .tarteaucitronH3{
    color:#2a2d2e!important;
    font-weight:800!important
}
#tarteaucitronRoot #tarteaucitronClosePanel{
    background:#bd0003!important;
    color:#fff!important;
    font-weight:800!important
}
#tarteaucitronRoot .tarteaucitronBorder{
    border-color:#ededed!important
}
#tarteaucitronRoot .tarteaucitronName{
    color:#2a2d2e!important
}
#tarteaucitronRoot .tarteaucitronAsk{
    white-space:nowrap!important
}
#tarteaucitronIcon #tarteaucitronManager{
    background:#fff!important;
    border-radius:999px 0 0 999px!important;
    box-shadow:0 .8rem 2rem rgba(42,45,46,.18)!important
}
@media screen and (max-width:767px){
    #tarteaucitronRoot #tarteaucitronAlertBig{
        width:calc(100vw - 2rem)!important;
        bottom:1rem!important;
        padding:1.6rem!important;
        border-radius:1.8rem!important;
        text-align:center!important
    }
    #tarteaucitronRoot.tarteaucitronSize-bottom #tarteaucitronAlertBig,
    #tarteaucitronRoot.tarteaucitronSize-top #tarteaucitronAlertBig{
        display:block!important
    }
    #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert{
        margin-bottom:1.3rem!important;
        font-size:1.35rem!important
    }
    #tarteaucitronAlertBig #tarteaucitronPersonalize,
    #tarteaucitronAlertBig #tarteaucitronPersonalize2,
    #tarteaucitronAlertBig #tarteaucitronCloseAlert,
    #tarteaucitronRoot button.tarteaucitronCTAButton{
        display:block!important;
        width:100%!important;
        margin:.6rem 0!important
    }
    #tarteaucitronRoot #tarteaucitron{
        width:calc(100vw - 2rem)!important;
        max-height:86vh!important;
        border-radius:1.6rem!important
    }
    #tarteaucitronRoot #tarteaucitronInfo{
        max-width:92%!important;
        font-size:1.25rem!important
    }
    #tarteaucitronRoot .tarteaucitronAsk{
        white-space:normal!important
    }
}
#typedtext{
    font-family:'Beauty',sans-serif;
    font-size:140px;
    font-weight:580;
    color:#fff;
    margin-bottom:6.5%;
    margin-right:12%;
    line-height:.75;
    height:200px
}
button,button:focus{
    outline:0
}
a,a:hover,a:active,a:visited{
    color:inherit
}
.text-underline{
    text-decoration:underline
}
.no-style{
    font-size:inherit;
    font-weight:inherit
}
ul,ol{
    margin-top:1rem
}
ol li{
    padding-left:1rem;
    margin-bottom:1rem
}
ol:last-child,ul:last-child{
    margin-bottom:0
}
section{
    padding:4% 0
}
section section{
    padding:2rem 0
}
section section:last-of-type{
    padding-bottom:0
}
.container+section:first-of-type{
    padding-top:0
}
p:last-of-type:not(.break,[class^="title-"]){
    margin-bottom:0
}
h1{
    font-size:inherit;
    line-height:3rem;
    font-weight:inherit;
    margin-bottom:2rem
}
.title-1,h2{
    color:#2a2d2e;
    font-size:3rem;
    font-weight:700;
    margin:2rem 0 4rem;
    line-height:1.2
}

#home h2 {
    font-family: var(--ff-bricolage-grotesque);
    font-size: min(10vw, 5rem);
    color: #2c2121;
    font-weight: 400;
}
#home h2 span {
    color: var(--color-red);
    font-weight: 200;
    display: inline-block;
    font-size: min(10vw, 6rem);
}

h2.small-h2{
    margin:3rem 0 2rem 0;
    font-size:3rem
}
h3.small-h3{
    margin:2rem 0 1rem 0;
    font-size:2rem
}
h1 span,h2 span{
    color:#b90018;
    font-size:2rem;
    font-weight:500;
    display:block;
    line-height:3rem
}
header .title-1{
    color:#fff;
    line-height:1
}
h3{
    color:#2a2d2e;
    font-weight:600;
    font-size:3rem;
    margin:40px 0 20px
}
h3.barre{
    text-align:center;
    position:relative
}
h3.barre>span{
    background-color:#fff;
    padding:0 10px;
    position:relative
}
h3.barre::before{
    content:'';
    background-color:#464849;
    border-bottom:1px solid #dedfdf;
    height:2px;
    display:block;
    left:0;
    position:absolute;
    top:50%;
    width:100%
}

.cta {
    display:inline-block;
    font-size:1.5rem;
    color:#46494a;
    border:2px solid #46494a;
    border-radius:30px;
    margin:15px 0 30px;
    padding: 1.5rem 2.5rem;
    font-weight:600;
    line-height:normal;
    position: relative;
}

.cta.arrow-left {
    padding:1.5rem 2.5rem 1.5rem 5rem;
}

.cta.arrow-left::before {
  content: '';
  background: url('/media/img/fleche.svg') no-repeat;
  width: 21px;
  height: 15px;
  position: absolute;
  left: 2rem;
  transition: all .3s ease-out;
  top: 50%;
  transform: translateY(-50%);
}
.cta:hover::before {
  filter: invert(100%) sepia(100%) saturate(1%) hue-rotate(318deg) brightness(103%) contrast(101%);
  transform: translateY(-50%) scaleX(-1);
}

.cta:hover .fa-inverse {color: #000;}

.bg-dark-gray .cta::before {filter: invert(100%) sepia(100%) saturate(1%) hue-rotate(318deg) brightness(103%) contrast(101%);}

.cta-icon-container{
    margin:0 -.5rem
}
.cta-icon{
    height:6rem;
    width:6rem;
    padding:0;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    border-radius:50%;
    font-size:2rem;
    font-weight:700;
    color:#46494a;
    border:1px solid #46494a;
    margin:2rem .5rem 0
}
button.cta,input.cta{
    background:none
}
.cta:hover,.cta:active,.cta:focus{
    color:#fff;
    text-decoration:none;
    background-color:var(--color-red) !important;
    border:2px solid var(--color-red)
}
.cta.white{
    border:1px solid #fff;
    color:#fff
}
.cta.white:hover,.cta.white:active,.cta.white:focus{
    border:1px solid var(--color-red)
}
.cta.red{
    border:1px solid #fff;
    background-color:#fff;
    color:#46494a
}
.cta.red:hover,.cta.red:active,.cta.red:focus,#header-video-agence:hover,#header-video-agence:active,#header-video-agence:focus{
    border:1px solid var(--color-red);
    background-color:var(--color-red);
    color:#fff
}

.cta.cta-red {
  color: #fff;
  background-color: var(--color-red) !important;
  border-color: transparent;
}
.cta.cta-red:hover {
  border-color: #46494a;
  color: #46494a;
  background-color: #fff !important;
}

/* CHARTE 2026 */

#header-home {
    background: url('/media/img/sourire-left.png') no-repeat left center;
    background-size: contain;
    padding: 1rem 1.5rem;
    min-height: 100%;
}

#header-home h1 {
  font-family: var(--ff-bricolage-grotesque);
  font-size: min(10vw, 6rem);
  color: #2c2121;
  font-weight: 800;
  line-height: 1;
  text-align: center;
  max-width: 800px;
}

#header-home h1 span {
  color: var(--color-red);
  font-weight: 400;
  font-size: inherit;
  display: inline-block;
  line-height: inherit;
}

#header-home h1 + p {
  font-size: 1.8rem;
  font-weight: 500;
  margin: 0 0 1.5rem;
}

.cta.no-arrow {
  padding: 1.5rem 2.5rem;
  display: flex;
  align-items: center;
  background-color: #fff;
}
.cta.no-arrow::before {display: none;}

#header-home .fa-circle {font-size: .75rem;}

#home section {padding: 2% 0;}

footer {margin-top: 2%;}

footer #footer-bloc1,
footer #footer-eco-badges,
footer #footer-bloc2 > div {
    padding: 2% 1.5rem;
}

footer #footer-bloc1,
footer #footer-eco-badges {
    color: #000000;
    font-size: 1.4rem;
    font-family: var(--ff-bricolage-grotesque);
    line-height: 1.2;
    background-color: #f0f0f0;
    border-radius: 4rem;
}

footer #footer-bloc1 > div,
footer #footer-eco-badges > div,
footer #footer-bloc2-left > div,
footer #footer-bloc2-right > div {
    margin: 1.5rem min(1vw, 2.5rem);
}

footer #footer-eco-badges {
    display: flex;
    flex-direction: column;
    gap: 0;
}

footer .footer-eco-main {
    width: 100%;
    gap: 2rem;
    align-items: center !important;
}

footer .footer-eco-badges-list {
    display: grid;
    margin: 2rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .6rem;
    flex: 1;
    min-width: 0;
}

footer .footer-eco-note {
    width: 100%;
    margin: 0 min(1vw, 2.5rem) 1.5rem;
    font-size: 1.6rem;
    line-height: 1.5;
    text-align: center;
}

footer .footer-eco-badge {
    min-width: 0;
    min-height: auto;
    padding: 1.8rem 1.55rem;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 1.6rem;
    background-color: #fff;
    color: #000;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    box-shadow: 0 .7rem 1.8rem rgba(0,0,0,.05), inset 0 0 0 0 rgba(189,0,3,0);
    transition: box-shadow .22s ease, background-color .22s ease, border-color .22s ease;
}

footer a.footer-eco-badge:hover,
footer a.footer-eco-badge:focus {
    color: #000;
    text-decoration: none;
    border-color: rgba(189,0,3,.22);
    background-color: #fff6f7;
    box-shadow: 0 .9rem 2.2rem rgba(0,0,0,.08), inset 0 0 0 2px rgba(189,0,3,.14);
}

footer .footer-eco-badge-label {
    font-size: 1.05rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

footer .footer-eco-title {
    min-width: 270px;
    font-size: 3rem;
    line-height: .95;
}

footer .footer-eco-title span {
    color: var(--color-red);
    font-size: inherit;
    line-height: inherit;
}

footer .footer-eco-badge strong {
    color: var(--color-red);
    font-size: 3rem;
    line-height: 1;
    margin: .6rem 0;
}

footer a.footer-eco-badge:hover strong,
footer a.footer-eco-badge:focus strong {
    transform: none;
}

footer .footer-eco-badge-ecograder {
    align-items: stretch;
    gap: .85rem;
}

footer .footer-ecograder-kpis {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    align-items: stretch;
    gap: .7rem;
    position: relative;
}

footer .footer-ecograder-kpis::after {
    content: "";
    position: absolute;
    top: 18%;
    bottom: 18%;
    left: 50%;
    width: 1px;
    transform: translateX(-50%);
    background-color: rgba(189,0,3,.22);
}

footer .footer-ecograder-main {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: .25rem;
    min-width: 0;
}

footer .footer-ecograder-main strong {
    color: var(--color-red);
    font-size: 3.2rem;
    line-height: .9;
    margin: 0;
}

footer .footer-ecograder-main span {
    font-size: 1.25rem;
    font-weight: 800;
}

footer .footer-ecograder-emissions {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: .2rem .4rem;
    color: #000;
    font-weight: 800;
    line-height: 1.1;
}

footer .footer-ecograder-emissions strong {
    color: var(--color-red);
    font-size: 2.15rem;
    line-height: 1;
    margin: 0 0 .15rem;
}

footer .footer-ecograder-emissions span {
    font-size: 1.05rem;
}

footer .footer-ecograder-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .5rem;
}

footer .footer-ecograder-stats span {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 4.35rem;
    padding: .5rem .3rem;
    border-radius: .9rem;
    background-color: #f7f7f7;
    font-size: .95rem;
    font-weight: 700;
    line-height: 1.05;
}

footer .footer-ecograder-stats strong {
    color: var(--color-red);
    font-size: 1.7rem;
    line-height: 1;
    margin: 0 0 .2rem;
}

footer .footer-carbon-rating {
    width: 100%;
    display: block;
}

footer .footer-carbon-rating > strong {
    display: none;
}

footer .footer-carbon-scale {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    overflow: hidden;
    border-radius: .9rem;
    border: 0;
    font-size: 1.6rem;
    font-weight: 800;
    line-height: 1;
}

footer a.footer-eco-badge:hover .footer-carbon-scale,
footer a.footer-eco-badge:focus .footer-carbon-scale {
    transform: none;
}

footer .footer-carbon-scale span {
    padding: .65rem .25rem;
    color: #fff;
    text-align: center;
}

footer .footer-carbon-scale span:nth-child(1) {background-color: #008f5f;}
footer .footer-carbon-scale span:nth-child(2) {background-color: #47aa42;}
footer .footer-carbon-scale span:nth-child(3) {background-color: #bdd63b; color: #000;}
footer .footer-carbon-scale span:nth-child(4) {background-color: #f1c232; color: #000;}
footer .footer-carbon-scale span:nth-child(5) {background-color: #ec7f25;}
footer .footer-carbon-scale span:nth-child(6) {background-color: #d5382f;}

footer .footer-carbon-scale .active {
    box-shadow: inset 0 0 0 2px #fff, inset 0 0 0 4px rgba(0,0,0,.35);
}

footer .footer-carbon-caption {
    display: block;
    color: #000;
    font-size: 1.15rem;
    font-weight: 800;
    text-transform: uppercase;
}

footer .footer-eco-badge > span:last-child {
    font-size: 1.4rem;
    line-height: 1.25;
}

footer .footer-eco-badge-green img {
    display: block;
    width: 180px;
    max-width: 100%;
    height: auto;
    margin: .3rem auto 0;
    opacity: .78;
}

footer .footer-eco-badge-green {
    gap: .9rem;
    overflow: hidden;
}

footer .footer-eco-badge-green strong {
    color: #000;
    font-size: 1.7rem;
    line-height: 1.05;
    margin: .2rem 0;
}

footer .footer-eco-badge-website-carbon {
    align-items: stretch;
    gap: .9rem;
    border-color: #fbe8eb;
    background-color: #fbe8eb;
    color: #000;
}

footer a.footer-eco-badge-website-carbon:hover,
footer a.footer-eco-badge-website-carbon:focus {
    color: #000;
    border-color: #fbe8eb;
    background-color: #fbe8eb;
    box-shadow: 0 .9rem 2.2rem rgba(0,0,0,.08), inset 0 0 0 2px rgba(189,0,3,.16);
}

footer a.footer-eco-badge-green:hover,
footer a.footer-eco-badge-green:focus {
    background-color: #fff;
    box-shadow: 0 .9rem 2.2rem rgba(0,0,0,.08), inset 0 0 0 2px rgba(189,0,3,.12);
}

footer .footer-eco-badge-website-carbon .footer-eco-badge-label {
    color: var(--color-red);
}

footer .footer-wc-summary,
footer .footer-wc-stat {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

footer .footer-wc-summary strong {
    color: var(--color-red);
    font-size: 3.6rem;
    line-height: 1;
    margin: 0;
}

footer .footer-wc-summary sup {
    font-size: 1.6rem;
}

footer .footer-wc-summary span {
    font-size: 1.08rem;
    font-weight: 800;
    line-height: 1.1;
    text-align: right;
    text-transform: uppercase;
}

footer .footer-wc-stat {
    padding: .7rem 0;
    border-top: 1px solid rgba(189,0,3,.18);
    border-bottom: 1px solid rgba(189,0,3,.18);
}

footer .footer-wc-stat strong {
    color: var(--color-red);
    font-size: 1.95rem;
    line-height: 1;
    margin: 0;
}

footer .footer-wc-stat span,
footer .footer-wc-note {
    color: #000;
    line-height: 1.25;
}

footer .footer-eco-badge-carbon {
    overflow: hidden;
}

footer .footer-eco-badge-carbon #wcb {
    min-height: 72px;
}

@media screen and (max-width: 1100px) and (min-width: 992px) {
    footer .footer-eco-main {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 1.5rem;
    }

    footer .footer-eco-title {
        min-width: 0;
        width: 100%;
        text-align: center;
        font-size: 3rem;
    }

    footer .footer-eco-title::after {
        left: 50%;
        transform: translateX(-50%);
        background-position: center bottom;
    }

    footer .footer-eco-badges-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    footer .footer-eco-badge-ecograder {
        grid-column: 1 / -1;
    }

    footer .footer-ecograder-kpis {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    footer .footer-ecograder-kpis::after {
        left: 50%;
    }

    footer .footer-ecograder-main strong {
        font-size: 3.8rem;
    }

    footer .footer-ecograder-emissions strong {
        font-size: 2.35rem;
    }

    footer .footer-ecograder-emissions span {
        font-size: 1.35rem;
    }

    footer .footer-ecograder-stats span {
        font-size: 1.05rem;
    }

    footer .footer-ecograder-stats strong {
        font-size: 1.95rem;
    }
}

#header-home .fa-stack,
footer #footer-bloc1 .fa-stack,
#home-contact .fa-stack {
    font-size: 1rem;
}

#header-home .fa-stack-2x,
footer #footer-bloc1 .fa-stack-2x,
#home-contact .fa-stack-2x {
    font-size: 2rem;
}

footer #footer-bloc2 {
    color: #000000;
    font-size: 1.2rem;
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
}

footer #footer-bloc2 > div {
    background-color: #fbe8eb;
    border-radius: 4rem;
}

footer #footer-bloc2-left {width: calc(40% - .75rem);}
footer #footer-bloc2-right {width: calc(60% - .75rem);}

footer #footer-bloc2-left a {
    display: block;
    white-space: nowrap;
    margin: 0 0 .35rem;
}

footer #footer-bloc2 .footer-membre {
    font-family: var(--ff-bricolage-grotesque);
    font-size: 1.3rem;
    font-weight: 800;
    text-transform: uppercase;
    margin: 0;
}

footer #logo-footer {max-height: 36px;}

footer .footer-title {
  font-weight: 800;
  font-size: 3.5rem;
  line-height: 1.1;
}

footer .footer-title::after {
  content: '';
  display: block;
  width: 100%;
  height: 30px;
  background: url('/media/img/sourire.png') no-repeat 30% bottom;
}

#home #notre-agence h2 {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10vh;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 3px;
  position: relative;
}

#home #notre-agence h2.picto::before {
  content: '';
  width: 100px;
  height: 100px;
}

#home #notre-agence h2 > a {
  display: flex;
  align-items: center;
}

#home #notre-agence h2 > a::after {
    content: '';
    background: url('/media/img/fleche-pointe.png') no-repeat right center, url('/media/img/fleche-barre.png') repeat-x left center;
    width: 15vw;
    height: 27px;
    display: inline-block;
}

#home #notre-agence h2 > a:hover {
    color: var(--color-red);
    text-decoration: none;
}

#home #notre-agence h2 > a:hover::after {
  filter: invert(12%) sepia(93%) saturate(6145%) hue-rotate(346deg) brightness(87%) contrast(108%);
}

#home #notre-agence h2 span {
  color: inherit;
  font-weight: inherit;
  font-size: inherit;
  position: relative;
  line-height: .75;
}

#home #notre-agence h2 span::before {
  content: '';
  position: absolute;
  background-color: #f4d8da;
  width: 95%;
  height: 100%;
  z-index: -1;
  border-radius: 3rem;
}

#home #notre-agence h2.picto-strategie::before {background: url('/media/img/picto-strategie-h100.jpg') no-repeat center center / contain;}
#home #notre-agence h2.picto-design::before {background: url('/media/img/picto-design-h100.jpg') no-repeat center center / contain;}
#home #notre-agence h2.picto-programmation::before {background: url('/media/img/picto-programmation-h100.jpg') no-repeat center center / contain;}
#home #notre-agence h2.picto-webmarketing::before {background: url('/media/img/picto-webmarketing-h100.jpg') no-repeat center center / contain;}

#home h3 {
    font-family: var(--ff-bricolage-grotesque);
    font-size: min(10vw, 4rem);
    font-weight: 800;
    color: #2c2121;
    margin: 0 0 2.5rem;
}

#home h3 span {
    color: var(--color-red);
    font-weight: 200;
    display: inline-block;
    font-size: min(10vw, 5rem);
}

#home h4 {
    font-family: var(--ff-bricolage-grotesque);
    font-size: 3rem;
    font-weight: 400;
    margin: 1.5rem 0 0;
}

#home-video {
    /*
    width: 100%;
    max-width: 640px;
    */
    aspect-ratio: calc(1580/554);
    max-height: 30vh;
    max-width: 1580px;
}

#home-video video,
#home-video .home-video-poster {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.title-sourire {
  font-size: 1.5rem;
  text-transform: uppercase;
  position: relative;
  display: inline-block;
  background: url('/media/img/sourire.png') no-repeat center bottom / 80px;
  padding-bottom: 18px;
}

#home-realisation figure .cont-img {
    transition: background-color .3s ease-out;
}

#home-realisation figure > a:hover {
    color: var(--color-red);
    text-decoration: none;
}
/*#home-realisation figure > a:hover img {transform: scale(1.1);}*/
#home-realisation figure > a:hover .cont-img::before {background-color: rgba(185,196,184,0);}
#home-realisation figure > a:hover .cont-img {box-shadow: 0 0 10px #afafaf;}

#home-realisation figure .cont-img {
    position: relative;
    border-radius: 2rem;
    aspect-ratio: 1.5;
    width: 100%;
    overflow: hidden;
    max-width: 320px;
    margin: 0 auto;
}

#home-realisation figure .cont-img::before {
    content: '';
    position: absolute;
    background-color: rgba(185,196,184,.5);
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

#home-realisation figure img {object-fit: cover; min-width: 100%; min-height: 100%;}

#home-realisation figure figcaption {
  padding-top: 1rem;
  font-family: var(--ff-bricolage-grotesque);
  line-height: 1.2;
  font-size: 1.5rem;
}

#home-realisation figure figcaption span {font-size: 2.8rem;}

#home-avis {padding: 2% 15px !important;}

#home-avis > .container {
    background: url('../img/sourire-right.png') no-repeat right top #fbe8eb;
    background-size: 45%;
    border-radius: 4rem;
    padding-top: 5vh;
    padding-bottom: 5vh;
}

#home-contact::before {
    content: '';
    background: #2c2121;
    position: absolute;
    left: -10%;
    width: 1px;
    height: 100%;
}

#slider-avis .starGoogle {height: 2rem; display: inline;}

#home-contact p {
    font-family: var(--ff-bricolage-grotesque);
    font-size: 3rem;
    margin-bottom: .5rem;
}

.bloc-gray {
    padding: 2% 1.5rem;
    background-color: #f0f0f0;
    border-radius: 4rem;
}

.bloc-gray > div {margin: 1.5rem min(1vw, 2.5rem);}

.bloc-gray p {
    font-size: 1.4rem;
    line-height: 1.4;
}

.rse-eco-score {
    display: grid;
    grid-template-columns: minmax(260px, .72fr) minmax(0, 1.6fr);
    gap: 2rem;
    align-items: stretch;
    margin: 3rem 0 4rem;
    padding: 2.5rem;
    background-color: #f0f0f0;
    border-radius: 4rem;
}

.rse-eco-score-note {
    grid-column: 1 / -1;
    margin: 0 min(1vw, 2.5rem) 1.5rem;
    font-size: 1.6rem;
    line-height: 1.5;
    text-align: center;
}

.rse-eco-score-main,
.rse-eco-score-intro,
.rse-eco-score-badges {
    margin: 1.5rem min(1vw, 2.5rem);
}

.rse-eco-score-main,
.rse-eco-score-intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.rse-eco-score .footer-eco-title {
    min-width: 270px;
    color: #000;
    font-family: var(--ff-bricolage-grotesque);
    font-size: 3rem;
    font-weight: 800;
    line-height: .95;
}

.rse-eco-score .footer-eco-title span {
    color: var(--color-red);
    font-size: inherit;
    line-height: inherit;
}

.rse-eco-score .footer-eco-title::after {
    content: '';
    display: block;
    width: 100%;
    height: 30px;
    background: url('/media/img/sourire.png') no-repeat 30% bottom;
}

.rse-eco-score-intro h3 {
    font-family: var(--ff-bricolage-grotesque);
    font-size: 3rem;
    line-height: 1;
    margin: 2rem 0 1rem;
}

.rse-eco-score-badges {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.2rem;
}

.rse-eco-badge {
    min-height: auto;
    padding: 1.8rem 1.55rem;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 1.6rem;
    background-color: #fff;
    color: #000;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    box-shadow: 0 .7rem 1.8rem rgba(0,0,0,.05), inset 0 0 0 0 rgba(189,0,3,0);
    transition: box-shadow .22s ease, background-color .22s ease, border-color .22s ease;
}

.rse-eco-badge:hover,
.rse-eco-badge:focus {
    color: #000;
    text-decoration: none;
    border-color: rgba(189,0,3,.22);
    background-color: #fff6f7;
    box-shadow: 0 .9rem 2.2rem rgba(0,0,0,.08), inset 0 0 0 2px rgba(189,0,3,.14);
}

.rse-eco-badge-label {
    font-size: 1.1rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.rse-eco-badge > strong {
    color: var(--color-red);
    font-size: 1.7rem;
    line-height: 1;
    margin: .2rem 0;
}

.rse-eco-badge > span:last-child {
    font-size: 1.4rem;
    line-height: 1.25;
}

.rse-eco-badge-green img {
    display: block;
    width: 180px;
    max-width: 100%;
    height: auto;
    margin: .3rem auto 0;
    opacity: .78;
}

.rse-eco-badge-ecograder {
    align-items: stretch;
    gap: .85rem;
}

.rse-ecograder-kpis {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    align-items: stretch;
    gap: .7rem;
    position: relative;
}

.rse-ecograder-kpis::after {
    content: "";
    position: absolute;
    top: 18%;
    bottom: 18%;
    left: 50%;
    width: 1px;
    transform: translateX(-50%);
    background-color: rgba(189,0,3,.22);
}

.rse-ecograder-main {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: .25rem;
    min-width: 0;
}

.rse-ecograder-main strong {
    color: var(--color-red);
    font-size: 3.2rem;
    line-height: .9;
    margin: 0;
}

.rse-ecograder-main span {
    font-size: 1.25rem;
    font-weight: 800;
}

.rse-ecograder-emissions {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: .2rem .4rem;
    color: #000;
    font-weight: 800;
    line-height: 1.1;
}

.rse-ecograder-emissions strong {
    color: var(--color-red);
    font-size: 2.15rem;
    line-height: 1;
    margin: 0 0 .15rem;
}

.rse-ecograder-emissions span {
    font-size: 1.05rem;
}

.rse-carbon-scale {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    overflow: hidden;
    border-radius: .9rem;
    font-size: 1.2rem;
    font-weight: 800;
    line-height: 1;
}

.rse-carbon-scale span {
    padding: .65rem .25rem;
    color: #fff;
    text-align: center;
}

.rse-carbon-scale span:nth-child(1) {background-color: #008f5f;}
.rse-carbon-scale span:nth-child(2) {background-color: #47aa42;}
.rse-carbon-scale span:nth-child(3) {background-color: #bdd63b; color: #000;}
.rse-carbon-scale span:nth-child(4) {background-color: #f1c232; color: #000;}
.rse-carbon-scale span:nth-child(5) {background-color: #ec7f25;}
.rse-carbon-scale span:nth-child(6) {background-color: #d5382f;}

.rse-carbon-scale .active {
    box-shadow: inset 0 0 0 2px #fff, inset 0 0 0 4px rgba(0,0,0,.35);
}

.rse-ecograder-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .5rem;
}

.rse-ecograder-stats span {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 4.35rem;
    padding: .5rem .3rem;
    border-radius: .9rem;
    background-color: #f7f7f7;
    font-size: .95rem;
    font-weight: 700;
    line-height: 1.05;
}

.rse-ecograder-stats strong {
    color: var(--color-red);
    font-size: 1.7rem;
    line-height: 1;
    margin: 0 0 .2rem;
}

.rse-eco-badge-carbon {
    align-items: stretch;
    gap: .9rem;
    border-color: #fbe8eb;
    background-color: #fbe8eb;
}

.rse-eco-badge-carbon:hover,
.rse-eco-badge-carbon:focus {
    background-color: #fbe8eb;
}

.rse-eco-badge-carbon .rse-eco-badge-label {
    color: var(--color-red);
}

.rse-carbon-summary,
.rse-carbon-stat {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.rse-carbon-summary strong {
    color: var(--color-red);
    font-size: 3.6rem;
    line-height: 1;
    margin: 0;
}

.rse-carbon-summary sup {
    font-size: 1.6rem;
}

.rse-carbon-summary span {
    font-size: 1.08rem;
    font-weight: 800;
    line-height: 1.1;
    text-align: right;
    text-transform: uppercase;
}

.rse-carbon-stat {
    padding: .7rem 0;
    border-top: 1px solid rgba(189,0,3,.18);
    border-bottom: 1px solid rgba(189,0,3,.18);
}

.rse-carbon-stat strong {
    color: var(--color-red);
    font-size: 1.75rem;
    line-height: 1;
    margin: 0;
}

.rse-carbon-stat span {
    font-size: 1.12rem;
}

.rounded-64 {
  width: 64px;
  height: 64px;
  background-color: #fff;
  border-radius: 50%;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding-top: 3px;
}

.row-abs-plus {
  position: relative;
}

.row-abs-plus::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 10px;
  width: 120px;
  height: 65px;
  background: url('/media/img/puce-plus.png') no-repeat center center;
  transform: translate(-50%, 50%);
}

.custom-accordion2 .card {border: 0;}

.custom-accordion2 .card-header {
  border: 0;
  border-bottom: 1px solid #9d9797;
  background: none;
  padding-left: 0;
  padding-right: 0;
}

.custom-accordion2 h5 button {
  font-size: 2.2rem;
  font-weight: 200;
  font-family: var(--ff-bricolage-grotesque);
  color: #000000;
  padding: 0 3.5rem 0 0;
  width: 100%;
  text-align: left;
  position: relative;
}

.custom-accordion2 h5 button::after {
  content: '\f107';
  font-family: 'FontAwesome';
  position: absolute;
  right: 1rem;
  top: 50%;
  font-size: 3rem;
  transform: translateY(-50%);
  transition: all .3s ease-out;
  line-height: 3rem;
}

.custom-accordion2 h5 button.open::after {
  transform: translateY(-50%) rotate(180deg);
}

.custom-accordion2 h5 button:focus {
  outline: none;
  box-shadow: none;
  text-decoration: none;
}

.custom-accordion2 h5 button:hover {
  text-decoration: none;
  color: var(--color-red);
}

.custom-accordion2 .card-body {
  background-color: #f0f0f0;
  font-size: 1.8rem;
  font-weight: 200;
  font-family: var(--ff-bricolage-grotesque);
  line-height: 1.4;
  border-bottom: 1px solid #9d9797;
}

.custom-accordion2 .card-body p {
  line-height: 1.4;
}

.custom-accordion2 .card-body :first-child {
  margin-top: 0;
}

/* FIN CHARTE 2026 */

.mob-bloc-cta .cta{
    margin:0 5px 15px
}
.font-weight-semi-bold{
    font-weight:600!important
}
.font-size-14{
    font-size:1.4rem
}
.bg-gray{
    background-color:#f4f2f4
}
.bg-dark-gray{
    background-color:#282b30
}
.color-red,a.color-red{
    color:#bc0004
}
.color-dark-gray{
    color:#282b30
}
.color-gray-small{
    font-size:1.4rem;
    color:#72787a
}
.py-5p{
    padding-top:5%;
    padding-bottom:5%
}
.pb-5p{
    padding-bottom:5%
}
p{
    margin-bottom:0rem;
    line-height:3rem;
    margin-top:1.5rem
}
.z-index99{
    z-index:99
}
.video-responsive{
    overflow:hidden;
    padding:0 0 56.25% 0;
    margin-bottom:20px;
    position:relative;
    height:0;
    width:100%
}
.video-responsive iframe{
    left:0;
    top:0;
    height:100%;
    width:100%;
    position:absolute
}
.small-picto{
    max-height:230px
}
header.entete{
    background:#9d0014;
    height:350px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    padding:0;
    overflow:hidden
}
header.entete .title-1{
    margin:0;
    text-align:center;
    text-shadow:0 0 9px #000
}
#scrollTop{
    display:none;
    position:fixed;
    bottom:15%;
    right:5%;
    border-radius:50%;
    background-color:rgba(0,0,0,.5);
    color:#fff;
    font-size:30px;
    padding:6px 12px;
    line-height:30px;
    z-index:999
}
#scrollTop:hover{
    background-color:rgba(227, 2, 41, .75);
}
.slick-1-slide .slick-dots>li{
    display:inline-block
}
.slick-1-slide .slick-dots>li>button{
    font-size:0;
    background-color:#c3c2c3;
    width:10px;
    height:10px;
    border-radius:50%;
    margin:0 5px;
    padding:0;
    border:0;
    outline:none
}

#home-avis  .slick-1-slide .slick-dots>li>button{
    width:6px;
    height:6px;
    background-color: #2c2121;
}

.slick-1-slide .slick-dots>li.slick-active>button{
    background-color:#bc0004;
}

#home-avis .slick-1-slide .slick-dots>li.slick-active>button{
    background-color:var(--color-red);
    width:12px;
    height:12px;
    margin: 0 2px;
}

.slick-1-slide .slick-slide,.slick-1-slide .slick-slide a,.slick-1-slide .slick-slide a:hover,.slick-1-slide .slick-slide a:active,.slick-1-slide .slick-slide a:visited{
    color:#72787a
}
.slick-1-slide .slick-slide>div{
    font-size:1.6rem;
    margin-bottom:3rem
}
#home-avis .slick-1-slide .slick-slide>div {margin-bottom: 2.4rem;}
.slick-1-slide .slick-slide>div>p{
    margin-bottom:0
}
.slick-1-slide .slick-slide>div+p{
    font-size:1.4rem;
    line-height:2rem;
}
#home-avis .slick-1-slide .slick-slide p{
    font-size:1.6rem;
    line-height:2.5rem;
    color: #2c2121;
}
#home-avis .slick-1-slide .slick-slide p.avis-auteur {font-size: 1.3rem;}

#home-avis .slick-dots {padding-left: 0;}

.slick-1-slide .slick-slide>div+p span{
    font-size:1.6rem;
    color:#2a2d2e;
    font-weight:500
}
nav#main-nav {
    height:104px;
    box-shadow:0 0 15px #bebebe;
    position:fixed;
    bottom:100%;
    left:0;
    width:100%;
    z-index:999;
    background-color:#fff;
    text-align:left;
    transition:all .5s ease-out
}
nav ul{
    list-style:none;
    padding:0;
    margin:0
}
#main-nav #list-nav-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
}
#main-nav #cont-logo,
#main-nav #menu-btn {z-index: 1005;}

#main-nav #cont-logo a {
    display: inline-block;
}

#main-nav #logo-nav {
    transition: transform .22s ease, opacity .22s ease;
}

#main-nav #cont-logo a:hover #logo-nav,
#main-nav #cont-logo a:focus #logo-nav {
    transform: scale(.96);
    opacity: .88;
}

#main-nav #list-nav-top > li {position: relative;}
#main-nav #list-nav-top > li:not(.no-hover):hover::after,
#main-nav #list-nav-top > li.open::after {
    content: '';
    background-color: var(--color-red);
    position: absolute;
    bottom: -.5rem;
    left: 0;
    width: 100%;
    height: 3px;
    border-radius: 2px;
}

nav#main-nav>div:nth-child(1){
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:10px 15px;
    height:100%
}
nav#main-nav #menu-btn{
    color:#2a2d2e;
    font-weight:300;
    text-transform:uppercase;
    border:0;
    font-size:1.8rem;
    background:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 25' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(42, 45, 46, 1)' stroke-width='4' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E") no-repeat top right;
    padding:0;
    outline:none;
    width:40px;
    height:30px;
    overflow:hidden
}
nav#main-nav #menu-btn:hover{
    background:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 25' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(189, 0, 3, 1)' stroke-width='4' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E") no-repeat top right
}
nav#main-nav #list-nav-top>li{
    display:inline-block;
    margin:0 15px;
    text-transform:uppercase;
    font-size: 1.9rem;
}
nav#main-nav #list-nav-top>li:hover,nav #list-nav-top>li>a:hover{
    text-decoration:none;
    cursor:pointer
}
nav#main-nav #menu-btn::before{
    content:''
}
nav#main-nav #menu-btn.open{
    background:none
}
nav#main-nav #menu-btn.open::before{
    content:'x';
    transform:scaleX(1.5);
    font-size:2.7rem;
    display:block
}
nav#main-nav #menu-btn.open:hover:before{
    color:var(--color-red)
}
nav#main-nav+*:not(#home-header, #header-home) {margin-top:104px}

#bloc-nav-cta {
    position:fixed;
    top:150px;
    left:100%;
    width:6rem;
    display:flex;
    flex-direction:column;
    align-items:center;
    background-color:var(--color-red);
    padding:15px 0;
    z-index:100;
    transition:all .5s ease-out;
    justify-content:center;
    border-radius: 3rem;
    text-align: center;
    line-height: 1;
    color: #fff;
    text-transform: uppercase;
    font-size: 1rem;
}
nav.open #bloc-nav-cta{
    transform:translateX(-100%)
}
#bloc-nav-cta > div {
  padding: 1.5rem 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 75%;
}
#bloc-nav-cta > div + div {
  border-top: 1px solid;
}
#bloc-nav-cta a {
    font-size:1rem;
    color:#fff;
}
#bloc-nav-cta a:hover,#bloc-nav-cta a:hover,#bloc-nav-cta a:hover{
    color:#4e000c;
    text-decoration: none;
}
#bloc-nav-cta a:hover img {filter: invert(1);}

#bloc-nav-cta .fa-google,
#bloc-nav-cta .fa-facebook,
#bloc-nav-cta .fa-linkedin {
  font-size: 2rem;
}

#bloc-nav-cta .fa-star {
  font-size: 0.8rem;
}

.tooltips{
    position:relative
}
.tooltips::before{
    background-color:#fff;
    width:210px;
    position:absolute;
    top:50%;
    right:100%;
    box-shadow:0 0 10px #46494a;
    font-size:1.2rem;
    text-transform:uppercase;
    font-weight:700;
    color:#46494a;
    transform:translateY(-50%);
    padding:10px 15px;
    margin-right:5px;
    text-align:center;
    border-radius:30px
}
.tooltips._envelope:hover::before{
    content:'Demander un devis gratuit ou une information'
}
.tooltips._google:hover::before{
    content:'Voir nos avis sur Google'
}
.tooltips._facebook:hover::before{
    content:'Suivre notre page Facebook';
    width:170px
}
.tooltips._linkedin:hover::before{
    content:'Suivre Jerome Baboulet sur LinkedIn';
    width:200px
}
#menu-cont{
    display:none;
    position:absolute;
    overflow-y:auto;
    margin:0 auto;
    height:100vh;
    width:100%;
    z-index:1010;
    text-align: center;
}
#menu {
    padding: 2vh 3vw;
    display: inline-block;
    background-color: #fff;
    box-shadow: 0 0 15px #bebebe;
    border-bottom-left-radius: 2rem;
    border-bottom-right-radius: 2rem;
    min-width: 30%;
}
#menu .bloc-menu {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
#menu .titre-menu{
    color:#2a2d2e;
    font-weight:600;
    font-size:2.4rem;
    margin-bottom:2.5rem;
    display:block;
    text-align:right
}
#menu .toggled .titre-menu{
    text-align:center
}
#menu .toggled{
    text-align:center
}
#menu .titre-sub-menu{
    position:relative
}
#menu .link-metier a {
    color:#2c2121;
    margin-bottom:.5rem;
    display:inline-block;
}
#menu .link-metier a.titre-sub-menu {
    font-size:1.6rem;
    color:var(--color-red);
    font-weight: 500;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
#menu .link-metier a.titre-sub-menu:hover::after {
  content: '';
  background: url('/media/img/fleche.svg') no-repeat;
  width: 21px;
  height: 15px;
  display: inline-block;
  margin-left: .5rem;
  filter: invert(12%) sepia(93%) saturate(6145%) hue-rotate(346deg) brightness(87%) contrast(108%);
}
#menu .link-metier a:hover{
    color:var(--color-red);
    text-decoration:none
}

#menu #list-menu-agence{
    margin-bottom:2.5rem
}
#menu .titre-sub-menu{
    font-size:1.4rem;
    text-transform:uppercase;
    font-weight:500;
    margin-bottom:1rem;
    display:block
}
#menu #list-menu-agence a,#menu #list-menu-agence a:hover{
    color:#312d32
}

#menu .titre-barre,
#menu .titre-barre>span,
#menu-cont:not(.mega-menu) #menu-agence.toggled .titre-menu,
#menu-cont:not(.mega-menu) #menu-agence.toggled .titre-menu>span {
    position:relative
}
#menu .titre-barre>span,
#menu-cont:not(.mega-menu) #menu-agence.toggled .titre-menu>span{
    padding:0 25px;
    background-color:#fff
}
#menu .titre-barre::before,
#menu-cont:not(.mega-menu) #menu-agence.toggled .titre-menu::before{
    content:'';
    background-color:#464849;
    border-bottom:1px solid #dedfdf;
    height:2px;
    display:block;
    left:0;
    position:absolute;
    top:50%;
    width:100%
}
#menu a.titre-menu:hover{
    text-decoration:none;
    color:var(--color-red)
}
#menu .cta{
    color:#fff;
    background-color:var(--color-red);
    border:1px solid var(--color-red);
    letter-spacing:1px;
    margin-top:30px;
    font-size:1.5rem;
    padding:20px 25px;
    display: inline-block;
}
#menu .cta:hover{
    color:#46494a;
    border:1px solid #46494a;
    background-color: #fff !important;
}

#menu-cont:not(.mega-menu) #menu-agence.toggled {width: 100%;}

#ariane{
    padding:2rem 0
}
#ariane-container{
    position:relative;
    width:100%;
    max-width:1200px;
    margin:0 auto;
    padding-bottom:1rem;
    margin-left:10rem
}
#ariane-container::after{
    content:'';
    position:absolute;
    bottom:0;
    left:0;
    width:100vw;
    height:1px;
    background-color:transparent;
    box-shadow:0 2px 5px rgba(0,0,0,.5);
    z-index:-1;
    transform:translateX(-10rem)
}
#ariane .fa-home{
    position:absolute;
    left:10px;
    top:5px;
    z-index:10
}
#ariane>li{
    display:inline-block;
    color:#72787a;
    font-size:1.8rem;
    font-weight:500
}
#ariane>li+li{
    margin-left:10px
}
#ariane>li.item+li.item::before{
    content:'>';
    margin-right:10px
}
#ariane>li a{
    color:#72787a;
    font-size:1.8rem;
    font-weight:500
}
#ariane>li:last-child a{
    color:#e46462
}

.link-reso .fa-circle{
    color:#282b30
}
.link-reso:hover .fa-circle{
    color:var(--color-red)
}
.link-reso:active,.link-reso:hover,.link-reso:focus{
    text-decoration:none
}
.list-link{
    text-align:left;
    text-transform:uppercase;
    line-height:3rem;
    font-size:1.4rem;
    margin-bottom:1.8rem
}
.menu-title-1,.menu-title-1 a{
    color:var(--color-red);
    margin:1.8rem 0 2rem;
    font-size:2rem;
    text-transform:uppercase;
    text-align:left;
    margin-bottom:1.5rem
}
.menu-title-2{
    font-size:1.6rem
}
#list-membre{
    padding:0;
    list-style: none;
    row-gap: 1rem;
}

#list-membre li {
    flex: 0 0 33.333%;
    max-width: 33.333%;
    text-align: center;
}

#list-membre img{
    transform:scale(.9);
    transition:all .5s ease
}
#list-membre img:hover{
    transform:scale(1)
}
.header-titre{
    position:absolute;
    padding:25px 0;
    width:100%;
    top:50%;
    transform:translate(0,-50%)
}
.header-titre *:last-child{
    margin-bottom:0
}
.header-titre .title-1{
    padding:0;
    color:#fff;
    margin-bottom:1rem
}
.header-titre p{
    color:#fff;
    font-size:2.2rem
}
.img-mascotte{
    position:absolute;
    bottom:30px;
    right:-80px;
    width:80px;
    height:auto;
    z-index:-10
}
#header-votre-epartenaire{
    background:url(../img/header-votre-epagrtenaire.jpg.webp) no-repeat center center
}
#header-votre-epartenaire2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/header-votre-epartenaire2.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-en-1-minute{
    background:url(../img/header-en-1-minute.jpg) center center no-repeat
}
#header-en-1-minute2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/En-1-minute.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-notre-methodologie{
    background:url(../img/header-notre-methodologie.jpg) center center no-repeat
}
#header-notre-methodologie2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/notre-méthodologie.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-nos-engagements{
    background:url(../img/header-nos-engagements.jpg) center center no-repeat
}
#header-nos-engagements2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Nos-engagements.webp) no-repeat center center;
    background-size:cover;
    background-position:center;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-valeurs-rse{
    background:url(../img/header-valeurs-rse.jpg) center center no-repeat
}
#header-valeurs-rse2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Hébergement-reprise-en-main-de-site-web.jpg) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-equipe{
    background:url(../img/header-equipe.jpg) center center no-repeat
}
#header-equipe2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/l-équipe.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-questions-a-se-poser{
    background:url(../img/header-questions-a-se-poser.jpg) center center no-repeat
}
#header-questions-a-se-poser2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Blog.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-digitalisation{
    background:url(../img/header-digitalisation.jpg) center center no-repeat
}
#header-digitalisation2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Intelligence-artificielle2.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-webmarketing{
    background:url(../img/header-webmarketing.jpg) center center no-repeat
}
#header-webmarketing2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/marketing-digital.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-strategie{
    background:url(../img/header-strategie.jpg) center center no-repeat
}
#header-strategie2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Stratégie2.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-strategie-webmarketing{
    background:url(../img/header-strategie-webmarketing.jpg) center center no-repeat
}
#header-strategie-webmarketing2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Marketing-digitale-acquisition-client.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-accompagnement{
    background:url(../img/header-accompagnement.jpg) center center no-repeat
}
#header-accompagnement2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Accompagnement-digital.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-protection-de-vos-noms{
    background:url(../img/header-protection-de-vos-noms.jpg) center center no-repeat
}
#header-protection-de-vos-noms2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Protection-de-vos-noms.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-logo-et-identite-visuelle{
    background:url(../img/header-logo-et-identite-visuelle.jpg) center center no-repeat
}
#header-logo-et-identite-visuelle2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Logo-identité-visuelle.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-design{
    background:url(../img/header-design.jpg) center center no-repeat
}
#header-design2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Design.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-webdesign{
    background:url(../img/header-webdesign.jpg) center center no-repeat
}
#header-webdesign2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Web-design.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-animations-et-videos{
    background:url(../img/header-animations-et-videos.jpg) center center no-repeat
}
#header-animations-et-videos2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Video-motion-design.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-videos{
    background:url(../img/header-videos.jpg) center center no-repeat
}
#header-programmation{
    background:url(../img/header-programmation.jpg) center center no-repeat
}
#header-programmation2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Programmation.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-site-internet-sur-mesure{
    background:url(../img/header-site-internet-sur-mesure.jpg) center center no-repeat
}
#header-site-internet-sur-mesure2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Site-internet-sur-mesure.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-ecommerce{
    background:url(../img/header-ecommerce.jpg) center center no-repeat
}
#header-ecommerce2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/e-commerce.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-mobile{
    background:url(../img/header-mobile.jpg) center center no-repeat
}
#header-mobile2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Application-site-mobile.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-application-web-et-extranet{
    background:url(../img/Application-site-mobile.jpg) center center no-repeat
}
#header-application-web-et-extranet2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Extranet-&-logiciel-web.jpg) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-gso{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/En-1-minute.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-interfacage-site-web-et-logiciel{
    background:url(../img/header-interfacage-site-web-et-logiciel.jpg) center center no-repeat
}
#header-interfacage-site-web-et-logiciel2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Interface-site-&-logiciel-ERP.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-referencement-google-seo-et-sea{
    background:url(../img/header-referencement-google-seo-et-sea.jpg) center center no-repeat
}
#header-referencement-google-seo-et-sea2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Référencement-Google-SEO-SEA.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-reseaux-sociaux{
    background:url(../img/header-reseaux-sociaux.jpg) center center no-repeat
}
#header-reseaux-sociaux2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Réseaux-sociaux.jpg) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-growth-hacking{
    background:url(../img/header-growth-hacking.jpg) center center no-repeat
}
#header-growth-hacking2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/acquisition-client-Growth-hacking.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-emailing-et-sms,#header-jeu-concours{
    background:url(../img/header-jeu-concours.jpg) center center no-repeat
}
#header-emailing-et-sms2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/E-mailing-SMS.jpg) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-formation-web{
    background:url(../img/header-formation-web.jpg) center center no-repeat
}
#header-formation-web2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Formation-web-IA.jpg) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-hebergement-et-reprise-en-main-de-sites{
    background:url(../img/header-accueil-3.jpg) center center no-repeat
}
#header-hebergement-et-reprise-en-main-de-sites2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Hébergement-reprise-en-main-de-site-web.jpg) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-print-et-edition{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/print-et-édition.jpg) no-repeat center center;
    background-size:cover;
    background-position:center;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-contenue{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/creation-de-contenus-et-redaction.png) no-repeat center center;
    background-size:cover;
    background-position:center;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-hebergement-et-reprise-en-main-de-sites2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Hébergement-reprise-en-main-de-site-web.jpg) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-hebergement-et-reprise-en-main-de-sites2 .container .mascotte-gif {
    position: absolute;
    top: 250px;
    right: 10%;
    bottom: 61px;
    width: 18%;
    transform: translate(50%, 50%) scaleX(-1);
}
#header-hebergement-et-reprise-en-main-de-sites .container .mascotte-gif{
    position: absolute;
    top: 250px;
    right: 10%;
    bottom: 61px;
    width: 18%;
    transform: translate(50%, 50%) scaleX(-1);
}

@media screen and (max-width:1400px){
    #header-hebergement-et-reprise-en-main-de-sites .container .mascotte-gif{
        right:340px;
        width:18%;
        top:153px
    }
}

@media screen and (max-width:1380px){
    #header-hebergement-et-reprise-en-main-de-sites .container .mascotte-gif{
        right:335px;
        width:18%;
        bottom:20px
    }
}

@media screen and (max-width:1300px){
    #header-hebergement-et-reprise-en-main-de-sites .container .mascotte-gif{
        right:309px;
        width:18%;
        top:172px
    }
}

@media screen and (max-width:1240px){
    #header-hebergement-et-reprise-en-main-de-sites .container .mascotte-gif{
        right:270px;
        width:19%;
        bottom:3px
    }
}

@media screen and (max-width :1200px){
    #header-hebergement-et-reprise-en-main-de-sites .container .mascotte-gif{
        right:248px;
        width:20%
    }
}

@media screen and (max-width :1100px){
    #header-hebergement-et-reprise-en-main-de-sites .container .mascotte-gif{
        right:202px;
        width:21%;
        bottom:-10px
    }
}

@media screen and (max-width :1024px){
    #header-hebergement-et-reprise-en-main-de-sites .container .mascotte-gif{
        right:154px;
        width:23%;
        bottom:7px
    }
}

@media screen and (max-width :920px){
    #header-hebergement-et-reprise-en-main-de-sites .container .mascotte-gif{
        display:none
    }
}

#header-avis{
    background:url(../img/header-avis.jpg) center center no-repeat
}
#header-avis2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Avis.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-devis{
    background:url(../img/header-devis.jpg) center center no-repeat
}
#header-devis2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/Devis.webp) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
#header-contact{
    background:url(../img/header-contact.jpg) center center no-repeat
}
#header-contact2{
    display:flex;
    justify-content:left;
    align-items:center;
    background:url(../img/duo-contact.jpg) no-repeat center center;
    background-size:cover;
    background-position:center -150px;
    background-attachment:scroll;
    width:100%;
    min-height:90vh;
    height:auto
}
header#home-header{
    height:100%
}
header#home-header{
    background:url(../img/header-accueil-2.jpg) no-repeat center bottom;
    background-size:cover;
    position:relative
}
header#home-header>div{
    position:absolute;
    top:50%;
    left:0;
    width:100%;
    transform:translateY(-50%);
    z-index:1
}
header#home-header img.logo{
    margin-bottom:10%
}
header #header-scroll{
    color:#fff;
    font-size:4rem;
    position:absolute;
    bottom:0;
    left:calc(50% - 12.5px);
    line-height:4rem;
    width:25px;
    z-index:1
}
header #header-scroll:hover{
    color:var(--color-red)
}
@-webkit-keyframes animlogo{
    15%{
        fill:transparent
    }
    55%{
        stroke-dashoffset:0;
        stroke-opacity:1
    }
    to{
        fill:#fff;
        stroke-dashoffset:0
    }
}
@keyframes animlogo{
    15%{
        fill:transparent
    }
    55%{
        stroke-dashoffset:0
    }
    to{
        fill:#fff;
        stroke-dashoffset:0
    }
}
#home-header svg{
    display:block;
    margin:0 auto;
    width:100%;
    margin-bottom:5%
}
#home-header path{
    stroke-width:1px;
    stroke-dasharray:1000;
    stroke-dashoffset:1000;
    stroke-linecap:round;
    stroke-linejoin:round;
    fill:transparent;
    -webkit-animation:animlogo 1.5s ease-out both;
    animation:animlogo 1.5s ease-out both;
    stroke:#fff
}
.mascotte-gif{
    position:absolute;
    top:auto;
    left:auto;
    bottom:61px;
    right:301px;
    width:33%;
    transform:translate(50%,50%)
}
#notre-agence p{
    font-weight:none;
    margin-bottom:2rem
}
#notre-agence strong{
    font-weight:bolder
}
#metier-left-img{
    float:left;
    margin:0 3rem 3rem 0
}
#list-metier{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:center
}
#list-metier a{
    color:#2a2d2e;
    font-weight:600;
    font-size:2rem
}
#list-metier a:hover,#list-metier a:active,#list-metier a:focus{
    color:var(--color-red);
    text-decoration:none
}
#list-metier a{
    display:block
}
#list-metier>div{
    margin-bottom:5rem
}
#list-metier .figure-cont,#list-metier figcaption{
    text-align:center
}
#list-metier .figure-cont{
    height:190px
}
#list-metier img{
    margin-bottom:1rem
}
#notre-agence{
    padding:2% 0
}
#realisation{
    max-width:1280px;
    margin:0 auto 2%;
    overflow-x:hidden
}
#realisation-col2{
    display:flex;
    flex-direction:column;
    justify-content:space-between
}
#realisation-col2>.row{
    height:calc(50% - 15px)
}
#realisation-col2>.row>div,#realisation-col2 .bloc-rea{
    height:100%
}
#realisation>.row>div{
    margin-bottom:30px
}
#bloc-last-rea{
    margin:0 calc(4% - 10px)
}
.bloc-rea img{
    filter:grayscale(1);
    transition:all .5s ease-out;
    z-index:-1;
    position:inherit
}
.bloc-rea:hover img{
    filter:grayscale(0)
}
.bloc-rea{
    position:relative;
    overflow:hidden;
    box-shadow:0 6px 10px #828282
}
.bloc-rea-open{
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    transform:translateY(100%);
    transition:all .5s ease-out;
    display:flex;
    flex-direction:column;
    justify-content:center;
    background:rgba(185,0,24,.62);
    padding:15px;
    color:#fff;
    height:100%;
    overflow:hidden
}
.bloc-rea:hover .bloc-rea-open{
    transform:translateY(0);
    transition:all 1.2s ease-out
}
.bloc-rea-open>p{
    width:100%;
    margin-bottom:30px;
    font-weight:600;
}
.bloc-rea-open>p strong{
    font-size:1.8rem
}
.bloc-rea-open a{
    margin:15px 10px 0;
    /*padding:10px 30px*/
}
.bloc-rea:hover h3{
    display:none
}
.bloc-rea h3{
    color:#fff;
    font-weight:500;
    font-size:1.8rem;
    line-height:2.5rem;
    margin:0;
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    background:rgba(185,0,24,.62);
    padding:15px;
    transition:all .5s ease-out
}
.bloc-rea h3 strong{
    font-weight:600;
    font-size:2.2rem
}
.list-realisation .bloc-rea{
    max-height:240px
}
.list-realisation img.lazy{
    font-size:0
}
.list-realisation{
    display:flex;
    flex-wrap:wrap;
    overflow-x:hidden;
    justify-content:center;
    padding:0
}
.list-realisation>li{
    width:25%;
    margin:0 4% 35px
}
.list-realisation.slick-1-slide-md{
    max-width:320px;
    height:0;
    overflow:hidden;
    margin:0 auto;
    box-shadow:0 6px 10px #828282;
    margin-bottom:30px
}
.list-realisation.slick-1-slide-md .bloc-rea{
    margin-bottom:0;
    box-shadow:none
}
.slick-loading{
    visibility:hidden
}
.slick-arrow{
    position:absolute;
    top:0;
    border:0;
    background:none;
    color:#fff;
    font-size:4rem;
    outline:none;
    padding:0 15px;
    height:100%;
    z-index:10
}
.slick-arrow:focus{
    outline:none
}
.slick-prev{
    left:0
}
.slick-next{
    right:0
}
.slick-arrow>i{
    text-shadow:0 0 5px #000
}
.slick-slide{
    outline:none
}
#agence-header{
    position:absolute;
    width:100%;
    top:50%;
    text-align:center;
    transform:translateY(-50%)
}
#agence-header .cta{
    margin:0
}
#agence.parallax{
    max-height:500px;
    height:calc(100vw / 2.58);
    background-image:url(/media/img/bureau-epartenaire.jpg);
    background-attachment:fixed;
    background-position:center;
    background-repeat:no-repeat;
    background-size:cover
}
#agence.parallax a{
    border-color:#fff;
    color:#fff;
    margin:0
}
#agence.parallax a:hover{
    border-color:transparent
}
#agence.parallax h2{
    color:#fff;
    margin-top:0
}
.bg-black-opaque{
    position:absolute;
    left:0;
    right:0;
    top:0;
    bottom:0;
    background:rgba(0,0,0,.2)
}
#row-agence>div{
    text-align:center;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:50px 5%
}
#bloc-parlons-projet{
    padding:4% 0
}
#list-question,.list-tiret{
    font-weight:300;
    margin:0 0 25px;
    line-height:3rem
}
.list-tiret{
    font-weight:inherit
}
#list-question{
    list-style:none;
    padding:0
}
#list-question>li,.list-tiret>li{
    padding-left:15px;
    position:relative
}
#list-question>li::before,.list-tiret>li::before{
    content:'-';
    position:absolute;
    left:0;
    top:0
}
#section-nos-engagements ol li::marker{
    font-weight:700;
    color:#bc0004
}
#section-equipe h3{
    font-size:2.6rem;
    margin:2rem 0 1.2rem
}
.page-formation p{
    margin:1rem 0 2rem
}
.custom-accordion{
    list-style:none;
    padding:0
}
.custom-accordion li:hover{
    border-color:#bc0004;
    box-shadow:5px 5px 0 #d09293
}
.custom-accordion li:hover a{
    color:#bc0004;
    text-decoration:none
}
.custom-accordion li{
    position:relative;
    margin:2rem 0;
    border:solid 1px #e4e4e4;
    box-shadow:5px 5px 0 #575757
}
.custom-accordion li::after{
    display:block;
    content:"\f105";
    position:absolute;
    font-family:'FontAwesome';
    top:0;
    bottom:0;
    display:flex;
    align-items:center;
    right:2rem;
    font-size:2.5rem;
    color:#9d0014
}
.custom-accordion li h2{
    font-size:2rem;
    margin:0;
    height:100%;
    font-weight:400
}
.custom-accordion li h2 span{
    font-size:1.7rem;
    text-transform:uppercase;
    font-weight:100
}
.custom-accordion li h2 a{
    display:block;
    padding:2rem 5rem 2rem 2rem
}
.bloc-rea-tri{
    display:flex;
    justify-content:center;
    align-items:center;
    font-weight:500;
    text-transform:uppercase;
    color:#312d32;
    font-size:1.8rem;
    margin-bottom:4rem
}
.bloc-rea-tri>span{
    margin-right:30px;
    white-space:nowrap
}
#rea-tri>button{
    border:0;
    outline:none;
    background:none;
    text-transform:uppercase;
    position:relative;
    padding:0 15px 0 20px;
    line-height:2.2rem;
    text-align:left
}
#rea-tri>button::before{
    content:'';
    position:absolute;
    left:0;
    height:100%;
    border-left:1px solid #2a2d2e;
    background-color:#9b9c9d;
    width:2px
}
#rea-tri>button.active,#rea-tri>button:hover{
    color:#b90018
}
.bloc-rea-crit{
    display:none;
    margin-bottom:4rem;
    padding:0 10px
}
.bloc-rea-crit a{
    color:#818586;
    font-weight:500;
    font-size:1.6rem;
    margin:0 15px
}
.bloc-rea-crit a:hover{
    color:#b90018;
    text-decoration:none
}
.bloc-rea-crit a.active{
    color:#2a2d2e
}
.list-type{
    list-style:inside;
    margin-bottom:3rem
}
.list-type>li{
    margin-bottom:5px
}
.ref-visuel{
    box-shadow:0 6px 10px #828282;
    margin-bottom:1rem
}
.pagination-rea{
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:5rem
}
.pagination-rea .cta{
    margin:0 1rem
}
.pagination-rea .cta .fa{
    font-size:5rem
}
.pagination-rea .cta.arrow i.fa:hover{
    color:var(--color-red)
}
.vimeo-wrapper{
    width:100%;
    height:350px;
    pointer-events:none;
    overflow:hidden;
    position:absolute
}
.vimeo-wrapper iframe{
    width:100vw;
    height:56.25vw;
    min-height:100vh;
    min-width:177.77vh;
    position:absolute;
    top:21%;
    left:50%;
    transform:translate(-50%,-50%) scale(1.325);
    -webkit-transform:translate(-50%,-50%) scale(1.325)
}
.vimeo-wrapper-h100{
    width:100%;
    height:100%;
    pointer-events:none;
    overflow:hidden;
    position:absolute;
    z-index:6
}
.vimeo-wrapper-h100 iframe{
    width:100vw;
    height:56.25vw;
    min-height:100vh;
    min-width:177.77vh;
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    -webkit-transform:translate(-50%,-50%)
}
#vingt-ans-logo{
    position:absolute;
    left:50%;
    top:10%;
    z-index:10;
    transform:translateX(-50%)
}
#vingt-ans-link,#header-video-agence{
    position:absolute;
    left:15%;
    bottom:10%;
    z-index:12;
    transform:translateX(-50%);
    border:1px solid #46494a;
    margin:0
}
#header-video-agence{
    background:#fff;
    border:inherit;
    box-shadow:0 5px 15px rgba(0,0,0,.2)
}
#header-2025 .stretched-link::after{
    z-index:11
}
#vingt-ans-link:hover,#vingt-ans-link:active,#vingt-ans-link:focus,#header-video-agence:hover,#header-video-agence:active,#header-video-agence:focus{
    border-color:var(--color-red)
}
#vingt-ans-img1{
    position:absolute;
    left:12%;
    top:23%;
    z-index:10;
    max-height:20%
}
#vingt-ans-img2{
    position:absolute;
    bottom:0;
    right:3%;
    z-index:10;
    max-height:65vh
}
#header-img-telescope{
    position:absolute;
    bottom:10%;
    left:15%;
    z-index:10;
    max-height:35vh
}
#header-title-slogan{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(10%,-100%);
    z-index:10;
    font-size:calc(4rem + 3vw);
    line-height:.7;
    text-shadow:2px 2px 0 #fff,-2px -2px 0 #fff,2px -2px 0 #fff,-2px 2px 0 #fff;
    white-space:nowrap;
    font-family:'Beauty',sans-serif
}
#header-title-slogan-1{
    transform:translateX(-100%)
}
#header-title-slogan-2{
    transform:translateX(-15%)
}
.video-wrapper{
    position:relative;
    width:100%;
    height:100%;
    pointer-events:none;
    overflow:hidden
}
.video-wrapper video{
    width:100vw;
    height:56.25vw;
    min-height:100vh;
    min-width:177.77vh;
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-55%)
}
#header-animations-et-videos .video-wrapper video{
    transform:translate(-50%,-58%)
}
#header-animations-et-videos .vimeo-wrapper iframe{
    top:4rem;
    right:0
}
#header-animations-et-videos #masquotte-brouette{
    position:absolute;
    left:-14%;
    right:0;
    top:15%
}
#masquotte-arrosoir{
    position:absolute;
    width:200px;
    max-width:40%;
    right:15px
}
.title-big{
    line-height:5rem;
    letter-spacing:2px
}
.text-medium{
    font-size:2.2rem;
    line-height:3rem
}
.img-cont-shadow{
    background-color:#000;
    padding:40px;
    display:inline-block;
    position:relative
}
.img-cont-shadow::before{
    content:'';
    position:absolute;
    top:-15px;
    bottom:-15px;
    left:25px;
    right:-15px;
    background-color:#f5f4f8;
    z-index:-1
}
.list-avis{
    padding-left:0;
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between
}
.list-avis>li{
    margin-bottom:3rem;
    border:1px solid #ced4da;
    box-shadow:5px 5px 0 #555;
    padding:1.5rem 2rem;
    width:calc(50% - 15px);
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start
}
.list-avis a{
    white-space:nowrap
}
.temoignage-texte{
    font-family:'The Girl Next Door',cursive;
    font-size:2rem;
    margin-bottom:10px
}
.temoignage-auteur{
    font-weight:700;
    color:#555
}
.container-effect{
    font-family:'Roboto Mono',monospace;
    height:100%;
    width:100%;
    justify-content:center;
    align-items:center;
    display:flex
}
.text{
    font-weight:100;
    font-size:28px;
    color:#FFF
}
.dud{
    color:#757575
}

.portrait-img{
    margin-right:-60px;
    width:270px;
    height:237px
}

@media screen and (max-width:768px){
    .container-effect{
        display:none
    }
}

form.form>.feedback{
    text-align:center;
    display:none
}
form.form>.feedback p{
    margin-bottom:0
}
form.form input,form.form textarea{
    margin-bottom:3rem
}
form.form input[type="text"]{
    height:40px
}
form.form input[type="text"],form.form textarea{
    font-size:1.6rem;
    border-radius:0;
    box-shadow:5px 5px 0 #575757
}
form.form input[type="text"]:focus,form.form textarea:focus{
    border-color:#bc0004;
    box-shadow:5px 5px 0 #d09293
}
#form-newsletter input{
    max-width:540px
}
.form-success,.form-danger{
    display:inline-block;
    padding:2rem 3rem;
    margin-bottom:4rem;
    color:#fff
}
.form-success{
    background-color:#282b30
}
.form-danger{
    background-color:var(--color-red)
}
.g-recaptcha{
    display:flex;
    justify-content:center
}

@media screen and (max-width:1400px){
    .mascotte-gif{
        right:299px;
        width:28%;
        bottom:22px
    }
}

@media screen and (max-width:1380px){
    .mascotte-gif{
        right:296px;
        width:29%;
        bottom:20px
    }
}

@media screen and (max-width:1300px){
    .mascotte-gif{
        right:259px;
        width:30%;
        bottom:12px
    }
}

@media screen and (max-width:1240px){
    .mascotte-gif{
        right:233px;
        width:31%;
        bottom:3px
    }
}

@media screen and (max-width :1200px){
    .mascotte-gif{
        right:205px;
        width:32%
    }
    #header-img-telescope{
        left:3%
    }
}

@media screen and (max-width :1100px){
    .mascotte-gif{
        right:160px;
        width:35%;
        bottom:-10px
    }
}

@media screen and (max-width :1024px){
    .mascotte-gif{
        right:154px;
        width:35%;
        bottom:7px
    }
}

@media screen and (max-width :991px){
    #menu {
        width: 100%;
        border-radius: 0;
        height: calc(100vh - 60px);
        overflow-y: auto;
        overflow-x: hidden;
    }
    #menu .sub-menu{
        display:none
    }
    #menu .titre-barre::before,
    #menu #menu-agence .titre-menu::before {
        content:none !important
    }
    
    #menu,#menu .titre-menu{
        text-align:center
    }
    
    #menu .bloc-menu {
      display: block !important;
    }
    
    #agence.parallax{
        background-attachment:initial
    }
    
    #home-contact::before {
        position: relative;
        width: calc(100% - 2rem);
        height: 1px;
        left: 1rem;
        margin: 3rem 0;
    }
    
    footer .footer-title::after {
        background-position: center bottom;
    }
    
    footer #footer-bloc2-left,
    footer #footer-bloc2-right {width: 100%;}

    footer .footer-eco-badges-list {
        grid-template-columns: 1fr;
        width: 100%;
    }

    footer .footer-ecograder-kpis {
        grid-template-columns: 1fr;
    }

    footer .footer-ecograder-kpis::after {
        content: none;
    }

    footer .footer-ecograder-emissions {
        padding: .7rem .8rem;
        border-radius: 1.1rem;
        background-color: #fbe8eb;
    }

    .rse-eco-score,
    .rse-eco-score-badges {
        grid-template-columns: 1fr;
    }

    .rse-eco-score-main,
    .rse-eco-score-intro {
        align-items: center;
        text-align: center;
    }

    .rse-eco-score .footer-eco-title {
        min-width: 0;
        width: 100%;
        text-align: center;
    }

    .rse-eco-score .footer-eco-title::after {
        background-position: center bottom;
    }

    .rse-eco-score-intro h3 {
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }

    .rse-ecograder-kpis {
        grid-template-columns: 1fr;
    }

    .rse-ecograder-kpis::after {
        content: none;
    }

    .rse-ecograder-emissions {
        padding: .7rem .8rem;
        border-radius: 1.1rem;
        background-color: #fbe8eb;
    }
    
    #home #notre-agence h2 {font-size: 7vw;}
    #home #notre-agence h2.picto::before {
      width: 50px;
      height: 50px;
    }
}

@media screen and (max-width :768px){
    .mascotte-gif{
        display:none
    }
    #header-title-slogan-1{
        transform:translateX(-60%)
    }
    #header-title-slogan-2{
        transform:translateX(-50%)
    }
}

@media screen and (max-width:767px){
    body{
        margin-top:60px
    }
    #header-home {min-height: calc(100% - 60px);}
    
    #header-home #header-home-cta .cta {
      padding: .5rem 1rem;
      margin: 0 1rem 1.5rem;
    }
    
    #vingt-ans-img1{
        left:50%;
        top:3%;
        transform:translateX(-50%)
    }
    #vingt-ans-img1-mobile{
        position:absolute;
        left:50%;
        top:7%;
        z-index:10;
        transform:translateX(-50%)
    }
    #vingt-ans-img2{
        bottom:5%;
        right:50%;
        transform:translateX(50%)
    }
    .vimeo-wrapper{
        display:none
    }
    nav#main-nav{
        top:0;
        bottom:unset;
        transition:none;
        transform:none;
        height:60px
    }
    nav#main-nav #logo-nav{
        max-height:40px
    }
    nav#main-nav+*:not(#home-header){
        margin-top:60px
    }
    header#home-header{
        top:-60px;
        background-position-x:77%;
        display:none
    }
    header#home-header::after{
        content:"";
        position:absolute;
        top:0;
        left:0;
        right:0;
        bottom:0;
        background:#1a2d4a2f
    }
    #home-header svg{
        width:85%
    }
    #bloc-nav-cta{
        display:none
    }
    header.entete{
        padding:25px 0;
        min-height:auto;
        background:#9d0014!important;
        min-height:auto!important
    }
    header.entete>div.container{
        justify-content:center
    }
    .list-realisation>li{
        width:100%;
        margin:0 0 20px
    }
    .list-realisation.slick-1-slide-md{
        height:auto
    }
    .bloc-rea:hover h3{
        display:block
    }
    .bloc-rea.open h3{
        display:none
    }
    .bloc-rea:hover .bloc-rea-open{
        transform:translateY(100%)
    }
    .bloc-rea-crit{
        padding:0
    }
    .bloc-rea-crit a{
        display:block
    }
    .bloc-rea.open .bloc-rea-open{
        transform:translateY(0);
        transition:all .5s ease-out
    }
    .bloc-rea-open>p{
        font-size:1.4rem
    }
    .bloc-rea-open>p strong{
        font-size:1.8rem
    }
    .pagination-rea .cta.arrow{
        padding:0;
        background:none;
        border:0
    }
    .list-avis>li{
        width:100%
    }
    h1,h2{
        font-size:2.5rem
    }
    h3{
        font-size:2rem
    }
    .bloc-rea h3{
        font-size:1.4rem;
        line-height:2rem
    }
    .bloc-rea h3 strong{
        font-size:1.8rem
    }
    #bloc-rea-activite-desktop,#bloc-rea-type-desktop,#bloc-rea-geo-desktop{
        display:none!important
    }
    
    .row-abs-plus::after {display: none !important;}
}

@media screen and (max-width:575px){
    #rea-tri>button{
        font-size:1.6rem;
        padding-right:0
    }
    .bloc-rea-tri>span{
        margin-right:15px
    }
    .bloc-rea-crit a{
        font-size:1.4rem;
        margin-right:0
    }
    header#home-header{
        background:url(../img/header-accueil-2-mob.jpg) no-repeat center bottom;
        background-size:cover
    }
    header#home-header>div{
        top:30%
    }
}

@media screen and (min-width:768px){
    nav.open{
        transform:translateY(100%)
    }
    header.entete .title-1{
        font-size:5rem;
        min-height:auto
    }
    #header-animations-et-videos .container{
        position:absolute
    }
}

@media screen and (max-width:576px){
    .for-mobile{
        margin:0 10px 0 10px
    }
}

@media screen and (min-width:992px) and (max-width:1199px){
    nav#main-nav #list-nav-top {margin-left: 5rem;}
    nav#main-nav #list-nav-top>li,
    nav#main-nav #list-nav-top .cta{
        font-size:1.4rem;
    }
    nav#main-nav #list-nav-top .cta {padding: 1rem 1rem;}
    nav#main-nav .cta {padding: 1.5rem;}
    nav#main-nav .cta::before {display: none;}
}

@media screen and (min-width:992px) {
    #menu .sub-menu {
      display: flex !important;
      gap: 4vw;
    }
    
    #menu #list-menu-agence {
        display: block !important;
        text-align: center;
    }
    
    #menu #list-menu-agence a {line-height: 2;}

    #menu-cont.mega-menu #menu-agence .titre-menu, #menu-cont.mega-menu #menu-agence #list-menu-agence {
      text-align: left;
    }
}

@media screen and (min-width:1200px) {
    #menu .bloc-menu {
      padding-left: 3vw;
      padding-right: 3vw;
    }

    #menu .sub-menu ul a,
    #menu #menu-agence ul a,
    #menu .link-metier a.titre-sub-menu {
      font-size: 1.8rem;
    }
}

/* Cookie banner - final tarteaucitron override */
html body div#tarteaucitronRoot,
html body div#tarteaucitronRoot *{
    font-family:'Bricolage Grotesque',Arial,sans-serif!important;
    letter-spacing:0!important
}
html body div#tarteaucitronRoot div#tarteaucitronAlertBig{
    position:fixed!important;
    left:50%!important;
    right:auto!important;
    top:auto!important;
    bottom:1.8rem!important;
    transform:translateX(-50%)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:.8rem!important;
    width:min(98vw,1240px)!important;
    min-width:0!important;
    height:auto!important;
    padding:.55rem .85rem!important;
    border:1px solid rgba(42,45,46,.12)!important;
    border-radius:1.15rem!important;
    background:#fff!important;
    color:#2a2d2e!important;
    box-shadow:0 1.2rem 4rem rgba(42,45,46,.18)!important;
    box-sizing:border-box!important;
    text-align:left!important
}
html body div#tarteaucitronRoot div#tarteaucitronAlertBig::before{
    content:''!important;
    display:block!important;
    width:.28rem!important;
    align-self:stretch!important;
    border-radius:999px!important;
    background:#bd0003!important;
    flex:0 0 .28rem!important
}
html body div#tarteaucitronRoot div#tarteaucitronAlertBig span#tarteaucitronDisclaimerAlert{
    flex:1 1 auto!important;
    display:block!important;
    max-width:none!important;
    min-width:0!important;
    padding:0!important;
    margin:0!important;
    color:#2a2d2e!important;
    font-size:1.08rem!important;
    line-height:1.2!important;
    font-weight:500!important;
    text-align:left!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
    background:transparent!important
}
html body div#tarteaucitronRoot div#tarteaucitronAlertBig span#tarteaucitronDisclaimerAlert *,
html body div#tarteaucitronRoot div#tarteaucitronAlertBig .tarteaucitronPartnersList,
html body div#tarteaucitronRoot div#tarteaucitronAlertBig .tarteaucitronPartnersList *{
    background:transparent!important;
    color:inherit!important
}
html body div#tarteaucitronRoot div#tarteaucitronAlertBig span#tarteaucitronDisclaimerAlert strong{
    color:#bd0003!important;
    font-weight:800!important
}
html body div#tarteaucitronRoot div#tarteaucitronAlertBig button,
html body div#tarteaucitronRoot div#tarteaucitronAlertBig a,
html body div#tarteaucitronRoot div#tarteaucitronAlertBig .tarteaucitronCTAButton{
    flex:0 0 auto!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:10.6rem!important;
    min-height:3.15rem!important;
    padding:.55rem 1rem!important;
    margin:0!important;
    border:1px solid #46494a!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#2a2d2e!important;
    box-shadow:none!important;
    font-size:.95rem!important;
    line-height:1.1!important;
    font-weight:800!important;
    text-transform:uppercase!important;
    text-decoration:none!important;
    white-space:nowrap!important;
    transition:background-color .22s ease,color .22s ease,border-color .22s ease,transform .22s ease!important
}
html body div#tarteaucitronRoot div#tarteaucitronAlertBig button#tarteaucitronPersonalize,
html body div#tarteaucitronRoot div#tarteaucitronAlertBig button#tarteaucitronPersonalize2{
    border-color:#bd0003!important;
    background:#bd0003!important;
    color:#fff!important
}
html body div#tarteaucitronRoot div#tarteaucitronAlertBig button#tarteaucitronCloseAlert{
    border-color:#fbe8eb!important;
    background:#fbe8eb!important;
    color:#2a2d2e!important
}
html body div#tarteaucitronRoot div#tarteaucitronAlertBig button:hover,
html body div#tarteaucitronRoot div#tarteaucitronAlertBig a:hover,
html body div#tarteaucitronRoot div#tarteaucitronAlertBig .tarteaucitronCTAButton:hover{
    transform:translateY(-2px)!important;
    text-decoration:none!important
}
html body div#tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronPrivacyUrl,
html body div#tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronPrivacyUrlDialog{
    min-width:auto!important;
    min-height:auto!important;
    padding:.2rem .4rem!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#bd0003!important;
    font-size:1rem!important;
    line-height:1.2!important;
    font-weight:800!important;
    text-transform:none!important;
    text-decoration:underline!important
}
html body div#tarteaucitronRoot div#tarteaucitron{
    width:min(92vw,920px)!important;
    max-height:84vh!important;
    border:1px solid rgba(42,45,46,.12)!important;
    border-radius:1.8rem!important;
    overflow:hidden!important;
    background:#fff!important;
    color:#2a2d2e!important;
    box-shadow:0 2rem 7rem rgba(42,45,46,.22)!important
}
html body div#tarteaucitronRoot div#tarteaucitron,
html body div#tarteaucitronRoot div#tarteaucitronServices,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronBorder,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronLine,
html body div#tarteaucitronRoot div#tarteaucitronServices ul{
    background:#fff!important;
    color:#2a2d2e!important;
    border-color:#ededed!important
}
html body div#tarteaucitronRoot div#tarteaucitronServices *,
html body div#tarteaucitronRoot div#tarteaucitronInfo,
html body div#tarteaucitronRoot div#tarteaucitronInfo *{
    background-color:transparent!important;
    color:#2a2d2e!important
}
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronMainLine,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronTitle{
    background:#f4f2f4!important;
    color:#2a2d2e!important;
    border-color:#ededed!important
}
html body div#tarteaucitronRoot div#tarteaucitronInfo{
    max-width:78%!important;
    margin:.8rem auto 2rem!important;
    padding:1.3rem 0!important;
    color:#2a2d2e!important;
    border-color:#d9d9d9!important;
    font-size:1.45rem!important;
    line-height:1.45!important;
    text-align:center!important
}
html body div#tarteaucitronRoot .tarteaucitronH1,
html body div#tarteaucitronRoot .tarteaucitronH2,
html body div#tarteaucitronRoot .tarteaucitronH3{
    color:#2a2d2e!important;
    font-weight:800!important
}
html body div#tarteaucitronRoot #tarteaucitronClosePanel{
    background:#bd0003!important;
    color:#fff!important;
    font-weight:800!important
}
html body div#tarteaucitronRoot #tarteaucitronServices button.tarteaucitronAllow,
html body div#tarteaucitronRoot #tarteaucitronServices button#tarteaucitronAllAllowed,
html body div#tarteaucitronRoot #tarteaucitronServices button#tarteaucitronSave{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:.45rem!important;
    border:1px solid #bd0003!important;
    border-radius:999px!important;
    background:#bd0003!important;
    color:#fff!important;
    font-weight:800!important;
    text-transform:uppercase!important;
    box-shadow:none!important
}
html body div#tarteaucitronRoot #tarteaucitronServices button.tarteaucitronDeny,
html body div#tarteaucitronRoot #tarteaucitronServices button#tarteaucitronAllDenied{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:.45rem!important;
    border:1px solid #46494a!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#2a2d2e!important;
    font-weight:800!important;
    text-transform:uppercase!important;
    box-shadow:none!important
}
html body div#tarteaucitronRoot #tarteaucitronServices button.tarteaucitronAllow span,
html body div#tarteaucitronRoot #tarteaucitronServices button#tarteaucitronAllAllowed span,
html body div#tarteaucitronRoot #tarteaucitronServices button#tarteaucitronSave span,
html body div#tarteaucitronRoot #tarteaucitronServices button.tarteaucitronDeny span,
html body div#tarteaucitronRoot #tarteaucitronServices button#tarteaucitronAllDenied span{
    color:inherit!important
}
html body div#tarteaucitronRoot #tarteaucitronServices button .tarteaucitronCheck,
html body div#tarteaucitronRoot #tarteaucitronServices button .tarteaucitronCross{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    color:inherit!important;
    font-size:1.25rem!important;
    line-height:1!important;
    background:transparent!important;
    box-sizing:border-box!important
}
html body div#tarteaucitronRoot #tarteaucitronServices button .tarteaucitronCheck::before,
html body div#tarteaucitronRoot #tarteaucitronServices button .tarteaucitronCross::before{
    color:inherit!important;
    font-size:1.25rem!important;
    line-height:1!important
}
html body div#tarteaucitronRoot #tarteaucitronServices button.tarteaucitronDeny .tarteaucitronCross,
html body div#tarteaucitronRoot #tarteaucitronServices button#tarteaucitronAllDenied .tarteaucitronCross,
html body div#tarteaucitronRoot #tarteaucitronServices button.tarteaucitronDeny .tarteaucitronCheck,
html body div#tarteaucitronRoot #tarteaucitronServices button#tarteaucitronAllDenied .tarteaucitronCheck{
    color:#2a2d2e!important
}
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronMainLine:hover,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronLine:hover,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronTitle:hover,
html body div#tarteaucitronRoot div#tarteaucitronServices #tarteaucitronMainLineOffset:hover{
    background:#f4f2f4!important;
    color:#2a2d2e!important
}
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronMainLine:hover *,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronLine:hover *,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronTitle:hover *,
html body div#tarteaucitronRoot div#tarteaucitronServices #tarteaucitronMainLineOffset:hover *{
    color:#2a2d2e!important
}
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronTitle,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronTitle *,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronTitle button,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronTitle button *,
html body div#tarteaucitronRoot div#tarteaucitronServices li[id^="tarteaucitronServicesTitle_"],
html body div#tarteaucitronRoot div#tarteaucitronServices li[id^="tarteaucitronServicesTitle_"] *,
html body div#tarteaucitronRoot div#tarteaucitronServices li[id^="tarteaucitronServicesTitle_"]:hover,
html body div#tarteaucitronRoot div#tarteaucitronServices li[id^="tarteaucitronServicesTitle_"]:hover *{
    background:#f4f2f4!important;
    color:#2a2d2e!important
}
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronPlus::before{
    color:#bd0003!important
}
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronMainLine:hover button.tarteaucitronAllow,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronLine:hover button.tarteaucitronAllow,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronMainLine:hover button#tarteaucitronAllAllowed,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronLine:hover button#tarteaucitronAllAllowed,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronMainLine:hover button#tarteaucitronSave,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronLine:hover button#tarteaucitronSave{
    background:#bd0003!important;
    border-color:#bd0003!important;
    color:#fff!important
}
html body div#tarteaucitronRoot #tarteaucitronServices button.tarteaucitronAllow:hover,
html body div#tarteaucitronRoot #tarteaucitronServices button#tarteaucitronAllAllowed:hover,
html body div#tarteaucitronRoot #tarteaucitronServices button#tarteaucitronSave:hover{
    background:#9f0003!important;
    border-color:#9f0003!important;
    color:#fff!important
}
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronMainLine:hover button.tarteaucitronDeny,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronLine:hover button.tarteaucitronDeny,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronMainLine:hover button#tarteaucitronAllDenied,
html body div#tarteaucitronRoot div#tarteaucitronServices .tarteaucitronLine:hover button#tarteaucitronAllDenied{
    color:#2a2d2e!important
}
@media screen and (max-width:900px){
    html body div#tarteaucitronRoot div#tarteaucitronAlertBig{
        display:block!important;
        width:calc(100vw - 1.2rem)!important;
        bottom:1rem!important;
        padding:1.2rem!important;
        border-radius:1.6rem!important;
        text-align:center!important
    }
    html body div#tarteaucitronRoot div#tarteaucitronAlertBig::before{
        width:5rem!important;
        height:.35rem!important;
        margin:0 auto 1rem!important
    }
    html body div#tarteaucitronRoot div#tarteaucitronAlertBig span#tarteaucitronDisclaimerAlert{
        max-width:none!important;
        margin-bottom:1.2rem!important;
        text-align:center!important
    }
    html body div#tarteaucitronRoot div#tarteaucitronAlertBig button,
    html body div#tarteaucitronRoot div#tarteaucitronAlertBig .tarteaucitronCTAButton{
        display:flex!important;
        width:100%!important;
        margin:.55rem 0!important
    }
    html body div#tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronPrivacyUrl,
    html body div#tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronPrivacyUrlDialog{
        display:inline-flex!important;
        width:auto!important;
        margin:.7rem auto 0!important
    }
    html body div#tarteaucitronRoot div#tarteaucitron{
        width:calc(100vw - 1.2rem)!important;
        max-height:86vh!important;
        border-radius:1.5rem!important
    }
}
@media screen and (min-width:901px) and (max-width:1150px){
    html body div#tarteaucitronRoot div#tarteaucitronAlertBig{
        width:calc(100vw - 1.2rem)!important;
        gap:.55rem!important;
        padding:.5rem .75rem!important
    }
    html body div#tarteaucitronRoot div#tarteaucitronAlertBig span#tarteaucitronDisclaimerAlert{
        max-width:28rem!important;
        font-size:1.08rem!important
    }
    html body div#tarteaucitronRoot div#tarteaucitronAlertBig button,
    html body div#tarteaucitronRoot div#tarteaucitronAlertBig a,
    html body div#tarteaucitronRoot div#tarteaucitronAlertBig .tarteaucitronCTAButton{
        min-width:9.6rem!important;
        min-height:3.05rem!important;
        padding:.5rem .8rem!important;
        font-size:.95rem!important
    }
    html body div#tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronPrivacyUrl,
    html body div#tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronPrivacyUrlDialog{
        font-size:1rem!important
    }
}
