/*
Theme Name: Redureau Design
Author: Planète Communication
Author URI: https://www.planete-communication.fr
Version: 1
*/

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p,
blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em,
img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i,
center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption,
tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure,
figcaption, footer, header, hgroup, menu, nav, output, ruby,
section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}
ul {
    list-style: none;
}
blockquote,
q {
    quotes: none;
}


@font-face {
    font-display: swap;
    font-family: "Geist";
    font-style: normal;
    font-weight: 100;
    src: url("/wp-content/themes/redureaudesign/fonts/geist-v3-latin-100.woff2") format("woff2");
}
@font-face {
    font-display: swap;
    font-family: "Geist";
    font-style: normal;
    font-weight: 300;
    src: url("/wp-content/themes/redureaudesign/fonts/geist-v3-latin-300.woff2") format("woff2");
}
@font-face {
    font-display: swap;
    font-family: "Geist";
    font-style: normal;
    font-weight: 400;
    src: url("/wp-content/themes/redureaudesign/fonts/geist-v3-latin-regular.woff2") format("woff2");
}
@font-face {
    font-display: swap;
    font-family: "Geist";
    font-style: normal;
    font-weight: 700;
    src: url("/wp-content/themes/redureaudesign/fonts/geist-v3-latin-700.woff2") format("woff2");
}


* {
    border: 0px;
    margin: 0px;
    padding: 0px;
    text-decoration: none;
}
body {
    background: #000000;
    font-family: "Geist", Arial, Helvetica, sans-serif;
    font-size: 18px;
    line-height: 120%;
    color: #000000;
    -webkit-font-smoothing: antialiased;
}
button {
    font-family: "Geist";
}
img {
    max-width: 100%;
    border: 0px;
    vertical-align: bottom;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: 120%;
    margin: 10px 0px;
    font-weight: bold;
}
h1 {
    font-size: 36px;
    margin: 0px 0px 45px 0px;
    font-weight: 400;
    letter-spacing: -0.03em;
}
h2 {
    font-size: 54px;
    font-weight: 300;
    line-height: 0.95em;
    letter-spacing: -0.03em;
}
h3 {
    font-size: 22px;
}
h4 {
    font-size: 20px;
}
a:focus {
    outline: none;
}
a {
    color: #000000;
    text-decoration: underline;
}
p {
    margin: 10px 0px;
    line-height: 135%;
}
ul,
ol {
    margin: 10px 0px 10px 15px;
}
ul ul,
ol ol,
ul ol,
ol ul {
    margin: 0px 0px 0px 30px;
}
li {
    line-height: 135%;
}
sup {
    font-size: smaller;
    vertical-align: text-bottom;
}
#nested .smart-menu {
    display: none;
}
#nested {
    position: absolute;
    height: 60px;
    z-index: 2;
    right: 33px;
    bottom: -3px;
    transition: 0.3s;
}
#nested .firstLevel {
    height: 60px;
    margin: 0px;
    text-align: center;
}
#nested .firstLevel li {
    position: relative;
    display: inline-block;
    height: 60px;
    transition: 0.25s opacity;
}
#nested .firstLevel li a {
    display: block;
    height: 60px;
    line-height: 60px;
    padding: 0px 17px;
    text-decoration: none;
    font-size: 16px;
    letter-spacing: -0.03em;
    transition: 0.3s;
}
#nested .firstLevel li a span {
    display: block;
    height: 60px;
    line-height: 60px;
}
#nested .firstLevel li ul {
    position: absolute;
    width: 260px;
    height: 0px;
    background: #ffffff;
    margin-left: -130px;
    margin-top: -20px;
    box-shadow: 0px 4px 10px -4px rgba(0, 0, 0, 0.3);
    left: 50%;
    top: auto;
    overflow: hidden;
    opacity: 0;
    transition: 0.3s;
}
#nested .firstLevel > li:hover > ul {
    height: auto;
    opacity: 1;
    margin-top: 0px;
    padding: 0;
}
#nested .firstLevel li ul li {
    display: block;
    height: auto;
    padding: 0 10px;
    border-bottom: 1px solid #ededed;
    transition: 0.4s;
}
#nested ul.firstLevel li ul li:hover {
    background: #f7f7f7;
}
#nested .firstLevel li ul li:last-child {
    border-bottom: none;
}
#nested .firstLevel li ul li a {
    height: auto;
    padding: 15px 10px;
    line-height: 120%;
    text-align: left;
}
#nested .firstLevel li ul li a span {
    display: inline;
    height: auto;
    line-height: 120%;
}
#nested ul.firstLevel:hover > li {
    opacity: 0.5;
}
#nested ul.firstLevel:hover > li:hover {
    opacity: 1;
}
#wrapper ul li {
    position: relative;
}
#wrapper ul li:before {
    content: "";
    width: 7px;
    height: 7px;
    background: #000000;
    position: absolute;
    border-radius: 50%;
    top: 9px;
    left: -15px;
    margin: auto;
}
#page {
    position: relative;
    background: #f5f4ec;
    overflow: hidden;
}
header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 115px;
    z-index: 3;
    transition: 0.3s;
    background: #f5f4ec;
}
#headerInner {
    position: relative;
    width: 100%;
    height: 100%;
}
#logo {
    position: absolute;
    left: 50px;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    transition: 0.3s;
}
#logo img {
    transition: 0.3s;
}
#headerBoxes {
    position: absolute;
    right: 50px;
    top: 30px;
    display: flex;
    align-items: center;
    gap: 30px;
    transition: 0.3s;
}
/* ----------------------
ZONE INTERIEURE (CONTENU)
-----------------------*/
#wrapper {
    position: relative;
    background: #f5f4ec;
    z-index: 1;
}
#wrapperInner {
    position: relative;
    width: 100%;
    max-width: 100%;
    margin: 0px auto;
    padding: 80px 0px 0px 0px;
}
#container {
    position: relative;
    margin: 0px 0px 100px 0px;
}
#contentsInner {
    position: relative;
}
#headerBoxes p {
    margin: 0;
    line-height: 1;
}
body.home #wrapperInner {
    padding: 0;
}
.grecaptcha-badge {
    visibility: hidden;
}
html,
body {
    scroll-behavior: smooth;
}
iframe {
    max-width: 100%;
}
strong {
    font-weight: 700;
}
em {
    font-style: italic;
}
body.home #container {
    margin: 0px;
}



