@charset "UTF-8";
/*
Theme Name: SOLIHA Nouvelle-Aquitaine
Theme URI: https://nouvelleaquitaine.soliha.fr
Author: Mathieu MONDON
Description: Thème bloc pour SOLIHA Nouvelle-Aquitaine. Construit sur l'éditeur natif de WordPress, sans constructeur de pages propriétaire, afin que les contenus restent lisibles et modifiables indépendamment de toute extension.
Version: 0.64.6
Requires at least: 6.5
Tested up to: 6.9
Requires PHP: 8.1
License: GPL-2.0-or-later
Text Domain: soliha
*/

@font-face {
    font-family: 'Source Sans Pro';
    src: url('assets/fonts/source-sans-pro-300.woff2') format('woff2');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('assets/fonts/source-sans-pro-300-italic.woff2') format('woff2');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('assets/fonts/source-sans-pro-400.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('assets/fonts/source-sans-pro-400-italic.woff2') format('woff2');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('assets/fonts/source-sans-pro-600.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('assets/fonts/source-sans-pro-600-italic.woff2') format('woff2');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('assets/fonts/source-sans-pro-700.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('assets/fonts/source-sans-pro-700-italic.woff2') format('woff2');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

:root {

    --soliha-contenu-max: 40rem;
    --soliha-gouttiere: clamp(1rem, 5vw, 4rem);

    --soliha-hauteur-entete: calc(
        clamp(0.5rem, 1.5vh, 1rem) + 0.5rem + clamp(3.5rem, 14vw, 5rem)
    );

    --soliha-max-slot: clamp(6rem, 22svh, 15rem);

    --soliha-ecart-chemin-titre: calc(0.15rem - 6px);

    --soliha-rallonge-scene: 3rem;

    --soliha-place: 0px;
}

@media (max-height: 740px) {
    :root {
        --soliha-max-slot: clamp(5.75rem, 20svh, 8.5rem);
        --soliha-rallonge-scene: 2rem;
    }

    .soliha-logo-s,
    .wp-block-site-logo img {
        height: clamp(2.85rem, 11vw, 4rem) !important;
    }

    .soliha-chapo--entete {
        font-size: 0.8rem !important;
    }

    .soliha-guide-max__bulle {
        max-width: min(12rem, 44%) !important;
        padding: 0.45rem 0.7rem !important;
        font-size: clamp(0.74rem, 2.9vw, 0.88rem) !important;
        margin-bottom: 0.7rem !important;
    }

    .soliha-ecran .soliha-guide-max {
        background: transparent;
        border-radius: 0;
        padding-top: 0;
    }

    .soliha-guide-max__avatar {
        width: clamp(6.5rem, 28svh, 10rem) !important;
        max-width: 38% !important;
    }
}

@media (max-height: 680px) {
    :root {
        --soliha-max-slot: clamp(5rem, 18svh, 7rem);
        --soliha-rallonge-scene: 1.25rem;
    }
}

.wp-site-blocks {
    position: relative;
}

.soliha-entete-hote,
.soliha-entete-hote .soliha-entete,
.soliha-entete-hote .wp-block-group {
    background: transparent !important;
    box-shadow: none;
    border: none;
}

.soliha-entete-hote {
    position: relative;
    z-index: 50;
}

.soliha-entete {
    position: relative;
    padding-inline: var(--soliha-gouttiere);
    padding-block-start: clamp(0.5rem, 1.5vh, 1rem);
    padding-block-end: 0;
}

.soliha-marque {
    display: flex !important;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;

    column-gap: 0.3rem;
    row-gap: 1rem;
}

.soliha-logo-s__lien,
.soliha-marque .wp-block-site-logo {
    margin: 0 !important;
}

.soliha-logo-s,
.wp-block-site-logo img {
    display: block;
    height: clamp(3.5rem, 14vw, 5rem);
    width: auto;
}

.soliha-chapo--entete {
    color: #062B3A !important;
    font-weight: 600 !important;
    flex-basis: 100%;
    text-align: center;
    font-size: 0.875rem;
    margin: 0 !important;
}

.soliha-entete-hote:has(~ .soliha-scene .soliha-accueil[data-ecran]:not([data-ecran="accueil"])) .soliha-chapo--entete,
.soliha-scene--article .soliha-chapo--entete,
.soliha-accueil[data-ecran] .soliha-ecran,
.soliha-accueil[data-ecran] .soliha-sujet,
.soliha-accueil[data-ecran] .soliha-contenu,
.soliha-accueil[data-ecran] .soliha-contenu__volet,
.soliha-pied .wp-block-navigation-item:has(a[href*="mentions-legales"]),
.soliha-max-actions__mascotte,
.soliha-carte__carte-source,
.soliha-bascule__fermer,
.soliha-contact__statut:empty,
.soliha-scene--erreur .soliha-chapo--entete,
.soliha-erreur-page .soliha-chapo--entete,
.soliha-carte__action,
.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form > input[type="hidden"],
.soliha-contenu__volet--particuliers .soliha-particuliers__aside > .soliha-carte--ecosysteme,
.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif::before,
.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif::after {
    display: none;
}

.soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil {
    padding-inline: var(--soliha-gouttiere);
    overflow-x: clip !important;
    max-width: 100%;
}

.soliha-portes,
.soliha-portes.alignwide,
.soliha-portes.wp-block-columns {
    width: 100%;
    max-width: 100% !important;
    margin-inline: 0 !important;
    padding-inline: 0;
    box-sizing: border-box;

    flex-direction: column;
    flex-wrap: nowrap !important;
}

.soliha-portes > .wp-block-column,
.soliha-porte {
    width: 100%;
    max-width: 100%;
    flex-basis: 100% !important;
    flex-grow: 0 !important;
    flex-shrink: 1;
    margin: 0;
    box-sizing: border-box;
}

.soliha-accueil {
    --wp--style--block-gap: 0 !important;
    gap: 0;
    position: relative;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0;
    margin-bottom: 0;
    overflow-x: hidden;

    min-height: calc(100svh + var(--soliha-rallonge-scene) - var(--soliha-hauteur-entete));
}

.soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil,
.soliha-accueil[data-ecran="solutions"] .soliha-solutions,
.soliha-accueil[data-ecran="situation"] .soliha-situation {
    padding-top: var(--soliha-ecart-chemin-titre);
}

.soliha-ecran--accueil > h1.wp-block-heading,
.soliha-solutions > h1.wp-block-heading,
.soliha-situation .soliha-sujet > h1.wp-block-heading {
    margin-block-start: 0 !important;
    margin-top: 0 !important;
    padding-block-start: 0;
}

@media (min-width: 1100px) {
    .soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil > h1.wp-block-heading,
    .soliha-accueil[data-ecran="solutions"] .soliha-solutions > h1.wp-block-heading {
        --soliha-descente-titre: 0.75rem;
    }

    .soliha-accueil[data-ecran="solutions"] .soliha-solutions > h1.wp-block-heading {
        transform: translateY(var(--soliha-descente-titre));
        margin-top: clamp(0.5rem, 3.5vh, 2rem) !important;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil > h1.wp-block-heading {
        padding-block-start: var(--soliha-descente-titre);
    }
}

.soliha-ecran--accueil h1 {
    font-size: clamp(1.75rem, 7vw, max(2.5rem, min(calc(2.5rem + var(--soliha-place) * 0.04), 4.8vw))) !important;
    margin-block-end: 0;
    color: var(--wp--preset--color--bleu, #00618A) !important;
    font-weight: 700;

    -webkit-text-stroke: 2px #fff;
    paint-order: stroke fill;
    text-shadow: none;

}

.soliha-solutions h1,
.soliha-situation .soliha-sujet h1,
.soliha-thematique .soliha-contenu__volet.est-actif > h1 {
    color: var(--wp--preset--color--bleu, #00618A) !important;
    font-weight: 700;
    -webkit-text-stroke: 2px #fff;
    paint-order: stroke fill;
    text-shadow: 0 0 8px rgba(255, 255, 255, 0.85);

}

html,
body {

    background-color: #062B3A !important;
    background-image: none;
    min-height: 100%;
}

body {
    min-height: 100svh;
}

.soliha-scene:has(.soliha-accueil[data-ecran]) {
    --soliha-fresque: url('/wp-content/themes/soliha/assets/illustrations/fond-soliha-mobile.webp');

    background-color: #F1D8BC !important;
    background-image: none !important;
    margin-top: calc(-1 * var(--soliha-hauteur-entete));
    padding-top: var(--soliha-hauteur-entete);
    min-height: calc(100svh + var(--soliha-rallonge-scene)) !important;
    box-sizing: border-box;

    position: relative;
    overflow: hidden;

    padding-bottom: 0;
}

.soliha-scene:has(.soliha-accueil[data-ecran])::before {
    content: "";

    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: auto;
    width: auto;
    height: calc(100svh + var(--soliha-rallonge-scene)) !important;
    z-index: 0;
    pointer-events: none !important;

    background-color: #DCCDB2;
    background-image:
        var(--soliha-fresque),
        linear-gradient(
            to bottom,
            #96CCF7 0%,
            #A9C3D8 45%,
            #C9C3B4 72%,
            #DCCDB2 100%
        );
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;

    filter: blur(clamp(1.25px, calc(1.65px - (100vw - 700px) * 0.001), 1.65px));
    opacity: 1;
    transform: none;
}

.soliha-scene:has(.soliha-accueil[data-ecran])::after {
    content: "";
    position: absolute;
    inset: 0;
    width: auto;
    height: auto !important;
    min-height: calc(100svh + var(--soliha-rallonge-scene)) !important;
    z-index: 0;
    pointer-events: none !important;
    background: rgba(250, 249, 246, 0.44);
}

.soliha-scene:has(.soliha-accueil[data-ecran]) > * {
    z-index: 1;
}

@media (min-aspect-ratio: 1/1) {
    .soliha-scene:has(.soliha-accueil[data-ecran]) {
        --soliha-fresque: url('/wp-content/themes/soliha/assets/illustrations/fond-soliha-tablette.webp');
    }
}

@media (min-aspect-ratio: 77/50) {
    .soliha-scene:has(.soliha-accueil[data-ecran]) {
        --soliha-fresque: url('/wp-content/themes/soliha/assets/illustrations/fond-soliha-desktop.webp');
    }
}

@media (min-width: 1100px) and (orientation: landscape), (min-width: 700px) and (max-width: 1099px) and (max-height: 800px) {

    .soliha-accueil[data-ecran="accueil"] {
        --soliha-contenu-max: 26rem;
        --soliha-ecart-chemin-titre: 0.45rem;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil {
        padding-top: 0.45rem;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil h1,
    .soliha-ecran--accueil h1 {
        margin-block-start: 0.2rem !important;
        margin-block-end: 0.85rem;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-portes {
        max-width: 26rem !important;
        margin-inline: auto !important;
        margin-bottom: 0.5rem;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-porte {
        padding: 1.7rem 1.35rem !important;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-porte h2,
    .soliha-accueil[data-ecran="accueil"] .soliha-porte .wp-block-heading {
        font-size: clamp(1.15rem, 2.1vw, 1.35rem) !important;
        margin-block-end: 1.85rem;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-porte__action .wp-block-button__link {
        font-size: 1rem;
        padding-block: 0.55rem;
        padding-inline: 1.15rem;
        gap: 0.5rem;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-porte__picto {
        height: 1.2em !important;
        max-height: 1.45rem !important;
    }

    .soliha-accueil[data-ecran="situation"] {
        --soliha-contenu-max: 24rem;
        --soliha-ecart-chemin-titre: 0.45rem;
    }
    .soliha-situation .soliha-sujet.est-actif {
        max-width: none;
        margin-inline: 0;
    }
    .soliha-situation .soliha-sujet h1,
    .soliha-situation .soliha-sujet__intro {
        margin-inline: auto;
        align-self: center;
    }

    .soliha-accueil[data-ecran="thematique"] {
        --soliha-contenu-max: 34rem;
    }
    .soliha-thematique .soliha-contenu.est-actif,
    .soliha-thematique .soliha-contenu__volet.est-actif,
    .soliha-contenu__grille,
    .soliha-contenu__grille--territoires {
        max-width: var(--soliha-contenu-max);
        margin-inline: auto !important;
        box-sizing: border-box;
    }
    .soliha-thematique .soliha-contenu__intro {
        text-align: center;
        max-width: 36rem;
    }
}

@media (min-width: 700px) and (max-width: 1099px) and (orientation: portrait) {
    .soliha-scene:has(.soliha-accueil[data-ecran])::before {

        transform: none;

        background-size: 100% auto;
    }
}

@media (min-width: 1100px) {
    .soliha-scene:has(.soliha-accueil[data-ecran])::before {
        transform: none;
    }

    .soliha-accueil[data-ecran="thematique"] {
        --soliha-contenu-max: 40rem;
    }
    .soliha-thematique .soliha-contenu.est-actif,
    .soliha-thematique .soliha-contenu__volet.est-actif,
    .soliha-contenu__grille,
    .soliha-contenu__grille--territoires {
        margin-inline: auto !important;
    }
    .soliha-thematique .soliha-contenu__intro {
        text-align: center;
    }
}

.soliha-accueil,
.soliha-ecran--accueil,
.soliha-solutions,
.soliha-situation,
.soliha-entete-hote,
.soliha-entete {
    background: transparent !important;
}

.soliha-scene {
    --wp--style--block-gap: 0 !important;
}

.soliha-accueil[data-ecran="accueil"]    .soliha-ecran--accueil,
.soliha-accueil[data-ecran="solutions"]  .soliha-solutions,
.soliha-accueil[data-ecran="situation"]  .soliha-situation {
    display: block;
    position: relative;
    box-sizing: border-box;
    min-height: calc(
        calc(100svh + var(--soliha-rallonge-scene))
        - var(--soliha-hauteur-entete)
        - var(--soliha-parcours-h, 1.5rem)
    );

    padding-bottom: var(--soliha-max-slot);
    overflow: visible;

    margin-block-start: 0;
}

.soliha-ecran .soliha-guide-max {
    position: absolute;
    left: 0;
    right: 0;

    max-width: none;
    bottom: 0;
    margin: 0 !important;
    top: auto !important;
    height: var(--soliha-max-slot);
    min-height: 0;
    align-items: flex-end;
    z-index: 5;
}

.soliha-ecran--accueil .soliha-guide-max__avatar {
    position: relative;

    top: 0;
}

.soliha-accueil.est-en-sortie {
    opacity: 0;
    transition: opacity 0.17s ease-out;
}
.soliha-accueil:not(.est-en-sortie) {
    opacity: 1;
    transition: opacity 0.17s ease-in;
}

.soliha-retour {
    position: absolute;
    top: 0;
    left: var(--soliha-gouttiere);
    bottom: 0;
    display: flex;
    align-items: center;
    z-index: 100;
    margin: 0;
    padding: 0;
}
.soliha-retour[hidden] {
    display: none !important;
}
.soliha-retour__bouton {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    min-height: auto;
    padding: 0.35rem 0.7rem;
    border: 1px solid color-mix(in srgb, var(--wp--preset--color--encre, #062B3A) 18%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, var(--wp--preset--color--blanc) 78%, transparent);
    -webkit-backdrop-filter: blur(10px) saturate(1.3);
    backdrop-filter: blur(10px) saturate(1.3);
    color: var(--wp--preset--color--encre, #062B3A);
    font: inherit;
    font-size: clamp(0.84rem, 2.1vw, 0.93rem);
    font-weight: 600;
    line-height: 1.3;
    cursor: pointer;
    box-shadow: 0 2px 10px rgb(0 0 0 / 0.1);
    text-decoration: none;
    transition: color 160ms ease, background-color 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
    max-width: 26vw;
    white-space: normal;
    text-align: center;
    box-sizing: border-box;
}
a.soliha-retour__bouton,
.soliha-truck__action--orange h2 {
    color: var(--wp--preset--color--encre, #062B3A);
}

.soliha-retour__bouton::before {
    content: "";
    flex: 0 0 auto;
    width: 0.9em;
    height: 0.9em;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M14 8H3M7.5 3.5 3 8l4.5 4.5' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
.soliha-retour__bouton:hover {
    color: var(--wp--preset--color--bleu, #00618a);
    background: color-mix(in srgb, var(--wp--preset--color--blanc) 94%, transparent);
    border-color: color-mix(in srgb, var(--wp--preset--color--bleu, #00618a) 35%, transparent);
    box-shadow: 0 4px 14px rgb(0 0 0 / 0.14);
    transform: none;
}
.soliha-retour__bouton:focus-visible {
    outline: 2px solid var(--wp--preset--color--bleu, #00618a);
    outline-offset: 2px;
}

.soliha-tuiles {
    display: grid !important;
    justify-content: unset !important;
    padding: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.soliha-tuile {
    display: flex !important;
    width: auto;
    height: 100%;
    flex: unset;
    margin: 0 !important;
}

.soliha-tuile .wp-block-button__link {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    font-weight: 600;
    color: var(--wp--preset--color--bleu);
    background-repeat: no-repeat;
}

.soliha-tuile .wp-block-button__link:hover,
.soliha-tuile .wp-block-button__link:focus-visible {
    background-color: var(--wp--preset--color--bleu-clair) !important;
}

.soliha-tuile--diagnostic       .wp-block-button__link { background-image: url('assets/thematiques/diagnostic.png'); }
.soliha-tuile--personne-agee    .wp-block-button__link { background-image: url('assets/thematiques/personne-agee.png'); }
.soliha-tuile--cles             .wp-block-button__link { background-image: url('assets/thematiques/cles.png'); }
.soliha-tuile--maison-main      .wp-block-button__link { background-image: url('assets/thematiques/maison-main.png'); }
.soliha-tuile--beneficiaires    .wp-block-button__link { background-image: url('assets/thematiques/beneficiaires.png'); }
.soliha-tuile--menage-famille   .wp-block-button__link { background-image: url('assets/thematiques/menage-famille.png'); }
.soliha-tuile--localisation     .wp-block-button__link { background-image: url('assets/thematiques/localisation.png'); }
.soliha-tuile--bleu-ecologie    .wp-block-button__link { background-image: url('assets/thematiques/bleu-ecologie.png'); }

.soliha-accueil[data-ecran] .soliha-ecran.soliha-solutions,
.soliha-accueil[data-ecran] .soliha-ecran.soliha-situation,
.soliha-accueil[data-ecran] .soliha-ecran.soliha-thematique,
.soliha-solutions .soliha-tuile,
.soliha-solutions .soliha-tuile .wp-block-button__link,
.soliha-page-institutionnelle > * {
    max-width: none;
}

.soliha-accueil[data-ecran] .soliha-ecran.soliha-solutions,
.soliha-accueil[data-ecran] .soliha-ecran.soliha-situation,
.soliha-accueil[data-ecran] .soliha-ecran.soliha-thematique,
.soliha-accueil[data-ecran] .soliha-sujet,
.soliha-accueil[data-ecran] .soliha-contenu {
    width: 100% !important;
}

.soliha-accueil[data-ecran="solutions"] .soliha-solutions {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 0.55rem;
    padding-inline: var(--soliha-gouttiere);
}

.soliha-solutions h1 {
    flex: 0 0 auto;
    font-size: clamp(0.95rem, 3.8vw, 1.2rem) !important;
    margin-block-end: 0;
    line-height: 1.3;
}

.soliha-solutions .soliha-tuiles {
    flex: 1 1 auto;
    min-height: 0;
    height: auto;
    width: 100%;
    max-width: none;
    align-content: stretch;

    grid-auto-rows: 1fr;
    gap: 0.5rem;

    margin-block-end: 1.5rem;

    margin-block-start: 0.7rem;
    margin-inline: 0 !important;
}

.soliha-solutions .soliha-tuile .wp-block-button__link {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    gap: 0.45rem;
    font-size: clamp(0.82rem, 3.3vw, 1rem);
    line-height: 1.25;
    padding: 0.65rem 0.5rem;
    border-radius: 0.75rem;

    background-size: 0;
    background-position: center;

    background-color: rgba(255, 255, 255, 0.95) !important;
    border: 1.5px solid #062B3A;
}

.soliha-solutions .soliha-tuile .wp-block-button__link:hover,
.soliha-solutions .soliha-tuile .wp-block-button__link:focus-visible {
    background-color: rgba(255, 255, 255, 1) !important;
}

.soliha-solutions .soliha-tuile .wp-block-button__link::before {
    content: "";
    display: block;
    width: 5.15rem;
    height: 5.15rem;
    flex: 0 0 auto;
    background-image: inherit;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.soliha-accueil[data-ecran] .soliha-sujet.est-actif,
.soliha-accueil[data-ecran] .soliha-contenu.est-actif,
.soliha-accueil[data-ecran] .soliha-contenu__volet.est-actif,
.soliha-accueil[data-ecran="situation"] .soliha-situation {
    display: flex;
    flex-direction: column;
}

.soliha-situation {
    padding-inline: var(--soliha-gouttiere);
}

.soliha-situation .soliha-sujet.est-actif,
.soliha-contact__form,
.soliha-collectivites__form {
    box-sizing: border-box;
}

.soliha-situation .soliha-sujet h1 {
    flex: 0 0 auto;
    text-align: center;
}

.soliha-situation .soliha-situation__choix {
    justify-content: stretch;
    align-items: stretch;

    margin-block: 0.85rem 1.5rem;
    margin-inline: auto;
    box-sizing: border-box;
}

.soliha-situation .soliha-choix .wp-block-button__link {
    display: flex;
    width: 100%;
    box-sizing: border-box;
    border-radius: 1rem;
    font-weight: 700;
    line-height: 1.25;
    background-color: var(--wp--preset--color--bleu-clair-55) !important;
    background-image: none !important;
    min-height: 100%;
}

.soliha-situation .soliha-choix .wp-block-button__link:hover,
.soliha-situation .soliha-choix .wp-block-button__link:focus-visible {
    background-color: var(--wp--preset--color--bleu-clair) !important;
}

.soliha-situation .soliha-choix--territoires .wp-block-button__link,
.soliha-situation .soliha-choix--particuliers .wp-block-button__link {
    border: 1.5px solid #062B3A;
    color: #fff;
    backdrop-filter: blur(10px) saturate(1.15);
    -webkit-backdrop-filter: blur(10px) saturate(1.15);
    box-shadow:
        0 8px 22px rgba(6, 43, 58, 0.22),
        0 3px 10px rgba(6, 43, 58, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.22);
}

.soliha-situation .soliha-choix--territoires .wp-block-button__link,
.soliha-situation .soliha-choix--territoires .wp-block-button__link:hover,
.soliha-situation .soliha-choix--territoires .wp-block-button__link:focus-visible {
    background-image: linear-gradient(
        165deg,
        rgba(47, 111, 163, 0.85) 0%,
        rgba(0, 97, 138, 0.82) 55%,
        rgba(30, 79, 120, 0.88) 100%
    ) !important;
    background-color: transparent !important;
}

.soliha-situation .soliha-choix--particuliers .wp-block-button__link,
.soliha-situation .soliha-choix--particuliers .wp-block-button__link:hover,
.soliha-situation .soliha-choix--particuliers .wp-block-button__link:focus-visible {
    background-image: linear-gradient(
        165deg,
        rgba(232, 168, 90, 0.86) 0%,
        rgba(232, 149, 34, 0.83) 55%,
        rgba(196, 125, 46, 0.9) 100%
    ) !important;
    background-color: transparent !important;
}

.soliha-situation .soliha-choix__titre {
    display: block;
    order: 1;
    -webkit-text-stroke: 2px #000;
    paint-order: stroke fill;
    text-shadow: none;
}

.soliha-situation .soliha-choix .wp-block-button__link::after {
    content: "";
    order: 2;
    display: block;
    background-repeat: no-repeat;
    background-size: contain;
    min-height: 3rem;
}

.soliha-situation .soliha-choix--territoires .wp-block-button__link::after {
    background-image: url('assets/illustrations/picto-territoires.png');
}

.soliha-situation .soliha-choix--particuliers .wp-block-button__link::after {
    background-image: url('assets/illustrations/picto-particuliers.png');
}

.soliha-situation .soliha-choix .wp-block-button__link::before,
.soliha-parcours__drapeau::after {
    content: none;
    display: none;
}

.soliha-porte__action .wp-block-button__link,
.soliha-solutions .soliha-tuile .wp-block-button__link,
.soliha-situation .soliha-choix .wp-block-button__link {
    transition: transform 0.13s ease, box-shadow 0.13s ease,
        background-color 0.13s ease;
    -webkit-tap-highlight-color: transparent;
}

.soliha-porte__action .wp-block-button__link:active,
.soliha-solutions .soliha-tuile .wp-block-button__link:active,
.soliha-situation .soliha-choix .wp-block-button__link:active {
    transform: scale(0.96);
}

.soliha-solutions .soliha-tuile .wp-block-button__link:active {
    background-color: rgba(255, 255, 255, 1) !important;
    box-shadow: 0 2px 6px rgba(6, 43, 58, 0.22) inset;
}

.soliha-situation .soliha-choix .wp-block-button__link:active {
    filter: brightness(0.93);
}

.soliha-porte__action .wp-block-button__link:active {
    box-shadow: 0 2px 6px rgba(6, 43, 58, 0.24) !important;
}

@media (prefers-reduced-motion: reduce) {
    .soliha-porte__action .wp-block-button__link,
    .soliha-solutions .soliha-tuile .wp-block-button__link,
    .soliha-situation .soliha-choix .wp-block-button__link,
.soliha-truck__bouton,
    .soliha-truck__bouton::after,
.soliha-federation-bouton,
.soliha-page-action,
    .soliha-page-action small::after,
    .soliha-page-carte img,
    .soliha-page-carte figcaption,
    .soliha-page-carte figcaption::after,
.soliha-actus__carte,
.soliha-page-partenaires .soliha-appel__bouton,
    .soliha-page-partenaires .soliha-appel__bouton::after,
.soliha-actus__carte .soliha-actualite__image img,
.soliha-carte--ecosysteme .soliha-ecosysteme__liste a::after,
.soliha-video-attente__triangle {
        transition: none;
    }
    .soliha-porte__action .wp-block-button__link:active,
    .soliha-solutions .soliha-tuile .wp-block-button__link:active,
    .soliha-situation .soliha-choix .wp-block-button__link:active {
        transform: none;
    }
    .soliha-accueil[data-ecran] .soliha-parcours__etape,
    .soliha-accueil[data-ecran] .soliha-parcours__drapeau,
    .soliha-parcours__cycliste,
    .soliha-guide-max__avatar,
    .soliha-guide-max__bulle,
.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__max,
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro,
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__lire-suite {
        animation: none !important;
    }
}

@keyframes soliha-glisse-gauche {
    from { opacity: 0; transform: translateX(calc(-50% - 8rem)); }
    to   { opacity: 1; transform: translateX(-50%); }
}

@keyframes soliha-glisse-droite {
    from { transform: translateX(100vw); }
    to   { transform: translateX(0); }
}

@keyframes soliha-apparait {
    from { opacity: 0; transform: translateY(0.375rem); }
    to   { opacity: 1; transform: translateY(0); }
}

@keyframes soliha-cycliste-flotte {
    0%, 100% { transform: translate(-50%, -50%) translateY(0); }
    50% { transform: translate(-50%, -50%) translateY(-0.08rem); }
}

.soliha-parcours__cycliste {
    animation: soliha-cycliste-flotte 2s ease-in-out infinite;
    position: absolute;
    top: 50%;
    bottom: auto;
    left: calc(var(--soliha-demi-jalon) + var(--soliha-etape) * (100% - 2 * var(--soliha-demi-jalon)) / 4);
    width: 1.85rem;
    height: 1.85rem;
    background: url('assets/illustrations/cycliste.svg') center / contain no-repeat;
    z-index: 3;
    transition: left 0.55s ease;
    will-change: transform;
}

.soliha-guide-max {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    gap: 0.35rem;
    padding-left: var(--soliha-gouttiere);
    padding-right: calc(var(--soliha-gouttiere) + 0.5rem);
    box-sizing: border-box;
}

.soliha-guide-max__avatar {
    order: 2;
    flex: 0 0 auto;
    width: clamp(9rem, 40vw, 13.5rem);
    height: calc(var(--soliha-max-slot) - 0.25rem);
    max-width: 46%;
    object-fit: contain;
    object-position: center bottom;
    animation: soliha-glisse-droite 0.85s cubic-bezier(0.22, 0.61, 0.36, 1) 0.18s both;
}

.soliha-guide-max__bulle {
    order: 1;
    position: relative;
    flex: 1 1 auto;
    align-self: center;
    max-width: min(15rem, 52%);
    background: rgba(255, 255, 255, 0.97);
    border: 1.5px solid #062B3A;
    border-radius: 0.85rem;
    padding: 0.65rem 0.95rem;
    font-size: clamp(0.88rem, 3.6vw, 1.02rem);
    font-weight: 600;
    line-height: 1.38;
    color: #000;
    margin: 0 0 1.25rem 0;
    box-shadow:
        0 8px 22px rgba(6, 43, 58, 0.22),
        0 2px 6px rgba(6, 43, 58, 0.12);
    z-index: 2;
    animation: soliha-apparait 0.55s ease-out 0.75s both;
}

.soliha-guide-max__bulle::before,
.soliha-guide-max__bulle::after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    border-style: solid;
    border-color: transparent;
    border-right: none;
    pointer-events: none;
}

.soliha-guide-max__bulle::before {
    right: -0.62rem;
    border-width: 0.58rem;
    border-left-color: #062B3A;
    z-index: 0;
}

.soliha-guide-max__bulle::after {
    right: -0.48rem;
    border-width: 0.48rem;
    border-left-color: #fff;
    z-index: 1;
}

.soliha-porte {
    border-radius: 1rem;
    padding: calc(1.25rem + 1px) !important;
    text-align: center;
    border: 1.5px solid #062B3A;
    box-shadow:
        0 8px 22px rgba(6, 43, 58, 0.22),
        0 3px 10px rgba(6, 43, 58, 0.14),
        0 1px 3px rgba(6, 43, 58, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.22);
    backdrop-filter: blur(10px) saturate(1.15);
    -webkit-backdrop-filter: blur(10px) saturate(1.15);
}

.soliha-porte--principale {
    background: linear-gradient(
        165deg,
        rgba(47, 111, 163, 0.85) 0%,
        rgba(0, 97, 138, 0.82) 55%,
        rgba(30, 79, 120, 0.88) 100%
    ) !important;
}

.soliha-porte--directe {
    background: linear-gradient(
        165deg,
        rgba(232, 168, 90, 0.86) 0%,
        rgba(232, 149, 34, 0.83) 55%,
        rgba(196, 125, 46, 0.9) 100%
    ) !important;
}

.soliha-porte h2,
.soliha-porte .wp-block-heading {
    font-size: 1.125rem !important;
    margin-block: 0 0.875rem;
    line-height: 1.3;
    color: #fff !important;
    font-weight: 700;
    -webkit-text-stroke: 2px #000;
    paint-order: stroke fill;
    text-shadow: none;
}

.soliha-porte.soliha-porte--directe,
.soliha-porte.soliha-porte--directe.has-blanc-color {
    color: #fff !important;
}

.soliha-porte.soliha-porte--directe h2,
.soliha-porte.soliha-porte--directe .wp-block-heading {
    -webkit-text-stroke: 2px #000;
}

.soliha-porte__action.wp-block-buttons {
    justify-content: center;
}

.soliha-porte__action,
.soliha-liste__grille .wp-block-post,
.soliha-liste__extrait p,
.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro p {
    margin: 0;
}

.soliha-porte__action .wp-block-button__link {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    position: relative;
    gap: 0.45rem;
    border-radius: 2rem;
    padding-inline: 1.1rem;
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.2;
    background: rgba(255, 255, 255, 0.96) !important;
    border: 1.5px solid #062B3A;
    box-shadow:
        0 4px 14px rgba(6, 43, 58, 0.2),
        0 1px 0 rgba(255, 255, 255, 0.9) inset !important;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.soliha-porte__action .wp-block-button__link:hover,
.soliha-porte__action .wp-block-button__link:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(6, 43, 58, 0.26) !important;
}

.soliha-porte__picto {
    position: static;
    left: auto;
    top: auto;
    display: block;
    flex-shrink: 0;
    margin: 0;
    object-fit: contain;
    object-position: center;
    align-self: center;

    filter: none;
    opacity: 1;
    height: 1.5rem !important;
    max-height: 1.5rem !important;
    width: 1.5rem;
}

@keyframes soliha-porte-entre {
    from { opacity: 0; transform: translateY(0.85rem); }
    to   { opacity: 1; transform: translateY(0); }
}

.soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil > h1 {
    animation: soliha-apparait 0.45s ease-out 0.05s both;
}

.soliha-accueil[data-ecran="accueil"] .soliha-porte--principale {
    animation: soliha-porte-entre 0.55s ease-out 0.18s both;
}

.soliha-accueil[data-ecran="accueil"] .soliha-porte--directe {
    animation: soliha-porte-entre 0.55s ease-out 0.32s both;
}

.soliha-parcours {
    --soliha-jalon:      0.625rem;
    --soliha-demi-jalon: calc(var(--soliha-jalon) / 2);
    --soliha-etape:      0;
    padding-inline: var(--soliha-gouttiere);
    padding-block: 0.15rem 0;
    margin-block-start: 0 !important;
    margin-block-end: 0;
    overflow: visible;

    position: relative;
    top: -10px;
}

.soliha-parcours__piste {
    margin-block-end: 0 !important;
    position: relative;
    height: 2rem;
    overflow: visible;
}

.soliha-parcours__piste::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 2px;
    background: #A1D7E4;
    transform: translateY(-50%);
    z-index: 0;
}

.soliha-accueil[data-ecran="accueil"] .soliha-parcours { --soliha-etape: 0; }
.soliha-accueil[data-ecran="solutions"] .soliha-parcours { --soliha-etape: 1; }
.soliha-accueil[data-ecran="situation"] .soliha-parcours { --soliha-etape: 2; }
.soliha-accueil[data-ecran="thematique"] .soliha-parcours { --soliha-etape: 3; }
.soliha-accueil[data-ecran="contact"] .soliha-parcours { --soliha-etape: 4; }

.soliha-parcours__etape {
    position: absolute;
    top: 50%;
    left: calc(var(--soliha-demi-jalon) + var(--i) * (100% - 2 * var(--soliha-demi-jalon)) / 4);
    width: var(--soliha-jalon);
    height: var(--soliha-jalon);
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: #fff;
    border: 1.5px solid rgba(255, 255, 255, 0.95);
    box-shadow: 0 1px 4px rgba(6, 43, 58, 0.18);
    z-index: 1;
    overflow: hidden;
    transition: border-color 0.45s ease, box-shadow 0.45s ease;
}

.soliha-parcours__etape::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: #259256;

    opacity: clamp(0, calc(var(--soliha-etape) - var(--i) + 1), 1);
    transition: opacity 0.45s ease;
}

.soliha-parcours__drapeau {
    position: absolute;
    top: 50%;

    left: calc(var(--soliha-demi-jalon) + 4 * (100% - 2 * var(--soliha-demi-jalon)) / 4);
    right: auto;
    width: var(--soliha-jalon);
    height: var(--soliha-jalon);
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: #fff;
    border: 1.5px solid rgba(255, 255, 255, 0.95);
    box-shadow: 0 1px 4px rgba(6, 43, 58, 0.18);
    z-index: 1;
    overflow: visible;
}

.soliha-parcours__drapeau::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: #259256;
    opacity: clamp(0, calc(var(--soliha-etape) - 4 + 1), 1);
    transition: opacity 0.45s ease;
    z-index: 0;
}

.wp-site-blocks > .wp-block-template-part:has(.soliha-pied) {
	flex: 0 0 auto;

	width: 100%;
	max-width: none;
	margin-inline: 0;
	margin-block-start: 0 !important;
}

.soliha-pied {

	margin-top: 0;
	margin-block-start: 0;
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	max-width: none;
	margin-inline: 0;
	padding-top: 0.8rem !important;
	padding-bottom: 0.8rem !important;
	padding-inline: var(--soliha-gouttiere);
	color: var(--wp--preset--color--blanc);
	border-top: none;
	box-shadow: none;
}

.soliha-pied > * {
	max-width: none !important;
	margin-inline: 0;
}

.soliha-pied::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: 3rem;
	height: 3px;
	background-color: var(--wp--preset--color--beige);
	opacity: 0.55;
	transform: translateX(-50%);
	pointer-events: none;
}

.soliha-pied .wp-block-navigation {
	margin-top: 0;
	max-width: none;
}

.soliha-pied .wp-block-navigation,
.soliha-pied .wp-block-navigation__container {
	justify-content: center;
	flex-wrap: wrap;
	width: 100%;
	row-gap: 0.15rem;
	column-gap: 0;
}

.soliha-pied .wp-block-navigation-item {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.soliha-pied .wp-block-navigation-item:not(:last-child)::after {
	content: "";
	width: 1px;
	height: 0.7em;
	margin-inline: 0.95rem;
	background-color: color-mix(in srgb, var(--wp--preset--color--blanc) 28%, transparent);
}

.soliha-pied .wp-block-navigation-item:has(+ .wp-block-navigation-item a[href*="mentions-legales"])::after {
	content: none;
	margin: 0;
}

.soliha-pied .wp-block-navigation-item__content,
.soliha-pied .wp-block-navigation a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 1.75rem;
	padding-inline: 0.15rem;
	color: var(--wp--preset--color--blanc) !important;
	font-size: 0.95rem;
	font-style: normal;
	font-weight: 600;
	letter-spacing: 0.01em;
	text-decoration: none;
	text-underline-offset: 0.22em;
	transition: color 160ms ease;
}

.soliha-pied .wp-block-navigation-item__label {
	color: inherit !important;
	font-style: inherit;
	font-weight: inherit;
}

.soliha-pied .wp-block-navigation a:hover,
.soliha-pied .wp-block-navigation a:hover .wp-block-navigation-item__label {
	color: var(--wp--preset--color--bleu-clair) !important;
	text-decoration: underline;
}

.soliha-pied .wp-block-navigation a:focus-visible {
	outline: 2px solid var(--wp--preset--color--beige);
	outline-offset: 3px;
	color: var(--wp--preset--color--blanc);
	border-radius: 2px;
}

.soliha-pied__bas {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	column-gap: 1.25rem;
	row-gap: 0.4rem;
	width: 100%;
	margin-top: 0.3rem;
	padding-top: 0.45rem;
	border-top: 1px solid color-mix(in srgb, var(--wp--preset--color--blanc) 16%, transparent);
}

.soliha-pied__adresse {
	justify-self: start;
	margin: 0;
	color: var(--wp--preset--color--blanc);
	font-size: 0.8125rem;
	font-style: normal;
	font-weight: 400;
	line-height: 1.45;
}

.soliha-pied__appui {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	justify-self: center;
	gap: 0.85rem 1.15rem;
	margin: 0;
	max-width: none;
}

.soliha-pied__don a {
	color: var(--wp--preset--color--blanc);
	font-size: 1.125rem;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 0.01em;
	text-decoration: underline;
	text-decoration-thickness: 1.5px;
	text-underline-offset: 0.28em;
}

.soliha-pied__don a:hover,
.soliha-pied__don a:focus-visible {
	color: var(--wp--preset--color--bleu-clair);
}

.soliha-pied__don a:focus-visible {
	outline: 2px solid var(--wp--preset--color--beige);
	outline-offset: 3px;
	border-radius: 2px;
}

.soliha-pied__mentions {
	justify-self: end;
	align-self: center;
	margin: 0;
}

.soliha-pied__mentions a {
	color: color-mix(in srgb, var(--wp--preset--color--blanc) 72%, transparent);
	font-size: 0.75rem;
	font-style: normal;
	font-weight: 400;
	letter-spacing: 0.01em;
	text-decoration: none;
	text-underline-offset: 0.22em;
}

.soliha-pied__mentions a:hover,
.soliha-pied__mentions a:focus-visible {
	color: var(--wp--preset--color--bleu-clair);
	text-decoration: underline;
}

.soliha-pied__mentions a:focus-visible {
	outline: 2px solid var(--wp--preset--color--beige);
	outline-offset: 3px;
	border-radius: 2px;
}

.soliha-pied__reseaux {
	display: flex;
	align-items: center;
	gap: 0.7rem;
	flex-wrap: wrap;
}

.soliha-pied__reseaux a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.15rem;
	height: 2.15rem;
	color: var(--wp--preset--color--blanc);
	border: 1.5px solid color-mix(in srgb, var(--wp--preset--color--blanc) 42%, transparent);
	border-radius: 50%;
	padding: 0.32rem;
	box-sizing: border-box;
}

.soliha-pied__reseaux a:hover,
.soliha-pied__reseaux a:focus-visible {
	color: var(--wp--preset--color--bleu-clair);
	border-color: var(--wp--preset--color--bleu-clair);
}

.soliha-pied__reseaux a:focus-visible {
	outline: 2px solid var(--wp--preset--color--beige);
	outline-offset: 3px;
	border-radius: 2px;
}

.soliha-pied__reseaux svg {
	width: 100%;
	height: 100%;
	fill: currentColor;
}

@media (max-width: 699px) {

	html:has(.soliha-scene),
	body:has(.soliha-scene) {
		background-color: var(--wp--preset--color--encre);
	}

	.soliha-scene {
		border-bottom: 0;
	}

	.wp-site-blocks:has(.soliha-scene) {
		padding-bottom: 0;
		margin-bottom: 0;
	}

	.wp-site-blocks:has(.soliha-scene) > .wp-block-template-part:has(.soliha-pied) {
		display: flex;
		flex-direction: column;
		margin-block-end: 0;
		padding-block-end: 0;
		background-color: var(--wp--preset--color--encre);
	}

	.soliha-pied {
		flex: 0 0 auto;
		margin-bottom: 0;
		padding-top: 0.5rem !important;
		padding-bottom: max(0.45rem, env(safe-area-inset-bottom, 0px)) !important;
		box-shadow: 0 100vh 0 0 var(--wp--preset--color--encre);
	}

	.soliha-pied .wp-block-navigation {
		flex: 0 1 auto;
		display: flex;
		align-items: center;
	}

	.soliha-pied .wp-block-navigation,
	.soliha-pied .wp-block-navigation__container {
		flex-direction: row;
		align-content: center;
		row-gap: 0.3rem;
	}

	.soliha-pied .wp-block-navigation-item {
		flex: 0 1 auto;
	}

	.soliha-pied .wp-block-navigation-item:not(:last-child)::after {
		margin-inline: 0.55rem;
	}

	.soliha-pied .wp-block-navigation-item__content,
	.soliha-pied .wp-block-navigation a {
		width: 100%;
		padding-block: 0.2rem;
		font-size: 0.9rem;
	}

	.soliha-pied__bas {
		grid-template-columns: 1fr auto;
		grid-template-areas:
			"adresse reseaux"
			"don don"
			"mentions mentions";
		column-gap: 0.75rem;
	}

	.soliha-pied__appui {
		display: contents !important;
	}

	.soliha-pied__adresse {
		grid-area: adresse;
		grid-column: auto;
		text-align: left;
		font-size: 0.75rem;
		line-height: 1.4;
	}

	.soliha-pied__reseaux {
		grid-area: reseaux;
		justify-self: end;
		align-self: center;
	}

	.soliha-pied__don {
		grid-area: don;
		justify-self: center;
		text-align: center;
		width: 100%;
	}

	.soliha-pied__don a {
		font-size: 1.05rem;
	}

	.soliha-pied__mentions {
		grid-area: mentions;
		justify-self: center;
		text-align: center;
	}

	.soliha-pied__mentions a {
		letter-spacing: 0.02em;
		opacity: 0.75;
	}

    .soliha-accueil[data-ecran="accueil"] .soliha-guide-max,
    .soliha-accueil[data-ecran="solutions"] .soliha-guide-max,
    .soliha-accueil[data-ecran="situation"] .soliha-guide-max,
.soliha-contact__form {
        overflow: visible;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil,
    .soliha-accueil[data-ecran="solutions"] .soliha-solutions,
    .soliha-accueil[data-ecran="situation"] .soliha-situation {
        padding-bottom: calc(var(--soliha-max-slot) + 0.75rem);
        overflow-x: clip !important;
        position: static;
    }

    .soliha-contact__groupe--identite .soliha-contact__sous-titre + .soliha-contact__champ {
        padding-right: 0;
        position: relative;
        z-index: 2;
    }
}

@media (min-width: 700px) and (max-width: 1099px) {

    :root {
        --soliha-rallonge-scene: 0rem;
        --soliha-place: clamp(0px, calc(100svh - 53rem - max(0px, 740px - 100vw) * 3), 28rem);
    }

	html:has(.soliha-scene),
	body:has(.soliha-scene) {
		background-color: var(--wp--preset--color--encre);
	}

	.wp-site-blocks:has(.soliha-scene) {
		gap: 0;
		padding-bottom: 0;
		margin-bottom: 0;
	}

	.wp-site-blocks:has(.soliha-scene) > .wp-block-template-part:has(.soliha-pied) {
		display: flex;
		flex-direction: column;
		margin-block-end: 0;
		padding-block-end: 0;
		background-color: var(--wp--preset--color--encre);
	}

	.soliha-pied {
		flex: 0 0 auto;
		margin-bottom: 0;
		padding-top: 1.55rem !important;
		padding-bottom: max(1.55rem, env(safe-area-inset-bottom, 0px)) !important;
		box-shadow: 0 100vh 0 0 var(--wp--preset--color--encre);
	}

	.soliha-pied .wp-block-navigation {
		flex: 0 1 auto;
		display: flex;
		align-items: center;
	}

	.soliha-pied .wp-block-navigation,
	.soliha-pied .wp-block-navigation__container {
		column-gap: 1.25rem;
		align-content: center;
	}

	.soliha-pied .wp-block-navigation-item__content,
	.soliha-pied .wp-block-navigation a {
		min-height: 2.35rem;
		font-size: 1.125rem;
	}

	.soliha-logo-s,
	.wp-block-site-logo img {
		height: clamp(4rem, 8vw, 5rem) !important;
	}

	.soliha-chapo--entete {
		font-size: clamp(0.95rem, 2.1vw, 1.08rem) !important;
		line-height: 1.45;
	}

	.soliha-portes,
	.soliha-accueil[data-ecran="solutions"] .soliha-tuiles,
	.soliha-situation .soliha-sujet.est-actif,
	.soliha-thematique .soliha-contenu__volet.est-actif {
		max-width: var(--soliha-contenu-max);
		margin-inline: auto !important;
	}

	.soliha-scene:has(.soliha-accueil[data-ecran]) {
		overflow: visible;
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil,
	.soliha-accueil[data-ecran="solutions"] .soliha-solutions,
	.soliha-accueil[data-ecran="situation"] .soliha-situation {
		padding-bottom: calc(var(--soliha-max-slot) + 1.75rem);
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil,
	.soliha-accueil[data-ecran="situation"] .soliha-situation {
		display: flex;
		flex-direction: column;
		overflow: visible !important;
	}

	.soliha-accueil[data-ecran="accueil"],
.soliha-accueil[data-ecran="situation"] {
		--soliha-ecart-chemin-titre: calc(0.85rem - 6px);
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil {
		padding-top: 0.65rem;
	}

	.soliha-ecran--accueil h1 {
		margin-block-end: calc(1.75rem + var(--soliha-place) * 0.04);
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-portes {
		max-width: calc(var(--soliha-contenu-max) + var(--soliha-place) * 0.4) !important;
		margin-inline: auto !important;
		flex: 0 0 auto;
		display: flex;
		justify-content: flex-start;
		gap: calc(1.55rem + var(--soliha-place) * 0.03);
		margin-bottom: 0.5rem;
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-portes > .wp-block-column,
	.soliha-accueil[data-ecran="accueil"] .soliha-porte {
		flex-shrink: 0;
		flex-basis: auto !important;
		min-height: 0;
		height: fit-content !important;
		align-self: stretch;
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-porte {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: center;
		padding: calc(1.55rem + var(--soliha-place) * 0.04) calc(0.75rem + var(--soliha-place) * 0.02) !important;
		border-radius: 0.85rem;
		max-height: none;
		overflow: visible;
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-porte h2,
	.soliha-accueil[data-ecran="accueil"] .soliha-porte .wp-block-heading {
		font-size: clamp(1.08rem, calc(2.45vw + var(--soliha-place) * 0.01), calc(1.22rem + var(--soliha-place) * 0.026)) !important;
		margin-block-end: calc(1.7rem + var(--soliha-place) * 0.03);
		line-height: 1.28;
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-porte__action .wp-block-button__link {
		font-size: calc(0.9rem + var(--soliha-place) * 0.022);
		min-height: calc(2.5rem + var(--soliha-place) * 0.075);
		padding-block: calc(0.4rem + var(--soliha-place) * 0.012);
		padding-inline: calc(1.05rem + var(--soliha-place) * 0.06);
		gap: calc(0.45rem + var(--soliha-place) * 0.014);
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-porte__picto,
	.soliha-porte__picto {
		width: max(1.5rem, calc(1.2em + var(--soliha-place) * 0.04));
		height: calc(1.2em + var(--soliha-place) * 0.04) !important;
		max-height: calc(1.35rem + var(--soliha-place) * 0.06) !important;
	}

	.soliha-situation .soliha-sujet.est-actif {
		max-width: none;
		margin-inline: 0 !important;
	}

	.soliha-situation .soliha-sujet__intro {
		margin-block-end: 0;
	}

	.soliha-situation .soliha-situation__choix {
		justify-content: flex-start;
	}
	.soliha-situation .soliha-sujet h1,
	.soliha-situation .soliha-sujet__intro {
		margin-inline: auto;
		align-self: center;
	}

	.soliha-situation .soliha-choix {
		max-width: 100%;
		max-height: none;
		align-self: stretch;
	}

	.soliha-situation .soliha-choix .wp-block-button__link {
		border-radius: 0.85rem;
	}

	.soliha-situation .soliha-choix__titre {
		font-size: inherit;
		line-height: 1.28;
		margin: 0;
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-guide-max,
	.soliha-accueil[data-ecran="situation"] .soliha-guide-max,
	.soliha-accueil[data-ecran="solutions"] .soliha-guide-max {
		overflow: visible;
		padding-right: 0.9rem;
		padding-bottom: 0.65rem;

		bottom: 2.75rem !important;
		height: auto;
		min-height: calc(var(--soliha-max-slot) - 0.5rem);
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-guide-max__avatar,
	.soliha-accueil[data-ecran="situation"] .soliha-guide-max__avatar,
	.soliha-accueil[data-ecran="solutions"] .soliha-guide-max__avatar {
		width: clamp(10.25rem, 23vw, calc(12.5rem + var(--soliha-place) * 0.12)) !important;
		max-width: 38% !important;
		height: clamp(9.5rem, calc(16svh + var(--soliha-place) * 0.06), calc(12rem + var(--soliha-place) * 0.16));
		max-height: clamp(9.5rem, calc(16svh + var(--soliha-place) * 0.06), calc(12rem + var(--soliha-place) * 0.16));
	}

	.soliha-guide-max__bulle {
		max-width: min(calc(15rem + var(--soliha-place) * 0.14), 46%) !important;
		padding: calc(0.55rem + var(--soliha-place) * 0.012) calc(0.85rem + var(--soliha-place) * 0.02) !important;
		font-size: clamp(0.88rem, calc(2vw + var(--soliha-place) * 0.006), calc(1.02rem + var(--soliha-place) * 0.012)) !important;
		margin-bottom: 0.45rem !important;
	}

	.soliha-contenu__grille,
	.soliha-contenu__grille--territoires {
		max-width: var(--soliha-contenu-max);
	}

	.soliha-thematique .soliha-contenu.est-actif,
	.soliha-thematique .soliha-contenu__volet.est-actif {
		max-width: var(--soliha-contenu-max);
		margin-inline: auto !important;
	}

	.soliha-thematique .soliha-contenu__intro {
		text-align: center;
	}

	.soliha-interventions__titre,
	.soliha-carte h2,
	.soliha-carte .wp-block-heading {
		font-size: clamp(1rem, 2.2vw, 1.15rem);
	}

	.soliha-max-actions,
	.soliha-carte--mission,
	.soliha-carte--media,
	.soliha-carte--carte,
	.soliha-interventions {
		padding: 0.85rem 0.9rem !important;
	}

	.soliha-contact__groupe--identite .soliha-contact__sous-titre,
	.soliha-contact__groupe--identite .soliha-contact__champ:nth-child(4) {
		grid-column: auto !important;
	}

	.soliha-contact__groupe--identite .soliha-contact__champ,
	.soliha-contact__groupe--identite .soliha-contact__sous-titre {
		position: relative;
		z-index: 2;
	}

	.soliha-contact__groupe--identite .soliha-contact__champ input {
		height: 2.75rem;
		max-height: 2.75rem;
		-webkit-appearance: none !important;
		appearance: none !important;
	}
}

@media (min-width: 700px) and (max-width: 1366px) and (orientation: landscape) and (max-height: 900px) {
	:root {
		--soliha-max-slot: clamp(10.5rem, 22svh, 13.5rem);
		--soliha-ecart-chemin-titre: 0.4rem;
	}
}

@media (min-width: 700px) and (max-width: 1366px) and (orientation: landscape) {
	.soliha-accueil[data-ecran="accueil"],
.soliha-accueil[data-ecran="situation"] {
		--soliha-ecart-chemin-titre: 0.05rem;
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil {
		padding-top: 0.05rem;
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil h1,
	.soliha-ecran--accueil h1 {
		margin-block-start: 0 !important;
		margin-block-end: 0.7rem;
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-portes {
		margin-top: 1.05rem !important;
		margin-bottom: 0.4rem;
		gap: 1.25rem;
	}

	.soliha-carte--carte {
		padding: 0.55rem 0.65rem 0.5rem !important;
		border-radius: 0.75rem !important;
	}

	.soliha-carte--carte .soliha-carte__titre,
	.soliha-carte--carte h2,
	.soliha-carte--carte .wp-block-heading {
		font-size: 0.92rem;
		margin: 0 0 0.35rem;
	}

	.soliha-carte__carte-image {
		aspect-ratio: 16 / 6.5 !important;
		max-height: 9.5rem;
		border-radius: 0.5rem !important;
	}

	.soliha-carte__carte-appel {
		padding: 0.28rem 0.65rem !important;
		left: 0.4rem !important;
		bottom: 0.4rem !important;
	}

	.soliha-max-actions__tandem {
		width: 9.25rem !important;
		right: 1.35rem !important;
		bottom: -1.35rem !important;
	}

	.soliha-max-actions__contenu {
		padding-right: 6.5rem !important;
	}

	.soliha-actualites {
		padding: 0.55rem 0.6rem 0.65rem !important;
		border-radius: 0.75rem !important;
		margin-top: 0.45rem !important;
	}

	.soliha-actualites__titre {
		padding-bottom: 0.2rem !important;
	}

	.soliha-actualites__titre::after {
		width: 2rem !important;
		height: 2px !important;
		margin-top: 0.2rem !important;
	}

	.soliha-actualites__piste {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		flex-direction: unset !important;
		gap: 0.5rem !important;
	}

	.soliha-actualite {
		min-height: 0 !important;
		height: auto !important;
		border-radius: 0.65rem !important;
	}

	.soliha-actualite__image,
	.soliha-actualite__image--vide {
		aspect-ratio: 16 / 7.5 !important;
	}

	.soliha-actualite__corps {
		padding: 0.4rem 0.5rem 0.5rem !important;
		gap: 0.15rem !important;
	}

	.soliha-actualite__titre {
		font-size: 0.78rem !important;
		line-height: 1.22 !important;
		min-height: 0 !important;
		-webkit-line-clamp: 2 !important;
	}

	.soliha-actualite__extrait {
		line-height: 1.25 !important;
		min-height: 0 !important;
		-webkit-line-clamp: 2 !important;
	}

	.soliha-actualite__action {
		padding: 0.22rem 0.55rem !important;
		margin-top: 0.2rem !important;
	}

	.soliha-actualites__plus {
		margin: 0.55rem 0 0 !important;
	}

	.soliha-actualites__lien {
		padding: 0.32rem 0.85rem !important;
	}
}

.soliha-accueil[data-ecran="thematique"],
.soliha-accueil[data-ecran="contact"] {
    min-height: 0;
    overflow: visible;
}

.soliha-scene:has(.soliha-accueil[data-ecran="thematique"]),
.soliha-scene:has(.soliha-accueil[data-ecran="contact"]) {
    min-height: 0 !important;
    overflow: visible;
}

.soliha-scene:has(.soliha-accueil[data-ecran="thematique"])::before,
.soliha-scene:has(.soliha-accueil[data-ecran="thematique"])::after {
    position: fixed;
    bottom: auto;
    width: 100%;
    height: calc(100svh + var(--soliha-rallonge-scene)) !important;
}

.soliha-accueil[data-ecran="thematique"] .soliha-thematique {
    display: block;
    position: relative;
    box-sizing: border-box;
    height: auto;
    max-height: none;
    min-height: 0;
    overflow: visible;
    padding-bottom: 2rem;
    padding-inline: var(--soliha-gouttiere);
    padding-top: var(--soliha-ecart-chemin-titre);
}

.soliha-thematique .soliha-contenu.est-actif,
.soliha-thematique .soliha-contenu__volet.est-actif {
    width: 100%;
    gap: 0.85rem;
}

.soliha-thematique .soliha-contenu__volet.est-actif > h1 {
    margin-block: 0 0.35rem;
    font-size: clamp(1.25rem, 5.5vw, 1.7rem) !important;
    text-align: center;
}

@media (min-width: 1100px) {
    .soliha-thematique .soliha-contenu__volet.est-actif > h1 {
        margin-block-start: 0.625rem;
        font-size: clamp(2.2rem, 3.2vw, 3.2rem) !important;
    }
}

.soliha-thematique .soliha-contenu__intro {
    margin: 0 0 0.5rem;
    font-size: clamp(0.82rem, 3.2vw, 0.95rem);
    line-height: 1.4;
}

.soliha-contenu__volet--particuliers .soliha-contenu__intro,
.soliha-contenu__volet--territoires .soliha-contenu__intro {
    color: #062B3A !important;
    font-weight: 600;
}

.soliha-contenu__grille,
.soliha-contenu__grille--territoires {
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
    width: 100%;
    margin: 0 !important;
    padding: 0;
}

.soliha-territoires__aside,
.soliha-particuliers__aside,
.soliha-particuliers__principal {
    display: contents;
}

.soliha-contenu__grille--territoires .soliha-max-actions,
.soliha-contenu__volet--particuliers .soliha-contenu__grille > .soliha-max-actions {
    order: 1;
}
.soliha-contenu__grille--territoires .soliha-carte--carte,
.soliha-contenu__volet--particuliers .soliha-contenu__grille > .soliha-carte--media {
    order: 3;
}
.soliha-contenu__grille--territoires .soliha-interventions,
.soliha-contenu__volet--particuliers .soliha-contenu__grille > .soliha-carte--carte {
    order: 4;
}

.soliha-contenu__volet--particuliers .soliha-contenu__grille > .soliha-carte--mission,
.soliha-contenu__grille--territoires .soliha-carte--ecosysteme {
    order: 2;
}

.soliha-max-actions {
    position: relative;
    background: #fff;
    border-radius: 1rem;
    padding: 1rem 1rem 1.1rem;

    border: 2px solid var(--wp--preset--color--orange, #E89522);
    box-shadow:
        0 8px 20px rgba(6, 43, 58, 0.16),
        0 2px 6px rgba(6, 43, 58, 0.1);
    overflow: visible;
}

.soliha-max-actions__surtitre {
    margin: 0 0 0.25rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--wp--preset--color--prune, #612C40);
}

.soliha-max-actions__titre {
    margin: 0 0 0.35rem;
    font-size: clamp(1.05rem, 4.2vw, 1.25rem);
    color: var(--wp--preset--color--bleu);
    line-height: 1.25;
}

.soliha-max-actions__boutons,
.soliha-actus__ligne {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.soliha-max-actions__bouton {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 2rem;
    padding: 0.55rem 1.1rem;
    font-size: 0.9rem;
    font-weight: 700;
    text-decoration: none;
}

.soliha-max-actions__bouton--principal {
    background: var(--wp--preset--color--bleu);
    color: #fff;
    border: 2px solid var(--wp--preset--color--orange, #E89522);
}

.soliha-max-actions__contenu {
    position: relative;
    z-index: 1;
    padding-right: 4.5rem;
}

.soliha-max-actions__tandem {
    position: absolute;
    right: -0.35rem;

    bottom: -1.6rem;
    width: 7.5rem;
    z-index: 5;
    pointer-events: none;
    animation: none !important;
}

.soliha-max-actions__tandem img {
    display: block;
    width: 100%;
    height: auto;
    position: relative;
    z-index: 1;
}

.soliha-max-actions__tandem::before,
.soliha-max-actions__tandem::after {
    content: "";
    position: absolute;
    z-index: 0;
    pointer-events: none;
    border-radius: 50%;
    background: radial-gradient(
        ellipse at center,
        rgba(35, 45, 55, 0.38) 0%,
        rgba(35, 45, 55, 0.18) 45%,
        rgba(35, 45, 55, 0) 72%
    );
    filter: blur(1.1px);
    bottom: -0.05rem;
    width: 1.75rem;
    height: 0.52rem;

    transform: translateX(-50%) scaleX(1.15);
}

.soliha-max-actions__tandem::before {
    left: 25%;
    right: auto;
    opacity: 0.92;
}

.soliha-max-actions__tandem::after {
    left: 71%;
    right: auto;
}

.soliha-carte {
    background: #fff;
    border-radius: 1rem;
    padding: 1rem;
    box-shadow:
        0 8px 20px rgba(6, 43, 58, 0.16),
        0 2px 6px rgba(6, 43, 58, 0.1);
}

.soliha-carte__titre {
    margin: 0 0 0.65rem;
    font-size: clamp(1rem, 4vw, 1.2rem);
    font-weight: 700;
    color: var(--wp--preset--color--bleu);
}

.soliha-carte__carte {
    text-decoration: none;
    color: inherit;
}

.soliha-carte__carte--lien {
    position: relative;
    display: block;
}

.soliha-carte__carte-image {
    display: block;
    width: 100%;

    aspect-ratio: 16 / 8;
    border-radius: 0.65rem;
    background: url('assets/illustrations/carte-soliha-nouvelle-aquitaine.webp') center / cover no-repeat;
    margin-bottom: 0;
}

.soliha-carte__carte-appel {
    position: absolute;
    left: 0.55rem;
    bottom: 0.55rem;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    max-width: calc(100% - 1.1rem);
    padding: 0.35rem 0.8rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 2px 8px rgba(6, 43, 58, 0.18);
    border: 1px solid rgba(6, 43, 58, 0.08);
    font-weight: 700;
    color: var(--wp--preset--color--bleu);
    font-size: clamp(0.75rem, 3.1vw, 0.88rem);
    line-height: 1.2;
    white-space: normal;
}

.soliha-carte--carte {
    padding-bottom: 0.75rem;
}

.soliha-interventions {
    background: #fff;
    border-radius: 1rem;
    padding: 1rem 0.85rem 0.85rem;
    box-shadow:
        0 8px 20px rgba(6, 43, 58, 0.16),
        0 2px 6px rgba(6, 43, 58, 0.1);
    border: 1.5px solid rgba(6, 43, 58, 0.4);
}

.soliha-interventions__titre {
    margin: 0 0 0.75rem;
    font-size: clamp(1.05rem, 4.2vw, 1.25rem);
    color: var(--wp--preset--color--bleu);
    position: relative;
    padding-bottom: 0.35rem;
}

.soliha-interventions__titre::after,
.soliha-actualites__titre::after {
    content: "";
    display: block;
    width: 2.5rem;
    height: 3px;
    margin-top: 0.35rem;
    background: var(--wp--preset--color--bleu);
    border-radius: 2px;
}

.soliha-intervention {
    border-radius: 0.85rem;
    margin: 0 0 0.65rem;
    overflow: hidden;
    background: var(--wp--preset--color--beige-10, #FAF9F6);
}

.soliha-intervention:last-child,
.soliha-truck__presentation p:last-child,
.soliha-truck__qui p:last-child,
.soliha-partenaire p:last-child,
.soliha-actus__tete .soliha-actus__compte {
    margin-bottom: 0;
}

.soliha-intervention > summary {
    display: grid;
    grid-template-columns: 5.5rem 1fr;
    gap: 0.65rem;
    align-items: start;
    padding: 0.65rem;
    cursor: pointer;
    list-style: none;
    transition: background-color 0.18s ease;
}

.soliha-intervention > summary::-webkit-details-marker {
    display: none;
}

@media (max-width: 45.999rem) {
    .soliha-intervention > summary,
.soliha-intervention__resume {
        display: block;
    }

    .soliha-intervention__image {
        float: left;

        margin: 0 0.65rem 0.35rem 0;
    }

    .soliha-intervention > summary::after {
        content: "";
        display: block;
        clear: both;
    }
}

.soliha-intervention__image {
    width: 5.5rem;
    height: 5.5rem;
    object-fit: cover;
    border-radius: 0.55rem;
}

.soliha-intervention__titre {
    display: block;
    font-weight: 700;
    color: var(--wp--preset--color--bleu);
    font-size: 0.95rem;
    margin-bottom: 0.25rem;
}

.soliha-intervention__texte {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 0.82rem;
    line-height: 1.55;
    color: var(--wp--preset--color--encre, #062B3A);
}

.soliha-intervention[open] .soliha-intervention__para {
    display: block;
    margin: 0 0 0.85em;
}

.soliha-intervention[open] .soliha-intervention__para:last-of-type {
    margin-bottom: 0;
}

.soliha-intervention[open] .soliha-intervention__puce {
    display: list-item;
    list-style: disc;
    margin: 0 0 0.5em 1.15em;
}

details[open] > summary .soliha-bascule__ouvrir {
    display: none;
}

details[open] > summary .soliha-bascule__fermer {
    display: inline;
}

.soliha-mission-territoires__action {
    display: inline-block;
    margin-top: 0.35rem;
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--wp--preset--color--bleu);
}

.soliha-intervention[open] .soliha-intervention__texte {
    -webkit-line-clamp: unset;
    display: block;
    overflow: visible;
}

.soliha-intervention[open] > summary {
    display: block;
}

.soliha-intervention[open] .soliha-intervention__image {
    float: left;
    margin-right: 0.7rem;
    margin-bottom: 0.4rem;
}

.soliha-intervention[open] .soliha-mission-territoires__action {
    clear: both;
}

.soliha-media__declencheur {
    display: block;
    width: 100%;
    border: 0;
    background: transparent;
    padding: 0;
    text-align: left;
    cursor: pointer;
}

.soliha-media__apercu {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 0.65rem;
    background: var(--wp--preset--color--bleu-clair-55, #CBE9F0) url('assets/illustrations/temoignage-montmorillon.webp') center / cover no-repeat;
    margin-bottom: 0.5rem;
    position: relative;
}

.soliha-media__libelle {
    font-weight: 700;
    color: var(--wp--preset--color--bleu);
}

.soliha-media__note {
    display: block;
    font-size: 0.75rem;
    color: var(--wp--preset--color--gris, #4E6875);
    margin-top: 0.2rem;
}

.soliha-actualites {
    margin-top: 0.75rem;
    background: #fff;
    border-radius: 0.9rem;
    padding: 0.8rem 0.75rem 0.9rem;
    box-shadow:
        0 8px 20px rgba(6, 43, 58, 0.16),
        0 2px 6px rgba(6, 43, 58, 0.1);
    border: 1px solid rgba(6, 43, 58, 0.12);
}

.soliha-actualites__titre {
    margin: 0 0 0.65rem;
    font-size: clamp(0.95rem, 3.6vw, 1.1rem);
    color: var(--wp--preset--color--bleu);
    font-weight: 700;
    position: relative;
    padding-bottom: 0.3rem;
}

.soliha-actualites__piste {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
}

.soliha-actualite {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    background: var(--wp--preset--color--beige-10, #FAF9F6);
    border-radius: 0.85rem;
    overflow: hidden;
    min-height: 100%;
    height: 100%;
}

.soliha-actualite__image,
.soliha-actualite__image--vide {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: var(--wp--preset--color--bleu-clair-55, #CBE9F0);
}

.soliha-actualite__image img,
.soliha-liste__image a,
.soliha-liste__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.soliha-actualite__image--banniere img,
.soliha-liste__image--banniere img {
    object-position: center top;
}

.soliha-actualite__corps {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    gap: 0.28rem;
    padding: 0.6rem 0.7rem 0.7rem;
}

.soliha-actualite__titre {
    font-size: clamp(0.88rem, 3.2vw, 1rem);
    font-weight: 700;
    color: var(--wp--preset--color--bleu);
    line-height: 1.28;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: calc(1.28em * 2);
}

.soliha-actualite__extrait {
    line-height: 1.35;
    color: var(--wp--preset--color--gris, #4E6875);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: calc(1.35em * 2);
}

.soliha-actualite__date {
    color: var(--wp--preset--color--gris, #4E6875);
}

.soliha-actualite__action {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    margin-top: auto;
    padding: 0.32rem 0.75rem;
    border-radius: 2rem;
    font-size: 0.76rem;
    font-weight: 700;
    background: var(--wp--preset--color--bleu-clair-55, #CBE9F0);
    color: var(--wp--preset--color--bleu);
}

.soliha-actualite:hover .soliha-actualite__action,
.soliha-actualite:focus-visible .soliha-actualite__action {
    background: var(--wp--preset--color--bleu);
    color: #fff;
}

.soliha-actualites__plus {
    margin: 0.9rem 0 0;
    text-align: center;
}

.soliha-actualites__lien {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.45rem 1.05rem;
    border-radius: 2rem;
    border: 2px solid var(--wp--preset--color--bleu);
    color: var(--wp--preset--color--bleu) !important;
    font-weight: 700;
    font-size: 0.82rem;
    text-decoration: none;
    background: #fff;
}

.soliha-actualites__lien:hover,
.soliha-actualites__lien:focus-visible {
    background: var(--wp--preset--color--bleu);
    color: #fff !important;
}

.soliha-actualites__vide {
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.4;
    color: var(--wp--preset--color--gris, #4E6875);
}

.soliha-accueil[data-ecran="thematique"] ~ .soliha-pied,
body:has(.soliha-accueil[data-ecran="thematique"]) .soliha-pied,
.soliha-accueil[data-ecran="contact"] ~ .soliha-pied,
body:has(.soliha-accueil[data-ecran="contact"]) .soliha-pied {
    margin-top: 1.5rem;
}

.soliha-accueil[data-ecran="contact"] .soliha-contact {
    display: block;
    position: relative;
    box-sizing: border-box;
    height: auto;
    max-height: none;
    min-height: calc(100svh + var(--soliha-rallonge-scene) - var(--soliha-hauteur-entete) - var(--soliha-parcours-h, 1.5rem));
    overflow: visible;
    padding-inline: var(--soliha-gouttiere);
    padding-top: var(--soliha-ecart-chemin-titre);

    padding-bottom: 1.5rem;
}

.soliha-contact > h1 {
    margin: 0 0 clamp(0.9rem, 2vw, 1.35rem) !important;
    text-align: center !important;
    color: var(--wp--preset--color--bleu, #00618A) !important;
    font-weight: 700;
    font-size: clamp(1.6rem, 6.5vw, 2.1rem) !important;
    -webkit-text-stroke: 2px #fff;
    paint-order: stroke fill;
    text-shadow: none;

}

.soliha-contact .soliha-contact__intro {
    margin: 0 auto 1.25rem !important;
    max-width: 38rem;
    text-align: center;
    color: #062B3A;
    font-weight: 600;
    font-size: clamp(0.95rem, 3.6vw, 1.1rem);
    line-height: 1.5;
}

.soliha-contact__arrivee {
    display: block;

    position: absolute;

    top: 0.4rem;
    right: clamp(1.35rem, 1.2rem + 0.4vw, 1.5rem);
    width: var(--soliha-contact-max);
    height: var(--soliha-contact-max);
    margin: 0;
    pointer-events: none;
    z-index: 1;
    background-image: url('assets/illustrations/max-arrivee.webp');
    background-repeat: no-repeat;
    background-position: center top;
    background-size: contain;
}

.soliha-contact__legende,
.soliha-contact__groupe--identite .soliha-contact__sous-titre {
    padding-right: calc(var(--soliha-contact-max) + 0.5rem);
    box-sizing: border-box;
}

.soliha-contact .soliha-guide-max {
    display: none;
    position: absolute !important;
    left: 0;
    right: 0;
    bottom: 0.25rem;
    height: var(--soliha-max-slot);
    justify-content: flex-end;
    padding-right: calc(var(--soliha-gouttiere) + 0.25rem);
    z-index: 5;
}

.soliha-contact__form {
    position: relative;
    --soliha-contact-max: clamp(5.75rem, 5.35rem + 1.3vw, 6.25rem);
    display: grid;
    gap: 0.85rem;
    max-width: 36rem;
    margin-inline: auto;
    padding: 1.35rem 1rem 1.15rem;
    border-radius: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.7);
    background: rgba(255, 255, 255, 0.72);
    backdrop-filter: blur(14px) saturate(1.15);
    -webkit-backdrop-filter: blur(14px) saturate(1.15);
    box-shadow:
        0 10px 28px rgba(6, 43, 58, 0.16),
        0 2px 8px rgba(6, 43, 58, 0.08);
}

.soliha-contact__legende {
    margin: 0;
    font-size: 0.75rem;
    color: var(--wp--preset--color--gris, #4E6875);
}

.soliha-contact__requis {
    color: var(--wp--preset--color--rouge, #CE0822);
    font-weight: 700;
}

.soliha-contact__groupe {
    display: grid;
    gap: 0.65rem;
    margin: 0;
}

.soliha-contact__sous-titre {
    margin: 0.15rem 0 0;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--wp--preset--color--bleu, #00618A);
}

.soliha-contact__champ {
    display: grid;
    gap: 0.3rem;
    margin: 0;
}

.soliha-contact__champ label {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--wp--preset--color--encre, #062B3A);
}

.soliha-contact__champ input,
.soliha-contact__champ select,
.soliha-contact__champ textarea {
    width: 100%;
    box-sizing: border-box;
    min-height: 2.75rem;
    padding: 0.6rem 0.85rem;
    border: none;
    border-radius: 0.75rem;
    background: #fff;
    box-shadow: 0 2px 8px rgba(6, 43, 58, 0.08) !important;
    font: inherit;
    font-size: 1rem;
    color: var(--wp--preset--color--encre, #062B3A);
}

.soliha-contact__champ textarea {

    min-height: 11rem;
    resize: vertical;
}

.soliha-contact__form p:empty {
    display: none;
    margin: 0 !important;
}

.soliha-contact__champ input::placeholder,
.soliha-contact__champ textarea::placeholder {
    color: color-mix(in srgb, #062B3A 45%, #fff) !important;
    opacity: 1 !important;
}

.soliha-contact__champ input:focus,
.soliha-contact__champ select:focus,
.soliha-contact__champ textarea:focus {
    outline: 2px solid var(--wp--preset--color--bleu, #00618A) !important;
    outline-offset: 2px !important;
    box-shadow:
        0 0 0 4px rgba(0, 97, 138, 0.18),
        0 2px 8px rgba(6, 43, 58, 0.08) !important;
}

.soliha-contact__champ input[aria-invalid="true"],
.soliha-contact__champ select[aria-invalid="true"],
.soliha-contact__champ textarea[aria-invalid="true"] {
    box-shadow:
        0 0 0 2px var(--wp--preset--color--prune, #612C40),
        0 2px 8px rgba(6, 43, 58, 0.08) !important;
}

.soliha-contact__aide,
.soliha-contact__statut {
    display: block;
    line-height: 1.35;
    color: var(--wp--preset--color--gris, #4E6875);
}

.soliha-contact__suggestions {
    list-style: none;
    margin: 0.25rem 0 0;
    padding: 0.35rem;
    background: #fff;
    border-radius: 0.65rem;
    box-shadow: 0 8px 20px rgba(6, 43, 58, 0.14);
}

.soliha-contact__champ--case label {
    display: flex;
    gap: 0.55rem;
    align-items: flex-start;
    font-weight: 400;
    line-height: 1.45;

    cursor: pointer;
}

.soliha-contact__groupe--identite {
    column-gap: 0.75rem;
    align-items: start;
}
.soliha-contact__groupe--identite .soliha-contact__sous-titre + .soliha-contact__champ,
.soliha-contact__groupe--identite .soliha-contact__champ {
    align-self: start;
}

.soliha-contact__champ input[type="checkbox"] {
    width: 1.5rem;
    height: 1.5rem;
    min-height: 0;
    margin: 0;
    padding: 0;
    border-radius: 0.25rem;
    box-shadow: none !important;
    accent-color: var(--wp--preset--color--bleu, #00618A);
}

.soliha-contact__actions {
    margin: 0.35rem 0 0;
    text-align: center;
}

.soliha-contact__actions .soliha-bouton-pill,
.soliha-contact__actions .wp-block-button__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.8rem;
    padding: 0.55rem 1.6rem;
    border: none;
    border-radius: 999px;
    background: var(--wp--preset--color--canard, #00616D);
    color: #fff;
    font-weight: 700;
    font-size: 0.95rem;
    box-shadow: 0 6px 16px rgba(0, 97, 109, 0.28);
}

.soliha-contact__actions button[disabled] {
    opacity: 0.7 !important;
    cursor: not-allowed !important;
}

.soliha-contact .soliha-guide-max__bulle {
    display: none !important;
}

.soliha-contact .soliha-guide-max__avatar {
    order: 2;
    width: clamp(8.5rem, 38vw, 12.5rem);
    max-width: 42%;
    height: calc(var(--soliha-max-slot) - 0.25rem);
    object-fit: contain;
    object-position: center bottom;
}

@media (min-width: 1100px) {
    .soliha-accueil[data-ecran="contact"] .soliha-contact {
        display: grid;
        grid-template-areas:
            "titre form"
            "intro form"
            "max form";
        align-items: start;
        min-height: calc(100svh - var(--soliha-hauteur-entete) - var(--soliha-parcours-h, 1.5rem));
    }

    .soliha-contact > h1 { grid-area: titre; text-align: left !important; }
    .soliha-contact__intro { grid-area: intro; margin-inline: 0; }
    .soliha-contact__form {
        grid-area: form;
        max-width: none;
        margin-inline: 0;
        padding-top: 1.45rem;
    }
    .soliha-contact__legende,
    .soliha-contact__groupe--identite .soliha-contact__sous-titre {
        padding-right: 7.5rem;
    }
    .soliha-contact__arrivee {
        right: 1.6rem;
        left: auto;
        width: 6.25rem;
        height: 6.25rem;
    }
    .soliha-contact__groupe--identite .soliha-contact__champ,
    .soliha-contact__groupe--identite .soliha-contact__sous-titre {
        position: relative;
        z-index: 2;
    }
    .soliha-contact__groupe--identite .soliha-contact__champ input {
        height: 2.75rem;
        max-height: 2.75rem;
        -webkit-appearance: none !important;
        appearance: none !important;
    }
    .soliha-contact .soliha-guide-max {
        grid-area: max;
        position: relative !important;
        bottom: auto;
        height: auto;
        margin-top: auto;
        justify-content: flex-start;
        padding: 0;
    }
}

.soliha-scene--article {

    position: relative;
    min-height: 100svh;
    background: transparent;
    padding-bottom: 2rem;
    --soliha-fresque: url('/wp-content/themes/soliha/assets/illustrations/fond-soliha-mobile.webp');
}

@media (min-aspect-ratio: 1/1) {
    .soliha-scene--article {
        --soliha-fresque: url('/wp-content/themes/soliha/assets/illustrations/fond-soliha-tablette.webp');
    }
}

@media (min-aspect-ratio: 77/50) {
    .soliha-scene--article {
        --soliha-fresque: url('/wp-content/themes/soliha/assets/illustrations/fond-soliha-desktop.webp');
    }
}

.soliha-scene--article::before,
.soliha-scene--article::after {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100lvh;
    z-index: 0;
    pointer-events: none;
}

.soliha-scene--article::before {
    background-color: #F1D8BC;
    background-image: var(--soliha-fresque);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;
}

.soliha-scene--article::after {
    background: rgba(250, 249, 246, 0.44);
}

.soliha-scene--article > *,
.soliha-scene--erreur > * {
    position: relative;
    z-index: 1;
}

.soliha-retour--liste {
    position: absolute;
    left: var(--soliha-gouttiere) !important;
    bottom: auto !important;

    height: calc(clamp(0.5rem, 1.5vh, 1rem) + clamp(3.5rem, 14vw, 5rem));
    z-index: 100;
}

.soliha-retour--liste .soliha-retour__bouton,
a.soliha-retour--liste .soliha-retour__bouton,
.soliha-retour--liste a.soliha-retour__bouton {
    min-height: 0;
    height: auto;
    padding: 0.35rem 0.7rem;
    font-size: clamp(0.84rem, 2.1vw, 0.93rem);
    border-radius: 999px;
}

@media (orientation: landscape) {
	.soliha-retour--liste {
		height: calc(0.15rem + clamp(3.5rem, 14vw, 5rem));
	}
}

.soliha-liste {
    margin: 0.5rem var(--soliha-gouttiere) 2rem !important;
    max-width: 40rem;
    width: auto !important;
    margin-inline: auto !important;

    padding: 1.1rem var(--soliha-gouttiere) 1.25rem;

    background: transparent;
    box-shadow: none;
    border: 0;
    box-sizing: border-box;
}

.soliha-liste__titre {

    -webkit-text-stroke: 2px #fff;
    paint-order: stroke fill;
    text-shadow: 0 0 8px rgba(255, 255, 255, 0.85);

    margin: 0 0 0.5rem !important;
    font-size: clamp(1.35rem, 5.5vw, 1.85rem) !important;
    color: var(--wp--preset--color--bleu) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: left !important;
}

.soliha-liste__titre::after {
    content: "";
    display: block;
    width: 2.75rem;
    height: 3px;
    margin-top: 0.4rem;
    background: var(--wp--preset--color--bleu);
    border-radius: 2px;
}

.soliha-liste__grille {
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

.soliha-liste__carte {
    background: #fff;
    border-radius: 0.85rem;
    overflow: hidden;
    box-shadow:
        0 8px 20px rgba(6, 43, 58, 0.16),
        0 2px 6px rgba(6, 43, 58, 0.1);
    padding: 0;
    margin: 0;
}

.soliha-liste__image {
    display: block;
    margin: 0;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: var(--wp--preset--color--bleu-clair-55, #CBE9F0);
}

.soliha-liste__corps {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    padding: 0.75rem 0.85rem 0.95rem;
    margin: 0;
    min-width: 0;
}

.soliha-liste__article-titre {
    margin: 0;
    font-size: clamp(0.95rem, 3.8vw, 1.1rem);
    font-weight: 700;
    line-height: 1.3;
}

.soliha-liste__article-titre a {
    color: var(--wp--preset--color--bleu);
    text-decoration: none;
}

.soliha-liste__extrait {
    margin: 0;
    font-size: 0.82rem;
    line-height: 1.4;
    color: var(--wp--preset--color--gris, #4E6875);
}

.soliha-liste__date {
    font-size: 0.75rem;
    color: var(--wp--preset--color--gris, #4E6875);
}

.soliha-liste__action {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    margin-top: 0.3rem;
    padding: 0.4rem 0.9rem;
    border-radius: 2rem;
    font-size: 0.82rem;
    font-weight: 700;
    text-decoration: none;
    background: var(--wp--preset--color--bleu-clair-55, #CBE9F0) !important;
    color: var(--wp--preset--color--bleu) !important;
}

.soliha-liste__carte:hover .soliha-liste__action,
.soliha-liste__carte:focus-within .soliha-liste__action {
    background: var(--wp--preset--color--bleu) !important;
    color: #fff !important;
}

.soliha-liste__vide {
    margin: 0.5rem 0 0 !important;
    color: var(--wp--preset--color--gris, #4E6875);
    font-size: 0.9rem;
}

.soliha-liste__pagination {
    margin-top: 1.25rem;
    gap: 0.5rem;
}

.soliha-liste__pagination .wp-block-query-pagination-numbers {
    display: flex;
    gap: 0.35rem;
    flex-wrap: wrap;
    justify-content: center;
}

.soliha-liste__pagination a,
.soliha-liste__pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.25rem;
    height: 2.25rem;
    padding: 0 0.55rem;
    border-radius: 999px;
    font-weight: 700;
    font-size: 0.85rem;
    text-decoration: none;
    color: var(--wp--preset--color--bleu);
    background: var(--wp--preset--color--bleu-clair-55, #CBE9F0);
}

.soliha-liste__pagination .current,
.soliha-liste__pagination .wp-block-query-pagination-numbers .current {
    background: var(--wp--preset--color--bleu);
    color: #fff;
}

.soliha-article {
    width: min(100% - 2 * var(--soliha-gouttiere), 68rem);
    margin-inline: auto;
    margin-block: clamp(1rem, 4vh, 2.5rem) 2rem;
    padding: clamp(1.25rem, 4vw, 3.25rem);
    border-radius: 1rem;
    background: #fff;
    border: 1px solid rgba(6, 43, 58, 0.12);
    box-shadow:
        0 12px 30px rgba(6, 43, 58, 0.14),
        0 2px 8px rgba(6, 43, 58, 0.08);
    box-sizing: border-box;
}

.soliha-article > .wp-block-post-title,
.soliha-article h1.wp-block-post-title {
    margin-top: 0;
    margin-inline: auto;

    max-width: 62rem;
    color: var(--wp--preset--color--bleu, #00618A) !important;
    line-height: 1.2;
    text-align: center;
}

.soliha-article__meta {
    align-items: baseline;
    justify-content: center;
    gap: 0.75rem;
    margin-block: 0.35rem clamp(1rem, 3vh, 1.75rem);
}

.soliha-article__categories {
    display: flex !important;
    flex-wrap: wrap;

    justify-content: center;
    text-align: center;
    gap: 0.4rem 0.65rem;
    margin: clamp(1.5rem, 3vh, 2.25rem) 0 0 !important;
    padding-top: 1rem;
    border-top: 1px solid rgba(6, 43, 58, 0.12);
}

.soliha-article__categories .wp-block-post-terms,
.soliha-article__categories .wp-block-post-terms a {
    color: #062B3A;
    font-size: 0.8rem !important;
    font-weight: 400;
    text-decoration: none !important;
    line-height: 1.35;
}

.soliha-article__categories .wp-block-post-terms a:hover,
.soliha-article__categories .wp-block-post-terms a:focus-visible {
    text-decoration: underline !important;
}

.soliha-article .wp-block-post-content > * + * {
    margin-top: clamp(1rem, 2.5vh, 1.6rem);
}

.soliha-article .wp-block-post-content > h2 {
    margin-top: clamp(1.75rem, 4vh, 2.75rem);
}

.soliha-article p,
.soliha-article .wp-block-post-content p {
    line-height: 1.65;
    text-align: left;
    text-wrap: wrap;
    word-break: normal;
    hyphens: manual;
}

.soliha-article img,
.soliha-article .wp-block-image img,
.soliha-article .wp-block-post-featured-image img {
    border-radius: 12px;
}

.soliha-article figcaption {
    color: var(--wp--preset--color--gris);
    font-size: var(--wp--preset--font-size--petit, 0.875rem);
    text-align: left;
}

@media (max-width: 699px) {
    .soliha-article .wp-block-media-text {
        grid-template-columns: 100% !important;
    }

    .soliha-article .wp-block-media-text .wp-block-media-text__media {
        grid-column: 1;
        grid-row: 1;
    }

    .soliha-article .wp-block-media-text .wp-block-media-text__content {
        grid-column: 1;
        grid-row: 2;
        padding-inline: 0;
        padding-top: clamp(0.75rem, 2vh, 1.25rem);
    }
}

.soliha-article__contact {
    display: flex;
    gap: 1rem;
    align-items: center;
    margin-top: clamp(1.75rem, 4vh, 2.75rem);
    padding: 1rem 1.1rem;
    border-radius: 0.85rem;
    background: var(--wp--preset--color--bleu-clair-55, #CBE9F0);
    flex-wrap: wrap;
}

.soliha-article__contact h2 {
    margin: 0 0 0.35rem;
    font-size: 1.05rem;
    color: var(--wp--preset--color--bleu);
}

.soliha-article__contact p {
    margin: 0 0 0.75rem;
    font-size: 0.9rem;
}

.soliha-article__contact-texte {
    flex: 1 1 14rem;
}

.soliha-article__contact-bouton {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    min-height: 2.5rem;
    padding: 0.45rem 1.1rem;
    border-radius: 999px;
    background: var(--wp--preset--color--bleu);
    color: #fff;
    font-weight: 700;
    text-decoration: none;
}

.soliha-article__contact-choix {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.45rem;
}

.soliha-article__contact-question {
    margin: 0 !important;
    font-weight: 700;
    color: var(--wp--preset--color--encre, #062B3A);
}

.soliha-article__contact-boutons {
    flex: 0 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    align-items: center;
}

.soliha-article__contact .soliha-article__contact-bouton--collectivite {
    background: transparent;
    color: var(--wp--preset--color--encre, #123143) !important;
    box-shadow: inset 0 0 0 2px var(--wp--preset--color--bleu, #0A5F82);
}

.soliha-article__contact .soliha-article__contact-bouton--collectivite:hover,
.soliha-article__contact .soliha-article__contact-bouton--collectivite:focus-visible {
    background: var(--wp--preset--color--bleu, #0A5F82);
    color: #fff !important;
}

@media (min-width: 46rem) {
    .soliha-article__contact {
        gap: 1.5rem;
    }

    .soliha-article__contact-texte p {

        margin-bottom: 0;
    }
}

@media (max-width: 45.99rem) {
    .soliha-article__contact {
        flex-direction: column;
        text-align: center;
    }

    .soliha-article__contact-texte {
        flex: 0 0 auto;
    }

    .soliha-article__contact h2,
    .soliha-article__contact p {
        text-align: center;
    }

    .soliha-article__contact-bouton {

        min-height: 2.75rem;
        padding-inline: 1.4rem;
        justify-content: center;
        text-align: center;
    }

    .soliha-article__contact-choix,
    .soliha-article__contact-boutons {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
    }

}

.soliha-article__contact-max {
    flex: 0 0 auto;
    width: 4.5rem;
    height: 4.5rem;
    background: url('/wp-content/themes/soliha/assets/illustrations/cycliste-pointe-casque.webp') center / contain no-repeat;
}

.soliha-media__fenetre {

    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 0;
    width: min(56rem, calc(100vw - 2rem));
    max-width: calc(100vw - 2rem);
    max-height: min(90svh, calc(100vh - 2rem));
    padding: 0;
    border: 2px solid var(--wp--preset--color--encre, #062B3A);
    border-radius: 0.75rem;
    box-shadow: 0 12px 40px rgb(0 0 0 / 0.28);
    overflow: auto;
}

.soliha-media__fenetre::backdrop {
    background: rgb(0 0 0 / 0.55);
}

.soliha-media__fenetre-entete {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.65rem 1rem;
    border-bottom: 1px solid rgb(0 0 0 / 0.1);
    background: #fff;
    position: sticky;
    top: 0;
    z-index: 1;
}

.soliha-media__fenetre-titre {
    margin: 0;
    font-size: 1.05rem;
    color: var(--wp--preset--color--bleu, #00618a);
}

.soliha-media__fermer {
    border: 0;
    background: transparent;
    font-size: 1.75rem;
    line-height: 1;
    cursor: pointer;
    padding: 0.15rem 0.45rem;
}

.soliha-media__fenetre-corps {
    padding: clamp(1rem, 3vw, 1.5rem);
    background: #fff;
}

.soliha-media__fenetre-corps iframe,
.soliha-media__fenetre-corps video,
.soliha-media__lecteur {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    border: 0;
    border-radius: 0.5rem;

    background: #000;
}

@keyframes soliha-jalon-pulse {
    0% {
        transform: translate(-50%, -50%) scale(1);
        box-shadow: 0 0 0 0 rgba(37, 146, 86, 0.45);
    }
    45% {
        transform: translate(-50%, -50%) scale(1.22);
        box-shadow: 0 0 0 0.45rem rgba(37, 146, 86, 0.18);
    }
    100% {
        transform: translate(-50%, -50%) scale(1);
        box-shadow: 0 1px 4px rgba(6, 43, 58, 0.18);
    }
}

.soliha-accueil[data-ecran="accueil"] .soliha-parcours__etape[style="--i:0"],
.soliha-accueil[data-ecran="solutions"] .soliha-parcours__etape[style="--i:1"],
.soliha-accueil[data-ecran="situation"] .soliha-parcours__etape[style="--i:2"],
.soliha-accueil[data-ecran="thematique"] .soliha-parcours__etape[style="--i:3"],
.soliha-accueil[data-ecran="contact"] .soliha-parcours__drapeau {
    animation: soliha-jalon-pulse 0.65s ease-out;
}

@media (min-width: 1100px) {

    .soliha-guide-max {
        gap: 0.15rem;
    }

    .soliha-marque {
        flex-wrap: nowrap;

        gap: 0.6rem;
    }

    .soliha-chapo--entete {
        margin-left: 2.5rem !important;

        font-weight: 400 !important;

        color: var(--wp--preset--color--encre, #062B3A) !important;
        flex-basis: auto;
        max-width: 34rem;
        text-align: justify;
        font-size: 0.95rem;
    }

    .soliha-chapo--entete strong {
        color: inherit;
    }

    .soliha-ecran--accueil h1 {
        font-size: clamp(2.2rem, 3.2vw, 3.2rem) !important;

        max-width: none;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil,
.soliha-accueil[data-ecran="situation"] .soliha-situation,
    .soliha-situation .soliha-sujet.est-actif,
.soliha-thematique .soliha-contenu__volet--particuliers .soliha-contenu__intro {
        max-width: none;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-portes {
        display: flex;
        flex-direction: row;
        align-items: stretch !important;
        gap: 2.5rem;
        max-width: 70rem !important;
        margin-inline: auto !important;

        margin-top: 5.5rem !important;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-porte {
        flex: 1 1 0 !important;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        padding: 2.25rem 1.75rem !important;
        position: relative;
        min-height: 17.5rem;
    }

    .soliha-ecran--accueil .soliha-guide-max,
    .soliha-solutions .soliha-guide-max {
        justify-content: center;
        padding-inline: 0;
    }

    .soliha-ecran--accueil .soliha-guide-max__avatar,
    .soliha-solutions .soliha-guide-max__avatar {
        max-width: none !important;
        width: clamp(15rem, 21vw, 23rem);
    }

    .soliha-ecran--accueil .soliha-guide-max__bulle::before,
    .soliha-solutions .soliha-guide-max__bulle::before {

        border: none;
    }

    .soliha-solutions h1 {
        font-size: clamp(1.5rem, 2.15vw, 2.1rem) !important;

        max-width: 54rem;
        margin-inline: auto;
        line-height: 1.25;
    }

    .soliha-accueil[data-ecran="solutions"] .soliha-tuiles {
        grid-template-columns: repeat(4, 1fr);
        grid-auto-rows: minmax(0, 1fr);
        gap: 1.5rem;
        max-width: 76rem;
        margin-inline: auto !important;
        margin-top: clamp(1.5rem, 6.5vh, 5.5rem);
        margin-bottom: clamp(0.5rem, 2vh, 2rem);
    }

    .soliha-situation .soliha-sujet__intro {
        margin-inline: auto;
        margin-block-end: 0.5rem;
    }

    .soliha-accueil[data-ecran="contact"] .soliha-contact {
        grid-template-columns: minmax(18rem, 34%) minmax(0, 66%);
        column-gap: 0;
        max-width: 78rem;
        margin-inline: auto;
        margin-block: 2rem 3rem;
        padding: 0;
        border-radius: 1.5rem;

        background: linear-gradient(
            to right,
            var(--wp--preset--color--bleu-75, #4089A7) 0 34%,
            var(--wp--preset--color--beige-25, #F5F4F0) 34% 100%
        );
        box-shadow:
            0 18px 44px rgba(6, 43, 58, 0.28),
            0 6px 14px rgba(6, 43, 58, 0.16);
    }

    .soliha-accueil[data-ecran="contact"] .soliha-contact > h1 {
        color: #fff !important;
        font-size: clamp(2.4rem, 3.4vw, 3.4rem) !important;
        line-height: 1.05;
        text-align: left !important;
        -webkit-text-stroke: 0 !important;
        text-shadow: none;
        padding: 2.75rem 2rem 0 2.5rem;
        margin: 0 !important;
    }

    .soliha-accueil[data-ecran="contact"] .soliha-contact__intro {
        color: #fff;
        text-align: left;
        font-size: 1rem;
        padding: 1.25rem 2rem 0 2.5rem;
        margin: 0 !important;
        max-width: none;
    }

    .soliha-accueil[data-ecran="contact"] .soliha-contact__form {
        background: transparent;
        border: 0;
        box-shadow: none !important;
        backdrop-filter: none;
        -webkit-backdrop-filter: none !important;
        border-radius: 0;
        padding: 2.5rem 2.75rem;
        margin: 0 !important;
        position: static;
        max-width: 44rem;
        margin-inline: auto !important;
    }

    .soliha-contact__groupe--identite {
        column-gap: 1.25rem;
    }

    .soliha-contact__groupe--projet {
        grid-template-columns: 1fr 1fr;
        column-gap: 1.25rem;
    }

    .soliha-contact__groupe--projet .soliha-contact__sous-titre,
    .soliha-contact__groupe--projet .soliha-contact__aide,
    .soliha-contact__groupe--message .soliha-contact__champ {
        grid-column: 1 / -1;
    }

    .soliha-contact__actions {
        text-align: left;
    }

    .soliha-accueil[data-ecran="contact"] .soliha-contact__arrivee {
        left: 0;
        top: clamp(8.75rem, 10.5vw, 13.5rem);
        bottom: 0;
        right: auto;
        width: 34%;
        height: clamp(15rem, 21vw, 23rem);
        background-position: center center;
        margin-block: auto;
        margin-inline: 0;
    }

    .soliha-accueil[data-ecran="thematique"] .soliha-thematique {
        margin-inline: auto;
    }

    .soliha-thematique .soliha-contenu.est-actif,
    .soliha-thematique .soliha-contenu__volet.est-actif {
        max-width: none;
    }

    .soliha-thematique .soliha-contenu__intro {
        font-size: clamp(1.15rem, 1.25vw, 1.35rem);
        line-height: 1.5;
    }

    .soliha-contenu__grille,
    .soliha-contenu__grille--territoires {
        display: grid;
        grid-template-columns: minmax(0, 1.85fr) minmax(0, 1fr);
        gap: 2rem;
        max-width: none;
    }

    .soliha-contenu__grille--territoires .soliha-interventions,
    .soliha-contenu__volet--particuliers .soliha-contenu__grille > .soliha-carte--mission {
        grid-column: 1;
        order: 0;
    }

    .soliha-contenu__grille--territoires .soliha-max-actions,
    .soliha-contenu__volet--particuliers .soliha-contenu__grille > .soliha-max-actions {
        grid-column: 2;
        order: 0;
    }

    .soliha-contenu__grille--territoires .soliha-carte--carte,
    .soliha-contenu__volet--particuliers .soliha-contenu__grille > .soliha-carte--carte {
        grid-column: 2;
    }

    .soliha-contenu__volet--particuliers .soliha-contenu__grille > .soliha-carte--media {
        grid-column: 1 !important;
        order: 1 !important;
    }

    .soliha-actualites {
        grid-column: 1 / -1;
        order: 5;
    }

    .soliha-actualites__plus {
        margin-top: 1.75rem !important;
    }

    .soliha-actualites__piste {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 1.5rem !important;
    }

    .soliha-liste__titre {
        font-size: clamp(2rem, 3vw, 3rem) !important;
        text-align: center !important;
        margin-inline: auto !important;
    }

    .soliha-liste__titre::after {
        margin-inline: auto;
        width: 6rem;
    }

    .soliha-liste__grille {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 1.75rem;
        align-items: stretch;
    }

    .soliha-parcours {
        position: fixed;
        left: 1.5rem;
        bottom: 0;
        width: 3.5rem;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        margin: 0 !important;
        z-index: 40;
        pointer-events: none;
    }

    .soliha-parcours__piste {
        width: 100%;
        height: min(60vh, 34rem);
    }

    .soliha-parcours__piste::before {
        top: 0;
        bottom: 0;
        left: 50%;
        right: auto;
        width: 2px;
        height: auto;
        transform: translateX(-50%);
        background: repeating-linear-gradient(
            to bottom,
            rgba(255, 255, 255, 0.9) 0 7px,
            transparent 7px 15px
        );
    }

    .soliha-parcours__etape {
        left: 50%;
        top: calc(
            var(--soliha-demi-jalon)
            + var(--i) * (100% - 2 * var(--soliha-demi-jalon)) / 4
        );
        width: 1.6rem;
        height: 1.6rem;
    }

    .soliha-parcours__drapeau {
        left: 50%;
        top: calc(
            var(--soliha-demi-jalon)
            + 4 * (100% - 2 * var(--soliha-demi-jalon)) / 4
        );
        width: 2.1rem;
        height: 2.1rem;
    }

    .soliha-parcours__cycliste {
        left: 50%;
        top: calc(
            var(--soliha-demi-jalon)
            + var(--soliha-etape) * (100% - 2 * var(--soliha-demi-jalon)) / 4
        );
        width: 2.6rem;
        height: 2.6rem;
        transition: top 0.55s ease !important;
        animation: soliha-cycliste-flotte-rail 2s ease-in-out infinite !important;
    }

    .soliha-retour {
        left: 5.5rem;
    }

    .soliha-retour__bouton,
    .soliha-retour--liste .soliha-retour__bouton {
        background: rgba(255, 255, 255, 0.95);
        border-radius: 2rem;
        padding: 0.5rem 1.1rem;
        box-shadow:
            0 6px 16px rgba(6, 43, 58, 0.18),
            0 2px 5px rgba(6, 43, 58, 0.1);
        font-size: 0.95rem;
    }

}

@keyframes soliha-cycliste-flotte-rail {
    0%, 100% { transform: translate(-50%, -50%) translateY(0); }
    50%      { transform: translate(-50%, -50%) translateY(-0.12rem); }
}

@media (min-width: 1100px) {

    .soliha-ecran--accueil .soliha-guide-max__bulle,
    .soliha-solutions .soliha-guide-max__bulle {
        animation-name: soliha-bulle-apparait-centree !important;
        background: rgba(250, 249, 246, 0.94);
        border: 1.5px solid #000;
        font-weight: 400;
        box-shadow: 0 4px 12px rgba(6, 43, 58, 0.16) !important;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-porte__action .wp-block-button__link {
        position: static;
        padding-inline: 1.75rem;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-porte .soliha-porte__picto {
        position: absolute;
        left: 50%;
        top: 50%;
        right: auto;

        height: 4.5rem !important;
        width: 4.5rem;
        max-height: none !important;
        max-width: none;

        opacity: 1;
    }

}

@keyframes soliha-bulle-apparait-centree {
    from { opacity: 0; transform: translateX(calc(-50% + 2.05rem)) translateY(0.375rem); }
    to   { opacity: 1; transform: translateX(calc(-50% + 2.05rem)) translateY(0); }
}

@media (min-width: 1100px) {

    :root {
        --soliha-rallonge-scene: 0rem;

        --soliha-max-slot: clamp(13rem, 27vh, 18.5rem);
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-porte__action .wp-block-button__link,
    .soliha-accueil[data-ecran="accueil"] .soliha-porte__action .wp-block-button__link:hover,
    .soliha-accueil[data-ecran="accueil"] .soliha-porte__action .wp-block-button__link:focus-visible,
    .soliha-accueil[data-ecran="accueil"] .soliha-porte__action .wp-block-button__link:active {
        transform: none !important;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-porte__action .wp-block-button__link:hover,
    .soliha-accueil[data-ecran="accueil"] .soliha-porte__action .wp-block-button__link:focus-visible {
        background: #fff !important;
        box-shadow:
            0 10px 24px rgba(6, 43, 58, 0.3),
            0 1px 0 rgba(255, 255, 255, 0.9) inset !important;
    }

    .soliha-accueil[data-ecran="accueil"] .soliha-porte__action .wp-block-button__link:active {
        box-shadow: 0 3px 8px rgba(6, 43, 58, 0.32) inset !important;
    }

    .soliha-ecran--accueil .soliha-guide-max__bulle::before,
    .soliha-solutions .soliha-guide-max__bulle::before {
        left: auto;
        margin: 0;
        transform: translateY(-50%) !important;
        border-width: 0.82rem;
        border-color: transparent;
        border-left: 0.82rem solid #000;
        border-right: 0;
        z-index: 3;
        background: none;
        width: 0;
        height: 0;
        right: auto;
    }

    .soliha-ecran--accueil .soliha-guide-max__bulle::after,
    .soliha-solutions .soliha-guide-max__bulle::after {
        display: block;
        right: -0.54rem;
        left: auto;
        width: 0;
        height: 0;
        transform: translateY(-50%) !important;
        border-width: 0.54rem;
        border-right: 0;
        filter: drop-shadow(1px 0 0 #000) drop-shadow(0 1px 0 #000) drop-shadow(0 -1px 0 #000);
        z-index: 4;
    }
}

.soliha-porte--principale .soliha-porte__action .wp-block-button__link,
.soliha-porte--directe .soliha-porte__action .wp-block-button__link {
    color: var(--wp--preset--color--encre, #062B3A) !important;
}

@media (min-width: 1100px) {

    .soliha-solutions .soliha-tuile .wp-block-button__link {
        padding: clamp(0.65rem, 1.7vh, 1.75rem) 1rem;
        gap: clamp(0.35rem, 1.1vh, 1.1rem);
        font-size: clamp(0.9rem, 1.05vw, 1.05rem);
        overflow: hidden;
    }

    .soliha-solutions .soliha-tuile .wp-block-button__link::before {
        width: clamp(3.2rem, 8vh, 6.1rem);
        height: clamp(3.2rem, 8vh, 6.1rem);
    }

    .soliha-ecran--accueil .soliha-guide-max__bulle,
    .soliha-solutions .soliha-guide-max__bulle {
        font-size: 0.92rem !important;
    }

    .soliha-contenu__grille--territoires .soliha-territoires__aside {
        display: flex;
        flex-direction: column;
        grid-column: 2;
        grid-row: 1;
        margin-top: 4rem;

        --soliha-ecart-cards: 3.5rem;
        gap: var(--soliha-ecart-cards);
        align-self: stretch;
    }

    .soliha-thematique .soliha-contenu__volet.est-actif > .soliha-actualites {
        width: 100%;
        max-width: none;
        margin-inline: 0;
        margin-top: 2rem !important;

        box-sizing: border-box;
    }

    .soliha-scene:has(.soliha-accueil[data-ecran])::before,
    .soliha-scene:has(.soliha-accueil[data-ecran])::after {
        position: fixed;
        bottom: auto;
        width: 100%;
        height: 100lvh !important;
    }

    .soliha-accueil[data-ecran="thematique"] .soliha-ecran.soliha-thematique {
        max-width: 74rem;
        padding-inline: 2rem;
    }

    .soliha-thematique .soliha-contenu__volet.est-actif > h1,
    .soliha-thematique .soliha-contenu__intro {
        max-width: 52rem;
        margin-inline: auto;
    }

    .soliha-article h1.wp-block-post-title {

        font-size: clamp(2.6rem, 2.9vw, 2.9rem) !important;
    }

    .soliha-liste {
        max-width: 78rem;
        padding-inline: 2rem;
    }

    .soliha-liste .wp-block-query,
    .soliha-liste__requete,
    .soliha-liste .wp-block-post-template,
    .soliha-liste__grille {
        width: 100% !important;
        max-width: none;
        margin-inline: 0;
    }

}

.soliha-anime .soliha-carte,
.soliha-anime .soliha-max-actions,
.soliha-anime .soliha-interventions,
.soliha-anime .soliha-actualites,
.soliha-anime .soliha-actualite,
.soliha-anime .soliha-liste__carte,
.soliha-anime .soliha-intervention {
    opacity: 0;
    transform: translateY(0.55rem);
    transition:
        opacity 0.38s ease-out var(--soliha-retard, 0ms),
        transform 0.38s ease-out var(--soliha-retard, 0ms);
}

.soliha-anime .soliha-carte.est-visible,
.soliha-anime .soliha-max-actions.est-visible,
.soliha-anime .soliha-interventions.est-visible,
.soliha-anime .soliha-actualites.est-visible,
.soliha-anime .soliha-actualite.est-visible,
.soliha-anime .soliha-liste__carte.est-visible,
.soliha-anime .soliha-intervention.est-visible {
    opacity: 1;

    transform: none;
}

.soliha-actualite,
.soliha-liste__carte,
.soliha-carte__carte {
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.soliha-actualite:hover,
.soliha-actualite:focus-within,
.soliha-liste__carte:hover,
.soliha-liste__carte:focus-within {
    transform: translateY(-3px);
    box-shadow:
        0 16px 34px rgba(6, 43, 58, 0.28),
        0 5px 12px rgba(6, 43, 58, 0.18);
}

strong,
b,
.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro--liste p {
    font-weight: 700;
}

.soliha-max-actions__bouton,
.soliha-carte__carte-appel {
    transition:
        transform 0.18s ease,
        box-shadow 0.18s ease,
        background-color 0.18s ease,
        color 0.18s ease;
}

.soliha-max-actions__bouton:hover,
.soliha-max-actions__bouton:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(6, 43, 58, 0.26);
}

.soliha-carte__carte--lien:hover .soliha-carte__carte-appel,
.soliha-carte__carte--lien:focus-visible .soliha-carte__carte-appel {
    transform: translateY(-2px);
    background: var(--wp--preset--color--bleu);
    color: #fff;
    box-shadow: 0 10px 20px rgba(6, 43, 58, 0.28);
}

.soliha-max-actions__bouton:active,
.soliha-carte__carte--lien:active .soliha-carte__carte-appel {
    transform: translateY(0) scale(0.97);
    box-shadow: 0 2px 6px rgba(6, 43, 58, 0.2);
}

.soliha-intervention:hover > summary {
    background-color: rgba(6, 43, 58, 0.035);
}

@media (prefers-reduced-motion: reduce) {
    .soliha-anime .soliha-carte,
    .soliha-anime .soliha-max-actions,
    .soliha-anime .soliha-actualite,
    .soliha-anime .soliha-liste__carte,
    .soliha-anime .soliha-intervention {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }

    .soliha-actualite,
    .soliha-liste__carte,
    .soliha-carte__carte,
    .soliha-max-actions__bouton,
    .soliha-carte__carte-appel,
    .soliha-intervention,
    .soliha-intervention > summary,
.soliha-erreur__bouton {
        transition: none !important;
    }

    .soliha-max-actions__bouton:hover,
    .soliha-max-actions__bouton:active,
    .soliha-carte__carte--lien:hover .soliha-carte__carte-appel,
    .soliha-carte__carte--lien:active .soliha-carte__carte-appel {
        transform: none !important;
    }

    .soliha-actualite:hover,
    .soliha-liste__carte:hover {
        transform: none !important;
    }
}

@media (min-width: 1100px) {

    .soliha-contenu__grille--territoires {
        grid-template-columns: minmax(0, 2.15fr) minmax(0, 1fr);

        align-items: stretch;
    }

    .soliha-contenu__grille--territoires .soliha-interventions {
        background: transparent;
        border: 0;
        box-shadow: none;
        padding: 0;
    }

    .soliha-contenu__grille--territoires .soliha-interventions__titre {
        font-size: 2rem;
        margin: 0 0 1.1rem;
        padding-bottom: 0;

        text-shadow:
            0 1px 0 rgba(255, 255, 255, 0.85),
            0 0 6px rgba(255, 255, 255, 0.65);
    }

    .soliha-contenu__grille--territoires .soliha-interventions__titre::after {
        width: 4rem;
        height: 4px;
        margin-top: 0.2rem;
    }

    .soliha-contenu__grille--territoires .soliha-intervention {
        border-radius: 0.9rem;
        margin: 0 0 1.05rem;
        box-shadow:
            0 6px 18px rgba(6, 43, 58, 0.13),
            0 1px 3px rgba(6, 43, 58, 0.08);
    }

    .soliha-contenu__grille--territoires .soliha-intervention:last-child {
        margin-bottom: 0;
    }

    .soliha-contenu__grille--territoires .soliha-intervention > summary {
        grid-template-columns: 13rem 1fr;
        gap: 1.5rem;
        padding: 0 1.6rem 0 0 !important;
        align-items: stretch;
    }

    .soliha-contenu__grille--territoires .soliha-intervention__image {
        width: 13rem !important;
        height: auto !important;
        min-height: 8.5rem !important;
        align-self: stretch;
        border-radius: 0.85rem 0 0 0.85rem !important;
    }

    .soliha-contenu__grille--territoires .soliha-intervention__resume {
        align-self: center;
        padding: 1.15rem 0;
    }

    .soliha-contenu__grille--territoires .soliha-intervention:nth-of-type(even) > summary {
        grid-template-columns: 1fr 13rem;
        padding: 0 0 0 1.6rem !important;
    }

    .soliha-contenu__grille--territoires .soliha-intervention:nth-of-type(even) .soliha-intervention__image {
        grid-column: 2;
        grid-row: 1;
        border-radius: 0 0.85rem 0.85rem 0 !important;
    }

    .soliha-contenu__grille--territoires .soliha-intervention:nth-of-type(even) .soliha-intervention__resume {
        grid-column: 1;
        grid-row: 1;
    }

    .soliha-contenu__grille--territoires .soliha-intervention[open] > summary {
        display: block !important;
        padding: 1.15rem 1.6rem !important;
    }

    .soliha-contenu__grille--territoires .soliha-intervention[open] .soliha-intervention__image {
        float: left !important;
        width: 13rem !important;
        height: 10.5rem !important;
        min-height: 0 !important;
        margin: 0 1.5rem 0.8rem 0 !important;
        border-radius: 0.75rem !important;
    }

    .soliha-contenu__grille--territoires .soliha-intervention:nth-of-type(even)[open] .soliha-intervention__image {
        float: right !important;
        margin: 0 0 0.8rem 1.5rem !important;
    }

    .soliha-contenu__grille--territoires .soliha-intervention__titre {
        font-size: 1.3rem;
        margin-bottom: 0.5rem;
    }

    .soliha-contenu__grille--territoires .soliha-intervention__texte {
        font-size: 1rem;
        line-height: 1.7;
        -webkit-line-clamp: 2 !important;
    }

    .soliha-contenu__grille--territoires .soliha-mission-territoires__action {
        margin-top: 0.85rem;
        font-size: 1rem;
    }

    .soliha-contenu__grille--territoires .soliha-mission-territoires__action::after {
        content: " +";
        font-weight: 700;
    }

    .soliha-contenu__grille--territoires .soliha-intervention[open] .soliha-mission-territoires__action::after {
        content: " \2212";
    }

    .soliha-contenu__grille--territoires .soliha-intervention:hover .soliha-mission-territoires__action,
    .soliha-contenu__grille--territoires .soliha-intervention > summary:focus-visible .soliha-mission-territoires__action {
        text-decoration: underline;
        text-underline-offset: 0.2em;
    }

    .soliha-contenu__grille--territoires .soliha-max-actions--discret {
        padding: 1.15rem 1.15rem 1.35rem;
        display: flex;
        flex-direction: column;
        justify-content: center;
        z-index: 2;
    }

    .soliha-contenu__grille--territoires .soliha-max-actions--discret .soliha-max-actions__surtitre,
.soliha-contenu__volet--particuliers .soliha-max-actions__surtitre {
        font-size: 0.88rem;
        letter-spacing: 0.09em;
        margin-bottom: 0.55rem;
    }

    .soliha-contenu__grille--territoires .soliha-max-actions--discret .soliha-max-actions__titre,
.soliha-contenu__volet--particuliers .soliha-max-actions__titre {
        font-size: 1.55rem;
        line-height: 1.2;
        margin-bottom: 0.7rem;
    }

    .soliha-contenu__grille--territoires .soliha-max-actions--discret .soliha-max-actions__bouton,
.soliha-contenu__volet--particuliers .soliha-max-actions__bouton {
        font-size: 1.08rem;
        padding: 0.85rem 1.6rem;
    }

    .soliha-contenu__grille--territoires .soliha-max-actions__contenu,
.soliha-contenu__volet--particuliers .soliha-max-actions__contenu {
        padding-right: 0 !important;
    }

    .soliha-contenu__grille--territoires .soliha-max-actions__boutons,
.soliha-contenu__volet--particuliers .soliha-max-actions__boutons {
        padding-right: 5.5rem;
    }

    .soliha-contenu__grille--territoires .soliha-max-actions__tandem {
        width: 14.5rem !important;
        right: -1rem !important;
        bottom: calc(-2 * var(--soliha-ecart-cards, 3.5rem)) !important;
    }

    .soliha-contenu__grille--territoires .soliha-territoires__aside > .soliha-max-actions,
    .soliha-contenu__grille--territoires .soliha-territoires__aside > .soliha-carte {
        min-height: 0;
    }

    .soliha-contenu__grille--territoires .soliha-carte--carte {
        display: flex;
        flex-direction: column;
        position: relative;
        z-index: 1;
        padding: 3.8rem 1.15rem 1.15rem !important;
        order: 2;
        overflow: hidden;
    }

    .soliha-contenu__grille--territoires .soliha-carte--carte .soliha-carte__carte--lien,
.soliha-contenu__volet--particuliers .soliha-carte--carte .soliha-carte__carte--lien {
        flex: 1 1 auto;
        display: flex;
        flex-direction: column;
    }

    .soliha-contenu__grille--territoires .soliha-carte__carte-image {
        flex: 1 1 auto;
        min-height: 0;
        aspect-ratio: auto !important;
    }

    .soliha-contenu__grille--territoires .soliha-max-actions__tandem::before,
    .soliha-contenu__grille--territoires .soliha-max-actions__tandem::after,
.soliha-contenu__volet--particuliers .soliha-max-actions__tandem::before,
    .soliha-contenu__volet--particuliers .soliha-max-actions__tandem::after {

        bottom: -0.35rem;
        width: 4.5rem;
        height: 1.05rem;

        background: radial-gradient(
            ellipse at center,
            rgba(35, 45, 55, 0.42) 0%,
            rgba(35, 45, 55, 0.22) 48%,
            rgba(35, 45, 55, 0) 74%
        );
        filter: blur(2px);
    }

    .soliha-contenu__grille--territoires .soliha-max-actions__tandem::before,
.soliha-contenu__volet--particuliers .soliha-max-actions__tandem::before {
        left: 13.9%;
    }

    .soliha-contenu__grille--territoires .soliha-max-actions__tandem::after,
.soliha-contenu__volet--particuliers .soliha-max-actions__tandem::after {
        left: 86.6%;
    }

    .soliha-contenu__grille--territoires .soliha-carte--carte .soliha-carte__titre {
        font-size: 1.2rem;
        margin-bottom: 0.8rem;
    }

    .soliha-contenu__grille--territoires .soliha-carte__carte-appel,
.soliha-contenu__volet--particuliers .soliha-carte__carte-appel {
        font-size: 0.92rem;
        padding: 0.45rem 1rem !important;
        left: 0.7rem !important;
        bottom: 0.7rem !important;
    }
}

.soliha-thematique .soliha-carte,
.soliha-thematique .soliha-intervention,
.soliha-actualite,
.soliha-liste__carte {
    border: 1px solid var(--wp--preset--color--encre, #062B3A);
}

@media (min-width: 1100px) {

    .soliha-thematique .soliha-actualites {

        background: rgba(255, 255, 255, 0.92);
        border-radius: 1.1rem !important;
        box-shadow:
            0 8px 20px rgba(6, 43, 58, 0.16),
            0 2px 6px rgba(6, 43, 58, 0.1);
        padding: 1.5rem 1.75rem 1.75rem !important;
    }

    .soliha-thematique .soliha-actualites__titre {
        font-size: 2rem;

        text-shadow: none;
        margin: 0 0 1.1rem;
        padding-bottom: 0 !important;
    }

    .soliha-thematique .soliha-actualites__titre::after {
        width: 4rem !important;
        height: 4px !important;
        margin-top: 0.2rem !important;
    }

    .soliha-liste__grille > .wp-block-post,
    .soliha-liste__grille > li {
        display: flex;
        height: 100% !important;
    }

    .soliha-liste__carte {
        display: flex;
        flex-direction: column;
        width: 100% !important;
    }

    .soliha-liste__corps {
        flex: 1 1 auto !important;
    }

    .soliha-liste__date {
        margin-top: auto;
    }
}

.soliha-anime .soliha-interventions .soliha-intervention,
.soliha-anime .soliha-actualites .soliha-actualite {
    opacity: 1;
    transform: none;
    transition: none;
}

@media (min-width: 1100px) {
    .soliha-anime .soliha-interventions,
    .soliha-anime .soliha-actualites {
        opacity: 1;
        transform: none;
        transition: none;
    }

    .soliha-anime .soliha-interventions .soliha-intervention:not(.est-visible),
    .soliha-anime .soliha-actualites .soliha-actualite:not(.est-visible) {
        opacity: 0;
        transform: translateY(0.55rem);
        transition:
            opacity 0.38s ease-out var(--soliha-retard, 0ms),
            transform 0.38s ease-out var(--soliha-retard, 0ms);
    }
}

html.soliha-js .soliha-accueil:not([data-ecran]) > .soliha-ecran.soliha-solutions,
html.soliha-js .soliha-accueil:not([data-ecran]) > .soliha-ecran.soliha-situation,
html.soliha-js .soliha-accueil:not([data-ecran]) > .soliha-ecran.soliha-thematique,
html.soliha-js .soliha-accueil:not([data-ecran]) > .soliha-ecran.soliha-contact {
    display: none !important;
}

html.soliha-js body:has(.soliha-accueil:not([data-ecran])) {
    background-color: #96CCF7 !important;
}

html.soliha-js .soliha-scene:has(.soliha-accueil) {
    background-color: #DCCDB2;
    background-image: linear-gradient(
        to bottom,
        #96CCF7 0%,
        #A9C3D8 45%,
        #C9C3B4 72%,
        #DCCDB2 100%
    );
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;
}

@media (min-width: 1100px) {

    .soliha-contenu__volet--particuliers .soliha-contenu__grille {
        align-items: stretch;
    }

    .soliha-contenu__volet--particuliers .soliha-contenu__grille > .soliha-carte,
    .soliha-contenu__volet--particuliers .soliha-contenu__grille > .soliha-max-actions {
        height: 100% !important;
        box-sizing: border-box !important;
    }

    .soliha-contenu__volet--particuliers .soliha-media__declencheur {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .soliha-contenu__volet--particuliers .soliha-media__apercu {
        width: 74%;
        height: auto;
        min-height: 0;
    }

    .soliha-contenu__volet--particuliers .soliha-media__libelle,
    .soliha-contenu__volet--particuliers .soliha-media__note {
        align-self: flex-start;
    }

    .soliha-contenu__volet--particuliers .soliha-carte--carte {
        display: flex;
        flex-direction: column;
        padding: 3.8rem 1.15rem 1.15rem !important;
        position: relative;
        z-index: 1;
    }

    .soliha-contenu__volet--particuliers .soliha-carte__carte-image {
        flex: 1 1 auto;
        aspect-ratio: auto !important;
        min-height: 12rem;
    }

    .soliha-contenu__volet--particuliers .soliha-max-actions {
        z-index: 2;
        display: flex;
        flex-direction: column;
        justify-content: center;
        background: color-mix(
            in srgb,
            var(--wp--preset--color--blanc, #FFFFFF) 92%,
            transparent
        );
    }

    .soliha-contenu__volet--particuliers .soliha-max-actions__tandem {
        width: 14.5rem !important;
        right: -1rem !important;
        bottom: -4.5rem !important;
    }

    .soliha-thematique .soliha-carte {
        background: color-mix(
            in srgb,
            var(--wp--preset--color--blanc, #FFFFFF) 92%,
            transparent
        );
    }

    .soliha-contenu__grille--territoires .soliha-intervention,
    .soliha-contenu__grille--territoires .soliha-max-actions--discret,
    .soliha-thematique .soliha-actualite {
        background: color-mix(
            in srgb,
            var(--wp--preset--color--beige-10, #FAF9F6) 92%,
            transparent
        ) !important;
    }

    .soliha-contenu__grille--territoires .soliha-intervention[open] {
        background: var(--wp--preset--color--beige-10, #FAF9F6) !important;
    }

    .soliha-anime .soliha-contenu__grille--territoires .soliha-intervention,
    .soliha-contenu__grille--territoires .soliha-intervention {
        transition: background-color 0.22s ease;
    }

}

.soliha-erreur-page {
    --wp--preset--color--bleu: #00618A;
    --wp--preset--color--encre: #062B3A;
    --wp--preset--color--orange: #E89522;
    --wp--preset--color--gris: #4E6875;
    --wp--preset--color--beige-10: #FAF9F6;
    --wp--preset--color--blanc: #FFFFFF;
    margin: 0;
    min-height: 100svh;
    background-color: #DCCDB2;
}

.soliha-scene--erreur {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100svh;
    box-sizing: border-box;
    background-color: var(--wp--preset--color--bleu, #00618A);
    overflow: hidden;
}

.soliha-scene--erreur::before {
    content: "";
    position: absolute;

    inset: -3rem;
    z-index: 0;
    background-image: url('assets/illustrations/fond-soliha-mobile.webp');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;
    filter: blur(14px) saturate(1.1);
    pointer-events: none;
}

.soliha-scene--erreur::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background: linear-gradient(
        180deg,
        color-mix(in srgb, var(--wp--preset--color--bleu, #00618A) 62%, transparent) 0%,
        color-mix(in srgb, var(--wp--preset--color--encre, #062B3A) 72%, transparent) 100%
    );
    pointer-events: none;
}

@media (min-aspect-ratio: 1/1) {
    .soliha-scene--erreur::before {
        background-image: url('assets/illustrations/fond-soliha-tablette.webp');
    }
}

@media (min-aspect-ratio: 77/50) {
    .soliha-scene--erreur::before {
        background-image: url('assets/illustrations/fond-soliha-desktop.webp');
    }
}

.soliha-erreur {
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: clamp(1rem, 5vw, 3rem);
    box-sizing: border-box;
}

.soliha-erreur__panneau {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: clamp(1.25rem, 3.5vw, 2.25rem);
    width: min(100%, 40rem);
    padding: 0;
    box-sizing: border-box;
    text-align: center;
}

.soliha-erreur__visuel {
    width: min(100%, 32rem);
    aspect-ratio: 4 / 3;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;

    border-radius: 1rem;
    box-shadow: 0 18px 44px rgba(6, 43, 58, 0.35);
}

.soliha-erreur__visuel--404      { background-image: url('assets/illustrations/erreur-404-carte-envers.webp'); }
.soliha-erreur__visuel--acces    { background-image: url('assets/illustrations/erreur-acces-mur-v2.webp'); }
.soliha-erreur__visuel--serveur  { background-image: url('assets/illustrations/erreur-serveur-crevaison.webp'); }
.soliha-erreur__visuel--hors-ligne { background-image: url('assets/illustrations/erreur-hors-ligne-dodo.webp'); }

.soliha-erreur__code {
    margin: 0 0 0.4rem;
    font-size: 0.88rem;
    font-weight: 700;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--wp--preset--color--orange, #E89522);
}

.soliha-erreur__titre {
    margin: 0 0 0.75rem;
    font-size: clamp(1.7rem, 5vw, 2.6rem);
    line-height: 1.2;
    font-weight: 700;
    color: #fff;
}

.soliha-erreur__message {
    margin: 0 0 1.75rem;
    font-size: clamp(1.05rem, 2.5vw, 1.2rem);
    line-height: 1.55;

    color: rgba(255, 255, 255, 0.92);
}

.soliha-erreur__actions {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    justify-content: center;
}

.soliha-erreur__bouton {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 2.75rem;
    padding: 0.7rem 1.5rem;
    border-radius: 2rem;
    border: 2px solid var(--wp--preset--color--orange, #E89522);
    background: var(--wp--preset--color--bleu, #00618A);
    color: #fff;
    font-size: 1.05rem;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.soliha-erreur__bouton:hover,
.soliha-erreur__bouton:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(6, 43, 58, 0.26);
}

.soliha-erreur__bouton:focus-visible {
    outline: 3px solid var(--wp--preset--color--encre, #062B3A);
    outline-offset: 3px;
}

.soliha-erreur__bouton:active {
    transform: translateY(0) scale(0.97);
}

.soliha-retour--simple {
    position: absolute;
    left: var(--soliha-gouttiere, clamp(1rem, 5vw, 4rem));
    height: clamp(4.5rem, 12vw, 7rem);
    z-index: 100;
}

.soliha-erreur-message {
    position: fixed;
    inset: 0;
    z-index: 9999;
}

@media (prefers-reduced-motion: reduce) {
    .soliha-erreur__bouton:hover,
    .soliha-erreur__bouton:focus-visible,
    .soliha-erreur__bouton:active {
        transform: none !important;
    }
}

.soliha-hors-ligne {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;

    background: rgba(11, 42, 58, 0.94);
    overflow-y: auto;
    overscroll-behavior: contain;
}

.soliha-hors-ligne[hidden] {
    display: none;
}

.soliha-hors-ligne__carte {
    max-width: 26rem;
    margin: auto;
}

@media (max-width: 1099px) {

    .soliha-ecran--accueil > h1.wp-block-heading {
        -webkit-text-stroke: 3px #fff;
        paint-order: stroke fill;
        text-shadow: none;
    }

    .soliha-accueil > .soliha-parcours {
        margin-bottom: 8px;
    }

    .soliha-ecran--accueil > h1.wp-block-heading + .soliha-portes {
        margin-top: 30px !important;
    }
}

@media (min-width: 768px) and (max-width: 1099px) {
    .soliha-accueil > .soliha-parcours {
        margin-bottom: 6px;
    }

    .soliha-ecran--accueil > h1.wp-block-heading + .soliha-portes {
        margin-top: 10px !important;
    }
}

.soliha-media__apercu--renover-le-logement {
    background-image: url('assets/illustrations/videos/renover-le-logement.jpg');
}
.soliha-media__apercu--adapter-le-logement {
    background-image: url('assets/illustrations/videos/adapter-le-logement.jpg');
}
.soliha-media__apercu--securiser-la-location-solidaire {
    background-image: url('assets/illustrations/videos/securiser-la-location-solidaire.jpg');
}
.soliha-media__apercu--accompagner-l-acces-au-logement {
    background-image: url('assets/illustrations/videos/accompagner-l-acces-au-logement.jpg');
}
.soliha-media__apercu--lutter-contre-le-mal-logement {
    background-image: url('assets/illustrations/videos/lutter-contre-le-mal-logement.jpg');
}
.soliha-media__apercu--habiter-en-pleine-sante {
    background-image: url('assets/illustrations/videos/habiter-en-pleine-sante.jpg');
}
.soliha-media__apercu--bien-habiter-son-territoire {
    background-image: url('assets/illustrations/videos/bien-habiter-son-territoire.jpg');
}
.soliha-media__apercu--developper-un-habitat-responsable {
    background-image: url('assets/illustrations/videos/developper-un-habitat-responsable.jpg');
}

.soliha-media__apercu::after {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 50%;
    background: rgba(6, 43, 58, 0.78);

    clip-path: circle(50%);
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.35);
}

.soliha-media__apercu::before {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    z-index: 1;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0.62rem 0 0.62rem 1.05rem;
    border-color: transparent transparent transparent #fff;

    transform: translateX(0.16rem);
}

.soliha-media__declencheur:hover .soliha-media__apercu::after,
.soliha-media__declencheur:focus-visible .soliha-media__apercu::after {
    background: var(--wp--preset--color--bleu, #00618A);
}

@media (min-width: 1100px) {

    .soliha-ecran--accueil .soliha-guide-max__bulle,
    .soliha-solutions .soliha-guide-max__bulle {
        inset: auto;
        transform: none !important;
        width: auto;
        max-width: min(22rem, 38%) !important;
        margin: 0 0 1.25rem 0 !important;
        font-style: normal;
        padding: 0.75rem 1.1rem !important;
    }

}

.soliha-carte--mission > summary {
    cursor: pointer;
    list-style: none;
    display: block;
}

.soliha-carte--mission > summary::-webkit-details-marker {
    display: none;
}

.soliha-carte--mission .soliha-carte__titre {
    display: block;
}

.soliha-carte__para {
    display: block;
}

.soliha-carte__para + .soliha-carte__para {
    margin-top: 0.6rem;
}

@media (max-width: 1099px), (pointer: coarse) {
    .soliha-carte--mission:not([open]) .soliha-carte__texte {
        display: -webkit-box;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .soliha-carte--mission .soliha-carte__action {
        display: inline-flex;
        align-items: center;
        gap: 0.3rem;
        margin-top: 0.6rem;
        padding: 0.15rem 0.7rem;
        border: 1px solid var(--wp--preset--color--bleu);
        border-radius: 999px;
        font-size: 0.78rem;
        font-weight: 700;
        line-height: 1.3;
        color: var(--wp--preset--color--bleu);

    }

    .soliha-carte--mission .soliha-carte__action::after {
        content: "";
        flex: 0 0 auto;
        width: 0.35rem;
        height: 0.35rem;
        border-right: 1.5px solid currentColor;
        border-bottom: 1.5px solid currentColor;
        transform: translateY(-0.12rem) rotate(45deg);
        transition: transform 0.2s ease;
    }

    .soliha-carte--mission[open] .soliha-carte__action::after {
        transform: translateY(0.12rem) rotate(-135deg);
    }

    .soliha-carte--mission[open] .soliha-carte__action {
        display: inline-flex;
    }
}

@media (min-width: 1100px) {
    .soliha-carte--mission > summary {
        cursor: default;
    }
}

.soliha-contact__champ--case input[type="checkbox"] {
    flex: 0 0 auto;
}

.soliha-contact__facultatif {
    color: var(--wp--preset--color--gris, #4E6875);
    white-space: nowrap;
}

.soliha-contact__engagement {
    margin: 0.75rem 0 0;

    padding-left: 0;
    font-size: 1rem;
    line-height: 1.4;
    font-weight: 600;
    color: var(--wp--preset--color--bleu, #00618A);
}

.soliha-contact__information {
    margin: 0.9rem 0 0;
    font-size: 0.85rem;
    line-height: 1.5;
    color: var(--wp--preset--color--gris, #4E6875);
}

.soliha-contact__information a {
    color: var(--wp--preset--color--bleu, #00618A);
    font-weight: 600;
}

body.soliha-page-legale .soliha-article {
    --wp--style--global--content-size: 34rem;
}

body.soliha-page-legale .soliha-article p,
body.soliha-page-legale .soliha-article li,
body.soliha-page-legale .soliha-article td,
body.soliha-page-legale .soliha-article th {
    font-size: 0.95rem;
    line-height: 1.65;
}

body.soliha-page-legale .soliha-article h2 {
    font-size: 1.35rem;
    margin-top: 2.2em;
}

body.soliha-page-legale .soliha-article h3 {
    font-size: 1.05rem;
    margin-top: 1.6em;
}

body.soliha-page-legale .soliha-article .wp-block-table {
    max-width: 44rem;
}

body.soliha-page-legale .soliha-article .wp-block-table td,
body.soliha-page-legale .soliha-article .wp-block-table th {
    font-size: 0.875rem;
}

.soliha-truck {
    --t-xs: 0.5rem;
    --t-s:  clamp(0.7rem, 1.8vw, 1rem);
    --t-m:  clamp(1.1rem, 2.6vw, 1.6rem);
    --t-l:  clamp(1.6rem, 4vw, 2.75rem);
    --t-xl: clamp(2.25rem, 5.5vw, 3.75rem);

    --t-r-s:    0.6rem;
    --t-r-m:    1.25rem;
    --t-r-pill: 2rem;

    --t-filet: 1px solid rgba(6, 43, 58, 0.13);
    --t-sortie: cubic-bezier(0.16, 1, 0.3, 1);
    width: min(100% - 2rem, 56rem);
    margin-inline: auto;
    padding-block: var(--t-m) var(--t-xl);
    color: var(--wp--preset--color--encre, #062B3A);
}

.soliha-scene--truck .soliha-carte {
    opacity: 1;
    transform: none;
}

.soliha-truck__feuille {
    position: relative;
    background: var(--wp--preset--color--beige-10, #FAF9F6);
    border-radius: var(--t-r-m);
    box-shadow:
        0 24px 60px rgba(6, 43, 58, 0.28),
        0 6px 18px rgba(6, 43, 58, 0.14),
        0 0 0 1px rgba(6, 43, 58, 0.55);
    overflow: hidden;
}

.soliha-truck__entete {
    position: relative;
    padding: var(--t-l) var(--t-l) var(--t-xl);

    background:
        radial-gradient(115% 135% at 86% 10%,
            rgba(232, 149, 34, 0.40) 0%,
            rgba(232, 149, 34, 0) 58%),
        linear-gradient(150deg,
            #F9C877 0%,
            #FDE3BC 52%,
            #FEF4E4 100%);
}

.soliha-truck__entete::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: 0.30;
    background-image: radial-gradient(rgba(6, 43, 58, 0.30) 0.5px, transparent 0.5px);
    background-size: 5px 5px;
}

.soliha-truck__titre {
    position: relative;
    z-index: 1;
    margin: 0;
    max-width: 16ch;
    font-size: clamp(2.1rem, 7vw, 3.6rem);
    line-height: 1;
    letter-spacing: -0.035em;
    font-weight: 700;
    text-wrap: balance;
    color: var(--wp--preset--color--encre, #062B3A);
}

.soliha-truck__accroche {
    position: relative;
    z-index: 1;
    margin: var(--t-m) 0 0;
    max-width: 30ch;
    font-size: clamp(1.15rem, 2.9vw, 1.5rem);
    line-height: 1.45;
    font-weight: 600;
    letter-spacing: 0.002em;
    text-wrap: pretty;
    color: var(--wp--preset--color--bleu, #00618A);
}

.soliha-truck__accroche strong {
    color: var(--wp--preset--color--encre, #062B3A);
    font-weight: 800;
    text-decoration: underline;
    text-decoration-color: var(--wp--preset--color--orange, #E89522);
    text-decoration-thickness: 0.13em;
    text-underline-offset: 0.12em;
}

.soliha-truck__camion {
    position: absolute;
    right: clamp(0.35rem, 2vw, 1.5rem);
    z-index: 2;
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 8px 14px rgba(6, 43, 58, 0.18));
}

.soliha-truck__actions {
    display: grid;
    row-gap: 0;
    padding: 0;
    border-bottom: var(--t-filet);
    grid-template-columns: minmax(0, 1fr);
}

.soliha-truck__action {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: var(--t-l) var(--t-m);
    text-align: center;
    min-width: 0;
    overflow-wrap: break-word;
}

.soliha-truck__action h2 {
    margin: 0 0 var(--t-xs);
    font-size: clamp(1.2rem, 3.2vw, 1.5rem);
    line-height: 1.15;
    letter-spacing: -0.012em;
    font-weight: 700;
    text-wrap: balance;
}

.soliha-truck__action p {
    margin: 0 0 var(--t-s);
    font-size: 1.05rem;
    line-height: 1.5;
    text-wrap: pretty;
}

.soliha-truck__action--orange {
    background: linear-gradient(155deg,
        var(--wp--preset--color--orange, #E89522) 0%,
        var(--wp--preset--color--beige, #D7D3C4) 100%);
    color: var(--wp--preset--color--encre, #062B3A);
}

.soliha-truck__action--bleu {
    background: linear-gradient(155deg,
        var(--wp--preset--color--bleu, #00618A) 0%,
        var(--wp--preset--color--encre, #062B3A) 100%);
    color: #fff;
}

.soliha-truck__action--bleu h2 {
    color: #fff;
}

@media (max-width: 45.999rem) {
    .soliha-truck__action + .soliha-truck__action {
        border-top: 1.5px solid var(--wp--preset--color--encre, #062B3A);
    }
}

.soliha-truck__bouton {
    display: inline-flex;
    align-items: center;
    gap: var(--t-xs);
    min-height: 2.9rem;
    padding: 0.6rem 1.5rem;
    border: 1.5px solid var(--wp--preset--color--encre, #062B3A);
    border-radius: var(--t-r-pill);
    font-size: 1.05rem;
    font-weight: 700;
    letter-spacing: 0.004em;
    text-decoration: none;
    transition: transform 0.22s var(--t-sortie), box-shadow 0.22s var(--t-sortie);
}

.soliha-truck__bouton--bleu {
    background: #fff;
    color: var(--wp--preset--color--encre, #062B3A);
    box-shadow: 0 6px 14px rgba(6, 43, 58, 0.28);
}

.soliha-truck__bouton--ambre {
    background: #fff;
    color: var(--wp--preset--color--encre, #062B3A);
    box-shadow: 0 6px 14px rgba(93, 52, 2, 0.32);
}

.soliha-truck__bouton::after {
    content: "→";
    font-size: 1.1em;
    line-height: 1;
    transition: transform 0.22s var(--t-sortie);
}

.soliha-truck__bouton:hover,
.soliha-truck__bouton:focus-visible {
    transform: translateY(-2px);
}

.soliha-truck__bouton:hover::after,
.soliha-truck__bouton:focus-visible::after {
    transform: translateX(0.3rem);
}

.soliha-truck__presentation {
    display: grid;
    border-bottom: var(--t-filet);
}

.soliha-truck__presentation--inverse {
    background: linear-gradient(135deg, #FBEFDF 0%, #FDF7EE 100%);
}

.soliha-truck__photo {
    display: block;
    width: 100%;
    height: 100%;
    min-height: clamp(12rem, 40vw, 18rem);
    object-fit: cover;
    object-position: center 45%;
}

.soliha-truck__illustration {
    display: block;
    width: 100%;
    height: auto;

    max-height: clamp(12rem, 30vw, 20rem);
    object-fit: contain;
    align-self: center;
    padding: var(--t-m) var(--t-l);
    box-sizing: border-box;
}

.soliha-truck__presentation-texte {
    padding: var(--t-l);
}

.soliha-truck__presentation p,
.soliha-truck__qui p {
    margin: 0 0 0.95em;
    max-width: 62ch;

    font-size: var(--wp--preset--font-size--normal, 1.19rem);
    line-height: 1.62;

    text-wrap: pretty;
}

.soliha-truck__qui {
    padding: var(--t-l);
    border-bottom: var(--t-filet);
    text-align: center;
}

.soliha-truck__qui p {
    margin-inline: auto;
    max-width: 74ch;
}

.soliha-truck__qui strong {
    color: var(--wp--preset--color--canard, #00616D);
}

.soliha-truck__qui h2 {
    margin: 0 0 var(--t-m);
    font-size: clamp(1.35rem, 3.6vw, 1.8rem);
    line-height: 1.12;
    letter-spacing: -0.016em;
    font-weight: 700;
    color: var(--wp--preset--color--bleu, #00618A);
}

.soliha-truck__quatre-axes {
    padding: var(--t-l);
    text-align: center;
}

.soliha-truck__chapeau {
    margin: 0 auto var(--t-m);
    max-width: 52ch;
    font-size: 1.12rem;
    font-weight: 600;
    text-wrap: pretty;
}

.soliha-truck__quatre-axes .soliha-truck__axes {
    padding: 0;
    text-align: left;
}

.soliha-truck__axes {
    list-style: none;
    margin: 0;
    display: grid;
    gap: var(--t-s);
}

.soliha-truck__axe {
    display: grid;
    grid-template-areas: "picto titre" "picto texte";
    column-gap: var(--t-m);
    align-items: start;
    padding: var(--t-m);
    border-radius: var(--t-r-s);
    box-shadow: inset 0 0 0 1px rgba(6, 43, 58, 0.09);
    grid-template-columns: min(3.4rem, 20%) minmax(0, 1fr);
}

.soliha-truck__axe--bleu  { background: linear-gradient(155deg, #CBE9F0 0%, #EAF7FA 100%); }
.soliha-truck__axe--vert  { background: linear-gradient(155deg, #C8E1BC 0%, #EAF4E5 100%); }
.soliha-truck__axe--jaune { background: linear-gradient(155deg, #FEF5AD 0%, #FFFBE0 100%); }
.soliha-truck__axe--rose  { background: linear-gradient(155deg, #FBDDD6 0%, #FEF0EC 100%); }

.soliha-truck__axe img {
    grid-area: picto;
    width: 3.4rem;
    height: 3.4rem;
    object-fit: contain;
}

.soliha-truck__axe h3 {
    grid-area: titre;
    margin: 0 0 0.22rem;
    font-size: 1.08rem;
    line-height: 1.2;
    letter-spacing: -0.008em;
    color: var(--wp--preset--color--bleu, #00618A);
}

.soliha-truck__axe p {
    grid-area: texte;
    margin: 0;
    font-size: 0.97rem;
    line-height: 1.5;
    text-wrap: pretty;
}

.soliha-truck__financeurs {
    margin: var(--t-m) 0 0;
    padding: var(--t-m) var(--t-l);
    background: rgba(250, 249, 246, 0.9);
    border-radius: var(--t-r-s);
    font-size: 0.88rem;
    line-height: 1.55;
    text-align: center;
    text-wrap: pretty;
    color: var(--wp--preset--color--encre, #062B3A);
}

@media (max-width: 45.999rem) {

    .soliha-truck__entete {

        padding-bottom: 7.5rem;
        text-align: center;
    }

    .soliha-truck__titre,
    .soliha-truck__accroche,
.soliha-truck__presentation-texte p {

        margin-inline: auto;
    }

    .soliha-truck__presentation-texte {
        text-align: center;
    }

    .soliha-truck__camion {
        width: 9.5rem;

        left: 50%;
        right: auto;
        bottom: 0.75rem;
        transform: translateX(-50%);

        border: 0;
        outline: 0;
        box-shadow: none;
        filter: none;
    }
}

@media (max-width: 22.999rem) {
    .soliha-truck__entete {
        padding-bottom: 8rem;
    }
}

@media (min-width: 46rem) {

    .soliha-truck__entete {
        padding-right: clamp(10rem, 24vw, 14rem);
    }

    .soliha-truck__accroche {
        max-width: 42ch;
    }

    .soliha-truck__camion {
        top: 50%;
        bottom: auto;
        transform: translateY(-50%);
        width: clamp(11rem, 19vw, 16rem);
    }

    .soliha-truck__actions {
        grid-template-rows: auto minmax(0, 1fr) auto;
        row-gap: var(--t-xs);
        column-gap: 0;
    }

    .soliha-truck__action {
        grid-row: span 3;
        display: grid;
        grid-template-rows: subgrid;
        justify-items: center;
        padding: var(--t-l);
    }

    .soliha-truck__action > * {
        margin: 0;
    }

    .soliha-truck__presentation {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: stretch;
    }

    .soliha-truck__photo { grid-area: 1 / 1; }

    .soliha-truck__presentation .soliha-truck__presentation-texte {
        grid-area: 1 / 2;
        align-self: center;
        padding: var(--t-l) var(--t-m);
    }

    .soliha-truck__presentation--inverse .soliha-truck__presentation-texte {
        grid-area: 1 / 1;
        transform: translateX(clamp(0rem, 2vw, 2rem));
    }

    .soliha-truck__illustration { grid-area: 1 / 2; }

    .soliha-truck__action + .soliha-truck__action {
        border-left: 1.5px solid var(--wp--preset--color--encre, #062B3A);
    }

    .soliha-truck__axes {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@keyframes soliha-truck-monte {
    from { opacity: 0; transform: translateY(1.1rem); }
    to   { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: no-preference) {
    .soliha-truck__actions,
    .soliha-truck__presentation,
    .soliha-truck__qui {
        animation: soliha-truck-monte linear both;
        animation-timeline: view();
        animation-range: entry 0% entry 65%;
    }

    .soliha-truck__financeurs {
        animation: soliha-truck-monte linear both;
        animation-timeline: view();
        animation-range: entry 0% entry 20%;
    }

    .soliha-truck__axe {
        animation: soliha-truck-monte linear both;
        animation-timeline: view();
    }

    .soliha-truck__axe:nth-child(1) { animation-range: entry 0%  entry 55%; }
    .soliha-truck__axe:nth-child(2) { animation-range: entry 5%  entry 60%; }
    .soliha-truck__axe:nth-child(3) { animation-range: entry 10% entry 65%; }
    .soliha-truck__axe:nth-child(4) { animation-range: entry 15% entry 70%; }

    .soliha-truck__titre,
    .soliha-truck__accroche {
        animation: soliha-truck-monte 0.75s var(--t-sortie) both;
    }

    .soliha-truck__accroche { animation-delay: 0.08s; }
}

@media print {
    .soliha-truck *,
    .soliha-truck {
        animation: none !important;
        opacity: 1 !important;
        transform: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {

    .soliha-truck__bouton:hover,
    .soliha-truck__bouton:focus-visible {
        transform: none;
    }
}

.soliha-page-institutionnelle {
    --pi-filet: 1px solid rgba(6, 43, 58, 0.13);
    --pi-sortie: cubic-bezier(0.16, 1, 0.3, 1);

    color: var(--wp--preset--color--encre, #062B3A);
}

.soliha-article:has(.soliha-page-institutionnelle) {
    background: rgba(255, 255, 255, 0.94);
}

.soliha-article:has(.soliha-page-institutionnelle) h1.wp-block-post-title {
    margin-bottom: clamp(1.15rem, 2.5vw, 1.75rem);
    text-wrap: balance;
}

.soliha-article:has(.soliha-page-institutionnelle) h1.wp-block-post-title::after {
    content: '';
    display: block;
    width: 4rem;
    height: 3px;
    margin: clamp(0.8rem, 2vw, 1.1rem) auto 0;
    border-radius: 999px;
    background: var(--wp--preset--color--orange, #E89522);
}

.soliha-page-intro {
    margin-inline: auto;
    margin-bottom: clamp(1.75rem, 4vw, 2.75rem);
    padding: clamp(1.2rem, 3.5vw, 2rem);
    box-sizing: border-box;
    border-radius: 12px;
    color: var(--wp--preset--color--bleu, #00618A);
    background:
        radial-gradient(115% 135% at 86% 10%, rgba(232, 149, 34, 0.32) 0%, rgba(232, 149, 34, 0) 58%),
        linear-gradient(150deg, #FDE3BC 0%, #FEF4E4 100%);
    font-size: clamp(1.1rem, 1rem + 0.35vw, 1.3rem);
    font-weight: 600;
    line-height: 1.5 !important;
    text-align: center !important;
    box-shadow: 0 4px 10px rgba(6, 43, 58, 0.11), inset 0 0 0 1px rgba(6, 43, 58, 0.08);
    position: relative;
    max-width: min(60ch, 640px);
}

.soliha-page-mouvement .soliha-page-intro::after,
.soliha-page-territoires .soliha-page-intro::after,
.soliha-page-partenaires .soliha-page-intro::after {
    content: '';
    display: block;
    width: 7rem;
    height: 7rem;
    margin: clamp(0.9rem, 3vw, 1.4rem) auto 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.soliha-page-mouvement .soliha-page-intro::after {
    background-image: url('assets/illustrations/max-tandem.webp');
}

.soliha-page-territoires .soliha-page-intro::after {
    background-image: url('assets/illustrations/cycliste-pointe-casque.webp');
}

.soliha-page-partenaires .soliha-page-intro::after {
    background-image: url('assets/illustrations/max-arrivee.webp');
}

@media (min-width: 62rem) {
    .soliha-page-mouvement .soliha-page-intro::after,
    .soliha-page-territoires .soliha-page-intro::after,
    .soliha-page-partenaires .soliha-page-intro::after {
        position: absolute;
        top: 50%;
        margin: 0;
        transform: translateY(-50%);
        filter: drop-shadow(0 8px 16px rgba(6, 43, 58, 0.16));
        right: -168px;
        width: 152px;
        height: 152px;
    }

}

@media (prefers-reduced-motion: no-preference) {
    .soliha-page-mouvement .soliha-page-intro::after,
    .soliha-page-territoires .soliha-page-intro::after,
    .soliha-page-partenaires .soliha-page-intro::after {
        animation: soliha-max-flotte 4.5s ease-in-out infinite;
        will-change: transform;
    }
}

@keyframes soliha-max-flotte {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-0.375rem); }
}

@keyframes soliha-max-flotte-gouttiere {
    0%, 100% { transform: translateY(-50%); }
    50% { transform: translateY(calc(-50% - 0.375rem)); }
}

@media (min-width: 62rem) and (prefers-reduced-motion: no-preference) {
    .soliha-page-mouvement .soliha-page-intro::after,
    .soliha-page-territoires .soliha-page-intro::after,
    .soliha-page-partenaires .soliha-page-intro::after {
        animation-name: soliha-max-flotte-gouttiere;
    }
}

.soliha-page-institutionnelle h2 {
    margin-top: clamp(2.25rem, 5vw, 3.5rem);
    margin-right: auto;
    margin-bottom: clamp(0.85rem, 2vw, 1.2rem);
    margin-left: auto;
    color: var(--wp--preset--color--bleu, #00618A);

    line-height: 1.2;
    letter-spacing: -0.015em;
    text-align: center;
    text-wrap: balance;
}

.soliha-page-mouvement > h2,
.soliha-page-territoires > h2 {
    width: min(100%, 70ch);
    max-width: 70ch;
    padding: clamp(0.8rem, 2vw, 1.1rem) clamp(1rem, 3vw, 1.5rem);
    box-sizing: border-box;
    border-radius: 10px;
    background: linear-gradient(155deg, var(--wp--preset--color--bleu-clair-55, #CBE9F0) 0%, #EAF7FA 100%);
    box-shadow: 0 3px 8px rgba(6, 43, 58, 0.1), inset 0 0 0 1px rgba(6, 43, 58, 0.08);
}

.soliha-federation-action {
    margin: clamp(1rem, 2.5vw, 1.4rem) 0 clamp(1.5rem, 3vw, 2rem);
}

.soliha-federation-bouton {
    display: inline-flex;
    min-height: 2.7rem;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    padding: 0.55rem 1.15rem;
    border: 1.5px solid var(--wp--preset--color--bleu, #00618A);
    border-radius: 999px;
    color: var(--wp--preset--color--bleu, #00618A);
    background: rgba(255, 255, 255, 0.72);
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    transition: color 180ms var(--pi-sortie), background-color 180ms var(--pi-sortie), transform 180ms var(--pi-sortie);
    max-width: 100%;
    flex-wrap: wrap;
    text-align: center;
}

.soliha-federation-bouton::after {
    content: '\2197';
    font-size: 1em;
}

.soliha-federation-bouton:hover,
.soliha-federation-bouton:focus-visible {
    color: #fff;
    background: var(--wp--preset--color--bleu, #00618A);
    transform: translateY(-1px);
}

.soliha-federation-bouton:focus-visible {
    outline: 3px solid var(--wp--preset--color--orange, #E89522);
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {

    .soliha-federation-bouton:hover,
    .soliha-federation-bouton:focus-visible {
        transform: none;
    }
}

.soliha-page-mouvement > ul,
.soliha-page-territoires > ul {
    padding: clamp(1rem, 2.5vw, 1.4rem) clamp(1.4rem, 4vw, 2.25rem) clamp(1rem, 2.5vw, 1.4rem) clamp(2.5rem, 5vw, 3.25rem);
    box-sizing: border-box;
    border-radius: 10px;
    background: var(--wp--preset--color--beige-25, #F5F4F0);
    box-shadow: 0 3px 8px rgba(6, 43, 58, 0.08), inset 0 0 0 1px rgba(6, 43, 58, 0.08);
}

.soliha-page-institutionnelle li {
    margin-block: 0.45rem;
    line-height: 1.55;
}

.soliha-video-responsive {
    overflow: hidden;
    aspect-ratio: 16 / 9;
    margin-block: clamp(1.5rem, 4vw, 2.5rem);
    border-radius: 12px;
    background: var(--wp--preset--color--encre, #062B3A);
    box-shadow: 0 8px 18px rgba(6, 43, 58, 0.2);
}

.soliha-video-responsive iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.soliha-page-carte {
    margin: clamp(1.5rem, 4vw, 2.5rem) 0 0;
}

.soliha-page-carte a {
    display: block;
    color: var(--wp--preset--color--bleu, #00618A);
    font-weight: 700;
    text-decoration: none;
}

.soliha-page-carte img {
    display: block;
    width: 100%;
    max-height: 27rem;
    object-fit: cover;
    transition: filter 220ms var(--pi-sortie);
}

.soliha-page-carte figcaption {
    display: flex;
    width: fit-content;
    align-items: center;
    gap: 0.55rem;
    min-height: 2.9rem;
    margin: 1rem auto 0;
    padding: 0.6rem 1.35rem;
    box-sizing: border-box;
    border-radius: 2rem;
    color: #fff;
    background: var(--wp--preset--color--bleu, #00618A);
    box-shadow: 0 8px 18px rgba(0, 97, 138, 0.28);
    font-size: 0.95rem;
    line-height: 1.25;
    text-align: center;
    transition: transform 220ms var(--pi-sortie), box-shadow 220ms var(--pi-sortie);
}

.soliha-page-carte figcaption::after {
    content: '\2192';
    flex: 0 0 auto;
    font-size: 1.1em;
    transition: transform 220ms var(--pi-sortie);
}

.soliha-page-carte a:hover img {
    filter: saturate(1.08) contrast(1.03);
}

.soliha-page-carte a:hover figcaption,
.soliha-page-carte a:focus-visible figcaption {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(0, 97, 138, 0.34);
}

.soliha-page-carte a:hover figcaption::after,
.soliha-page-carte a:focus-visible figcaption::after {
    transform: translateX(0.3rem);
}

.soliha-page-carte a:focus-visible {
    outline: 3px solid var(--wp--preset--color--orange, #E89522);
    outline-offset: 4px;
    border-radius: 12px;
}

.soliha-partenaire {
    display: grid;
    gap: clamp(1.75rem, 4vw, 3rem);
    align-items: center;
    padding: clamp(1.5rem, 4vw, 2.5rem) clamp(1rem, 3vw, 1.75rem);
    border-top: 1px solid rgba(6, 43, 58, 0.1);
    background: var(--wp--preset--color--beige-25, #F5F4F0);
}

.soliha-partenaire:nth-of-type(odd) {
    background: linear-gradient(155deg, rgba(203, 233, 240, 0.64) 0%, rgba(234, 247, 250, 0.72) 100%);
}

.soliha-partenaire:last-child {
    border-bottom: 1px solid rgba(6, 43, 58, 0.1);
}

.soliha-partenaire figure {
    display: grid;
    place-items: center;
    gap: 1rem;
    min-height: 7rem;
    margin: 0;
    padding: 0.8rem;
    border-radius: 10px;
    background: #fff;
    box-shadow: inset 0 0 0 1px rgba(6, 43, 58, 0.08);
}

.soliha-partenaire figure img,
.soliha-article .soliha-partenaire figure img {
    display: block;
    width: auto;
    max-height: 7rem;
    border-radius: 0;
    object-fit: contain;
}

.soliha-partenaire__logos img {
    max-height: 4.5rem !important;
}

.soliha-partenaire h2 {
    max-width: none;
    margin: 0 auto 0.85rem;
    font-size: clamp(1.25rem, 1.1rem + 0.45vw, 1.55rem);
}

.soliha-partenaire p {
    margin-block: 0 0.8rem;
}

@media (max-width: 699px) {

    .soliha-partenaire {
        grid-template-columns: 1fr;
        align-items: start;
        padding-inline: clamp(1rem, 5vw, 1.5rem);
    }

    .soliha-partenaire figure {
        min-height: 0;
        margin-inline: auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    .soliha-page-mouvement .soliha-page-intro::after,
    .soliha-page-territoires .soliha-page-intro::after,
    .soliha-page-partenaires .soliha-page-intro::after {
        animation: none;
        will-change: auto;
    }

    .soliha-page-action:hover,
    .soliha-page-action:focus-visible,
    .soliha-page-carte a:hover figcaption,
    .soliha-page-carte a:focus-visible figcaption {
        transform: none;
    }

    .soliha-page-action:hover small::after,
    .soliha-page-action:focus-visible small::after,
    .soliha-page-carte a:hover figcaption::after,
    .soliha-page-carte a:focus-visible figcaption::after {
        transform: none;
    }
}

.soliha-actus {
    max-width: 60rem;
    margin: 0 auto;
}

.soliha-actus__recherche {
    margin: 0 0 1rem;
}

.soliha-actus__label {
    display: block;
    font-weight: 700;
    color: var(--wp--preset--color--encre, #062B3A);
}

.soliha-actus__aide {
    margin: 0.15rem 0 0.6rem;
    font-size: 0.9rem;
    color: var(--wp--preset--color--gris, #4E6875);
}

.soliha-actus__champ {
    flex: 1 1 16rem;
    min-width: 0;
    padding: 0.6rem 0.9rem;
    border: 1px solid var(--wp--preset--color--trait, #E7E5DC);
    border-radius: 2rem;
    background: var(--wp--preset--color--blanc, #FFFFFF);
    color: var(--wp--preset--color--encre, #062B3A);
    font: inherit;
    border-color: transparent;
}

.soliha-actus__bouton {
    flex: 0 0 auto;
    padding: 0.6rem 1.4rem;
    border: 0;
    border-radius: 2rem;
    background: var(--wp--preset--color--bleu, #00618A);
    color: var(--wp--preset--color--blanc, #FFFFFF);
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.soliha-actus__bouton:hover {
    background: var(--wp--preset--color--encre, #062B3A);
}

.soliha-actus__resultats {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.5rem;
    margin: 0 0 0.5rem;
    color: var(--wp--preset--color--encre, #062B3A);
}

.soliha-actus__reinitialiser {
    font-size: 0.9rem;
    color: var(--wp--preset--color--bleu, #00618A);
}

.soliha-actus__compte {
    margin: 0 0 1.25rem;
    font-size: 0.9rem;
    color: var(--wp--preset--color--gris, #4E6875);
}

.soliha-actus__grille {
    display: grid;
    gap: 1.1rem;
    grid-template-columns: repeat(auto-fill, minmax(min(16rem, 100%), 1fr));
}

.soliha-actus__carte {
    height: 100%;
    transition: transform 200ms ease, box-shadow 200ms ease;
}

.soliha-actus__lien {
    display: flex;
    flex-direction: column;
    height: 100%;
    color: inherit;
    text-decoration: none;
}

.soliha-actus__lien:focus-visible {
    outline: 3px solid var(--wp--preset--color--bleu, #00618A);
    outline-offset: 3px;
}

.soliha-actus__carte:hover {
    transform: translateY(-2px);
    box-shadow:
        0 12px 26px rgba(6, 43, 58, 0.2),
        0 3px 8px rgba(6, 43, 58, 0.12);
}

@media (prefers-reduced-motion: reduce) {

    .soliha-actus__carte:hover {
        transform: none;
    }
}

.soliha-actus__lien .soliha-liste__article-titre {
    color: var(--wp--preset--color--bleu, #00618A);
    font-size: 1.05rem;
}

.soliha-actus__corps {
    flex: 1 1 auto;
}

.soliha-actus__extrait {
    display: block;
    flex: 1 1 auto;
}

.soliha-actus__vide {
    margin: 1rem 0;
}

@media (max-width: 30rem) {
    .soliha-actus__bouton {
        flex: 1 1 100%;
    }
}

.soliha-appel {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
    margin: 2rem 0;
    padding: 1.1rem 1.4rem;
    background: var(--wp--preset--color--bleu-clair-55, #CBE9F0);
    border-left: 4px solid var(--wp--preset--color--bleu, #00618A);
    border-radius: 0 0.5rem 0.5rem 0;
}

.soliha-appel__illustration {
    flex: 0 0 auto;
    width: 3.5rem;
    height: auto;
}

.soliha-appel__titre {
    flex: 1 1 14rem;
    margin: 0;
    color: var(--wp--preset--color--encre, #062B3A);
    font-weight: 700;
    min-width: 0;
}

.soliha-appel__bouton {
    flex: 0 0 auto;
    text-decoration: none;
}

.soliha-appel__bouton:hover,
.soliha-appel__bouton:focus-visible {
    background: var(--wp--preset--color--encre, #062B3A);
    color: var(--wp--preset--color--blanc, #FFFFFF);
}

.soliha-page-partenaires .soliha-appel__bouton {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    min-height: 2.5rem;
    padding: 0.55rem 1.15rem;
    border-radius: 0.55rem;
    background: var(--wp--preset--color--bleu, #00618A);
    color: var(--wp--preset--color--blanc, #FFFFFF);
    font-size: 0.95rem;
    font-weight: 650;
    letter-spacing: 0.01em;
    box-shadow: 0 1px 2px rgba(6, 43, 58, 0.12);
    transition:
        background-color 160ms ease,
        box-shadow 160ms ease,
        transform 160ms cubic-bezier(0.22, 1, 0.36, 1);
}

.soliha-page-partenaires .soliha-appel__bouton::after {
    content: '→';
    font-size: 1em;
    line-height: 1;
    opacity: 0.9;
    transition: transform 160ms cubic-bezier(0.22, 1, 0.36, 1);
}

.soliha-page-partenaires .soliha-appel__bouton:hover {
    background: var(--wp--preset--color--encre, #062B3A);
    color: var(--wp--preset--color--blanc, #FFFFFF);
    box-shadow: 0 2px 6px rgba(6, 43, 58, 0.18);
    transform: translateY(-1px);
}

.soliha-page-partenaires .soliha-appel__bouton:hover::after,
.soliha-page-partenaires .soliha-appel__bouton:focus-visible::after {
    transform: translateX(0.15rem);
}

.soliha-page-partenaires .soliha-appel__bouton:focus-visible {
    outline: 3px solid var(--wp--preset--color--encre, #062B3A);
    outline-offset: 3px;
}

.soliha-page-partenaires .soliha-appel__bouton:active {
    box-shadow: 0 1px 2px rgba(6, 43, 58, 0.16);
    transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {

    .soliha-page-partenaires .soliha-appel__bouton:hover,
    .soliha-page-partenaires .soliha-appel__bouton:hover::after,
    .soliha-page-partenaires .soliha-appel__bouton:focus-visible::after {
        transform: none;
    }
}

@media (max-width: 34rem) {
    .soliha-appel {
        flex-direction: column;
        align-items: flex-start;
    }

    .soliha-appel__bouton {
        align-self: stretch;
        text-align: center;
    }
}

.soliha-actus__tete {
    margin-bottom: 1.5rem;
    padding: 1.15rem 1.35rem 1rem;
    background: var(--wp--preset--color--bleu-clair-55, #CBE9F0);
    border-radius: 0.9rem;
}

.soliha-actus__rubrique {
    align-self: flex-start;
    margin-bottom: 0.1rem;
    padding: 0.2rem 0.6rem;
    border-radius: 2rem;
    background: var(--wp--preset--color--bleu-clair-55, #CBE9F0);
    color: var(--wp--preset--color--bleu, #00618A);
    font-weight: 700;
    line-height: 1.3;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    box-sizing: border-box;
}

.soliha-actus__carte--une {
    grid-column: 1 / -1;
}

.soliha-actus__carte--une .soliha-liste__article-titre {
    font-size: clamp(1.2rem, 2.6vw, 1.55rem);
    text-wrap: balance;
}

.soliha-actus__carte--une .soliha-liste__extrait {
    font-size: 0.92rem;
}

@media (min-width: 44rem) {

    .soliha-actus__carte--une .soliha-actus__lien {
        flex-direction: row;
        align-items: stretch;
    }

    .soliha-actus__carte--une .soliha-actualite__image {
        flex: 0 0 55%;
        aspect-ratio: auto;
        min-height: 15rem;
    }

    .soliha-actus__carte--une .soliha-actus__corps {
        justify-content: center;
        padding: 1.25rem 1.4rem;
    }
}

.soliha-actus__carte .soliha-actualite__image img {
    transition: transform 450ms cubic-bezier(0.22, 1, 0.36, 1);
}

.soliha-actus__carte:hover .soliha-actualite__image img,
.soliha-actus__lien:focus-visible .soliha-actualite__image img {
    transform: scale(1.04);
}

@media (prefers-reduced-motion: reduce) {

    .soliha-actus__carte:hover .soliha-actualite__image img,
    .soliha-actus__lien:focus-visible .soliha-actualite__image img {
        transform: none;
    }
}

.soliha-ressource__couverture {
	background: var(--wp--preset--color--bleu-clair-55, #CBE9F0);
}

.soliha-ressource__couverture img {
	object-fit: contain;
	padding: 0.5rem;
	box-sizing: border-box;
}

.soliha-article:has(.soliha-ressources) h1.wp-block-post-title,
.soliha-article:has(.soliha-collectivites__form) h1.wp-block-post-title {
	margin-bottom: clamp(1rem, 2.5vw, 1.5rem);
}

.soliha-article:has(.soliha-ressources) h1.wp-block-post-title::after,
.soliha-article:has(.soliha-collectivites__form) h1.wp-block-post-title::after {
	content: '';
	display: block;
	width: 4rem;
	height: 3px;
	margin: clamp(0.75rem, 2vw, 1rem) auto 0;
	border-radius: 999px;
	background: var(--wp--preset--color--orange, #E89522);
}

.soliha-collectivites__form {
	gap: 1rem !important;
	max-width: 48rem;
	margin: 0 auto 2rem !important;
	padding: 1.45rem 1.25rem 1.25rem !important;
	border-radius: 1rem !important;
	background: rgba(255, 255, 255, 0.82) !important;
	box-shadow:
		0 10px 24px rgba(6, 43, 58, 0.14),
		0 2px 8px rgba(6, 43, 58, 0.08) !important;
	backdrop-filter: blur(12px) saturate(1.08);
	-webkit-backdrop-filter: blur(12px) saturate(1.08);
}

.soliha-collectivites__form::before {
	content: '';
	position: absolute;
	top: 0.65rem;
	right: 1rem;
	width: 6.5rem;
	height: 6.5rem;
	pointer-events: none;
	background: url('assets/illustrations/max-arrivee.webp') center top / contain no-repeat;
	z-index: 1;
}

.soliha-collectivites__form > .soliha-contact__legende,
.soliha-collectivites__form > .soliha-contact__groupe:first-of-type .soliha-contact__sous-titre {
	padding-right: 7rem;
	box-sizing: border-box;
}

.soliha-collectivites__form .soliha-contact__groupe {
	gap: 0.65rem !important;
	padding-top: 0.35rem;
}

.soliha-collectivites__form .soliha-contact__champ input,
.soliha-collectivites__form .soliha-contact__champ select,
.soliha-collectivites__form .soliha-contact__champ textarea {
	border: 0;
	border-radius: 0.75rem;
	background: var(--wp--preset--color--blanc, #FFFFFF);
	box-shadow: 0 2px 8px rgba(6, 43, 58, 0.08) !important;
}

.soliha-collectivites__form .soliha-contact__champ select {
	width: 100%;
	min-height: 2.75rem !important;
	padding: 0.6rem 0.85rem;
	font: inherit;
	font-size: 1rem !important;
	color: var(--wp--preset--color--encre, #062B3A);
}

.soliha-collectivites__form .soliha-contact__champ textarea {
	min-height: 10rem !important;
}

.soliha-collectivites__form .soliha-contact__actions {
	margin-top: 0.5rem !important;
}

@media (min-width: 700px) {
	.soliha-collectivites__form {
		padding-inline: 1.5rem;
	}

	.soliha-collectivites__form > .soliha-contact__groupe:nth-of-type(2) {
		grid-template-columns: 1fr 1fr !important;
		column-gap: 0.75rem !important;
		align-items: start;
	}

}

@media (max-width: 30rem) {
	.soliha-collectivites__form {
		padding: 1.2rem 0.85rem 1rem !important;
	}

	.soliha-collectivites__form::before {
		right: 0.5rem;
		width: 5.25rem;
		height: 5.25rem;
	}

	.soliha-collectivites__form > .soliha-contact__legende,
	.soliha-collectivites__form > .soliha-contact__groupe:first-of-type .soliha-contact__sous-titre {
		padding-right: 5.5rem;
	}
}

.soliha-article:has(.soliha-collectivites__form) {
		padding: clamp(1rem, 3vw, 2.5rem) 0 2rem;
		background: transparent;
		border: 0;
		box-shadow: none;
		padding-top: 0.35rem;
		padding-bottom: 1.25rem;
		max-width: 84rem;
		width: min(100% - 2 * var(--soliha-gouttiere, 1.25rem), 84rem);
}

.soliha-article:has(.soliha-collectivites__form) > .wp-block-post-title,
.soliha-article:has(.soliha-collectivites__form) h1.wp-block-post-title {
		width: 100% !important;
		max-width: none;
		margin: 0.15rem auto 1rem !important;
		padding: 0 0.5rem !important;
		color: var(--wp--preset--color--bleu, #00618A) !important;

	font-weight: 800;
		line-height: 1.12;
		letter-spacing: -0.02em;
		text-wrap: balance;
}

.soliha-article:has(.soliha-collectivites__form) > .wp-block-post-content {
		width: 100%;
		max-width: none;
		margin-inline: 0;
		margin-top: 0;
}

.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form {
		margin: 0 auto !important;
		border: 0;
		border-radius: 1.5rem !important;
		background: linear-gradient(
			to right,
			var(--wp--preset--color--bleu-75, #4089A7) 0 36%,
			var(--wp--preset--color--beige-25, #F5F4F0) 36% 100%
		) !important;
		box-shadow:
			0 18px 44px rgba(6, 43, 58, 0.25),
			0 6px 14px rgba(6, 43, 58, 0.14) !important;
		backdrop-filter: none;
		-webkit-backdrop-filter: none !important;
	}

.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form::after {
		position: absolute;
		pointer-events: none;
		bottom: auto;
		content: 'Un échange pour construire ensemble';
		top: 1.4rem;
		left: 2%;
		width: 34%;
		color: #fff;
		font-size: clamp(1.7rem, 2.7vw, 2.45rem);
		font-weight: 800;
		line-height: 1.12;
		letter-spacing: -0.02em;
		text-align: center;
		text-wrap: balance;
		text-shadow: 0 1px 2px rgba(6, 43, 58, 0.22);
		z-index: 2;
	}

.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form > * {
		grid-column: 2;
		min-width: 0;
	}

	.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form > .soliha-contact__legende,
.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form > .soliha-contact__groupe:first-of-type .soliha-contact__sous-titre {
		padding-right: 0;
	}

@media (max-width: 699px) {
		.soliha-article:has(.soliha-collectivites__form) {
			padding-inline: 0;
		}

		.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form {
			border-radius: 1rem !important;
			background: linear-gradient(
				to bottom,
				var(--wp--preset--color--bleu-75, #4089A7) 0 10rem,
				var(--wp--preset--color--beige-25, #F5F4F0) 10rem 100%
			) !important;
		}

		.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form > * {
			grid-column: 1;
		}

		.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form > .soliha-contact__legende {
			color: var(--wp--preset--color--encre, #062B3A);
		}
	}

.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form .soliha-contact__actions {
	text-align: center;
	margin-top: 0.45rem !important;
}

.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form .soliha-contact__actions button {
	margin-inline: auto;
	min-height: 2.75rem;
	padding-inline: 1.35rem;
	font-size: 1.05rem;
}

.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form {
	grid-template-columns: minmax(16rem, 38%) minmax(0, 62%);
	width: min(100%, 74rem);
	max-width: 74rem;
	min-height: 36rem;
	padding: 1.35rem 2.1rem 1.35rem !important;
	gap: 0.55rem !important;
	align-items: stretch;
	background-image:
		url('assets/illustrations/collectivites-habitat.png'),
		linear-gradient(
			to right,
			var(--wp--preset--color--bleu-75, #4089A7) 0 38%,
			var(--wp--preset--color--beige-25, #F5F4F0) 38% 100%
		) !important;

	background-repeat: no-repeat !important;
}

.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form .soliha-contact__groupe {
	gap: 0.4rem !important;
	padding-top: 0;
}

.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form .soliha-contact__sous-titre {
	margin: 0.15rem 0 0.1rem;
	padding-top: 0.35rem;
	font-size: 1.05rem !important;
}

.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form .soliha-contact__champ {
	gap: 0.25rem;
}

.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form .soliha-contact__champ input,
.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form .soliha-contact__champ select {
	min-height: 2.65rem !important;
	font-size: 1.02rem !important;
}

.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form .soliha-contact__champ textarea {
	min-height: 7.5rem !important;
	font-size: 1.02rem;
}

.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form .soliha-contact__legende {
	margin: 0 0 0.15rem;
}

.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form .soliha-contact__engagement,
.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form .soliha-contact__information {
	margin-top: 0.4rem;
}

@media (max-width: 699px) {
	.soliha-article:has(.soliha-collectivites__form) {
		padding-top: 0.25rem;
	}

	.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form {
		grid-template-columns: 1fr;
		min-height: 0;
		width: 100%;
		max-width: none;
	}
}

.soliha-actus__pagination {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	justify-content: center;
	align-items: center;
	margin: 1.75rem 0 0.5rem;
}
.soliha-actus__page {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.35rem;
	min-height: 2.35rem;
	padding: 0.35rem 0.7rem;
	border-radius: 0.5rem;
	background: #fff;
	color: var(--wp--preset--color--bleu, #00618A);
	font-weight: 650;
	text-decoration: none;
	box-shadow: 0 1px 2px rgba(6, 43, 58, 0.1);
}
.soliha-actus__page:hover,
.soliha-actus__page:focus-visible {
	background: var(--wp--preset--color--bleu, #00618A);
	color: #fff;
}
.soliha-actus__page--courante {
	background: var(--wp--preset--color--encre, #062B3A);
	color: #fff;
	cursor: default;
}

@media (max-width: 699px) {
	.soliha-article,
	.soliha-actus,
	.entry-content {
		overflow-wrap: anywhere;
	}
	.soliha-actus__carte .soliha-liste__article-titre,
	.soliha-liste__article-titre {
		font-size: clamp(1.05rem, 4.2vw, 1.25rem);
		line-height: 1.25;
	}
}

.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form {
	background-size: 30% auto, 100% 100% !important;
	background-position: left 4% bottom, center !important;
}

.soliha-accueil[data-ecran="situation"] .soliha-sujet__statistique {
	color: #062B3A;
	font-weight: 650;
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(227, 6, 19, 0.22);
	box-shadow: 0 6px 18px rgba(6, 43, 58, 0.1);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
}

.soliha-accueil[data-ecran="situation"] .soliha-sujet__chiffre {
	margin-right: 0.15em;
	color: #C01020;
	font-weight: 800;
	letter-spacing: -0.015em;
	font-variant-numeric: tabular-nums;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation {
	justify-content: flex-start;
	padding-top: 0.15rem;
	overflow: visible !important;
}

.soliha-accueil[data-ecran="situation"] .soliha-sujet.est-actif {
	justify-content: flex-start;
}

.soliha-accueil[data-ecran="situation"] .soliha-guide-max {
	bottom: 0 !important;
	padding-bottom: 0 !important;
	overflow: visible !important;
}

@media (max-width: 699px) {
	.soliha-accueil[data-ecran="situation"] .soliha-guide-max {
		bottom: 0.15rem !important;
	}
}

.soliha-accueil[data-ecran="situation"] .soliha-sujet h1,
.soliha-accueil[data-ecran="situation"] .soliha-sujet > h1.wp-block-heading {
	margin-block: 0.15rem 0.35rem !important;
	font-size: clamp(1.4rem, 2.35vw, 1.95rem) !important;
	line-height: 1.15;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

@media (max-width: 699px) {
	.soliha-accueil[data-ecran="situation"] .soliha-sujet h1,
	.soliha-accueil[data-ecran="situation"] .soliha-sujet > h1.wp-block-heading {
		white-space: normal;
		overflow: visible;
		text-overflow: unset;
		font-size: clamp(1.1rem, 5.2vw, 1.4rem) !important;
	}
}

.soliha-article:has(.soliha-collectivites__form) h1.wp-block-post-title::after {
	width: 4.5rem;
	margin: 0.85rem auto 0;
	background: var(--wp--preset--color--orange, #E89522);
	content: none;
}

.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form::before {
	top: 10.25rem;
	left: 19%;
	right: auto;
	width: clamp(15rem, 18vw, 19rem);
	height: clamp(17rem, 24vw, 22rem);
	transform: translateX(-50%);
	background-position: center bottom;
}

@media (max-width: 699px) {
	.soliha-article:has(.soliha-collectivites__form) h1.wp-block-post-title {
		font-size: clamp(1.55rem, 7vw, 1.95rem) !important;
	}
	.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form::after {
		top: 0.85rem;
		left: 1rem;
		right: 1rem;
		width: auto;
		font-size: clamp(1.15rem, 5vw, 1.5rem);
	}

	.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form::before {
		top: 4.6rem;
		left: calc(50% - 5.5rem) !important;
		width: 5rem;
		height: 6rem;
	}
}

.soliha-article:has(.soliha-collectivites__form) h1.wp-block-post-title {
	position: absolute;
	width: 1px !important;
	height: 1px;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.soliha-carte--ecosysteme .soliha-ecosysteme__liste {
	list-style: none;
	margin: 0.5rem 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.1rem;
}

.soliha-carte--ecosysteme .soliha-ecosysteme__liste li {
	position: relative;
	padding-left: 1rem;
}

.soliha-carte--ecosysteme .soliha-ecosysteme__liste li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.62em;
	width: 0.35rem;
	height: 0.35rem;
	border-radius: 50%;
	background: var(--wp--preset--color--bleu, #00618A);
}

.soliha-carte--ecosysteme .soliha-ecosysteme__liste a {
	display: inline-flex;
	align-items: baseline;
	gap: 0.3rem;
	padding: 0.22rem 0;
	color: var(--wp--preset--color--bleu, #00618A);
	font-weight: 600;
	font-size: 0.95rem;
	line-height: 1.35;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

.soliha-carte--ecosysteme .soliha-ecosysteme__liste a::after {
	content: "›";
	font-weight: 700;
	text-decoration: none;
	transition: none;
}

.soliha-carte--ecosysteme .soliha-ecosysteme__liste a:hover,
.soliha-carte--ecosysteme .soliha-ecosysteme__liste a:focus-visible {
	text-decoration-thickness: 2px;
}

.soliha-carte--ecosysteme .soliha-ecosysteme__liste a:hover::after {
	transform: translateX(2px);
}

.soliha-carte--ecosysteme .soliha-ecosysteme__liste a:focus-visible {
	outline: 3px solid var(--wp--preset--color--bleu, #00618A);
	outline-offset: 3px;
	border-radius: 0.2rem;
}

@media (prefers-reduced-motion: reduce) {

	.soliha-carte--ecosysteme .soliha-ecosysteme__liste a:hover::after {
		transform: none;
	}
}

.soliha-contenu__volet--particuliers .soliha-contenu__grille > .soliha-carte--ecosysteme {
	order: 9;
}

@media (min-width: 1100px) {
	.soliha-contenu__grille--territoires .soliha-carte--ecosysteme {
		padding-top: 3.8rem;
		order: 1;
	}

	.soliha-contenu__grille--territoires .soliha-carte--carte {
		padding-top: 1.15rem !important;
	}

	.soliha-contenu__volet--particuliers .soliha-particuliers__aside,
	.soliha-contenu__volet--particuliers .soliha-particuliers__principal {
		display: flex;
		flex-direction: column;
		gap: 0.85rem;
		grid-row: 1 / -1;
	}

	.soliha-contenu__volet--particuliers .soliha-particuliers__aside {
		align-self: stretch;
		grid-column: 2;
	}

	.soliha-contenu__volet--particuliers .soliha-particuliers__aside > .soliha-carte--carte {
		flex: 1 1 auto;
	}

	.soliha-contenu__volet--particuliers .soliha-particuliers__aside > .soliha-max-actions,
	.soliha-contenu__volet--particuliers .soliha-particuliers__aside > .soliha-carte--ecosysteme,
.soliha-contenu__grille--territoires .soliha-territoires__aside > .soliha-max-actions,
	.soliha-contenu__grille--territoires .soliha-territoires__aside > .soliha-carte--ecosysteme {
		flex: 0 0 auto;
	}

	.soliha-contenu__volet--particuliers .soliha-particuliers__principal {
		align-self: stretch;
		justify-content: space-between;
		grid-column: 1;
	}

	.soliha-contenu__volet--particuliers .soliha-particuliers__principal > .soliha-carte {
		height: auto;
		flex: 0 0 auto;
	}

	.soliha-contenu__volet--particuliers .soliha-particuliers__aside > .soliha-carte,
	.soliha-contenu__volet--particuliers .soliha-particuliers__aside > .soliha-max-actions {
		height: auto;
	}

	.soliha-contenu__grille--territoires .soliha-territoires__aside > .soliha-carte--carte {
		flex: 1 1 auto;

		min-height: 9rem;
	}

	.soliha-contenu__volet--particuliers .soliha-contenu__grille > .soliha-max-actions {
		justify-content: flex-start !important;
	}
}

@media (max-width: 699px) {

	.wp-block-button__link,
	.soliha-retour__bouton,
	.soliha-pied .wp-block-navigation a.wp-block-navigation-item__content,
	.soliha-pied .wp-block-navigation a,
	.soliha-pied__don a,
	.soliha-pied__reseaux a,
	.soliha-pied__mentions a,
	.soliha-carte-asso__liste a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 2.75rem;
	}

	.soliha-pied__mentions,
	.soliha-pied__mentions a {
		font-size: 0.8125rem;
	}

	.soliha-max-actions__surtitre,
	.soliha-actualite__date,
	.soliha-contact__sous-titre,

	.soliha-contact__aide,

	.soliha-actus__rubrique {
		font-size: 0.78rem !important;
	}
}

.soliha-tuile--diagnostic     .wp-block-button__link::before { transform: scale(1.010); }
.soliha-tuile--personne-agee  .wp-block-button__link::before { transform: translateY(1.9%) scale(0.958); }
.soliha-tuile--cles           .wp-block-button__link::before { transform: scale(0.990); }
.soliha-tuile--maison-main    .wp-block-button__link::before { transform: translateY(-2.5%) scale(0.818); }
.soliha-tuile--beneficiaires  .wp-block-button__link::before,
.soliha-tuile--menage-famille .wp-block-button__link::before { transform: scale(1.079); }
.soliha-tuile--localisation   .wp-block-button__link::before { transform: translateY(2.7%) scale(0.966); }
.soliha-tuile--bleu-ecologie  .wp-block-button__link::before { transform: scale(0.972); }

.soliha-tuile__libelle {
	display: flex;
	align-items: center;
	justify-content: center;

	min-height: 2.4em;
	text-align: center;
	text-wrap: balance;
}

@media (max-width: 1000px) and (orientation: landscape) {

	.soliha-scene:has(.soliha-accueil[data-ecran]) {
		overflow: clip;
	}

	@media (max-height: 500px) {
		.soliha-scene:has(.soliha-accueil[data-ecran])::before {
			filter: blur(7px) saturate(0.92);
			transform: scale(1.06);
		}
	}

	.soliha-actualite__date,
	.soliha-liste__date,
	.soliha-actualite__extrait,
	.soliha-liste__extrait,
	.soliha-media__note,
	.soliha-carte__carte-appel,
	.soliha-actus__rubrique,
	.soliha-contact__sous-titre,
	.soliha-contact__aide,
	.soliha-max-actions__surtitre,
	.soliha-pied__mentions,
	.soliha-pied__mentions a,
	.soliha-pied__adresse,
	.soliha-pied__adresse strong {
		font-size: 0.78rem;
	}

	.soliha-scene:has(.soliha-accueil[data-ecran])::after {
		background: rgba(250, 249, 246, 0.56);
	}
}

@media (max-width: 1099px) {
	.soliha-contenu__volet--particuliers .soliha-contenu__grille .soliha-max-actions {
		order: 1;
	}
	.soliha-contenu__volet--particuliers .soliha-contenu__grille .soliha-carte--mission {
		order: 2;
	}
	.soliha-contenu__volet--particuliers .soliha-contenu__grille .soliha-carte--media {
		order: 3;
	}
	.soliha-contenu__volet--particuliers .soliha-contenu__grille .soliha-carte--ecosysteme {
		order: 4 !important;
	}
	.soliha-contenu__volet--particuliers .soliha-contenu__grille .soliha-carte--carte {
		order: 5;
	}
}

.soliha-carte--mission .soliha-carte__para,
.soliha-carte--mission .soliha-carte__texte,
.soliha-carte--mission p {
	font-size: 1rem;
	line-height: 1.7;
}

@media (max-width: 699px) {
	.soliha-retour__bouton {
		min-height: 2.5rem;
		padding-block: 0.3rem;
	}

	.soliha-chapo--entete,
	.soliha-chapo--entete strong {
		font-size: 0.8125rem !important;
		line-height: 1.38;
	}

	.soliha-ecran--accueil .soliha-porte {
		padding-block: 0.5rem !important;
	}

	.soliha-ecran--accueil .soliha-portes.wp-block-columns {
		gap: 1rem;
	}

	.soliha-ecran--accueil > h1.wp-block-heading + .soliha-portes {
		margin-top: 25px !important;
	}

	.soliha-ecran--accueil {
		--soliha-max-slot: clamp(5.5rem, 19svh, 13rem);
	}

}

@media (max-width: 699px), (min-width: 700px) and (orientation: landscape) and (max-height: 500px) {

.soliha-ecran--accueil .soliha-porte .wp-block-button__link {
	position: relative;
	justify-content: center;
	text-align: center;

	padding-inline: 3.2rem !important;
}

.soliha-ecran--accueil .soliha-porte .wp-block-button__link > .soliha-porte__picto {
	position: absolute;
	left: 0.8rem;
	top: 50%;
	margin: 0;
	translate: 0 -50%;
}

.soliha-ecran--accueil .soliha-porte .wp-block-button__link > .soliha-porte__picto[src*="bleu-idee"] {
	transform: scale(1.05);
}

.soliha-ecran--accueil .soliha-porte .wp-block-button__link::after {
	content: "";
	position: absolute;
	right: 0.8rem;
	top: 50%;
	width: 1.1rem;
	height: 1.1rem;
	translate: 0 -50%;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h15M13 5.5 19.5 12 13 18.5'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h15M13 5.5 19.5 12 13 18.5'/%3E%3C/svg%3E") center / contain no-repeat;
	pointer-events: none;
}

@media (max-width: 359px) {
	.soliha-ecran--accueil .soliha-porte .wp-block-button__link {
		padding-inline: 2.5rem !important;
	}

	.soliha-ecran--accueil .soliha-porte .wp-block-button__link::after {
		right: 0.6rem;
	}

	.soliha-ecran--accueil .soliha-porte .wp-block-button__link > .soliha-porte__picto {
		left: 0.6rem;
	}
}
}

body:has(.soliha-collectivites__form) {
	background-color: #96CCF7 !important;
}

.soliha-porte .wp-block-button__link img[src*="bleu-information"] {
	transform: scale(1.05);
}

.soliha-porte .wp-block-button__link img[src*="bleu-idee"] {
	transform: scale(1.05);
}

@media (min-width: 1100px) {
	.soliha-accueil[data-ecran="accueil"] .soliha-porte .wp-block-button__link img[src*="bleu-information"] {
		transform: translate(-50%, -50%) scale(1.05) !important;
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-porte .wp-block-button__link img[src*="bleu-idee"] {
		transform: translate(-50%, -50%) scale(1.05) !important;
	}
}

.soliha-porte .wp-block-button__link {
	min-height: 2.5rem;
	padding-block: 0.35rem;
}

@media (max-width: 699px) {

	.soliha-tuile--diagnostic     .wp-block-button__link::before { transform: scale(1.155); }
	.soliha-tuile--personne-agee  .wp-block-button__link::before { transform: translateY(1.9%) scale(1.096); }
	.soliha-tuile--cles           .wp-block-button__link::before { transform: scale(1.133); }
	.soliha-tuile--maison-main    .wp-block-button__link::before { transform: translateY(-2.5%) scale(0.936); }
	.soliha-tuile--beneficiaires  .wp-block-button__link::before,
.soliha-tuile--menage-famille .wp-block-button__link::before { transform: scale(1.234); }
	.soliha-tuile--localisation   .wp-block-button__link::before { transform: translateY(2.7%) scale(1.105); }
	.soliha-tuile--bleu-ecologie  .wp-block-button__link::before { transform: scale(1.112); }
}

.soliha-sujet__intro {
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
	box-sizing: border-box;
}

@media (min-width: 700px) and (max-width: 1099px) and (min-height: 600px)
   and (orientation: landscape) and (pointer: coarse) {

	.soliha-solutions .soliha-tuile .wp-block-button__link {
		flex-direction: row;
		justify-content: flex-start;
		gap: 1rem;
		padding: 0.85rem 1.1rem;
		min-height: 7.5rem;
		font-size: 1.55rem;
	}

	.soliha-solutions .soliha-tuile .wp-block-button__link::before {
		width: 6.5rem;
		height: 6.5rem;
	}

	.soliha-solutions .soliha-tuile .soliha-tuile__libelle {
		flex: 1 1 auto;
	}
}

@media (max-width: 699px) {
	.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form,
	.soliha-collectivites__form {
		background-image:
			url('assets/illustrations/collectivites-habitat.png'),
			linear-gradient(
				to bottom,
				var(--wp--preset--color--bleu-75, #4089A7) 0 11.5rem,
				var(--wp--preset--color--beige-25, #F5F4F0) 11.5rem 100%
			) !important;
		background-size: auto 6rem, 100% 100% !important;
		background-position: calc(50% + 3rem) 4.6rem, center !important;
	}

	.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form > .soliha-contact__legende,
	.soliha-collectivites__form > .soliha-contact__legende {
		padding-top: 12rem;
	}
}

.soliha-actualite__date,
.soliha-actualite__extrait,
.soliha-actus__rubrique,
.soliha-contact__sous-titre,
.soliha-contact__aide {
	font-size: 0.78rem !important;
}

@media (max-width: 1099px) {
	.soliha-max-actions__surtitre {
		font-size: 0.78rem !important;
	}
}

@media (pointer: coarse) {
	.soliha-page-institutionnelle li > a {
		display: inline-block;
		padding-block: 0.55rem;
	}

	.soliha-contact__form select,
	.soliha-collectivites__form select,
.soliha-liste__action,
.wp-block-query-pagination a,
	.wp-block-query-pagination .page-numbers {
		min-height: 2.75rem;
		box-sizing: border-box;
	}

	.soliha-article__categories .wp-block-post-terms a {
		display: inline-block;
		min-height: 2.25rem;
		padding-block: 0.55rem;
		box-sizing: border-box;
	}
}

@media (max-width: 833px) {
	.soliha-pied .wp-block-navigation-item:not(:last-child)::after {
		content: none;
		margin: 0;
	}

	.soliha-pied .wp-block-navigation,
	.soliha-pied .wp-block-navigation__container {
		column-gap: 1.45rem;
	}
}

.soliha-contact__groupe--identite,
.soliha-collectivites__form .soliha-contact__groupe--identite,
.soliha-article:has(.soliha-collectivites__form) .soliha-contact__groupe--identite,
.soliha-collectivites__form > .soliha-contact__groupe,
.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form > .soliha-contact__groupe {
	grid-template-columns: 1fr !important;
}

.soliha-contact__groupe--identite .soliha-contact__champ,
.soliha-contact__groupe--identite .soliha-contact__sous-titre,
.soliha-collectivites__form > .soliha-contact__groupe > .soliha-contact__champ,
.soliha-collectivites__form > .soliha-contact__groupe > .soliha-contact__sous-titre {
	grid-column: 1 / -1 !important;
}

@media (min-width: 700px) and (max-width: 1099px) {
	.soliha-accueil[data-ecran="situation"] .soliha-guide-max {
		bottom: 2.75rem !important;
		padding-bottom: 0.65rem !important;
	}
}

@media (max-width: 1099px) {
	.soliha-solutions .soliha-tuile .soliha-tuile__libelle {
		min-height: 0;
	}
}

.soliha-video-attente {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin: 0;
	padding: 1rem;
	box-sizing: border-box;
	border: 0;
	border-radius: inherit;
	background:
		radial-gradient(120% 120% at 50% 0%, rgba(0, 97, 138, 0.55) 0%, rgba(6, 43, 58, 0) 60%),
		var(--wp--preset--color--encre, #062B3A);
	color: var(--wp--preset--color--blanc, #fff);
	font-family: inherit;
	text-align: center;
	cursor: pointer;
	position: relative;
	gap: 0.75rem;

	background-image:
		linear-gradient(rgba(6, 43, 58, 0.46), rgba(6, 43, 58, 0.84)),
		var(--soliha-fresque);
	background-size: cover, cover;
	background-position: center, center;
	transition: background-color 200ms ease-out;
}

.soliha-video-attente:hover,
.soliha-video-attente:focus-visible {
	background:
		radial-gradient(120% 120% at 50% 0%, rgba(0, 97, 138, 0.75) 0%, rgba(6, 43, 58, 0) 62%),
		var(--wp--preset--color--encre, #062B3A);
}

.soliha-video-attente__triangle {
	filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.35));
	display: flex;
	align-items: center;
	justify-content: center;
	width: 4.5rem;
	height: 4.5rem;
	margin: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.96);
	box-shadow: 0 10px 26px rgba(6, 43, 58, 0.45);
	transition: transform 220ms cubic-bezier(0.22, 0.61, 0.36, 1),
		background-color 220ms ease-out;
}

.soliha-video-attente__titre {
	max-width: 32ch;
	font-size: clamp(1rem, 0.9rem + 0.4vw, 1.2rem);
	font-weight: 700;
	line-height: 1.25;
	text-wrap: balance;
	text-shadow: 0 2px 10px rgba(6, 43, 58, 0.55);
}

.soliha-video-attente__note {
	line-height: 1.3;
	opacity: 0.7;
	font-size: 0.78rem;
}

.soliha-video-lecteur {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
	border-radius: inherit;
}

@media (pointer: coarse) {
	.soliha-liste__article-titre a {
		display: block;
		padding-block: 0.72rem;
	}

	.soliha-pied__don a,
	.soliha-pied__mentions a {
		display: inline-flex;
		align-items: center;
		min-height: 2.75rem;
		padding-inline: 0.35rem;
		box-sizing: border-box;
	}

	.soliha-pied .wp-block-navigation-item__content,
	.soliha-pied .wp-block-navigation a,
.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form .soliha-contact__champ select,
	.soliha-article:has(.soliha-collectivites__form) .soliha-collectivites__form .soliha-contact__champ input {
		min-height: 2.75rem !important;
	}

}

.soliha-video-responsive:has(.soliha-video-attente) {
	aspect-ratio: auto;
	height: auto;
	container-type: inline-size;
}

.soliha-video-attente {
	aspect-ratio: auto;
	height: auto;
	min-height: 9rem;
	min-height: 56.25cqw;
}

@media (min-width: 62rem) {

	.soliha-page-mouvement .soliha-page-intro::after {
		right: -184px;
		width: 176px;
		height: 176px;
	}
}

.soliha-article p,
.soliha-article .wp-block-post-content p,
.soliha-article li,
.soliha-article .wp-block-post-content li,
.soliha-article td,
.soliha-article th,
.soliha-article dd,
.soliha-contact__aide,
.soliha-liste__extrait {
	overflow-wrap: break-word;
}

.soliha-partenaire figure,
.soliha-partenaire img {
	max-width: 100%;
	height: auto;
	box-sizing: border-box;
}

@media (min-width: 700px) {
	.soliha-partenaire {
		grid-template-columns: minmax(min(8rem, 30%), 11rem) minmax(0, 1fr);
	}
}

@media (pointer: coarse) {
	.soliha-pied__reseaux a {
		min-width: 44px;
		min-height: 44px;
	}
}

@media (min-width: 700px) {
	.soliha-carte--mission .soliha-carte__para {
		max-width: none;
	}
}

.soliha-video-attente__triangle::after {
	content: '';
	width: 0;
	height: 0;
	margin-left: 3px;
	border-style: solid;
	border-width: 0.85rem 0 0.85rem 1.4rem;
	border-color: transparent transparent transparent var(--wp--preset--color--bleu, #00618A);
}

.soliha-video-attente:hover .soliha-video-attente__triangle,
.soliha-video-attente:focus-visible .soliha-video-attente__triangle {
	transform: scale(1.08);
	background: #fff;
}

@media (prefers-reduced-motion: reduce) {
	.soliha-video-attente:hover .soliha-video-attente__triangle,
	.soliha-video-attente:focus-visible .soliha-video-attente__triangle {
		transform: none;
	}
}

.soliha-carte-svg {
	margin: clamp(1.25rem, 3vw, 2rem) 0 clamp(1.75rem, 4vw, 2.5rem);
}

.soliha-carte-svg__cadre {
	overflow-x: auto;
	overscroll-behavior-x: contain;
}

.soliha-carte-svg__cadre:focus-visible {
	outline: 3px solid var(--wp--preset--color--bleu, #00618A);
	outline-offset: 3px;
	border-radius: 8px;
}

.soliha-carte-svg svg {
	display: block;
	width: 100%;
	max-width: 900px;
	height: auto;
	margin-inline: auto;
}

.soliha-carte-svg figcaption {
	max-width: 46ch;
	margin: 0.75rem auto 0;
	color: var(--wp--preset--color--gris, #4E6875);
	font-size: 0.8rem;
	line-height: 1.4;
	text-align: center;
	text-wrap: pretty;
}

@media (min-width: 700px) and (max-width: 1366px) and (orientation: landscape) {
	.soliha-actualite__action,
	.soliha-actualites__lien,
	.soliha-carte__carte-appel {
		font-size: 0.78rem;
	}
}

@media (min-width: 760px) {

	.soliha-accueil[data-ecran="situation"] .soliha-sujet__statistique {
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 0.3rem;
		box-sizing: border-box;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-sujet__chiffre {
		margin: 0;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-sujet__intro {
		min-width: 0;
	}
}

@media (min-width: 1100px) {
	.soliha-accueil[data-ecran="situation"] .soliha-sujet.est-actif {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-sujet.est-actif > h1 {
		flex: 0 0 100%;
		order: 0;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-sujet.est-actif > .soliha-situation__choix {
		order: 3;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-sujet.est-actif::after {
		content: "";
		flex: 0 0 100%;
		order: 2;
		height: 0;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-sujet__statistique {
		order: 1;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-sujet__intro {
		order: 2;
		align-items: center;
	}
}

@media (min-width: 760px) and (max-width: 1099px) {

	.soliha-accueil[data-ecran="situation"] .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix {
		max-width: none;
	}
}

@media (min-width: 760px) and (max-width: 1099px) and (orientation: portrait) {
	.soliha-situation .soliha-sujet.est-actif {
		margin-block: auto;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-sujet__intro {
		align-items: center;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix a {
		justify-content: center !important;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix a::after {
		min-height: 0;
	}
}

@media (pointer: coarse) {
	.soliha-actus__reinitialiser {
		display: inline-flex;
		align-items: center;
		min-height: 2.75rem;
	}
}

.soliha-truck__axe > * {
	overflow-wrap: break-word;
	min-width: 0;
}

.custom-logo-link:focus-visible,
.wp-block-site-logo a:focus-visible {
	outline: 2px solid var(--wp--preset--color--bleu, #00618A);
	outline-offset: 3px;
	border-radius: 4px;
}

@media (min-width: 1100px) and (max-width: 1299px) {
	.soliha-accueil[data-ecran] .soliha-ecran.soliha-ecran,
	.soliha-accueil[data-ecran] .soliha-contact.soliha-contact {
		padding-left: max(var(--soliha-gouttiere, 1rem), 6.5rem);
	}
}

.soliha-carte-svg svg text.label {
	font-size: 17px;
}

@media (max-width: 699px) {
	.soliha-carte-svg svg text.label {
		font-size: 34px;
	}

	.soliha-carte-svg svg text.label--charente {
		transform: translate(0, 36px);
	}

	.soliha-carte-svg svg text.label--charente-maritime {
		transform: translate(-6px, -26px);
	}

	.soliha-carte-svg svg text.label--deux-sevres {
		transform: translate(-52px, -44px);
	}

	.soliha-carte-svg svg text.label--pays-basque {
		transform: translate(18px, -42px);
	}

	.soliha-carte-svg svg text.label--bearn-bigorre {
		transform: translate(0, 42px);
	}

	.soliha-carte-svg svg text.hint {
		display: none;
	}
}

@media (orientation: landscape) and (max-height: 500px) {
	.soliha-scene--article::before {
		filter: blur(7px) saturate(0.92);
		transform: scale(1.06);
	}
}

@media (min-width: 1100px) and (max-width: 1299px) {
	.soliha-accueil[data-ecran="contact"] .soliha-ecran {
		background-image: linear-gradient(
			to right,
			rgb(64, 137, 167) 0,
			rgb(64, 137, 167) 39%,
			rgb(245, 244, 240) 39%,
			rgb(245, 244, 240) 100%
		);
	}
}

@media (max-width: 699px), (orientation: landscape) and (max-height: 500px) {
	.soliha-scene:has(.soliha-accueil[data-ecran])::before,
	.soliha-scene:has(.soliha-accueil[data-ecran])::after {
		position: fixed;
		bottom: 0;

	}

	.soliha-scene:has(.soliha-accueil[data-ecran])::before,
	.soliha-scene:has(.soliha-accueil[data-ecran])::after,
	.soliha-scene:has(.soliha-accueil[data-ecran="thematique"])::before,
	.soliha-scene:has(.soliha-accueil[data-ecran="thematique"])::after {
		bottom: calc(-1 * var(--soliha-debord-fresque, 0px));
		height: auto !important;
		min-height: calc(100svh + var(--soliha-rallonge-scene));
	}
}

@media (max-width: 699px) {
	:root {
		--soliha-rallonge-scene: 0rem;
		--soliha-debord-fresque: 6.5rem;
	}

	.soliha-scene.soliha-scene--hauteur-commune .soliha-accueil[data-ecran="accueil"] .soliha-guide-max,
	.soliha-scene.soliha-scene--hauteur-commune .soliha-accueil[data-ecran="solutions"] .soliha-guide-max,
	.soliha-scene.soliha-scene--hauteur-commune .soliha-accueil[data-ecran="situation"] .soliha-sujet.est-actif:not(.intro-ouverte) > .soliha-sujet__max {
		translate: 0 -2rem;
		z-index: 3;
	}

	.soliha-scene.soliha-scene--hauteur-commune .soliha-accueil[data-ecran="accueil"] .soliha-guide-max__avatar,
	.soliha-scene.soliha-scene--hauteur-commune .soliha-accueil[data-ecran="solutions"] .soliha-guide-max__avatar,
	.soliha-scene.soliha-scene--hauteur-commune .soliha-accueil[data-ecran="situation"] .soliha-sujet.est-actif:not(.intro-ouverte) > .soliha-sujet__max {
		scale: 0.8;
		transform-origin: 100% 100%;
	}
}

@media (max-width: 699px) {
	.soliha-accueil[data-ecran="solutions"] .soliha-tuiles {
		flex: 0 0 auto;
		gap: 6px;
		margin-top: 0.25rem;
		margin-bottom: 0.75rem;
	}

	.soliha-solutions .soliha-tuile .wp-block-button__link {
		padding-block: 0.25rem;
		gap: 0.25rem;
	}

	.soliha-accueil[data-ecran="solutions"] .soliha-solutions {
		min-height: calc(
			100svh + var(--soliha-rallonge-scene)
			- var(--soliha-hauteur-entete)
			- var(--soliha-parcours-h, 1.5rem)
			- 6rem
		);
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil {
		min-height: calc(
			100svh + var(--soliha-rallonge-scene)
			- var(--soliha-hauteur-entete)
			- 7.5rem
		);
	}

	.soliha-solutions .soliha-tuile .wp-block-button__link::before {
		width: 2.8rem;
		height: 2.8rem;
	}

	.soliha-accueil[data-ecran] .soliha-guide-max {
		bottom: 0 !important;
		padding-bottom: 0;
	}

	.soliha-accueil[data-ecran] .soliha-guide-max__avatar {
		translate: 0 2.9%;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation {
		min-height: 0;
		flex: 1 1 auto;
	}

	.soliha-scene.soliha-scene--hauteur-commune:has(.soliha-accueil[data-ecran="accueil"]),
	.soliha-scene.soliha-scene--hauteur-commune:has(.soliha-accueil[data-ecran="solutions"]),
	.soliha-scene.soliha-scene--hauteur-commune:has(.soliha-accueil[data-ecran="situation"]) {
		min-height: var(--soliha-scene-commune) !important;
	}

	.soliha-scene.soliha-scene--hauteur-commune .soliha-accueil[data-ecran="accueil"],
	.soliha-scene.soliha-scene--hauteur-commune .soliha-accueil[data-ecran="solutions"],
	.soliha-scene.soliha-scene--hauteur-commune .soliha-accueil[data-ecran="situation"] {
		min-height: calc(var(--soliha-scene-commune) - var(--soliha-hauteur-entete)) !important;
	}
}

.soliha-carte__chiffres {
	display: block;
	container-type: inline-size;
	margin-top: 1.1rem;
	padding-top: 1rem;
	border-top: 1px solid rgba(6, 43, 58, 0.14);
}

.soliha-chiffres__titre {
	display: block;
	margin-bottom: 0.85rem;
	font-size: 1rem;
	font-weight: 400;

	color: #004F71;
}

.soliha-chiffres {
	display: grid;
	gap: 1.1rem;
}

.soliha-chiffre {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.3rem;
	text-align: center;
}

.soliha-chiffre + .soliha-chiffre::before {
	content: "";
	display: block;
	width: 4rem;
	height: 2px;
	margin-bottom: 0.8rem;
	border-radius: 2px;
	background: rgba(6, 43, 58, 0.35);
}

.soliha-chiffre__prefixe {
	display: block;
	font-size: 0.85rem;
	font-weight: 700;
	color: var(--wp--preset--color--rouge);
	line-height: 1.2;
}

.soliha-chiffre__nombre {
	display: block;
	font-size: 2.1rem;
	font-weight: 800;
	line-height: 1.05;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--rouge);
	font-variant-numeric: lining-nums;
}

.soliha-chiffre__unite {
	letter-spacing: 0;

	white-space: normal;
}

.soliha-chiffre__unite--mots {
	font-size: 0.55em;
	font-weight: 700;

	white-space: nowrap;
}

.soliha-chiffre__legende {
	display: block;
	max-width: 22rem;
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1.4;
	color: var(--wp--preset--color--bleu);
}

@container (min-width: 560px) {
	.soliha-chiffres {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0;
		align-items: stretch;
	}

	.soliha-chiffre {
		padding: 0.25rem 0.9rem;
	}

	.soliha-chiffre + .soliha-chiffre {
		border-left: 1px solid rgba(6, 43, 58, 0.14);
	}

	.soliha-chiffre + .soliha-chiffre::before {
		display: none;
	}

	.soliha-chiffre__nombre {
		font-size: clamp(1.9rem, 6cqi, 2.8rem);
		white-space: nowrap;
	}

}

@media (orientation: landscape) and (max-height: 500px) {
	.soliha-accueil[data-ecran="accueil"] .soliha-guide-max,
	.soliha-accueil[data-ecran="situation"] .soliha-guide-max,
	.soliha-accueil[data-ecran="solutions"] .soliha-guide-max {
		bottom: 0 !important;
		padding-bottom: 0;
	}

	.soliha-accueil[data-ecran="accueil"] .soliha-ecran--accueil,
	.soliha-accueil[data-ecran="situation"] .soliha-situation,
	.soliha-accueil[data-ecran="solutions"] .soliha-solutions {
		position: static;
	}

	.soliha-accueil[data-ecran] .soliha-guide-max__avatar {
		translate: 0 2.9%;
	}
}

.soliha-thematique .soliha-contenu__volet--particuliers .soliha-contenu__intro {
	text-wrap: balance;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation {
	padding-bottom: 0;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-template-areas:
		"titre"
		"chiffre"
		"choix"
		"vide"
		"bulle"
		"suite"
		"max";
	grid-template-rows: auto auto auto minmax(0, 1fr) auto auto auto !important;
	justify-items: center;
	align-items: start !important;
	align-content: stretch;
	row-gap: 0.55rem;
	column-gap: 0 !important;

	margin: 0 !important;
	flex: 1 1 auto !important;
	align-self: stretch;
	height: auto !important;
	min-height: 100%;
	padding: 0.35rem 0 0;

	--s3-carte-h: clamp(5.5rem, 15.5svh, 10rem);

	--s3-max: min(40vw, calc(var(--soliha-max-slot) - 0.25rem));
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > h1 {
	grid-area: titre;
	max-width: none;
	width: 100%;
	margin: 0 !important;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__statistique {
	grid-area: chiffre;
	display: block;
	width: fit-content !important;
	max-width: min(100%, 62rem);
	margin: 0;
	padding: 0.4rem 1rem;
	font-size: clamp(0.88rem, 3.6vw, 1.05rem);
	line-height: 1.3;
	text-align: center;
	text-wrap: pretty;
	white-space: normal;
	overflow: visible;
	text-overflow: clip;
	border-radius: 1.1rem;
	flex: none;
	align-self: start;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__statistique .soliha-sujet__chiffre {
	display: inline;
	width: auto;
	font-size: 1.45em !important;
	line-height: 1 !important;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix {
	grid-area: choix;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	gap: 0.55rem;
	width: min(100%, 28rem);
	max-width: none;
	min-height: 0;
	height: auto;
	margin: 0.35rem 0 0;
	align-self: start;
	flex: none;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix {
	display: flex;
	flex: 0 0 var(--s3-carte-h);
	width: 100%;
	height: var(--s3-carte-h);
	min-height: 0 !important;
	margin: 0;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix > .wp-block-button__link {
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	gap: 0.6rem;
	height: 100%;
	padding: 0.5rem 0.9rem;
	text-align: left;
	font-size: clamp(1.05rem, 4.8vw, 1.3rem);
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix > .wp-block-button__link > .soliha-choix__titre {
	flex: 1 1 0;
	min-width: 0;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix > .wp-block-button__link::after {
	flex: 0 0 auto;
	width: 4.6rem;
	height: 100%;
	max-height: none;
	background-position: center;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__max {
	grid-area: max;
	display: block;
	justify-self: end;
	align-self: end;
	width: var(--s3-max);
	height: var(--s3-max);
	max-width: none;
	margin: -0.6rem 0 -0.6rem;
	translate: 0 3%;
	object-fit: contain;
	animation: soliha-glisse-droite 0.85s cubic-bezier(0.22, 0.61, 0.36, 1) 0.18s both;
	transition: width 0.3s ease, height 0.3s ease, margin 0.3s ease;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro {
	grid-area: bulle;
	position: relative;
	display: block !important;
	align-self: end;
	justify-self: stretch;
	width: auto;
	max-width: none;
	height: auto !important;
	margin: 0;
	padding: 0.7rem 0.95rem !important;
	background: rgba(255, 255, 255, 0.97);
	border: 1.5px solid #062B3A;
	border-radius: 0.95rem;
	box-shadow: 0 8px 22px rgba(6, 43, 58, 0.22), 0 2px 6px rgba(6, 43, 58, 0.12);
	color: #062B3A;
	font-size: clamp(0.88rem, 3.7vw, 1rem);
	font-weight: 600;
	line-height: 1.38 !important;
	text-align: left;
	flex: none;
	z-index: 2;
	animation: soliha-apparait 0.55s ease-out 0.75s both;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro .soliha-sujet__texte {
	display: block;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro--liste ul {
	margin: 0.25rem 0 0;
	padding: 0 0 0 1.2em;
	list-style: disc;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro--liste li {
	margin: 0.1em 0;
	padding-left: 0.1em;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro--liste li::marker {
	color: #00618A;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro--liste ul ul {
	margin: 0.15rem 0 0.1rem !important;
	padding-left: 1.1em !important;
	list-style: circle !important;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro--liste ul.soliha-liste--sans-puce {
	padding-left: 0;
	list-style: none;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro::before,
.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro::after {
	content: "";
	display: block !important;
	position: absolute;
	left: auto;
	top: auto;
	transform: none;
	border-style: solid;
	border-color: transparent;
	pointer-events: none;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro::before {
	right: 2.4rem;
	bottom: -0.65rem;
	border-width: 0.65rem 0.6rem 0 0.6rem;
	border-top-color: #062B3A;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro::after {
	right: 2.5rem;
	bottom: -0.5rem;
	border-width: 0.52rem 0.5rem 0 0.5rem;
	border-top-color: #fff;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__lire-suite {
	grid-area: suite;
	justify-self: start;
	position: relative;
	z-index: 3;
	margin: -1.15rem 0 0 1.1rem;
	padding: 0.25rem 0.85rem;
	background: #fff;
	border: 1.5px solid #062B3A;
	border-radius: 999px;
	box-shadow: 0 3px 8px rgba(6, 43, 58, 0.18);
	color: #004F71;
	font: inherit;
	font-size: 0.85rem;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
	animation: soliha-apparait 0.55s ease-out 0.75s both;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__lire-suite:focus-visible {
	outline: 3px solid #062B3A;
	outline-offset: 2px;
}

.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__lire-suite::before {
	content: "";
	position: absolute;
	inset: -0.6rem -0.5rem;
}

@media (max-width: 699px) {

	.soliha-accueil[data-ecran="situation"] {
		display: flex;
		flex-direction: column;
	}

	.soliha-accueil[data-ecran="situation"] > .soliha-parcours {
		align-self: stretch;
		width: 100%;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif:not(.intro-ouverte) > .soliha-sujet__intro > .soliha-sujet__texte {
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		line-clamp: 3;
		overflow: hidden;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif.intro-ouverte > .soliha-sujet__intro {
		grid-area: auto !important;
		grid-row: 5 / 8 !important;
		grid-column: 1 !important;
		align-self: stretch !important;
		margin: 0 !important;
		padding-bottom: 4.8rem !important;
		z-index: 4;

		background: #fff !important;
		box-shadow: 0 14px 34px rgba(6, 43, 58, 0.3), 0 3px 8px rgba(6, 43, 58, 0.14) !important;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif.intro-ouverte > .soliha-sujet__intro::before,
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif.intro-ouverte > .soliha-sujet__intro::after {
		display: none !important;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif.intro-ouverte > .soliha-sujet__max {
		grid-area: max !important;
		width: 5rem !important;
		height: 5rem !important;
		margin: 0 0.5rem 0.35rem 0 !important;
		translate: none;
		z-index: 6;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif.intro-ouverte > .soliha-sujet__lire-suite {
		grid-area: max;
		align-self: end;
		justify-self: start;
		margin: 0 0 0.9rem 1.1rem;
		z-index: 7;
	}
}

@media (max-width: 22.999rem) {
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif {
		--s3-max: 7.5rem;
	}
}

@media (min-width: 700px) {
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif {
		grid-template-areas:
			"titre"
			"chiffre"
			"choix"
			"vide"
			"bas";
		grid-template-rows: auto auto auto minmax(0, 1fr) auto !important;
		row-gap: 0 !important;

		padding-top: 0.5rem;

		--s3-carte-h: clamp(7.5rem, calc(29svh + var(--soliha-place) * 0.06), calc(21rem + var(--soliha-place) * 0.2));

		--s3-max: clamp(9.5rem, calc(16svh + var(--soliha-place) * 0.06), calc(12rem + var(--soliha-place) * 0.16));
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__statistique {
		font-size: clamp(0.95rem, 1.3vw, 1.12rem);
		margin-top: clamp(0.6rem, 2.4svh, 1.5rem);
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix {
		flex-direction: row;
		width: min(100%, 70rem);
		gap: clamp(1rem, 2.8vw, 2.5rem);
		margin-top: clamp(0.9rem, 3.2svh, 2rem);
		transform: none;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix {
		flex: 1 1 0 !important;
		width: auto !important;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix > .wp-block-button__link {
		flex-direction: column;
		justify-content: center;
		gap: 0.75rem;
		padding: 0.75rem 0.85rem 0.85rem;
		text-align: center;
		font-size: clamp(1.1rem, 1.6vw, 1.5rem);
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix > .wp-block-button__link > .soliha-choix__titre {
		flex: 0 0 auto;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix > .wp-block-button__link::after {
		flex: 1 1 auto;
		width: min(11rem, 60%) !important;
		height: min(8rem, 55%);
		max-height: 10rem;
		background-position: center bottom;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__max,
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro {
		grid-area: bas;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__max {
		margin: 0 -0.5rem 3.4rem 0;
		translate: none;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro {
		justify-self: end;
		width: min(calc(36rem + var(--soliha-place) * 0.3), calc(100% - var(--s3-max) - 1.2rem));
		margin: 0 calc(var(--s3-max) + 1rem) calc(3.4rem + var(--s3-max) * 0.34) 0;
		padding: calc(0.95rem + var(--soliha-place) * 0.015) calc(1.25rem + var(--soliha-place) * 0.02) !important;
		font-size: clamp(1rem, calc(1.5vw + var(--soliha-place) * 0.012), calc(1.08rem + var(--soliha-place) * 0.016)) !important;
		font-weight: 500;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__lire-suite {
		display: none;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > h1 {
		font-size: clamp(1.4rem, calc(2.35vw + var(--soliha-place) * 0.064), calc(1.95rem + var(--soliha-place) * 0.09)) !important;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro::before {
		right: -0.65rem;
		bottom: auto;
		top: 36%;
		border-width: 0.6rem 0 0.6rem 0.65rem;
		border-color: transparent transparent transparent #062B3A;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro::after {
		right: -0.5rem;
		bottom: auto;
		top: calc(36% + 0.1rem);
		border-width: 0.5rem 0 0.5rem 0.54rem;
		border-color: transparent transparent transparent #fff;
	}
}

@media (min-width: 700px) and (max-width: 1099px) and (orientation: portrait) {
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__statistique {
		font-size: clamp(1.02rem, calc(2vw + var(--soliha-place) * 0.012), calc(1.25rem + var(--soliha-place) * 0.014));
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix > .wp-block-button__link::after {
		width: min(calc(14rem + var(--soliha-place) * 0.14), 70%) !important;
		height: min(calc(10.5rem + var(--soliha-place) * 0.1), 52%);
		max-height: calc(12rem + var(--soliha-place) * 0.12);
	}
}

@media (min-width: 700px) and (max-width: 1099px) {
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix > .wp-block-button__link {
		font-size: clamp(1rem, calc(0.85rem + 0.0286 * (var(--s3-carte-h) - 105px) + var(--soliha-place) * 0.014), calc(1.8rem + var(--soliha-place) * 0.02));
	}
}

@media (min-width: 700px) and (max-height: 600px) {

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif {
		--s3-carte-h: clamp(5rem, 19svh, 7.5rem);
		--s3-max: clamp(6.5rem, 21svh, 8.5rem);
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro {
		font-size: 0.85rem !important;
		line-height: 1.3 !important;
		padding-block: 0.6rem !important;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix > .wp-block-button__link {
		flex-direction: row;
		justify-content: space-between;
		text-align: left;
		padding: 0.5rem 1.1rem;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix > .wp-block-button__link > .soliha-choix__titre {
		flex: 1 1 0;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix > .wp-block-button__link::after {
		flex: 0 0 auto;
		width: 4.5rem !important;
		height: 100%;
		max-height: none;
		background-position: center;
	}
}

@media (min-width: 700px) and (orientation: landscape) and (max-height: 500px) {
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__max {
		margin: -0.6rem -0.5rem -0.6rem 0;
		translate: 0 3%;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro {
		margin-bottom: calc(var(--s3-max) * 0.34);
	}
}

@media (min-width: 1100px) {
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif {
		--s3-max: clamp(10rem, 26.5svh, 18rem);

		--s3-decalage: 0px;

		padding-top: clamp(0.9rem, 3.4svh, 2.4rem);
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__max {
		justify-self: start;
		margin: 0 0 0 calc(50% + 196px - var(--s3-max) / 2 - var(--s3-decalage) / 2);
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro {
		justify-self: start;
		width: min(40rem, calc(50% + 196px - var(--s3-max) / 2 - var(--s3-decalage) / 2 - 1.3rem - max(0px, calc(50% - 35rem))));
		margin: 0 0 calc(var(--s3-max) * 0.34) max(0px, calc(50% - 35rem));
		font-size: clamp(0.98rem, 1.2vw, 1.1rem) !important;
	}
}

@media (min-width: 1100px) and (max-height: 740px) {
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif {
		--s3-max: clamp(8rem, 24svh, 10rem);
	}
}

@media (min-width: 1100px) and (max-width: 1299px) {
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif {
		--s3-decalage: calc(max(var(--soliha-gouttiere, 1rem), 6.5rem) - var(--soliha-gouttiere, 1rem));
	}
}

@media (min-width: 1100px) {
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix > .wp-block-button__link::after {
		width: 100% !important;
		max-height: 14rem;
		background-position: center;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix--territoires > .wp-block-button__link::after {
		background-size: auto 108%;
	}
}

@media (min-width: 1471px) {
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix > .wp-block-button__link > .soliha-choix__titre {
		min-height: 2lh;
		display: flex;
		align-items: center;
		justify-content: center;
	}
}

.soliha-parcours a.soliha-parcours__etape,
.soliha-parcours a.soliha-parcours__drapeau {
	display: block;
	pointer-events: auto;
	text-decoration: none;
	cursor: default;
	overflow: visible;
	-webkit-tap-highlight-color: transparent;
	transition: border-color 0.45s ease, box-shadow 0.25s ease, scale 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.soliha-parcours a.soliha-parcours__etape::after,
.soliha-parcours a.soliha-parcours__drapeau::after {
	content: "";
	display: block;
	position: absolute;
	inset: -0.6rem;
	border-radius: 50%;
}

.soliha-parcours a[href].soliha-parcours__etape,
.soliha-parcours a[href].soliha-parcours__drapeau {
	cursor: pointer;
}

.soliha-parcours a[href].soliha-parcours__etape:hover,
.soliha-parcours a[href].soliha-parcours__drapeau:hover,
.soliha-parcours a[href].soliha-parcours__etape:focus-visible,
.soliha-parcours a[href].soliha-parcours__drapeau:focus-visible {
	scale: 1.2;
	box-shadow: 0 0 0 0.2rem rgba(0, 97, 138, 0.2), 0 2px 6px rgba(6, 43, 58, 0.25);
}

.soliha-parcours a[href].soliha-parcours__etape:active,
.soliha-parcours a[href].soliha-parcours__drapeau:active {
	scale: 0.9;
	transition-duration: 0.08s;
}

.soliha-parcours a.soliha-parcours__etape:focus-visible,
.soliha-parcours a.soliha-parcours__drapeau:focus-visible {
	outline: 3px solid #00618A;
	outline-offset: 4px;
}

.soliha-parcours a[aria-disabled="true"] {
	cursor: not-allowed;
	opacity: 0.65;
}

.soliha-parcours__cycliste {
	pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
	.soliha-parcours a.soliha-parcours__etape,
	.soliha-parcours a.soliha-parcours__drapeau {
		transition: none;
	}

	.soliha-parcours a[href].soliha-parcours__etape:hover,
	.soliha-parcours a[href].soliha-parcours__drapeau:hover,
	.soliha-parcours a[href].soliha-parcours__etape:focus-visible,
	.soliha-parcours a[href].soliha-parcours__drapeau:focus-visible,
	.soliha-parcours a[href].soliha-parcours__etape:active,
	.soliha-parcours a[href].soliha-parcours__drapeau:active {
		scale: none;
	}
}

.soliha-page-carte--integree iframe {
	display: block;
	width: 100%;
	height: clamp(22rem, 62vw, 34rem);
	border: 0;
	border-radius: 12px;
	background: #e8f1f4;
	box-shadow: 0 8px 18px rgba(0, 97, 138, 0.18);
}

html.soliha-js .soliha-accueil:not([data-contact="collectivites"]) .soliha-contact__variante--collectivites,
html.soliha-js .soliha-accueil[data-contact="collectivites"] .soliha-contact__variante--particuliers {
	display: none !important;
}

html:not(.soliha-js) .soliha-contact__variante--collectivites {
	grid-area: auto !important;
	grid-column: 1 / -1;
}

.soliha-contact__variante--collectivites .soliha-contact__champ select {
	width: 100%;
	box-sizing: border-box;
	min-height: 2.75rem;
	padding: 0.6rem 0.85rem;
	border: none;
	border-radius: 0.75rem;
	background: #fff;
	box-shadow: 0 2px 8px rgba(6, 43, 58, 0.08) !important;
	font: inherit;
	font-size: 1rem;
	color: var(--wp--preset--color--encre, #062B3A);
}

.soliha-contact__variante--collectivites .soliha-contact__champ select:focus {
	outline: 2px solid var(--wp--preset--color--bleu, #00618A) !important;
	outline-offset: 2px !important;
	box-shadow:
		0 0 0 4px rgba(0, 97, 138, 0.18),
		0 2px 8px rgba(6, 43, 58, 0.08) !important;
}

.soliha-contact__variante--collectivites .soliha-contact__champ select[aria-invalid="true"] {
	box-shadow:
		0 0 0 2px var(--wp--preset--color--prune, #612C40),
		0 2px 8px rgba(6, 43, 58, 0.08) !important;
}

@media (min-width: 700px) and (orientation: landscape) and (max-height: 500px) {
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif {
		--s3-carte-h: clamp(5.5rem, 25svh, 8rem);
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__intro {
		margin-top: 0.7rem;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif:not(.intro-ouverte) > .soliha-sujet__intro > .soliha-sujet__texte {
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		line-clamp: 3;
		overflow: hidden;
	}

	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-sujet__lire-suite {
		display: block;
		grid-area: bas;
		align-self: end;
		justify-self: start;
		margin: 0
			0
			calc(var(--s3-max) * 0.34 - 0.9rem)
			calc(100% - var(--s3-max) - 1rem - min(calc(36rem + var(--soliha-place) * 0.3), calc(100% - var(--s3-max) - 1.2rem)) + 1.1rem);
	}

	.soliha-chapo--entete,
	.soliha-chapo--entete strong {
		font-size: 0.78rem !important;
		line-height: 1.38;
	}

	.soliha-accueil > .soliha-parcours .soliha-parcours__cycliste {
		width: 2.3rem;
		height: 2.3rem;
	}

	.soliha-accueil > .soliha-parcours {
		--soliha-jalon: 0.875rem;

		width: min(100%, 32rem);
		margin-inline: auto;
	}

	.soliha-accueil[data-ecran="accueil"] > .soliha-parcours { top: -4px; }
	.soliha-accueil[data-ecran="solutions"] > .soliha-parcours { top: 0; }
	.soliha-accueil[data-ecran="situation"] > .soliha-parcours { top: 1px; }
	.soliha-accueil[data-ecran="thematique"] > .soliha-parcours { top: 7px; }
	.soliha-accueil[data-ecran="contact"] > .soliha-parcours { top: 1px; }
}

.soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"]) {
    -webkit-appearance: none;
    appearance: none;
    padding-right: 2.75rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%2300618a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 8 4 4 4-4'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.875rem center;
    background-size: 1.25rem 1.25rem;
    cursor: pointer;
}
.soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"]):disabled { cursor: not-allowed; opacity: 0.6; }

@supports (appearance: base-select) {
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"]),
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"])::picker(select) { appearance: base-select; }
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"]) {
        background-image: none;
        padding-right: 0.875rem;
        column-gap: 1rem;
        align-items: center;
    }
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"])::picker-icon {
        content: '';
        rotate: 0deg;
        width: 0.5rem;
        height: 0.5rem;
        flex: 0 0 0.5rem;
        margin: -0.25rem 0.25rem 0 auto;
        border-right: 1.8px solid #00618a;
        border-bottom: 1.8px solid #00618a;
        transform: rotate(45deg);
        transition: none;
    }
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"]):open::picker-icon { transform: translateY(0.25rem) rotate(225deg); }
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"])::picker(select) {
        box-sizing: border-box;
        margin-block: 0.5rem;
        padding: 0.375rem;
        border: 1px solid #d1e0e6;
        border-radius: 0.875rem;
        background: #fff;
        color: #062b3a;
        font: inherit;
        box-shadow: 0 8px 24px rgb(6 43 58 / 14%);
        max-height: min(20rem, 50dvh);
        overflow-y: auto;
        overscroll-behavior: contain;
        scrollbar-width: thin;
    }
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"]) option {
        display: flex;
        align-items: center;
        gap: 0.75rem;
        box-sizing: border-box;
        min-height: 2.5rem;
        padding: 0.55rem 0.75rem;
        border: 0;
        border-radius: 0.5rem;
        background: #fff;
        color: #062b3a;
        font: inherit;
        line-height: 1.35;
        white-space: normal;
        cursor: pointer;
    }
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"]) option:checked { background: #e8f3f7; color: #004d6e; font-weight: 600; }
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"]) option:hover,
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"]) option:focus-visible { background: #d8edf5; color: #004d6e; outline: none; }
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"]) option::checkmark { order: 1; margin-left: auto; color: #00618a; }
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"]) option:disabled { color: #627580; cursor: not-allowed; }
}
@media (prefers-reduced-motion: reduce) {
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"])::picker-icon { transition: none; }
}
@media (forced-colors: active) {
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"]) { appearance: auto; background-image: none; }
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"])::picker(select) { appearance: auto; }
    .soliha-contact__champ select:not([multiple]):is(:not([size]), [size="1"])::picker-icon { display: none; }
}

@media (max-width: 699px) {
	.soliha-accueil[data-ecran="situation"] .soliha-situation .soliha-sujet.est-actif > .soliha-situation__choix > .soliha-choix--territoires > .wp-block-button__link::after {
		width: 6.6rem;
	}
}
