/*FOND BLEU = #1C2B4DTITRES & BOUTONS = #282B30TITRES & BOUTONS = #DDEAEFCATÉGORIES = #F0AA08TEXTE COURANT = #4C4F55FOND & TEXTE = #FFFFFFSÉLECTION = #F8D69AFOND POUDRE = #F3F7F9*/body {    margin: 0;    font-family: 'Inter', sans-serif;    font-weight: 400;}h1, h2, h3, .hero-title, .section-title, .footer-slogan {    font-family: 'Reckless Neue', serif;    font-weight: 400;}h4, h5, h6, .subtitle {    font-family: 'Inter', sans-serif;    font-weight: 500;}.nav, .menu, .header-link {    font-family: 'Inter', sans-serif;    font-weight: 600;    letter-spacing: 0.04em;}.btn, .cta {    font-family: 'Inter', sans-serif;    font-weight: 600;    letter-spacing: 0.06em;    text-transform: uppercase;}.badge, .label, .small-text {    font-family: 'Inter', sans-serif;    font-weight: 500;    letter-spacing: 0.08em;}p, li {    font-family: 'Inter', sans-serif;    font-weight: 400;    line-height: 1.6;}:root {    --rd-blue: #1C2B4D;    --rd-text: #333333;}.container-xxl {    max-width: 1400px;}.site-header {}/* Barre du haut */.top-bar {    background-color: var(--rd-blue);    color: #ffffff;    text-transform: uppercase;    font-size: 10px;}.top-bar-inner {    display: flex;    justify-content: center;    align-items: center;    min-height: 34px;}.top-bar-links {    font-size: 10px;    letter-spacing: 0.08em;}.top-bar-link {    color: #ffffff;    text-decoration: none;    white-space: nowrap;}    .top-bar-link:hover {        color: #f5f5f5;    }/* Navigation principale */.main-nav {    background-color: #ffffff;    border-bottom: 1px solid #e6e6e6;}    .main-nav .container-xxl {        padding-top: 18px;        padding-bottom: 18px;    }.logo-img {    max-height: 40px;}.main-menu {    display: flex;    gap: 26px;    font-size: 11px;    text-transform: uppercase;    letter-spacing: 0.08em;}.menu-link {    color: var(--rd-text);    text-decoration: none;    white-space: nowrap;}    .menu-link:hover {        color: var(--rd-blue);    }.menu-link-primary {    font-weight: 600;}/* Hamburger */.navbar-toggler {    padding: 0;    width: 36px;    height: 36px;    color: #000;}.navbar-toggler-icon {    display: inline-block;    width: 20px;    height: 2px;    background-color: currentColor;    position: relative;}    .navbar-toggler-icon::before,    .navbar-toggler-icon::after {        content: "";        position: absolute;        left: 0;        width: 20px;        height: 2px;        background-color: currentColor;    }    .navbar-toggler-icon::before {        top: -6px;    }    .navbar-toggler-icon::after {        top: 6px;    }/* Offcanvas */.offcanvas-link {    display: block; /* chaque lien = sa propre ligne */    text-decoration: none;    color: var(--rd-text);    text-transform: uppercase;    font-size: 14px;    letter-spacing: 0.06em;    margin: 6px 0; /* espacement vertical */    white-space: nowrap; /* empêche les coupures étranges */}    .offcanvas-link:hover {        color: var(--rd-blue);    }.offcanvas-link-primary {    font-weight: 600;}/* Menu latéral : forcer un item par ligne */.offcanvas-menu,.offcanvas-body nav,.offcanvas-body {    display: flex;    flex-direction: column;}/* ================================================= */:root {    --rd-hero-text: #ffffff;    --rd-hero-overlay: rgba(0, 0, 0, 0.35);    --rd-hero-btn-bg: #ffffff;    --rd-hero-btn-text: #1e2745;}.container-xxl {    max-width: 1400px;}/* SECTION HERO */.hero-accueil {    position: relative;    width: 100%;    min-height: 520px;    color: var(--rd-hero-text);    background-image: url("/assets/img/hero-accueil.jpg"); /* remplace par ton visuel */    background-size: cover;    background-position: center;    background-repeat: no-repeat;}.hero-carriere {    position: relative;    width: 100%;    min-height: 520px;    color: var(--rd-hero-text);    background-image: url("/assets/img/carriere.jpg"); /* remplace par ton visuel */    background-size: cover;    background-position: center;    background-repeat: no-repeat;}.paiement-hero {    position: relative;    width: 100%;    min-height: 520px;    color: var(--rd-hero-text);    background-image: url("/assets/img/paiement.jpg"); /* remplace par ton visuel */ background-size: cover;    background-position: center;    background-repeat: no-repeat;}.hero-commande {    position: relative;    width: 100%;    min-height: 220px;    color: var(--rd-hero-text);    background-image: url("/assets/img/hero-accueil.jpg"); /* remplace par ton visuel */    background-size: cover;    background-position: center;    background-repeat: no-repeat;}.hero-overlay {    width: 100%;    height: 100%;    background: linear-gradient( to bottom, rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.35) );    display: flex;    align-items: center;    padding-top: 60px;    padding-bottom: 80px;}.hero-contenu {    max-width: 520px;}.hero-surtitre {    font-size: 11px;    letter-spacing: 0.18em;    text-transform: uppercase;    margin-bottom: 18px;    opacity: 0.85;}.hero-titre {    font-size: 40px;    line-height: 1.2;    font-weight: 400;    margin: 0 0 28px 0;}/* Bouton */.hero-bouton {    display: inline-block;    padding: 10px 26px;    border-radius: 999px;    border: 1px solid var(--rd-hero-btn-bg);    background-color: transparent;    color: var(--rd-hero-btn-bg);    font-size: 12px;    letter-spacing: 0.16em;    text-transform: uppercase;    text-decoration: none;}    .hero-bouton:hover {        background-color: var(--rd-hero-btn-bg);        color: var(--rd-hero-btn-text);    }/* Responsive */@media (max-width: 991.98px) {    .hero-accueil {        min-height: 420px;        background-position: center center;    }    .hero-titre {        font-size: 32px;    }    .hero-overlay {        padding-top: 40px;        padding-bottom: 60px;    }}@media (max-width: 575.98px) {    .hero-overlay {        justify-content: center;    }    .hero-contenu {        max-width: 100%;        text-align: center;    }    .hero-titre {        font-size: 26px;    }    .hero-bouton {        padding: 9px 22px;        font-size: 11px;    }}/* ================================================= */:root {    --rd-bleu-clair: #f3f6fa;    --rd-texte: #333333;    --rd-icone: #1e2745;}/* Container central 1400 px (coherent avec le reste du site) */.container-xxl {    max-width: 1400px;}/* SECTION COMMUNAUTE */.section-communaute {    background-color: var(--rd-bleu-clair);    padding-top: 80px;    padding-bottom: 80px;}/* Colonne gauche */.communaute-texte {    padding-right: 30px;}.communaute-badge {    display: inline-block;    background-color: #fcd877;    color: #000000;    padding: 6px 14px;    border-radius: 999px;    font-size: 11px;    letter-spacing: 0.1em;    text-transform: uppercase;    margin-bottom: 24px;}.communaute-titre {    font-size: 28px;    line-height: 1.4;    margin-bottom: 24px;    color: var(--rd-texte);}.communaute-description {    font-size: 15px;    color: #555555;    margin-bottom: 32px;}.communaute-bouton {    display: inline-block;    padding: 10px 26px;    border-radius: 999px;    background-color: transparent;    border: 1px solid var(--rd-texte);    text-transform: uppercase;    font-size: 12px;    letter-spacing: 0.15em;    color: var(--rd-texte);    text-decoration: none;}    .communaute-bouton:hover {        background-color: var(--rd-texte);        color: #ffffff;    }/* Colonne droite */.communaute-droite {    position: relative;    padding-top: 55px;}.communaute-liste {    padding-left: 20px;    margin-bottom: 40px;}.communaute-item {    display: flex;    align-items: flex-start;    gap: 12px;    margin-bottom: 16px;}.communaute-icone {    color: var(--rd-icone);    font-size: 14px;    line-height: 1.2;    margin-top: 4px;}/* Carte pale (map en fond) */.communaute-carte {    width: 100%;    height: 260px;    background-image: url("/assets/img/map-pale.png"); /* a remplacer par ton fichier */    background-size: contain;    background-repeat: no-repeat;    background-position: right center;    opacity: 0.28;}/* Responsive */@media (max-width: 991.98px) {    .communaute-texte {        padding-right: 0;        margin-bottom: 40px;    }    .communaute-droite {        padding-top: 0;    }    .communaute-carte {        height: 200px;        background-position: center;    }}@media (max-width: 575.98px) {    .communaute-liste {        padding-left: 0;    }    .communaute-titre {        font-size: 24px;    }}/* ================================================= */:root {    --rd-service-text: #ffffff;    --rd-service-overlay: rgba(0, 0, 0, 0.35);    --rd-service-button-border: #ffffff;    --rd-service-button-bg-hover: #ffffff;    --rd-service-button-text-hover: #1e2745;}/* SECTION SERVICES */.section-services {    width: 100%;    background-color: #dfe6ee;}/* Cartes */.service-card {    position: relative;    min-height: 320px;    color: var(--rd-service-text);    background-size: cover;    background-position: center center;    background-repeat: no-repeat;}/* Remplace les URL d'images par tes fichiers réels */.service-card-location {    background-image: url("/assets/img/service-location.jpg");}.service-card-collecte {    background-image: url("/assets/img/service-collecte.jpg");}.service-card-excavation {    background-image: url("/assets/img/service-excavation.jpg");}/* Voile sombre + centrage contenu */.service-overlay {    width: 100%;    height: 100%;    background: linear-gradient( to bottom, rgba(0, 0, 0, 0.40), rgba(0, 0, 0, 0.35) );    display: flex;    align-items: center;    justify-content: center;    padding: 40px 20px;}.service-content {    max-width: 260px;}.service-title {    font-size: 22px;    line-height: 1.4;    letter-spacing: 0.12em;    text-transform: uppercase;    margin: 0 0 30px 0;}/* Bouton */.service-button {    display: inline-block;    padding: 9px 22px;    border-radius: 999px;    border: 1px solid var(--rd-service-button-border);    background-color: transparent;    color: var(--rd-service-text);    font-size: 11px;    letter-spacing: 0.16em;    text-transform: uppercase;    text-decoration: none;}    .service-button:hover {        background-color: var(--rd-service-button-bg-hover);        color: var(--rd-service-button-text-hover);    }/* Responsive */@media (max-width: 991.98px) {    .service-card {        min-height: 260px;    }    .service-title {        font-size: 20px;    }}@media (max-width: 575.98px) {    .service-card {        min-height: 220px;    }    .service-overlay {        padding: 30px 16px;    }    .service-title {        font-size: 18px;    }    .service-content {        max-width: 220px;    }}/* ================================================= */:root {    --rd-bleu-clair: #f3f6fa;    --rd-texte: #333333;}.container-xxl {    max-width: 1400px;}/* SECTION QUALITE */.section-qualite {    background-color: var(--rd-bleu-clair);    padding-top: 80px;    padding-bottom: 80px;}/* Colonne gauche */.qualite-texte {    padding-right: 40px;}.qualite-titre {    font-size: 28px;    line-height: 1.4;    margin-bottom: 24px;    color: var(--rd-texte);}.qualite-paragraphe {    font-size: 15px;    color: #555555;    margin-bottom: 32px;    max-width: 520px;}.qualite-bouton {    display: inline-block;    padding: 10px 26px;    border-radius: 999px;    background-color: transparent;    border: 1px solid var(--rd-texte);    text-transform: uppercase;    font-size: 12px;    letter-spacing: 0.15em;    color: var(--rd-texte);    text-decoration: none;}    .qualite-bouton:hover {        background-color: var(--rd-texte);        color: #ffffff;    }/* Colonne droite : photo */.qualite-visuel {    display: flex;    justify-content: flex-end;}.qualite-photo-wrapper {    width: 100%;    max-width: 520px;    border-radius: 32px;    overflow: hidden;    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.18);}.qualite-photo {    display: block;    width: 100%;    height: auto;}/* Responsive */@media (max-width: 991.98px) {    .section-qualite {        padding-top: 60px;        padding-bottom: 60px;    }    .qualite-texte {        padding-right: 0;        margin-bottom: 32px;    }    .qualite-visuel {        justify-content: center;    }}@media (max-width: 575.98px) {    .qualite-titre {        font-size: 24px;    }    .qualite-photo-wrapper {        border-radius: 24px;    }}/* ================================================= */:root {    --rd-soumission-texte: #ffffff;    --rd-soumission-overlay: rgba(0, 0, 0, 0.35);    --rd-soumission-bouton-border: #ffffff;    --rd-soumission-bouton-bg-hover: #ffffff;    --rd-soumission-bouton-texte-hover: #1e2745;}/* Container central 1400 px */.container-xxl {    max-width: 1400px;}/* SECTION SOUMISSION */.section-soumission {    position: relative;    width: 100%;    min-height: 420px;    color: var(--rd-soumission-texte);    background-image: url("/assets/img/soumission-hero.jpg");    background-size: cover;    background-position: center center;    background-repeat: no-repeat;}.soumission-overlay {    width: 100%;    height: 100%;    background: linear-gradient( to bottom, rgba(0, 0, 0, 0.40), rgba(0, 0, 0, 0.35) );    display: flex;    align-items: center;    justify-content: center;    padding-top: 80px;    padding-bottom: 80px;}.soumission-contenu {    max-width: 520px;    margin: 0 auto;}.soumission-titre {    font-size: 32px;    line-height: 1.4;    font-weight: 400;    margin: 0 0 28px 0;}/* Bouton */.soumission-bouton {    display: inline-block;    padding: 10px 28px;    border-radius: 999px;    border: 1px solid var(--rd-soumission-bouton-border);    background-color: transparent;    color: var(--rd-soumission-texte);    font-size: 12px;    letter-spacing: 0.16em;    text-transform: uppercase;    text-decoration: none;}    .soumission-bouton:hover {        background-color: var(--rd-soumission-bouton-bg-hover);        color: var(--rd-soumission-bouton-texte-hover);    }/* Responsive */@media (max-width: 991.98px) {    .section-soumission {        min-height: 360px;    }    .soumission-titre {        font-size: 28px;    }    .soumission-overlay {        padding-top: 60px;        padding-bottom: 60px;    }}@media (max-width: 575.98px) {    .section-soumission {        min-height: 320px;    }    .soumission-titre {        font-size: 24px;    }    .soumission-bouton {        padding: 9px 22px;        font-size: 11px;    }}/* ================================================= */:root {    --rd-footer-bg: #1C2B4D;    --rd-footer-text: #ffffff;    --rd-footer-text-light: #d1d7e5;    --rd-footer-accent: #f1af32;}/* Container 1400 px */.container-xxl {    max-width: 1400px;}/* FOOTER GLOBAL */.site-footer {    background-color: var(--rd-footer-bg);    color: var(--rd-footer-text);}/* Bloc principal */.footer-main {    padding-top: 60px;    padding-bottom: 40px;}.footer-top {    margin-bottom: 60px;}.footer-col {    margin-bottom: 24px;}/* Titres colonnes */.footer-heading {    font-size: 13px;    letter-spacing: 0.18em;    text-transform: uppercase;    color: var(--rd-footer-accent);    margin-bottom: 18px;}/* Texte */.footer-text {    margin: 0 0 8px 0;    font-size: 14px;    color: var(--rd-footer-text-light);}.footer-text-space {    margin-top: 18px;}/* Listes */.footer-list {    list-style: none;    margin: 0;    padding: 0;    font-size: 14px;}    .footer-list li {        margin-bottom: 4px;    }    .footer-list a {        color: var(--rd-footer-text-light);        text-decoration: none;    }        .footer-list a:hover {            text-decoration: underline;            color: #ffffff;        }.footer-list-space {    margin-top: 16px;}/* Slogan + logo */.footer-middle {    margin-top: 20px;}.footer-slogan-col {    padding-right: 40px;}.footer-slogan {    margin: 0;    font-size: 34px;    line-height: 1.3;    color: var(--rd-footer-text);}.footer-logo-col {    margin-top: 20px;}.footer-logo {    max-width: 260px;    height: auto;}/* Bandeau du bas */.footer-bottom {    border-top: 1px solid rgba(255, 255, 255, 0.18);    padding: 14px 0;}.footer-bottom-inner {    display: flex;    justify-content: space-between;    align-items: center;    gap: 24px;}.footer-extra-links {    list-style: none;    margin: 0;    padding: 0;    display: flex;    flex-wrap: wrap;    gap: 24px;}    .footer-extra-links a {        font-size: 13px;        color: var(--rd-footer-text-light);        text-decoration: none;    }        .footer-extra-links a:hover {            text-decoration: underline;            color: #ffffff;        }.footer-copy {    margin: 0;    font-size: 13px;    color: var(--rd-footer-text-light);}/* RESPONSIVE */@media (max-width: 991.98px) {    .footer-top {        margin-bottom: 40px;    }    .footer-slogan-col {        padding-right: 0;        margin-bottom: 24px;    }    .footer-middle {        text-align: center;    }    .footer-logo-col {        text-align: center;    }    .footer-bottom-inner {        flex-direction: column;        align-items: center;        text-align: center;    }    .footer-extra-links {        justify-content: center;    }}/*******************************************************************************************************//*                                                                                                     *//*      À PROPOS                                                                                       *//*                                                                                                     *//*******************************************************************************************************//* SECTION HISTOIRE */#page.apropos .histoire-section {    position: relative;    background-color: #3d4f67;    background: linear-gradient(to bottom, #3d4f67 0%, #3d4f67 50%, #f5f5f3 50%, #f5f5f3 100%);    padding: 80px 0 50px;}#page.apropos .histoire-header {    margin-bottom: 60px;}#page.apropos .histoire-title {    font-family: 'Reckless Neue', serif;    font-size: 64px;    font-weight: 400;    line-height: 1.1;    color: #ffffff;    margin-bottom: 24px;}#page.apropos .histoire-subtitle {    font-family: 'Inter', sans-serif;    font-size: 16px;    font-weight: 300;    line-height: 1.6;    color: #b8c5d6;}#page.apropos .histoire-images {    margin-bottom: 80px;}#page.apropos .image-card {    border-radius: 0;    overflow: hidden;    height: 350px;}    #page.apropos .image-card img {        width: 100%;        height: 100%;        object-fit: cover;        display: block;    }#page.apropos .image-left img {    border-top-left-radius: 20px;    border-bottom-left-radius: 20px;}#page.apropos .image-right img {    border-top-right-radius: 20px;    border-bottom-right-radius: 20px;}#page.apropos .histoire-content {    padding-top: 20px;}#page.apropos .label {    display: inline-block;    background-color: #f5a623;    color: #ffffff;    font-family: 'Inter', sans-serif;    font-size: 11px;    font-weight: 600;    letter-spacing: 0.5px;    text-transform: uppercase;    padding: 8px 16px;    border-radius: 20px;    margin-bottom: 24px;}#page.apropos .content-title {    font-family: 'Reckless Neue', serif;    font-size: 40px;    font-weight: 400;    line-height: 1.3;    color: #2c3e50;}#page.apropos .content-text {    font-family: 'Inter', sans-serif;    font-size: 16px;    font-weight: 400;    line-height: 1.8;    color: #4a5568;}@media (max-width: 991.98px) {    #page.apropos .histoire-title {        font-size: 48px;    }    #page.apropos .content-title {        font-size: 32px;        margin-bottom: 24px;    }    #page.apropos .histoire-images {        margin-bottom: 60px;    }}@media (max-width: 767.98px) {    #page.apropos .histoire-section {        padding: 60px 0 80px;    }    #page.apropos .histoire-header {        margin-bottom: 40px;    }    #page.apropos .histoire-title {        font-size: 36px;    }    #page.apropos .histoire-subtitle {        font-size: 14px;    }    #page.apropos .histoire-images {        margin-bottom: 50px;    }    #page.apropos .image-card {        height: 300px;        border-radius: 20px !important;    }        #page.apropos .image-card:first-child {            margin-bottom: 20px;        }    #page.apropos .content-title {        font-size: 28px;    }    #page.apropos .content-text {        font-size: 15px;    }}/* SECTION SOUMISSION */#page.soumission .soumission-section {    position: relative;    background-color: #3d4f67;    padding: 80px 0 50px;}#page.soumission .soumission-header {    margin-bottom: 60px;}#page.soumission .soumission-title {    font-family: 'Reckless Neue', serif;    font-size: 64px;    font-weight: 400;    line-height: 1.1;    color: #ffffff;    margin-bottom: 24px;}#page.soumission .soumission-subtitle {    font-family: 'Inter', sans-serif;    font-size: 16px;    font-weight: 300;    line-height: 1.6;    color: #b8c5d6;}#page.soumission-title .soumission-title-section {    position: relative;    background-color: #3d4f67;    background: linear-gradient(to bottom, #3d4f67 0%, #3d4f67 50%, #f5f5f3 50%, #f5f5f3 100%);    padding: 80px 0 50px;}#page.soumission-title .soumission-title-header {    margin-bottom: 60px;}#page.soumission .soumission-images {    margin-bottom: 80px;}#page.soumission .image-card {    border-radius: 0;    overflow: hidden;    height: 350px;}    #page.soumission .image-card img {        width: 100%;        height: 100%;        object-fit: cover;        display: block;    }#page.soumission .image-left img {    border-top-left-radius: 20px;    border-bottom-left-radius: 20px;}#page.soumission .image-right img {    border-top-right-radius: 20px;    border-bottom-right-radius: 20px;}#page.soumission .soumission-content {    padding-top: 20px;}/* SECTION commande */#page.commande .commande-section {    position: relative;    background-color: #3d4f67;    padding: 80px 0 50px;}#page.commande .commande-header {    margin-bottom: 60px;}#page.commande .commande-title {    font-family: 'Reckless Neue', serif;    font-size: 64px;    font-weight: 400;    line-height: 1.1;    color: #ffffff;    margin-bottom: 24px;}#page.commande .commande-subtitle {    font-family: 'Inter', sans-serif;    font-size: 16px;    font-weight: 300;    line-height: 1.6;    color: #b8c5d6;}#page.commande-title .commande-title-section {    position: relative;    background-color: #3d4f67;    background: linear-gradient(to bottom, #3d4f67 0%, #3d4f67 50%, #f5f5f3 50%, #f5f5f3 100%);    padding: 80px 0 50px;}#page.commande-title .commande-title-header {    margin-bottom: 60px;}#page.commande .commande-images {    margin-bottom: 80px;}#page.commande .image-card {    border-radius: 0;    overflow: hidden;    height: 350px;}    #page.commande .image-card img {        width: 100%;        height: 100%;        object-fit: cover;        display: block;    }#page.commande .image-left img {    border-top-left-radius: 20px;    border-bottom-left-radius: 20px;}#page.commande .image-right img {    border-top-right-radius: 20px;    border-bottom-right-radius: 20px;}#page.commande .commande-content {    padding-top: 20px;}/* SECTION carriere */#page.carriere .carriere-section {    position: relative;    background-color: #3d4f67;    padding: 80px 0 50px;}#page.carriere .carriere-header {    margin-bottom: 60px;}#page.carriere .carriere-title {    font-family: 'Reckless Neue', serif;    font-size: 64px;    font-weight: 400;    line-height: 1.1;    color: #ffffff;    margin-bottom: 24px;}#page.carriere .carriere-subtitle {    font-family: 'Inter', sans-serif;    font-size: 16px;    font-weight: 300;    line-height: 1.6;    color: #b8c5d6;}#page.carriere-title .carriere-title-section {    position: relative;    background-color: #3d4f67;    background: linear-gradient(to bottom, #3d4f67 0%, #3d4f67 50%, #f5f5f3 50%, #f5f5f3 100%);    padding: 80px 0 50px;}#page.carriere-title .carriere-title-header {    margin-bottom: 60px;}#page.carriere .carriere-images {    margin-bottom: 80px;}#page.carriere .image-card {    border-radius: 0;    overflow: hidden;    height: 350px;}    #page.carriere .image-card img {        width: 100%;        height: 100%;        object-fit: cover;        display: block;    }#page.carriere .image-left img {    border-top-left-radius: 20px;    border-bottom-left-radius: 20px;}#page.carriere .image-right img {    border-top-right-radius: 20px;    border-bottom-right-radius: 20px;}#page.carriere .carriere-content {    padding-top: 20px;}/* SECTION contact */#page.contact .contact-section {    position: relative;    background-color: #3d4f67;    padding: 80px 0 50px;}#page.contact .contact-header {    margin-bottom: 60px;}#page.contact .contact-title {    font-family: 'Reckless Neue', serif;    font-size: 64px;    font-weight: 400;    line-height: 1.1;    color: #ffffff;    margin-bottom: 24px;}#page.contact .contact-subtitle {    font-family: 'Inter', sans-serif;    font-size: 16px;    font-weight: 300;    line-height: 1.6;    color: #b8c5d6;}#page.contact-title .contact-title-section {    position: relative;    background-color: #3d4f67;    background: linear-gradient(to bottom, #3d4f67 0%, #3d4f67 50%, #f5f5f3 50%, #f5f5f3 100%);    padding: 80px 0 50px;}#page.contact-title .contact-title-header {    margin-bottom: 60px;}#page.contact .contact-images {    margin-bottom: 80px;}#page.contact .image-card {    border-radius: 0;    overflow: hidden;    height: 350px;}    #page.contact .image-card img {        width: 100%;        height: 100%;        object-fit: cover;        display: block;    }#page.contact .image-left img {    border-top-left-radius: 20px;    border-bottom-left-radius: 20px;}#page.contact .image-right img {    border-top-right-radius: 20px;    border-bottom-right-radius: 20px;}#page.contact .contact-content {    padding-top: 20px;}/* SECTION EQUIPE */.section-equipe {    background-color: #ffffff;    padding-top: 80px;    padding-bottom: 80px;}    .section-equipe .container-xxl {        max-width: 1400px;    }.equipe-intro {    text-align: center;    max-width: 760px;    margin: 0 auto 48px;}.equipe-surtitre {    font-size: 11px;    letter-spacing: 0.18em;    text-transform: uppercase;    margin-bottom: 16px;    color: #777777;}.equipe-titre {    font-size: 26px;    line-height: 1.5;    margin: 0;    color: var(--rd-text);}.equipe-grille {    display: grid;    grid-template-columns: repeat(3, minmax(0, 1fr));    gap: 0;} /* Carte membre */        .equipe-carte {    position: relative;    overflow: hidden;    min-height: 320px;}    .equipe-carte img {        width: 100%;        height: 100%;        display: block;        object-fit: cover;    }/* Overlay texte */.equipe-overlay {    position: absolute;    inset: 0;    background: linear-gradient( to top, rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0.05) );    display: flex;    flex-direction: column;    align-items: center;    justify-content: flex-end;    padding-bottom: 32px;    text-align: center;    color: #ffffff;}.equipe-nom {    font-size: 16px;    letter-spacing: 0.16em;    text-transform: uppercase;    margin-bottom: 4px;}.equipe-poste {    font-size: 11px;    letter-spacing: 0.18em;    text-transform: uppercase;    opacity: 0.85;}/* Responsive */@media (max-width: 991.98px) {    .equipe-grille {        grid-template-columns: repeat(2, minmax(0, 1fr));    }    .equipe-carte {        min-height: 280px;    }    .equipe-titre {        font-size: 24px;    }}@media (max-width: 575.98px) {    .equipe-grille {        grid-template-columns: 1fr;    }    .equipe-carte {        min-height: 260px;    }    .equipe-titre {        font-size: 22px;    }}/* Section principale */#page.apropos .qualite-service {    background-color: #f5f5f3;    padding: 100px 0 80px;    position: relative;}    /* Images */    #page.apropos .qualite-service .image-card {        overflow: hidden;        border-radius: 20px;        height: auto;    }        #page.apropos .qualite-service .image-card img {            width: 100%;            height: auto;            display: block;            border-radius: 20px;        }    /* Contenu texte */    #page.apropos .qualite-service .content-center {        padding: 40px;        display: flex;        flex-direction: column;        justify-content: center;        height: 100%;    }    #page.apropos .qualite-service .qualite-title {        font-family: 'Reckless Neue', serif;        font-size: 34px;        font-weight: 400;        line-height: 1.2;        color: #2c3e50;        margin-bottom: 24px;    }    #page.apropos .qualite-service .qualite-text {        font-family: 'Inter', sans-serif;        font-size: 16px;        font-weight: 400;        line-height: 1.8;        color: #6b7280;        margin-bottom: 32px;    }    #page.apropos .qualite-service .btn-apropos {        display: inline-block;        font-family: 'Inter', sans-serif;        font-size: 13px;        font-weight: 600;        letter-spacing: 0.5px;        text-transform: uppercase;        color: #2c3e50;        border: 2px solid #2c3e50;        padding: 12px 32px;        border-radius: 30px;        text-decoration: none;        transition: all 0.3s ease;        align-self: flex-start;    }        #page.apropos .qualite-service .btn-apropos:hover {            background-color: #2c3e50;            color: #ffffff;        }/* Responsive - Tablette */@media (max-width: 991.98px) {    #page.apropos .qualite-service .qualite-title {        font-size: 40px;    }    #page.apropos .qualite-service .content-center {        padding: 30px;    }}/* Responsive - Mobile */@media (max-width: 767.98px) {    #page.apropos .qualite-service {        padding: 60px 0 60px;    }        #page.apropos .qualite-service .content-center {            padding: 0;            margin-bottom: 30px;        }        #page.apropos .qualite-service .qualite-title {            font-size: 32px;        }        #page.apropos .qualite-service .qualite-text {            font-size: 15px;        }}/* ================================================= *//*                     MEMBRE                        *//* ================================================= */.section-membre {    background-color: #dbe4e8;    padding: 120px 0;    border-radius: 32px 32px 0 0;    text-align: center;}.membre-inner {    max-width: 820px;}.membre-titre {    font-size: 42px;    line-height: 1.25;    margin: 0 0 24px 0;    color: var(--rd-text);}    .membre-titre strong {        font-weight: 600;    }.membre-sous-titre {    font-size: 18px;    color: #3b3f45;    margin-bottom: 40px;}.membre-bouton {    display: inline-block;    padding: 14px 36px;    border: 2px solid #000000;    border-radius: 42px;    text-decoration: none;    font-size: 13px;    letter-spacing: 0.10em;    color: #000000;    text-transform: uppercase;    background-color: transparent;    transition: all 0.25s ease;}    .membre-bouton:hover {        background-color: #000000;        color: #ffffff;    }/* Responsive */@media (max-width: 575.98px) {    .section-membre {        padding: 90px 0;    }    .membre-titre {        font-size: 32px;    }    .membre-sous-titre {        font-size: 16px;    }}/*******************************************************************************************************//*                                                                                                     *//*      PAGE COLLECTE                                                                                  *//*                                                                                                     *//*******************************************************************************************************//* ===== SECTION 1: HERO ===== */#page.collecte .hero-collecte {    background-image: url('../img/collecte-camion.jpg');    background-size: cover;    background-position: center;    min-height: 500px;    display: flex;    align-items: center;    position: relative;}    #page.collecte .hero-collecte::before {        content: '';        position: absolute;        top: 0;        left: 0;        right: 0;        bottom: 0;        background: rgba(0, 0, 0, 0.3);    }#page.collecte .hero-content {    position: relative;    z-index: 2;}#page.collecte .hero-title {    font-family: 'Reckless Neue', serif;    font-size: 72px;    font-weight: 400;    line-height: 1.1;    color: #ffffff;    margin-bottom: 32px;}#page.collecte .btn-hero {    display: inline-block;    font-family: 'Inter', sans-serif;    font-size: 13px;    font-weight: 600;    letter-spacing: 0.5px;    text-transform: uppercase;    color: #ffffff;    border: 2px solid #ffffff;    padding: 14px 36px;    border-radius: 30px;    text-decoration: none;    transition: all 0.3s ease;}    #page.collecte .btn-hero:hover {        background-color: #ffffff;        color: #2c3e50;    }/* ===== SECTION 2: SERVICE FIABLE ===== */#page.collecte .service-fiable {    background-color: #F3F7F9;    padding: 100px 0;}#page.collecte .label-section {    display: inline-block;    background-color: #f5a623;    color: #ffffff;    font-family: 'Inter', sans-serif;    font-size: 11px;    font-weight: 600;    letter-spacing: 0.5px;    text-transform: uppercase;    padding: 8px 16px;    border-radius: 20px;    margin-bottom: 24px;}#page.collecte .section-title {    font-family: 'Reckless Neue', serif;    font-size: 48px;    font-weight: 400;    line-height: 1.2;    color: #2c3e50;    margin-bottom: 32px;}#page.collecte .section-text {    font-family: 'Inter', sans-serif;    font-size: 16px;    font-weight: 400;    line-height: 1.8;    color: #6b7280;}#page.collecte .btn-outline {    display: inline-block;    font-family: 'Inter', sans-serif;    font-size: 13px;    font-weight: 600;    letter-spacing: 0.5px;    text-transform: uppercase;    color: #2c3e50;    border: 2px solid #2c3e50;    padding: 12px 32px;    border-radius: 30px;    text-decoration: none;    transition: all 0.3s ease;    margin-top: 24px;}    #page.collecte .btn-outline:hover {        background-color: #2c3e50;        color: #ffffff;    }/* ===== SECTION 3: GESTION QUOTIDIENNE ===== */#page.collecte .gestion-quotidienne {    background-color: #ffffff;    padding: 100px 0;}#page.collecte .rounded-image {    border-radius: 20px;    width: 100%;    height: auto;}#page.collecte .image-wrapper {    margin-top: 32px;}/* ===== SECTION 4: PARTENAIRE ENGAGÉ ===== */#page.collecte .partenaire-engage {    padding: 100px 0;}/* ===== SECTION 5: CTA FINAL ===== */#page.collecte .cta-final {    background-image: url('../img/collecte-ville.jpg');    background-size: cover;    background-position: center;    min-height: 500px;    display: flex;    align-items: center;    position: relative;}    #page.collecte .cta-final::before {        content: '';        position: absolute;        top: 0;        left: 0;        right: 0;        bottom: 0;        background: rgba(0, 0, 0, 0.4);    }#page.collecte .cta-content {    position: relative;    z-index: 2;    text-align: center;}#page.collecte .cta-title {    font-family: 'Reckless Neue', serif;    font-size: 64px;    font-weight: 400;    line-height: 1.2;    color: #ffffff;    margin-bottom: 32px;}#page.collecte .btn-cta {    display: inline-block;    font-family: 'Inter', sans-serif;    font-size: 13px;    font-weight: 600;    letter-spacing: 0.5px;    text-transform: uppercase;    color: #ffffff;    border: 2px solid #ffffff;    padding: 14px 36px;    border-radius: 30px;    text-decoration: none;    transition: all 0.3s ease;}    #page.collecte .btn-cta:hover {        background-color: #ffffff;        color: #2c3e50;    }/* ===== RESPONSIVE - TABLETTE ===== */@media (max-width: 991.98px) {    #page.collecte .hero-title {        font-size: 56px;    }    #page.collecte .section-title {        font-size: 40px;    }    #page.collecte .cta-title {        font-size: 48px;    }}/* ===== RESPONSIVE - MOBILE ===== */@media (max-width: 767.98px) {    #page.collecte .hero-collecte {        min-height: 400px;    }    #page.collecte .hero-title {        font-size: 40px;    }    #page.collecte .service-fiable,    #page.collecte .gestion-quotidienne,    #page.collecte .partenaire-engage {        padding: 60px 0;    }    #page.collecte .section-title {        font-size: 32px;    }    #page.collecte .section-text {        font-size: 15px;    }    #page.collecte .cta-final {        min-height: 400px;    }    #page.collecte .cta-title {        font-size: 36px;    }    #page.collecte .image-wrapper {        margin-top: 0;        margin-bottom: 24px;    }}/*******************************************************************************************************//*                                                                                                     *//*      PAGE EXCAVATION                                                                                *//*                                                                                                     *//*******************************************************************************************************//* HERO – image pleine largeur avec texte à gauche */#page.excavation .section-excavation-hero {    position: relative;    min-height: 520px;    color: #ffffff;    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.3)), url("../img/excavation-pelle.jpg");    background-size: cover;    background-position: center center;    display: flex;    align-items: center;}#page.excavation .excavation-hero-contenu {    padding-top: 40px;    padding-bottom: 80px;}#page.excavation .excavation-hero-titre {    font-size: 44px;    line-height: 1.2;    margin-bottom: 32px;}#page.excavation .excavation-hero-bouton {    border-radius: 999px;    padding: 12px 32px;    border: 2px solid #ffffff;    color: #ffffff;    font-size: 13px;    letter-spacing: 0.12em;    text-transform: uppercase;    background: transparent;}    #page.excavation .excavation-hero-bouton:hover {        background: #ffffff;        color: #000000;    }/* ========================================================= *//*  INTRO / EXPERTISE                                       *//* ========================================================= */#page.excavation .section-excavation-intro {    background-color: var(--rd-bleu-clair);    border-radius: 32px 32px 0 0;    padding-top: 72px;    padding-bottom: 80px;}#page.excavation .excavation-intro-gauche {    max-width: 420px;}#page.excavation .excavation-pilule {    display: inline-block;    padding: 6px 14px;    border-radius: 999px;    background-color: #f0aa08;    font-size: 11px;    letter-spacing: 0.10em;    text-transform: uppercase;    color: #000000;    margin-bottom: 18px;}#page.excavation .excavation-intro-titre {    font-size: 30px;    line-height: 1.4;    margin-bottom: 26px;    color: var(--rd-texte);}#page.excavation .excavation-intro-bouton {    border-radius: 999px;    padding: 12px 30px;    border: 2px solid #000000;    font-size: 13px;    letter-spacing: 0.10em;    text-transform: uppercase;    background: transparent;    color: #000000;}    #page.excavation .excavation-intro-bouton:hover {        background: #000000;        color: #ffffff;    }#page.excavation .excavation-intro-texte p {    margin-bottom: 1.1rem;    line-height: 1.7;}/* ========================================================= *//*  BANDE SERVICES / TAGS                                   *//* ========================================================= */#page.excavation .section-excavation-services {    background-color: #ffffff;    padding-top: 56px;    padding-bottom: 56px;    text-align: center;}#page.excavation .excavation-services-surtitre {    font-size: 11px;    letter-spacing: 0.20em;    text-transform: uppercase;    margin-bottom: 28px;    color: #777777;}#page.excavation .excavation-tags {    display: flex;    flex-wrap: wrap;    gap: 12px;    justify-content: center;}#page.excavation .excavation-tag {    border: none;    border-radius: 999px;    padding: 8px 18px;    font-size: 13px;    background-color: #f2f2f2;    color: #2e2f32;    cursor: default;}#page.excavation .excavation-tag-actif {    background-color: #f0aa08;    color: #000000;}/* ========================================================= *//*  BLOC FOSSE SEPTIQUE                                     *//* ========================================================= */#page.excavation .section-excavation-fosse {    background-color: var(--rd-bleu-clair);    padding-top: 40px;    padding-bottom: 80px;}#page.excavation .excavation-fosse-visuel {    border-radius: 32px;    overflow: hidden;    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.2);}    #page.excavation .excavation-fosse-visuel img {        display: block;        width: 100%;        height: 100%;        object-fit: cover;    }#page.excavation .excavation-fosse-texte {    max-width: 520px;}#page.excavation .excavation-fosse-titre {    font-size: 30px;    margin-bottom: 20px;}#page.excavation .excavation-fosse-texte p {    line-height: 1.7;    margin-bottom: 0.9rem;}#page.excavation .excavation-fosse-liste {    padding-left: 1.2rem;    margin-bottom: 24px;}    #page.excavation .excavation-fosse-liste li {        margin-bottom: 4px;    }#page.excavation .excavation-fosse-bouton {    border-radius: 999px;    padding: 12px 30px;    border: 2px solid #000000;    font-size: 13px;    letter-spacing: 0.10em;    text-transform: uppercase;    background: transparent;    color: #000000;}    #page.excavation .excavation-fosse-bouton:hover {        background: #000000;        color: #ffffff;    }/* ========================================================= *//*  CTA FINAL – FOND TEXTURE                                *//* ========================================================= */#page.excavation .section-excavation-cta {    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.55)), url("../img/excavation-sol.jpg");    background-size: cover;    background-position: center center;    color: #ffffff;}#page.excavation .section-excavation-cta-overlay {    padding-top: 90px;    padding-bottom: 90px;}#page.excavation .excavation-cta-contenu {    text-align: center;}#page.excavation .excavation-cta-titre {    font-size: 32px;    line-height: 1.4;    margin-bottom: 32px;}#page.excavation .excavation-cta-bouton {    border-radius: 999px;    padding: 12px 32px;    border: 2px solid #ffffff;    font-size: 13px;    letter-spacing: 0.12em;    text-transform: uppercase;    background: transparent;    color: #ffffff;}    #page.excavation .excavation-cta-bouton:hover {        background: #ffffff;        color: #000000;    }/* ========================================================= *//*  RESPONSIVE – desktop -> mobile                          *//* ========================================================= */@media (max-width: 1199.98px) {    #page.excavation .excavation-hero-titre {        font-size: 40px;    }}@media (max-width: 991.98px) {    #page.excavation .section-excavation-hero {        min-height: 420px;    }    #page.excavation .excavation-hero-contenu {        padding-bottom: 60px;    }    #page.excavation .section-excavation-intro {        border-radius: 24px 24px 0 0;    }    #page.excavation .excavation-fosse-texte {        max-width: 100%;    }    #page.excavation .excavation-cta-titre {        font-size: 28px;    }}@media (max-width: 767.98px) {    #page.excavation .excavation-hero-titre {        font-size: 34px;    }    #page.excavation .section-excavation-intro {        padding-top: 56px;        padding-bottom: 64px;    }    #page.excavation .section-excavation-services {        padding-top: 40px;        padding-bottom: 40px;    }    #page.excavation .section-excavation-fosse {        padding-bottom: 64px;    }    #page.excavation .section-excavation-cta-overlay {        padding-top: 72px;        padding-bottom: 72px;    }}@media (max-width: 575.98px) {    #page.excavation .excavation-hero-titre {        font-size: 30px;    }    #page.excavation .excavation-intro-titre,    #page.excavation .excavation-fosse-titre {        font-size: 26px;    }    #page.excavation .excavation-tags {        gap: 8px;    }    #page.excavation .excavation-tag {        font-size: 12px;        padding: 7px 14px;    }}/*******************************************************************************************************//*                                                                                                     *//*      PAGE CONTENEURS-CONSTRUCTION                                                                   *//*                                                                                                     *//*******************************************************************************************************/#page.conteneurs-construction .section-conteneurs-hero {    position: relative;    min-height: 520px;    color: #ffffff;    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.25)), url("../img/conteneurs-travailleur.jpg");    background-size: cover;    background-position: center top;    display: flex;    align-items: center;}#page.conteneurs-construction .conteneurs-hero-contenu {    padding-top: 40px;    padding-bottom: 80px;}#page.conteneurs-construction .conteneurs-hero-titre {    font-size: 44px;    line-height: 1.2;    margin-bottom: 20px;}#page.conteneurs-construction .conteneurs-hero-texte {    max-width: 520px;    margin-bottom: 28px;    line-height: 1.7;}#page.conteneurs-construction .conteneurs-hero-bouton {    border-radius: 999px;    padding: 12px 32px;    border: 2px solid #ffffff;    color: #ffffff;    font-size: 13px;    letter-spacing: 0.12em;    text-transform: uppercase;    background: transparent;}    #page.conteneurs-construction .conteneurs-hero-bouton:hover {        background: #ffffff;        color: #000000;    }/* ========================================================= *//*  INTRO                                                   *//* ========================================================= */#page.conteneurs-construction .section-conteneurs-intro {    background-color: var(--rd-bleu-clair);    border-radius: 32px 32px 0 0;    padding-top: 72px;    padding-bottom: 80px;}#page.conteneurs-construction .conteneurs-intro-gauche {    max-width: 420px;}#page.conteneurs-construction .conteneurs-pilule {    display: inline-block;    padding: 6px 14px;    border-radius: 999px;    background-color: #f0aa08;    font-size: 11px;    letter-spacing: 0.10em;    text-transform: uppercase;    color: #000000;    margin-bottom: 18px;}#page.conteneurs-construction .conteneurs-intro-titre {    font-size: 30px;    line-height: 1.45;    margin-bottom: 26px;    color: var(--rd-texte);}#page.conteneurs-construction .conteneurs-intro-bouton {    border-radius: 999px;    padding: 12px 30px;    border: 2px solid #000000;    font-size: 13px;    letter-spacing: 0.10em;    text-transform: uppercase;    background: transparent;    color: #000000;}    #page.conteneurs-construction .conteneurs-intro-bouton:hover {        background: #000000;        color: #ffffff;    }#page.conteneurs-construction .conteneurs-intro-texte p {    margin-bottom: 1.1rem;    line-height: 1.7;}/* ========================================================= *//*  LISTE DES CONTENEURS                                   *//* ========================================================= */#page.conteneurs-construction .section-conteneurs-liste {    background-color: #ffffff;    padding-top: 64px;    padding-bottom: 72px;}#page.conteneurs-construction .conteneurs-liste-surtitre {    text-align: center;    font-size: 11px;    letter-spacing: 0.20em;    text-transform: uppercase;    margin-bottom: 40px;    color: #777777;}#page.conteneurs-construction .conteneur-carte {    text-align: left;}#page.conteneurs-construction .conteneur-visuel {    margin-bottom: 16px;}    #page.conteneurs-construction .conteneur-visuel img {        display: block;        width: 100%;        height: auto;        object-fit: contain;    }#page.conteneurs-construction .conteneur-titre {    font-size: 16px;    margin-bottom: 4px;}#page.conteneurs-construction .conteneur-soustitre {    font-size: 13px;    margin-bottom: 10px;    color: #70747b;}#page.conteneurs-construction .conteneur-texte {    font-size: 14px;    line-height: 1.6;}#page.conteneurs-construction .conteneurs-liste-bouton-wrap {    text-align: center;    margin-top: 40px;}#page.conteneurs-construction .conteneurs-liste-bouton {    border-radius: 999px;    padding: 12px 30px;    border: 2px solid #000000;    font-size: 13px;    letter-spacing: 0.10em;    text-transform: uppercase;    background: transparent;    color: #000000;}    #page.conteneurs-construction .conteneurs-liste-bouton:hover {        background: #000000;        color: #ffffff;    }/* ========================================================= *//*  AVANTAGE – PHOTO + TEXTE                               *//* ========================================================= */#page.conteneurs-construction .section-conteneurs-avantage {    background-color: var(--rd-bleu-clair);    padding-top: 40px;    padding-bottom: 80px;}#page.conteneurs-construction .conteneurs-avantage-visuel {    border-radius: 32px;    overflow: hidden;    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.2);}    #page.conteneurs-construction .conteneurs-avantage-visuel img {        display: block;        width: 100%;        height: 100%;        object-fit: cover;    }#page.conteneurs-construction .conteneurs-avantage-texte {    max-width: 520px;}#page.conteneurs-construction .conteneurs-avantage-titre {    font-size: 30px;    margin-bottom: 20px;}#page.conteneurs-construction .conteneurs-avantage-texte p {    line-height: 1.7;    margin-bottom: 0.9rem;}#page.conteneurs-construction .conteneurs-avantage-bouton {    border-radius: 999px;    padding: 12px 30px;    border: 2px solid #000000;    font-size: 13px;    letter-spacing: 0.10em;    text-transform: uppercase;    background: transparent;    color: #000000;}    #page.conteneurs-construction .conteneurs-avantage-bouton:hover {        background: #000000;        color: #ffffff;    }/* ========================================================= *//*  CTA FINAL                                               *//* ========================================================= */#page.conteneurs-construction .section-conteneurs-cta {    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.55)), url("../img/conteneurs-pelles.jpg");    background-size: cover;    background-position: center center;    color: #ffffff;}#page.conteneurs-construction .section-conteneurs-cta-overlay {    padding-top: 90px;    padding-bottom: 90px;}#page.conteneurs-construction .conteneurs-cta-contenu {    text-align: center;}#page.conteneurs-construction .conteneurs-cta-titre {    font-size: 32px;    line-height: 1.4;    margin-bottom: 32px;}#page.conteneurs-construction .conteneurs-cta-bouton {    border-radius: 999px;    padding: 12px 32px;    border: 2px solid #ffffff;    font-size: 13px;    letter-spacing: 0.12em;    text-transform: uppercase;    background: transparent;    color: #ffffff;}    #page.conteneurs-construction .conteneurs-cta-bouton:hover {        background: #ffffff;        color: #000000;    }/* ========================================================= *//*  RESPONSIVE – Desktop -> Mobile                          *//* ========================================================= */@media (max-width: 1199.98px) {    #page.conteneurs-construction .conteneurs-hero-titre {        font-size: 40px;    }}@media (max-width: 991.98px) {    #page.conteneurs-construction .section-conteneurs-hero {        min-height: 420px;    }    #page.conteneurs-construction .section-conteneurs-intro {        border-radius: 24px 24px 0 0;    }    #page.conteneurs-construction .conteneurs-avantage-texte {        max-width: 100%;    }    #page.conteneurs-construction .conteneurs-cta-titre {        font-size: 28px;    }}@media (max-width: 767.98px) {    #page.conteneurs-construction .conteneurs-hero-titre {        font-size: 34px;    }    #page.conteneurs-construction .section-conteneurs-intro {        padding-top: 56px;        padding-bottom: 64px;    }    #page.conteneurs-construction .section-conteneurs-liste {        padding-top: 48px;        padding-bottom: 56px;    }    #page.conteneurs-construction .section-conteneurs-avantage {        padding-bottom: 64px;    }    #page.conteneurs-construction .section-conteneurs-cta-overlay {        padding-top: 72px;        padding-bottom: 72px;    }}@media (max-width: 575.98px) {    #page.conteneurs-construction .conteneurs-hero-titre {        font-size: 30px;    }    #page.conteneurs-construction .conteneurs-intro-titre,    #page.conteneurs-construction .conteneurs-avantage-titre {        font-size: 26px;    }    #page.conteneurs-construction .conteneurs-cta-titre {        font-size: 24px;    }}/*******************************************************************************************************//*                                                                                                     *//*      PAGE CONTENEURS-DÉCHETS                                                                        *//*                                                                                                     *//*******************************************************************************************************/#page.conteneurs-dechets .section-conteneurs-hero {    position: relative;    min-height: 520px;    color: #ffffff;    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.25)), url("../img/conteneurs-dechets.jpg");    background-size: cover;    background-position: center center;    display: flex;    align-items: center;}#page.conteneurs-dechets .conteneurs-hero-contenu {    padding-top: 40px;    padding-bottom: 80px;}#page.conteneurs-dechets .conteneurs-hero-titre {    font-size: 44px;    line-height: 1.2;    margin-bottom: 20px;}#page.conteneurs-dechets .conteneurs-hero-texte {    max-width: 520px;    margin-bottom: 28px;    line-height: 1.7;}#page.conteneurs-dechets .conteneurs-hero-bouton {    border-radius: 999px;    padding: 12px 32px;    border: 2px solid #ffffff;    color: #ffffff;    font-size: 13px;    letter-spacing: 0.12em;    text-transform: uppercase;    background: transparent;}    #page.conteneurs-dechets .conteneurs-hero-bouton:hover {        background: #ffffff;        color: #000000;    }/* ========================================================= *//*  INTRO                                                    *//* ========================================================= */#page.conteneurs-dechets .section-conteneurs-intro {    background-color: var(--rd-bleu-clair);    border-radius: 32px 32px 0 0;    padding-top: 72px;    padding-bottom: 80px;}#page.conteneurs-dechets .conteneurs-intro-gauche {    max-width: 420px;}#page.conteneurs-dechets .conteneurs-pilule {    display: inline-block;    padding: 6px 14px;    border-radius: 999px;    background-color: #f0aa08;    font-size: 11px;    letter-spacing: 0.10em;    text-transform: uppercase;    color: #000000;    margin-bottom: 18px;}#page.conteneurs-dechets .conteneurs-intro-titre {    font-size: 30px;    line-height: 1.45;    margin-bottom: 26px;    color: var(--rd-texte);}#page.conteneurs-dechets .conteneurs-intro-bouton {    border-radius: 999px;    padding: 12px 30px;    border: 2px solid #000000;    font-size: 13px;    letter-spacing: 0.10em;    text-transform: uppercase;    background: transparent;    color: #000000;}    #page.conteneurs-dechets .conteneurs-intro-bouton:hover {        background: #000000;        color: #ffffff;    }#page.conteneurs-dechets .conteneurs-intro-texte p {    margin-bottom: 1.1rem;    line-height: 1.7;}/* ========================================================= *//*  LISTE DES CONTENEURS                                    *//* ========================================================= */#page.conteneurs-dechets .section-conteneurs-liste {    background-color: #ffffff;    padding-top: 64px;    padding-bottom: 72px;}#page.conteneurs-dechets .conteneurs-liste-surtitre {    text-align: center;    font-size: 11px;    letter-spacing: 0.20em;    text-transform: uppercase;    margin-bottom: 40px;    color: #777777;}#page.conteneurs-dechets .conteneur-carte {    text-align: left;}#page.conteneurs-dechets .conteneur-visuel {    margin-bottom: 16px;}    #page.conteneurs-dechets .conteneur-visuel img {        display: block;        width: 100%;        height: auto;        object-fit: contain;    }#page.conteneurs-dechets .conteneur-titre {    font-size: 16px;    margin-bottom: 4px;}#page.conteneurs-dechets .conteneur-soustitre {    font-size: 13px;    margin-bottom: 10px;    color: #70747b;}#page.conteneurs-dechets .conteneur-texte {    font-size: 14px;    line-height: 1.6;}#page.conteneurs-dechets .conteneurs-liste-bouton-wrap {    text-align: center;    margin-top: 40px;}#page.conteneurs-dechets .conteneurs-liste-bouton {    border-radius: 999px;    padding: 12px 30px;    border: 2px solid #000000;    font-size: 13px;    letter-spacing: 0.10em;    text-transform: uppercase;    background: transparent;    color: #000000;}    #page.conteneurs-dechets .conteneurs-liste-bouton:hover {        background: #000000;        color: #ffffff;    }/* ========================================================= *//*  SECTION AVANTAGE – GESTION DES MATIERES                 *//* ========================================================= */#page.conteneurs-dechets .section-conteneurs-avantage {    background-color: var(--rd-bleu-clair);    padding-top: 40px;    padding-bottom: 80px;}#page.conteneurs-dechets .conteneurs-avantage-visuel {    border-radius: 32px;    overflow: hidden;    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.2);}    #page.conteneurs-dechets .conteneurs-avantage-visuel img {        display: block;        width: 100%;        height: 100%;        object-fit: cover;    }#page.conteneurs-dechets .conteneurs-avantage-texte {    max-width: 520px;}#page.conteneurs-dechets .conteneurs-avantage-titre {    font-size: 30px;    margin-bottom: 20px;}#page.conteneurs-dechets .conteneurs-avantage-texte p {    line-height: 1.7;    margin-bottom: 0.9rem;}#page.conteneurs-dechets .conteneurs-avantage-bouton {    border-radius: 999px;    padding: 12px 30px;    border: 2px solid #000000;    font-size: 13px;    letter-spacing: 0.10em;    text-transform: uppercase;    background: transparent;    color: #000000;}    #page.conteneurs-dechets .conteneurs-avantage-bouton:hover {        background: #000000;        color: #ffffff;    }/* ========================================================= *//*  CTA FINAL                                                *//* ========================================================= */#page.conteneurs-dechets .section-conteneurs-cta {    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.55)), url("../img/conteneurs-pile.jpg");    background-size: cover;    background-position: center center;    color: #ffffff;}#page.conteneurs-dechets .section-conteneurs-cta-overlay {    padding-top: 90px;    padding-bottom: 90px;}#page.conteneurs-dechets .conteneurs-cta-contenu {    text-align: center;}#page.conteneurs-dechets .conteneurs-cta-titre {    font-size: 32px;    line-height: 1.4;    margin-bottom: 32px;}#page.conteneurs-dechets .conteneurs-cta-bouton {    border-radius: 999px;    padding: 12px 32px;    border: 2px solid #ffffff;    font-size: 13px;    letter-spacing: 0.12em;    text-transform: uppercase;    background: transparent;    color: #ffffff;}    #page.conteneurs-dechets .conteneurs-cta-bouton:hover {        background: #ffffff;        color: #000000;    }/* ========================================================= *//*  RESPONSIVE – Desktop -> Mobile                           *//* ========================================================= */@media (max-width: 1199.98px) {    #page.conteneurs-dechets .conteneurs-hero-titre {        font-size: 40px;    }}@media (max-width: 991.98px) {    #page.conteneurs-dechets .section-conteneurs-hero {        min-height: 420px;    }    #page.conteneurs-dechets .section-conteneurs-intro {        border-radius: 24px 24px 0 0;    }    #page.conteneurs-dechets .conteneurs-avantage-texte {        max-width: 100%;    }    #page.conteneurs-dechets .conteneurs-cta-titre {        font-size: 28px;    }}@media (max-width: 767.98px) {    #page.conteneurs-dechets .conteneurs-hero-titre {        font-size: 34px;    }    #page.conteneurs-dechets .section-conteneurs-intro {        padding-top: 56px;        padding-bottom: 64px;    }    #page.conteneurs-dechets .section-conteneurs-liste {        padding-top: 48px;        padding-bottom: 56px;    }    #page.conteneurs-dechets .section-conteneurs-avantage {        padding-bottom: 64px;    }    #page.conteneurs-dechets .section-conteneurs-cta-overlay {        padding-top: 72px;        padding-bottom: 72px;    }}@media (max-width: 575.98px) {    #page.conteneurs-dechets .conteneurs-hero-titre {        font-size: 30px;    }    #page.conteneurs-dechets .conteneurs-intro-titre,    #page.conteneurs-dechets .conteneurs-avantage-titre {        font-size: 26px;    }    #page.conteneurs-dechets .conteneurs-cta-titre {        font-size: 24px;    }}/*******************************************************************************************************//*                                                                                                     *//*      PAGE LOCATION-VENTE                                                                            *//*                                                                                                     *//*******************************************************************************************************//* ===== HERO: LOCATION ET VENTE DE CONTENEURS ===== */#page.location-vente .hero-conteneurs {    background-image: url('../img/location-vente-top.jpg');    background-size: cover;    background-position: center;    min-height: 400px;    display: flex;    align-items: center;    position: relative;}    #page.location-vente .hero-conteneurs::before {        content: '';        position: absolute;        top: 0;        left: 0;        right: 0;        bottom: 0;        background: rgba(0, 0, 0, 0.3);    }#page.location-vente .hero-content {    position: relative;    z-index: 2;}#page.location-vente .hero-title {    font-family: 'Reckless Neue', serif;    font-size: 64px;    font-weight: 400;    line-height: 1.1;    color: #ffffff;    margin-bottom: 32px;}#page.location-vente .btn-hero {    display: inline-block;    font-family: 'Inter', sans-serif;    font-size: 13px;    font-weight: 600;    letter-spacing: 0.5px;    text-transform: uppercase;    color: #ffffff;    border: 2px solid #ffffff;    padding: 14px 36px;    border-radius: 30px;    text-decoration: none;    transition: all 0.3s ease;}    #page.location-vente .btn-hero:hover {        background-color: #ffffff;        color: #2c3e50;    }/* ===== RESPONSIVE - MOBILE ===== */@media (max-width: 767.98px) {    #page.location-vente .hero-conteneurs {        min-height: 300px;    }    #page.location-vente .hero-title {        font-size: 40px;    }}/* ===== SECTION 2: LA SOLUTION EFFICACE ===== */#page.location-vente .solution-efficace {    background-color: #f5f5f3;    padding: 100px 0;    border-top-left-radius: 40px;    border-top-right-radius: 40px;    margin-top: -40px;    position: relative;    z-index: 3;}#page.location-vente .label-section {    display: inline-block;    background-color: #f5a623;    color: #ffffff;    font-family: 'Inter', sans-serif;    font-size: 11px;    font-weight: 600;    letter-spacing: 0.5px;    text-transform: uppercase;    padding: 8px 16px;    border-radius: 20px;    margin-bottom: 24px;}#page.location-vente .section-title {    font-family: 'Reckless Neue', serif;    font-size: 48px;    font-weight: 400;    line-height: 1.2;    color: #2c3e50;    margin-bottom: 32px;}#page.location-vente .section-text {    font-family: 'Inter', sans-serif;    font-size: 16px;    font-weight: 400;    line-height: 1.8;    color: #6b7280;}#page.location-vente .btn-group-solution {    display: flex;    flex-wrap: wrap;    gap: 16px;}#page.location-vente .btn-outline {    display: inline-block;    font-family: 'Inter', sans-serif;    font-size: 13px;    font-weight: 600;    letter-spacing: 0.5px;    text-transform: uppercase;    color: #2c3e50;    border: 2px solid #2c3e50;    padding: 12px 32px;    border-radius: 30px;    text-decoration: none;    transition: all 0.3s ease;    white-space: nowrap;}    #page.location-vente .btn-outline:hover {        background-color: #2c3e50;        color: #ffffff;    }/* ===== RESPONSIVE - TABLETTE ===== */@media (max-width: 991.98px) {    #page.location-vente .section-title {        font-size: 40px;    }}/* ===== RESPONSIVE - MOBILE ===== */@media (max-width: 767.98px) {    #page.location-vente .solution-efficace {        padding: 60px 0;        border-top-left-radius: 30px;        border-top-right-radius: 30px;        margin-top: -30px;    }    #page.location-vente .section-title {        font-size: 32px;    }    #page.location-vente .section-text {        font-size: 15px;    }    #page.location-vente .btn-group-solution {        flex-direction: column;    }    #page.location-vente .btn-outline {        text-align: center;    }}/* ===== SECTION 3: NOS TYPES DE CONTENEURS ===== */#page.location-vente .types-conteneurs {    background-color: #f5f5f3;    padding: 80px 0;}#page.location-vente .types-title {    font-family: 'Inter', sans-serif;    font-size: 14px;    font-weight: 600;    letter-spacing: 1px;    text-transform: uppercase;    color: #6b7280;    margin-bottom: 48px;}#page.location-vente .conteneur-card {    position: relative;    border-radius: 20px;    overflow: hidden;    height: 400px;}    #page.location-vente .conteneur-card img {        width: 100%;        height: 100%;        object-fit: cover;        display: block;    }#page.location-vente .conteneur-overlay {    position: absolute;    top: 0;    left: 0;    right: 0;    bottom: 0;    background: rgba(0, 0, 0, 0.4);    display: flex;    flex-direction: column;    justify-content: center;    align-items: center;    text-align: center;    padding: 40px;}#page.location-vente .conteneur-title {    font-family: 'Reckless Neue', serif;    font-size: 36px;    font-weight: 400;    line-height: 1.2;    color: #ffffff;    margin-bottom: 24px;}#page.location-vente .btn-conteneur {    display: inline-block;    font-family: 'Inter', sans-serif;    font-size: 13px;    font-weight: 600;    letter-spacing: 0.5px;    text-transform: uppercase;    color: #ffffff;    border: 2px solid #ffffff;    padding: 12px 32px;    border-radius: 30px;    text-decoration: none;    transition: all 0.3s ease;}    #page.location-vente .btn-conteneur:hover {        background-color: #ffffff;        color: #2c3e50;    }/* ===== RESPONSIVE - MOBILE ===== */@media (max-width: 767.98px) {    #page.location-vente .types-conteneurs {        padding: 60px 0;    }    #page.location-vente .conteneur-card {        height: 300px;        margin-bottom: 20px;    }    #page.location-vente .conteneur-title {        font-size: 28px;    }}/* ===== SECTION 4: QUEL TYPE DE DÉCHETS ===== */#page.location-vente .type-dechets {    background-color: #ffffff;    padding: 100px 0;}    #page.location-vente .type-dechets .section-title {        font-family: 'Reckless Neue', serif;        font-size: 36px;        font-weight: 400;        line-height: 1.3;        color: #2c3e50;        margin-bottom: 32px;    }#page.location-vente .dechets-list {    margin-top: 24px;}#page.location-vente .dechets-intro {    font-family: 'Inter', sans-serif;    font-size: 15px;    font-weight: 400;    line-height: 1.7;    color: #6b7280;    margin-bottom: 24px;}#page.location-vente .dechets-category {    margin-bottom: 16px;}#page.location-vente .category-title {    font-family: 'Inter', sans-serif;    font-size: 15px;    font-weight: 600;    line-height: 1.6;    color: #2c3e50;    margin-bottom: 4px;}#page.location-vente .category-text {    font-family: 'Inter', sans-serif;    font-size: 14px;    font-weight: 400;    line-height: 1.6;    color: #6b7280;    margin-bottom: 0;}#page.location-vente .rounded-image {    border-radius: 20px;    width: 100%;    height: auto;}/* ===== RESPONSIVE - TABLETTE ===== */@media (max-width: 991.98px) {    #page.location-vente .type-dechets .section-title {        font-size: 32px;    }}/* ===== RESPONSIVE - MOBILE ===== */@media (max-width: 767.98px) {    #page.location-vente .type-dechets {        padding: 60px 0;    }        #page.location-vente .type-dechets .section-title {            font-size: 28px;        }    #page.location-vente .dechets-intro {        font-size: 14px;    }    #page.location-vente .category-title {        font-size: 14px;    }    #page.location-vente .category-text {        font-size: 13px;    }    #page.location-vente .image-wrapper {        margin-top: 32px;    }}/* ===== SECTION 5: UN AVANTAGE SOLIDE ===== */#page.location-vente .avantage-solide {    background-color: #f5f5f3;    padding: 100px 0;}    #page.location-vente .avantage-solide .section-title {        font-family: 'Reckless Neue', serif;        font-size: 36px;        font-weight: 400;        line-height: 1.3;        color: #2c3e50;        margin-bottom: 24px;    }    #page.location-vente .avantage-solide .section-text {        font-family: 'Inter', sans-serif;        font-size: 15px;        font-weight: 400;        line-height: 1.7;        color: #6b7280;        margin-bottom: 32px;    }    #page.location-vente .avantage-solide .rounded-image {        border-radius: 20px;        width: 100%;        height: auto;    }/* ===== RESPONSIVE - TABLETTE ===== */@media (max-width: 991.98px) {    #page.location-vente .avantage-solide .section-title {        font-size: 32px;    }}/* ===== RESPONSIVE - MOBILE ===== */@media (max-width: 767.98px) {    #page.location-vente .avantage-solide {        padding: 60px 0;    }        #page.location-vente .avantage-solide .section-title {            font-size: 28px;        }        #page.location-vente .avantage-solide .section-text {            font-size: 14px;        }        #page.location-vente .avantage-solide .image-wrapper {            margin-bottom: 32px;        }}/* ===== SECTION 6: CTA SOUMISSION ===== */#page.location-vente .cta-soumission {    background-image: url('../img/location-vente-conteneur-ville.jpg');    background-size: cover;    background-position: center;    min-height: 500px;    display: flex;    align-items: center;    position: relative;}    #page.location-vente .cta-soumission::before {        content: '';        position: absolute;        top: 0;        left: 0;        right: 0;        bottom: 0;        background: rgba(0, 0, 0, 0.4);    }#page.location-vente .cta-content {    position: relative;    z-index: 2;    text-align: center;}#page.location-vente .cta-title {    font-family: 'Reckless Neue', serif;    font-size: 56px;    font-weight: 400;    line-height: 1.2;    color: #ffffff;    margin-bottom: 32px;}#page.location-vente .btn-cta {    display: inline-block;    font-family: 'Inter', sans-serif;    font-size: 13px;    font-weight: 600;    letter-spacing: 0.5px;    text-transform: uppercase;    color: #ffffff;    border: 2px solid #ffffff;    padding: 14px 36px;    border-radius: 30px;    text-decoration: none;    transition: all 0.3s ease;}    #page.location-vente .btn-cta:hover {        background-color: #ffffff;        color: #2c3e50;    }/* ===== RESPONSIVE - TABLETTE ===== */@media (max-width: 991.98px) {    #page.location-vente .cta-title {        font-size: 44px;    }}/* ===== RESPONSIVE - MOBILE ===== */@media (max-width: 767.98px) {    #page.location-vente .cta-soumission {        min-height: 400px;    }    #page.location-vente .cta-title {        font-size: 36px;    }}