/* ---------------------------- STRUCTURES ET STYLES DES PAGES INTÉRIEURES ---------------------------- */
#chapterPicture {
    position: relative;
    padding-top: 290px;
    height: 100vh;
    box-sizing: border-box;
}
#chapterPicture img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.title_and_bc {
    position: absolute;
    top: 290px;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3);
    color: #ffffff;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 5%;
}
.title_and_bc h1 {
    font-size: 55px;
    margin: -5px 0 10px 0;
    line-height: 1.05em;
    max-width: 1120px;
}
.widget_breadcrumb a {
    color: #ffffff;
    text-decoration: none;
}
.widget_breadcrumb a:hover {
    text-decoration: underline;
}
.widget_breadcrumb {
    font-size: 14px;
}
#chapterPicture > .title_and_bc:first-child {
    background: #000000;
}
body:not(.home) h2,
body:not(.home) h3 {
    margin-bottom: 20px;
}
body:not(.home) #chapterPicture {
    height: auto;
}
body:not(.home) #chapterPicture img {
    height: 200px;
}
body:not(.home) h2 {
    text-wrap-style: pretty;
    font-size: 40px;
}
.title_and_bc:last-child {
    position: relative;
    height: 200px;
    background: #000000;
    top: 0;
}



/* ------- Passage à menu burger ------- */
@media (min-width: 1171px) {
    #nested ul.firstLevel > li.hidden_on_desktop {
        display: none;
    }
}
@media (max-width: 1170px) {
    header div #nested {
        width: 40px;
        height: 40px;
        top: 0;
        right: 30px;
        bottom: 0;
        margin: auto;
    }
    header div #nested .contentSmart {
        width: 100%;
        height: 100%;
        cursor: pointer;
        z-index: 25;
        position: relative;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    #nested .firstLevel {
        text-align: left;
        background: #000000;
        width: 100%;
        position: fixed;
        right: -100%;
        transition: 0.7s;
        opacity: 0.3;
        top: 0;
        height: auto;
        bottom: 0;
        padding: 50px 0;
        overflow-y: auto;
        overflow-x: hidden;
    }
    body.menu_open #nested .firstLevel:after,
    body.menu_open #nested .firstLevel:before {
        content: "";
        height: 55px;
        background: linear-gradient(0deg, #000000, transparent);
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0px;
        opacity: 0;
        pointer-events: none;
        transition: 0.3s;
    }
    body.menu_open.animation_delai #nested .firstLevel:after,
    body.menu_open.animation_delai #nested .firstLevel:before {
        opacity: 1;
    }
    body.menu_open #nested .firstLevel:before {
        bottom: auto;
        top: 0;
        z-index: 20;
        background: linear-gradient(180deg, #000000, transparent);
    }
    body.menu_open #nested .firstLevel {
        right: 0;
        opacity: 1;
    }
    #nested ul.firstLevel:hover > li {
        opacity: 1;
    }
    header div #nested .contentSmart span {
        width: 25px;
        height: 2px;
        background: #000000;
        display: block;
        border-radius: 3px;
        position: relative;
        top: 0;
        transition: 0.5s;
    }
    header div #nested .contentSmart > span:nth-child(2) {
        margin: 6px 0px;
    }
    body.menu_open header div #nested .contentSmart > span:nth-child(1) {
        transform: rotate(45deg);
        top: 8px;
    }
    body.menu_open header div #nested .contentSmart > span:nth-child(2) {
        opacity: 0;
    }
    body.menu_open header div #nested .contentSmart > span:nth-child(3) {
        transform: rotate(-45deg);
        top: -8px;
    }
    body.menu_open header div #nested .contentSmart > span {
        background: #ffffff;
    }
    #nested ul.firstLevel li a {
        font-size: 18px;
        height: auto;
        line-height: 1;
    }
    #nested .firstLevel li a span {
        line-height: 1.3em;
        height: auto;
    }
    #nested ul.firstLevel > li.menu-item-has-children {
        margin-right: 0;
    }
    #nested .firstLevel li {
        height: auto;
    }
    #nested ul.firstLevel > li {
        margin: 0 0 30px 0;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        padding-left: 30px;
    }
    #nested ul.firstLevel > li:last-child {
        margin-bottom: 0;
    }
    #nested ul.firstLevel > li.menu-item-has-children > a {
        position: relative;
    }
    #nested ul.firstLevel > li.menu-item-has-children > a:after {
        content: "";
        display: inline-block;
        height: 0;
        width: 0;
        border-top: 5px solid #ffffff;
        border-right: 5px solid transparent;
        border-left: 5px solid transparent;
        pointer-events: none;
        position: absolute;
        right: -2px;
        top: 11px;
    }
    #nested .firstLevel li a {
        color: #ffffff;
    }
    #nested .firstLevel li ul,
    #nested .firstLevel > li:hover > ul {
        position: relative;
        height: auto;
        opacity: 1;
        background: none;
        box-shadow: none;
        margin: 10px 0 0 7px;
        padding: 0;
        left: 0;
        width: auto;
    }
    #nested ul.firstLevel > li > ul > li {
        padding: 0;
        margin: 0;
    }
    #nested .firstLevel li ul li {
        border: none;
    }
    body.menu_open {
        overflow: hidden;
    }
    #nested .firstLevel li ul {
        display: none;
    }
    #nested ul.firstLevel > li.menu-item-has-children.sous_menu_open > ul {
        display: block;
    }
    #nested ul.firstLevel > li.menu-item-has-children.sous_menu_open > a:after {
        transform: rotate(180deg);
    }
    #nested ul.firstLevel li ul li:hover {
        background: none;
    }
}














/* ------------------------------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------------------------- */
/* ---------------------------------------- REDUREAU DESIGN ---------------------------------------- */
/* ------------------------------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------------------------- */

/* boutons */
#wrapper a.wp-block-button__link,
#wrapper div.wpforms-container-full button[type="submit"],
#top .flex > div > :last-child a,
.bloc .txt > :last-child a,
#process .c > :last-child a,
#avis .c > :last-child a {
    border-radius: 99px;
    display: inline-block;
    background: #000000;
    color: #ffffff;
    padding: 20px 26px;
    font-weight: 400;
    line-height: 1;
    text-decoration: none;
    transition: background 0.3s, box-shadow 0.3s;
    border: none;
    font-size: 18px;
    height: auto;
    box-shadow: none;
    width: auto;
    text-align: center;
    position: relative;
    overflow: hidden;
}
#wrapper a.wp-block-button__link:hover,
#wrapper div.wpforms-container-full button[type="submit"]:hover,
#top .flex > div > :last-child a:hover,
.bloc .txt > :last-child a:hover,
#process .c > :last-child a:hover,
#avis .c > :last-child a:hover {
    background: #303030 !important;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}

.bloc .txt > :last-child a {
    background: #f5f4ec;
    color: #000000;
}
.bloc .txt > :last-child a:hover {
    background: #e6e4dc !important;
}

.deux_span > span {
    will-change: transform;
}
.deux_span > span:nth-child(1) {
    position: relative;
    display: block;
    transition: transform 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55),
        opacity 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}
.deux_span > span:nth-child(2) {
    position: absolute;
    left: 25px;
    right: 25px;
    top: 15px;
    transition: transform 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55);
    transform: translateY(43px);
}
.deux_span:not(.disabled):hover > span:nth-child(1) {
    transform: translateY(-43px);
    opacity: 0;
}
.deux_span:not(.disabled):hover > span:nth-child(2) {
    transform: translateY(5px);
}



.has-noir-color {
    color: #000000 !important;
}
.has-noir-background-color {
    background-color: #000000 !important;
}
.has-blanc-color {
    color: #FFFFFF !important;
}
.has-blanc-background-color {
    background-color: #FFFFFF !important;
}
.has-gris-color {
    color: #f2f2f2 !important;
}
.has-gris-background-color {
    background-color: #f2f2f2 !important;
}
.has-beige-color {
    color: #f5f4ec !important;
}
.has-beige-background-color {
    background-color: #f5f4ec !important;
}
.has-rose-color {
    color: #d99d8f !important;
}
.has-rose-background-color {
    background-color: #d99d8f !important;
}
.has-bleu-color {
    color: #7aaeb3 !important;
}
.has-bleu-background-color {
    background-color: #7aaeb3 !important;
}
.has-bleu-fonce-color {
    color: #4f6e8c !important;
}
.has-bleu-fonce-background-color {
    background-color: #4f6e8c !important;
}
.has-kaki-color {
    color: #796d53 !important;
}
.has-kaki-background-color {
    background-color: #796d53 !important;
}



header .rs {
    display: flex;
    align-items: center;
    gap: 12px;
}
header .rs a {
    transition: 0.25s;
}
header .rs a:hover {
    opacity: 0.6;
}
#headerBoxes a {
    text-decoration: none;
    font-weight: 700;
    letter-spacing: -0.03em;
}
#headerBoxes a:hover {
    text-decoration: underline;
}
.trois_entrees {
    position: fixed;
    top: 115px;
    width: 100%;
    background: #f5f4ec;
    padding: 20px 0 40px 0;
    z-index: 2;
    transition: 0.3s;
    height: 135px;
    box-sizing: border-box;
}
.trois_entrees .inner {
    display: flex;
    justify-content: flex-end;
    gap: 100px;
    transition: 0.3s;
    position: absolute;
    right: calc(50% - 790px);
    /* 790 = la moitié de la alrgeur de l'élément */
    bottom: 0;
}
.trois_entrees .elem {
    width: 320px;
    position: relative;
    padding-bottom: 22px;
    display: flex;
    align-items: flex-end;
    transition: 0.3s;
}
.trois_entrees .elem svg {
    transition: 0.3s;
    width: auto;
}
.trois_entrees .elem:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4px;
    pointer-events: none;
    background: #d99d8f;
    transition: 0.3s;
}
.trois_entrees .elem a {
    text-decoration: none;
    font-size: 24px;
    letter-spacing: -0.03em;
    color: #d99d8f;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    padding: 40px 15px 0 130px;
    line-height: 1.1em;
    transition: 0.3s;
}
.trois_entrees .elem.vert a {
    color: #7aaeb3;
}
.trois_entrees .elem.vert:after {
    background: #7aaeb3;
}
.trois_entrees .elem.kaki a {
    color: #796d53;
}
.trois_entrees .elem.kaki:after {
    background: #796d53;
}
.trois_entrees .elem.bleu a {
    color: #4f6e8c;
}
.trois_entrees .elem.bleu:after {
    background: #4f6e8c;
}
.trois_entrees .elem > svg:last-child {
    position: absolute;
    right: 0;
    bottom: 26px;
}
.trois_entrees .elem:hover:after {
    height: 8px;
}
.trois_entrees:has(.elem:hover) .elem:not(:hover) {
    opacity: 0.4;
}
.container_img {
    position: relative;
    height: 100%;
    overflow: hidden;
}
.container_img img {
    filter: brightness(0.7);
    animation: dezoom 2.2s ease;
    animation-delay: 0.25s;
    animation-fill-mode: both;
}
@keyframes dezoom {
    0% {
        transform: scale(1.15);
    }
    100% {
        transform: scale(1);
    }
}
.container_img > span {
    position: absolute;
    bottom: 60px;
    left: 60px;
    color: #ffffff;
    font-size: 128px;
    line-height: 0.79em;
    font-weight: 100;
    letter-spacing: -0.03em;
}
.container_img > span strong {
    display: block;
}
header.scrolled {
    margin-top: -55px;
}
header.scrolled #logo {
    top: 122px;
    left: 40px;
}
header.scrolled #logo img {
    height: 50px;
}
@media (min-width: 1171px) {
    header.scrolled + div .trois_entrees {
        top: 60px;
        padding: 5px 0 20px 0;
        height: 75px;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    }
    header.scrolled + div .trois_entrees .elem a {
        font-size: 17px;
        padding: 3px 40px 0 60px;
    }
    header.scrolled + div .trois_entrees .elem {
        width: 220px;
        padding-bottom: 14px;
    }
    header.scrolled + div .trois_entrees .elem > svg:first-child {
        height: 40px;
    }
    header.scrolled + div .trois_entrees .elem:after {
        height: 3px;
    }
    header.scrolled + div .trois_entrees .elem > svg:last-child {
        height: 10px;
        bottom: 16px;
    }
    header.scrolled + div .trois_entrees .elem:hover:after {
        height: 5px;
    }
    header.scrolled #nested .firstLevel > li > a {
        font-size: 15px;
        padding: 0 11px;
    }
    header.scrolled + div .trois_entrees .inner {
        right: 50px;
        gap: 50px;
        bottom: 20px;
    }
}
.container_img > span > * {
    position: relative;
    animation: fromBottom 0.6s ease;
    animation-fill-mode: both;
    animation-delay: 0.75s;
}
.container_img > span > strong {
    animation-delay: 1.15s;
}
@keyframes fromBottom {
    0% {
        opacity: 0;
        bottom: -20px;
    }
    100% {
        opacity: 1;
        bottom: 0px;
    }
}
#wrapper p,
#wrapper li {
    letter-spacing: -0.02em;
}
@media (max-width: 1690px) {
    .trois_entrees .elem a {
        font-size: 20px;
        padding: 20px 35px 0 91px;
    }
    .trois_entrees .elem > svg:first-child {
        height: 60px;
    }
    .trois_entrees .elem {
        width: 270px;
    }
    .trois_entrees .elem > svg:last-child {
        bottom: 20px;
        height: 14px;
    }
    #chapterPicture {
        padding-top: 250px;
    }
    .container_img > span {
        font-size: 100px;
    }
    .trois_entrees .inner {
        right: calc(50% - 645px);
        gap: 70px;
        bottom: 33px;
    }
    .title_and_bc {
        top: 250px;
    }
}
header a.contact {
    transition: 0.3s;
    position: relative;
    top: 0;
    right: 0;
}




@media (min-width: 1171px) {
    header.scrolled a.contact {
        top: 46px;
        right: -111px;
        font-size: 15px;
    }
    header.scrolled #nested {
        right: 119px;
    }
}
@media (max-width: 1470px) {
    header.scrolled #logo img {
        height: 40px;
    }
    header.scrolled + div .trois_entrees .elem {
        width: 205px;
    }
    header.scrolled + div .trois_entrees .elem a {
        padding: 3px 20px 0 60px;
    }
}
@media (max-width: 1385px) {
    .trois_entrees .elem > svg:last-child {
        bottom: 21px;
        height: 12px;
    }
    .trois_entrees .elem a {
        font-size: 18px;
        padding: 7px 25px 0 65px;
    }
    .trois_entrees .elem > svg:first-child {
        height: 44px;
    }
    .trois_entrees .elem {
        width: 220px;
    }
    .trois_entrees .inner {
        right: calc(50% - 530px);
        gap: 60px;
    }
    #chapterPicture {
        padding-top: 235px;
    }
    .trois_entrees {
        height: 120px;
    }
    .title_and_bc {
        top: 235px;
    }
}
@media (max-width: 1340px) {
    header.scrolled + div .trois_entrees .elem a {
        font-size: 15px;
        padding: 2px 20px 0 50px;
    }
    header.scrolled + div .trois_entrees .elem > svg:first-child {
        height: 32px;
    }
    header.scrolled + div .trois_entrees .elem {
        width: 178px;
    }
    header.scrolled + div .trois_entrees .elem > svg:last-child {
        height: 9px;
        bottom: 13px;
    }
}
@media (max-width: 1240px) {
    header.scrolled + div .trois_entrees .inner {
        gap: 35px;
    }
}
@media (max-width: 1170px) {
    #chapterPicture {
        flex-direction: column-reverse;
        display: flex;
    }
    .trois_entrees {
        position: relative;
        top: 0;
        height: auto;
        padding: 50px 0;
    }
    header {
        height: 90px;
    }
    #chapterPicture {
        padding-top: 90px;
    }
    #logo img,
    header.scrolled #logo img {
        height: 40px;
    }
    #logo,
    header.scrolled #logo {
        left: 30px;
        top: 0;
    }
    #headerBoxes .rs a {
        display: flex;
    }
    #headerBoxes {
        top: 0;
        bottom: 0;
        right: 100px;
    }
    header.scrolled {
        margin-top: 0;
        box-shadow: 0 0 10px rgba(0,0,0,0.2);
    }
    #nested .firstLevel li ul li a {
        padding: 10px;
        font-size: 15px;
    }
    #chapterPicture {
        height: auto;
    }
    .trois_entrees .elem,
    header.scrolled + div .trois_entrees .elem {
        width: 47%;
    }
    .trois_entrees .inner,
    header.scrolled + div .trois_entrees .inner {
        position: relative;
        flex-wrap: wrap;
        right: 0;
        justify-content: space-between;
        gap: 0;
        bottom: 0;
        width: 87%;
        margin: 0 auto;
        row-gap: 40px;
    }
    .trois_entrees .elem > svg:last-child,
    header.scrolled + div .trois_entrees .elem > svg:last-child {
        height: 16px;
        bottom: 26px;
    }
    .trois_entrees .elem > svg:first-child,
    header.scrolled + div .trois_entrees .elem > svg:first-child {
        height: auto;
    }
    .trois_entrees .elem a,
    header.scrolled + div .trois_entrees .elem a {
        font-size: 24px;
        padding: 40px 30px 0 130px;
    }
    .trois_entrees .elem a span {
        max-width: 175px;
        display: block;
    }
    body:not(.home) .trois_entrees {
        display: none;
    }
    .title_and_bc {
        top: 0;
        position: relative;
        z-index: 1;
        padding: 60px 6.5%;
    }
    body:not(.home) #chapterPicture img {
        position: absolute;
        top: 90px;
        left: 0;
        height: calc(100% - 90px);
    }
}
@media (max-width: 900px) {
    #headerBoxes > a[class] {
        display: none;
    }
}
@media (max-width: 650px) {
    #headerBoxes > a {
        display: none;
    }
}
@media (max-width: 1000px) {
    .container_img > span {
        font-size: 10.1vw;
        left: 6.5vw;
    }
}
@media (max-width: 820px) {
    .trois_entrees .elem, header.scrolled + div .trois_entrees .elem {
        width: 100%;
    }
    body.home h1 {
        max-width: 275px;
        text-align: center;
        margin: -40px auto 30px;
    }
    #top .flex > div {
        display: none;
    }
    #top .flex > div:first-child {
        width: 100%;
        max-width: 100%;
        display: block;
        text-align: center;
    }
}
@media (max-width: 1590px) {
    h2 {
        font-size: 48px;
    }
}





@media (max-width: 500px) {
    body {
        font-size: 16px;
    }
    .title_and_bc h1 {
        margin: 0px 0 10px 0;
        font-size: 36px;
    }
    .widget_breadcrumb {
        font-size: 13px;
    }
    header .rs {
        display: none;
    }


    header {
        height: 70px;
    }
    #chapterPicture {
        padding-top: 70px;
    }
    #logo, header.scrolled #logo {
        left: 6.5vw;
    }
    #logo img {
        height: 32px;
    }
    header div #nested {
        right: 6.5vw;
        margin-right: -7px;
    }
    header.scrolled {
        height: 54px;
    }
    header.scrolled #logo img {
        height: 22px;
    }
    #nested ul.firstLevel > li {
        padding: 0 30px 0 10px;
    }
    .container_img {
        height: auto;
        aspect-ratio: 56 / 31.4;
    }
    body.home #chapterPicture img {
        object-position: right;
    }
    .container_img > span {
        bottom: 6.5vw;
        line-height: 0.95em;
    }
    .trois_entrees {
        display: none;
    }
    body.home h1 {
        font-size: 32px;
        max-width: 330px;
        margin: -45px auto 15px;
    }
    .deux_span > span:nth-child(1), .deux_span > span:nth-child(2) {
        transition-duration: 0.25s;
    }
    .deux_span:not(.disabled):hover > span:nth-child(2) {
        transform: translateY(2px);
    }
    #wrapper a.wp-block-button__link, #wrapper div.wpforms-container-full button[type="submit"],
    #top .flex > div > :last-child a, .bloc .txt > :last-child a,
    #process .c > :last-child a, #avis .c > :last-child a {
        transition: background 0.2s, box-shadow 0.2s;
        font-size: 16px;
        padding: 16px 26px;
    }
    h2 {
        font-size: 30px;
    }


    body:not(.home) #chapterPicture img {
        top: 70px;
        height: calc(100% - 70px);
    }
    .title_and_bc {
        padding: 50px 6.5%;
    }
    body:not(.home) h2 {
        font-size: 30px;
    }
    #wrapperInner {
        padding-top: 60px;
    }
    .title_and_bc:last-child {
        height: auto;
    }
}



@media (min-width: 1171px) and (max-width: 1340px) {
    .title_and_bc h1 {
        font-size: 48px;
    }
}









/* 20260122 - Pour le CLS, on déplace tout le CSS des éléments ".bloc" dans le fichier style.css (qui se charge plus tôt) */



.bloc .c {
    width: 90%;
    max-width: 1300px;
    background: #D99D8F;
    margin: 0 auto 110px;
    display: flex;
    position: relative;
}
.bloc .c:before {
    content: '';
    width: 9999px;
    height: 100%;
    position: absolute;
    left: 100%;
    top: 0;
    background: inherit;
}
.bloc .c > * {
    width: 50%;
}
.bloc .txt {
    box-sizing: border-box;
    align-content: center;
    padding: 60px 90px;
    color: #FFFFFF;
}
.bloc h2 {
    margin-bottom: 60px;
	text-wrap-style: balance;
}
.bloc .txt > :last-child a {
    margin-top: 50px;
}
.bloc .c.bleu {
	background: #7AAEB3;
}
.bloc .c.kaki {
	background: #796D53;
}
.bloc .c.bleufonce {
    background: #4F6E8C;
}
.bloc .c.inverse:before {
    left: auto;
    right: 100%;
}
.bloc .c.inverse {
	flex-direction: row-reverse;
}
.bloc .c img {
    height: 650px;
    object-fit: cover;
    border-top-right-radius: 250px;
}
.bloc .c.inverse img {
    border-top-right-radius: 0px;
    border-top-left-radius: 250px;
}
.bloc .c svg {
    position: absolute;
    left: -85px;
    bottom: -135px;
    width: auto;
}
.bloc .c.inverse svg {
    left: auto;
	right: -70px;
    bottom: -115px;
}



@media (max-width: 1590px) {
    .bloc h2 {
        margin-bottom: 40px;
    }
    .bloc .txt > :last-child a {
        margin-top: 30px;
    }
    .bloc .c {
        width: 100%;
        max-width: calc(100% - 300px);
    }
    .bloc .txt {
        padding: 50px 70px;
    }
    .bloc .c img {
        height: 550px;
    }
}
@media (max-width: 1470px) {
    .bloc .c:not(.inverse) .txt {
        padding-right: 0;
    }
    .bloc .c.inverse .txt {
        padding-left: 0;
    }
}
@media (max-width: 1330px) {
    .bloc .c {
        max-width: calc(100% - 220px);
    }
    .bloc h2 {
        margin-bottom: 30px;
        font-size: 42px;
    }
}
@media (max-width: 1240px) {
    .bloc .c svg {
        display: none;
    }
    .bloc .c {
        max-width: 100%;
    }
    .bloc .c:not(.inverse) .txt, .bloc .c.inverse .txt {
        padding: 60px;
    }
    .bloc .c img {
        height: auto;
    }
}
@media (max-width: 800px) {
    .bloc .c img,
    .bloc .c.inverse img {
        border-radius: 0;
    }
    .bloc .c,
    .bloc .c.inverse {
        flex-direction: column;
        padding: 6.5vw;
        box-sizing: border-box;
        margin-bottom: 0;
    }
    .bloc .c > * {
        width: 100%;
    }
    .bloc .c:not(.inverse) .txt, .bloc .c.inverse .txt {
        padding: 6.5vw 0 0 0;
    }
}
@media (max-width: 500px) {
    .bloc h2 {
        font-size: 30px;
    }
    .bloc h2 {
        margin-bottom: 20px;
    }
    .bloc .txt > :last-child a {
        margin-top: 15px;
    }
    .bloc .c img {
        height: 87vw;
    }
}