/*
Theme Name: LMT
Theme URI: https://www.laval-technopole.fr
Author: Platz-Studio
Author URI: mailto:contact@platz-studio.fr
Description: Un  thème de Platz / Alkemy.st
Version: 2022.1
License: Proprietary

Platz / Alkemy.st WordPress Theme © 2022
*/
/*^ ------------------------------- Norm.css -------------------------------- */
    /***
        norm.css - version 3.0.0
        GitHub page: https://github.com/u1ui/norm.css
    ***/

    html{line-height:1.15;-webkit-text-size-adjust:none;text-size-adjust:none}
    h1{font-size:2em;margin:.67em 0}
    :where(dl,ol,ul) :where(dl,ol,ul){margin:0}
    :where(hr){color:inherit}
    :where(abbr[title]){text-decoration:underline;text-decoration:underline dotted}
    :where(b,strong){font-weight:bolder}
    :where(small){font-size:80%}
    :where(table){border-color:currentColor}
    button,input,select,textarea{margin:0}
    [type=button],[type=reset],[type=submit],button{-webkit-appearance:button}
    [type=search]{-webkit-appearance:textfield;outline-offset:-2px}
    ::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}
    ::placeholder{color:inherit;opacity:.54}
    ::-webkit-search-decoration{-webkit-appearance:none}
    ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}
    :where(:-moz-ui-invalid){box-shadow:none}
    summary{display:list-item}
    [inert]{pointer-events:none;cursor:default}
    [inert],[inert] *{-webkit-user-select:none;user-select:none}

    /* Add the correct styles in Safari 14, needed? If we use a dialog, we use the polyfill anyway
    dialog{background-color:#fff;border:solid;color:#000;display:block;height:-webkit-fit-content;height:fit-content;left:0;margin:auto;padding:1em;position:absolute;right:0;width:-webkit-fit-content;width:fit-content}
    dialog:not([open]){display:none}
    */


/*^ ------------------------------- More Norm ------------------------------- */
    *,::after,::before{box-sizing:border-box;font-family:inherit;font-size:inherit}
    html {min-height:100%;display:flex}
    body{flex:1;font-family:'Helvetica Neue',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif,'Apple Color Emoji','Segoe UI Emoji';font-size:1em;overflow-x:hidden;scroll-behavior:smooth;margin:0}    a{text-decoration:none; color:inherit; cursor:pointer;}
    a:not([href]) {cursor: default}
    button{background-color:transparent; color:inherit; border-width:0; padding:0; cursor:pointer;}
    figure{margin:0;}
    input::-moz-focus-inner {border:0; padding:0; margin:0;}
    ul, ol, dd{margin:0;padding:0;list-style:none;}
    h1, h2, h3, h4, h5, h6{margin:0;}
    p{margin:0;}
    cite {font-style:normal;}
    svg {fill:currentColor}
    img, picture, video, canvas, svg {display: inline-block;max-width: 100%;height: auto;width: auto}
    table {border-collapse: collapse;}
    @media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}
    *,::after,::before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
    .wrapper{width:100%;max-width:1240px;margin:auto;padding:0 15px;display:block}
    .miniWrapper{max-width:570px}

/*^ ---------------------------- Wordpress Core ----------------------------- */
    .alignnone{margin:5px 20px 20px 0}
    .aligncenter,div.aligncenter{display:block;margin:5px auto}
    .alignright{float:right;margin:5px 0 20px 20px}
    .alignleft{float:left;margin:5px 20px 20px 0}
    .aligncenter{display:block;margin:5px auto}
    a img.alignright{float:right;margin:5px 0 20px 20px}
    a img.alignnone{margin:5px 20px 20px 0}
    a img.alignleft{float:left;margin:5px 20px 20px 0}
    a img.aligncenter{display:block;margin-left:auto;margin-right:auto}
    .wp-caption{background:#fff;border:1px solid #f0f0f0;max-width:96%;padding:5px 3px 10px;text-align:center}
    .wp-caption.alignleft,.wp-caption.alignnone{margin:5px 20px 20px 0}
    .wp-caption.alignright{margin:5px 0 20px 20px}
    .wp-caption img{border:0;height:auto;margin:0;max-width:98.5%;padding:0;width:auto}
    .wp-caption p.wp-caption-text{font-size:11px;margin:0;padding:0 4px 5px}
/*^ -------------------------------- Header --------------------------------- */
    body > header {
        padding: 10px;
        height: 170px;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        background: var(--coulBackHeadMenu);
        z-index: 999;
    }

    body > header li a:hover {
        text-decoration: underline;
    }

    body > header .wrapper {
        display: grid;
        height: 100%;
        grid-template-columns: 150px 100px 1fr fit-content(1.5em);
        grid-template-rows: 1fr 1fr;
        gap: 0px 0px;
        grid-template-areas:
        "logo reseauxSociaux menuSecondaire menuTraduction"
        "logo menuPrincipal menuPrincipal menuPrincipal";
        gap: 10px 50px;
    }
    body > header .logo { grid-area: logo; display: block;position: relative}
    body > header .logo img {display: block;height: 100%;width: auto;transition: all 0.3s ease 0s;}
    body > header .logo img + img {position: absolute;top: 0;left: 0;opacity:0}

    body > header > .wrapper > nav {
        grid-area: menuPrincipal;
        color: var(--coulHeadMenu);
    }
    body > header > .wrapper > ul { grid-area: menuSecondaire; color: var(--coulHeadMenu);}

    body > header > .wrapper > nav > ul,
    body > header > .wrapper > ul {
        display: flex;
        justify-content: flex-end;
        width: 100%;
        gap: 15px;
        text-transform : uppercase;
    }
    body > header > .wrapper > nav > ul a,
    body > header > .wrapper > ul a {
        display: block;
    }
    body > header > .wrapper > nav > ul li:not(:first-child) {
        padding-left: 15px;
        border-left: 1px solid var(--coulHeadMenu);
    }
    body > header > .wrapper > ul {
        font-size: 0.80em;
    }
    body > header > .wrapper > ul li:not(:first-child) {
        padding-left: 15px;
        position: relative;
    }
    body > header > .wrapper > ul li:not(:first-child)::before {
        content: '';
        position: absolute;
        background: var(--coulBackHeadMenu);
        height: 0.5em;
        width: 0.5em;
        border-radius: 100%;
        top: 0.25em;
        right: calc(100% - 7.5px + 0.25em);
    }
    body > header .reseauxSociaux { grid-area: reseauxSociaux; }
    body > header .reseauxSociaux {
        display: flex;
        justify-content: flex-start;
        width: 100%;
        gap: 5px;
    }
    body > header .reseauxSociaux svg {
        height: 1.5em;
        aspect-ratio: 1/1;
        fill: var(--coulHeadMenu);
    }
    /*^ ------------------------------ Traductions ------------------------------ */

        body > header .traductions {
            grid-area: menuTraduction;
            width: 1.5em;
            position: relative;
        }
        body > header menu {
            padding: 0;
            margin: 0;
            position: absolute;
            transform: translateY(-6px);
            width: 1.5em;
            padding-top: 1.5em;
        }
        body > header menu li {
            list-style: none;
            display: none;
        }
        body > header menu:hover li,
        body > header menu li.current {
            display: block;
        }
        body > header menu li.current {
            position: absolute;
            top: 0;
            width: 1.5em;

        }
        body > header menu a,
        body > header menu svg {
            display: block;
        }
    /*^ ------------------------------- Scrolled -------------------------------- */
        body > header.scrolled {
            background: var(--coulBackHeadMenu2);
            height: 140px;
        }
        body > header.scrolled .logo img {opacity: 0}
        body > header.scrolled .logo img + img {opacity: 1}

        body > header,
        body > header > .wrapper > nav > ul li,
        body > header .reseauxSociaux svg {
            transition: all 0.3s ease 0s;
        }
        body > header.scrolled ul {
            color: var(--coulHeadMenu2);
        }
        body > header.scrolled > .wrapper > nav > ul li:not(:first-child) {
            border-left: 1px solid var(--coulHeadMenu2);
        }
        body > header.scrolled > .wrapper > ul li:not(:first-child)::before {
            background: var(--coulHeadMenu2);
        }
        body > header.scrolled .reseauxSociaux svg {
            fill: var(--coulHeadMenu2);
        }
/*^ -------------------------------- Footer --------------------------------- */
    body > footer {
        padding: 20px 0 40px 0;
        background: var(--footerBackground);
        color: var(--footerColor);
        font-size: 0.75em;
        text-transform: uppercase;
    }
    body > footer nav > ul {
        display: flex;
        gap: 20px;
    }
    body > footer nav > ul > li {
        flex: 1;
    }
    body > footer nav > ul > li > span {
        display: block;
        border-bottom: 1px solid var(--footerColor);
        margin-bottom: 15px;
        padding-bottom: 5px;
    }

    body > footer nav > ul li {
        margin-bottom: 10px;
    }
    body > footer nav > ul li .description {
        display: block;
        margin-top: 20px;
    }
    body > footer .wrapper > div {
        text-align: right;
        margin-top: 20px;

    }
    body > footer .wrapper > div ul {
        display: inline-block;
    }
/*^ --------------------------------- Page ---------------------------------- */
    body > main {
        margin-top: 230px;
    }
    body > main article h2 {
        font-size: 1.5em;
        margin-bottom: 10px;
    }
    body > main article .articleContent {
        margin-top: 1.5em;
    }

    body > main article p {
        margin-bottom: 1em;
    }
    body > main article table {
        width: 100%;
    }
    body > main article ul {
        padding-left: 2em;
        margin-bottom: 10px;
    }
    body > main article ul li {
        list-style: inside;
    }
    body.accueil > main {
        margin-top: 0px;
    }
    body.page main article > img + div,
    body.post main article > img + div,
    body.evenements main article > img + div {
        margin-top: 4em;
    }
    body.page main article > div,
    body.post main article > div,
    body.evenements main article > div {
        margin-bottom: 4em;
    }
    body.page main article h1,
    body.post main article h1,
    body.evenements main article h1 {
        font-size: 2.5em;
    }
    body.page main article p.sousTitre,
    body.post main article p.sousTitre,
    body.evenements main article p.sousTitre {
        color: var(--coulTexte2);
        font-size: 1.5em;
        border-bottom: 1px solid var(--coulTexte2);
        padding-bottom: 5px;
        margin-bottom: 15px;
    }
    body.page main article a[href],
    body.post main article a[href],
    body.evenements main article a[href],
    body.template-annuaire main a[href] {
        color:var(--coulTexte2);
        text-decoration:underline;
    }

    /*^ -------------------------------- Bandeau -------------------------------- */
        .bandeauCubes {
            position: relative;
        }
        .bandeauCubes img {
            display: block;
        }
        .bandeauCubes .svg {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            opacity: var(--bmCoulIntensite);
        }
        .bandeauCouleur {
            position: relative;
        }
        .bandeauCouleur img {
            display: block;
        }
        .bandeauCouleur::after {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 1;
            background: var(--coulAplatImage);
            opacity: var(--coulAplatIntensite);
        }
    /*^ -------------------- Actualités + Agenda + Annuaire --------------------- */
        body.page.template-agenda main section article,
        body.page.template-actualites main section article,
        body.page.template-annuaire main section > div {
            display: flex;
            gap: 20px;
            margin-bottom: 4em;
        }

        body.page.template-agenda main section article > div,
        body.page.template-actualites main section article > div,
        body.page.template-annuaire main section div > div {
            flex: 1;
            margin: 0;
        }
        body.page.template-agenda main section article > div.date {
            max-width: 60px;
            background: var(--coulTexte2);
            color: var(--coulTexte3);
            padding: 10px;
            text-align: center;
            text-transform: lowercase;
            align-self: flex-start;
        }

        body.page.template-agenda main section article > img,
        body.page.template-actualites main section article > img,
        body.page.template-annuaire main section div > img {
            width: 25%;
            aspect-ratio: 16/9;
            object-fit: cover;
            height: auto;
        }
        body.page.template-agenda main section article h2,
        body.page.template-actualites main section article h2,
        body.page.template-annuaire main section div h2 {
            font-size: 1.5em;
        }
        body.page.template-agenda main section article .sousTitre,
        body.page.template-actualites main section article .sousTitre,
        body.page.template-annuaire main section div .sousTitre {
            font-size: 1.1em;
            color: var(--coulTexte2);
            border-bottom: 1px solid var(--coulTexte2);
            display: block;
            padding-bottom: 5px;
            margin-bottom: 10px;
        }
        body.page.template-agenda main section article .lienTexte,
        body.page.template-actualites main section article .lienTexte,
        body.evenements main article .lienTexte {
            float: right;
            background: var(--coulTexte2) !important;
            color: var(--coulTexte3) !important;
            padding: 5px 10px;
            margin-top: 20px;
            text-transform: lowercase;
            text-decoration: none;
        }
    /*^ ------------------------------- Annuaire -------------------------------- */
        body.page.template-annuaire main section div > img {
            object-fit: contain;
            align-self: flex-start;
        }
        body.page.template-annuaire main section div p {
            margin-top: 10px;
        }
        body.page.template-annuaire main section.categories {
            margin-bottom: 4em;
            display: flex;
            gap: 20px;
            flex-wrap: wrap;
            justify-content: center;
        }
        body.page.template-annuaire main section.categories button {
            flex: 0 0 auto;
            padding: 5px 10px;
            border: 1px solid var(--coulTexte2);
        }
        body.page.template-annuaire main section.categories button:hover,
        body.page.template-annuaire main section.categories button.actif {
            color: var(--coulTexte3);
            background: var(--coulTexte2);
        }
    /*^ -------------------------------- Equipe --------------------------------- */
        body.page.template-equipe main article .membres {
            display: flex;
            flex-wrap: wrap;
            gap: 20px;
            margin-bottom: 4em;
            margin-top: 4em;
        }
        body.page.template-equipe main article .membres > div {
            flex: 0 0 calc(25% - 15px);
            position: relative;
        }
        body.page.template-equipe main article .membres > div img {
            aspect-ratio: 1/1;
            display: block;
            width: 100%;
            object-fit: cover;
        }
        body.page.template-equipe main article .membres > div::after {
            content: '';
            position: absolute;
            background: var(--coulTexte2);
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 1;
            opacity: 0;
            transition: all 0.3s ease 0s;
        }
        body.page.template-equipe main article .membres > div .informations {
            position: absolute;
            top: 50%;
            left: 50%;
            color: var(--coulTexte3);
            transform: translate(-50%, -50%);
            text-align: center;
            z-index: 2;
            width: calc(100% - 40px);
            opacity: 0;
            transition: all 0.3s ease 0s;
        }
        body.page.template-equipe main article .membres > div:hover::after {
            opacity: 0.8;
        }
        body.page.template-equipe main article .membres > div:hover .informations {
            opacity: 1;
        }

    /*^ -------------------------------- Agenda --------------------------------- */
        body.evenements main article .evenementsInformations {
            background: var(--coulTexte2);
            color: var(--coulTexte3);
            padding: 5px 10px;
            margin: 15px 0;
        }
        body.evenements main article p.sousTitre {
            margin-bottom: 0;
        }
        body.template-agenda main section .aVenir {
            margin-bottom: 4em;
            border-bottom: 1px solid var(--coulTexte2);
            padding: 0 0 10px 0;
        }
        body.template-agenda main section .aVenir h2 {
            color: var(--coulTexte2);
            font-size: 1.5em;
            border-bottom: 1px solid var(--coulTexte2);
        }
        body.template-agenda main section .aVenir a {
            padding: 0 10px;
            margin-top: 10px;
            display: block;
        }
        body.template-agenda main section .aVenir  div {
            color: var(--coulTexte2);
        }
        body.template-agenda main section .aVenir  span {
            font-size: 0.9em;
        }

    /*^ ------------------------------ Pagination ------------------------------- */
        body.page.template-agenda main section .pagination,
        body.page.template-actualites main section .pagination {
            margin: 0 auto 4em auto;
            width: fit-content;
        }

        body.page.template-agenda main section .pagination .page-numbers,
        body.page.template-actualites main section .pagination .page-numbers {
            padding: 5px;
        }
        body.page.template-agenda main section .pagination .prev,
        body.page.template-agenda main section .pagination .next,
        body.page.template-agenda main section .pagination .current,
        body.page.template-actualites main section .pagination .prev,
        body.page.template-actualites main section .pagination .next,
        body.page.template-actualites main section .pagination .current {
            background: var(--coulTexte2);
            color: var(--coulTexte3);
            text-transform: lowercase;
            padding: 5px 10px;
        }

    /*^ -------------------------------- enfants -------------------------------- */
        body.page main .enfants {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            margin-top: 20px;
            margin-bottom: 4em;
            gap: 20px 20px;
        }
        body.page main .enfants a img {
            display: block;
            width: 100%;
            aspect-ratio: 342 / 257;
            object-fit: cover;
            margin-bottom: 10px;
        }
        body.page main .enfants a h3 {
            font-size: 1.5em;
        }
        body.page main .enfants a .sousTitre {
            font-size: 1.1em;
            color: var(--coulTexte2);
            border-bottom: 1px solid var(--coulTexte2);
            display: block;
            padding-bottom: 5px;
            margin-bottom: 10px;
        }
        body.page main .enfants a .lienTexte {
            float: right;
            background: var(--coulTexte2);
            color: var(--coulTexte3);
            padding: 5px 10px;
            margin-top: 20px;
            text-transform: lowercase;
        }
/*^ -------------------------------- Accueil -------------------------------- */
    /*^ -------------------------------- Accueil -------------------------------- */
        .accueil > main > figure {
            width: 100%;
            height: 100%;
            position: relative;
        }
        .accueil > main > figure > img {
            display: block;
            width: 100%;
            height: 100vh;
            object-fit: cover;
        }
        .accueil > main > figure > figcaption {
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
        }
        .accueil > main > figure > figcaption h1 {
            font-size: 4.6em;
            color: var(--coulTexte2);
            line-height: 1.2;
        }
        .accueil > main > figure > figcaption span {
            font-size: 1.25em;
            color: var(--coulTexte2);
            line-height: 1.2;
            display: block;
        }
        .accueil > main > figure > figcaption a {
            display: inline-block;
            background: var(--coulTexte2);
            color: var(--coulTexte3);
            padding: 10px 15px;
            font-size: 1.2em;
            text-transform : uppercase;
            transition: all 0.3s ease 0s;
        }

        .accueil > main > figure > figcaption a:hover {
            background: var(--coulTexte3);
            color: var(--coulTexte2);
        }
   /*^ ---------------------------- medias externe ----------------------------- */
        body.accueil .mediasExtWrapper {
            padding: 4em 0;
        }
        body.accueil .mediasExtWrapper .wrapper h2 {
            flex: 0 0 100%;
            font-weight: 700;
            font-size: 2.5em;
        }
        body.accueil .mediasExtWrapper .wrapper > span {
            font-size: 1.25em;
            text-decoration: underline;
            color: var(--coulTexte2);
            line-height: 1.2;
            flex: 0 0 100%;
        }

        body.accueil .mediasExtWrapper .wrapper .medias {
            margin-top: 20px;
            --grid-layout-gap: 20px;
            --grid-column-count: 4;
            --grid-item--min-width: 200px;
            --gap-count: calc(var(--grid-column-count) - 1);
            --total-gap-width: calc(var(--gap-count) * var(--grid-layout-gap));
            --grid-item--max-width: calc((100% - var(--total-gap-width)) / var(--grid-column-count));
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(max(var(--grid-item--min-width), var(--grid-item--max-width)), 1fr));
            grid-gap: var(--grid-layout-gap);
        }

        body.accueil .mediasExtWrapper .wrapper .medias > div {
            position: relative;
        }
        body.accueil .mediasExtWrapper .wrapper .medias iframe {
            width: 100%;
            height: auto;
            aspect-ratio: 16/9;
        }
        body.accueil .mediasExtWrapper .wrapper .medias h3 {
            font-size: 1.5em;
            text-align: center;
            margin-top: 10px;
        }
        body.accueil .mediasExtWrapper .wrapper .medias p {
            text-align: center;
            color: var(--coulTexte2);
        }
        body.accueil .mediasExtWrapper .wrapper .medias a {
            display: block;
            width: fit-content;
            background: var(--coulTexte2);
            color: var(--coulTexte3);
            padding: 5px 10px;
            margin: 20px auto 0 auto;
            text-transform: lowercase;
        }
        body.accueil .mediasExtWrapper .wrapper .medias a::first-letter {
            text-transform: uppercase;
        }

    /*^ --------------------------------- Liens --------------------------------- */
        body.accueil .liensWrapper {
            padding: 4em 0;
        }
        body.accueil .liensWrapper .wrapper h2 {
            flex: 0 0 100%;
            font-weight: 700;
            font-size: 2.5em;
        }
        body.accueil .liensWrapper .wrapper .liens {
            /*--grid-layout-gap: 20px;
            --grid-column-count: 4;
            --grid-item--min-width: 200px;
            --gap-count: calc(var(--grid-column-count) - 1);
            --total-gap-width: calc(var(--gap-count) * var(--grid-layout-gap));
            --grid-item--max-width: calc((100% - var(--total-gap-width)) / var(--grid-column-count));

            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(max(var(--grid-item--min-width), var(--grid-item--max-width)), 1fr));
            grid-gap: var(--grid-layout-gap);*/
            display: flex;
            gap: 20px;
            flex-wrap: wrap;
            justify-content: center;
        }
        body.accueil .liensWrapper .wrapper .liens a {
            flex: 0 0 16.6%;
        }
        body.accueil .liensWrapper .wrapper .liens img {
            width: 100%;
            transition: all 0.3s ease 0s;
        }
        body.accueil .liensWrapper .wrapper .liens a:hover img {
            transform: scale(1.2);
        }
    /*^ --------------------------- Bandeau de texte ---------------------------- */
        body.accueil .bandeauTexteWrapper {
            padding: 4em 0;
            position: relative;
        }
        body.accueil .bandeauTexteWrapper .bandeauFond {
            background: var(--coulTexte2);
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 0;
        }
        body.accueil .bandeauTexteWrapper .bandeauFond img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
        body.accueil .bandeauTexteWrapper .bandeauFond .svg {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            opacity: var(--bmCoulIntensite);
        }

        body.accueil .bandeauTexteWrapper .wrapper {
            z-index: 1;
            position: relative;
        }
        body.accueil .bandeauTexteWrapper h2 {
            font-weight: 700;
            font-size: 2.5em;
            color: var(--coulTexte3);

        }
        body.accueil .bandeauTexteWrapper span {
            font-size: 1.25em;
            color: var(--coulTexte3);
            line-height: 1.2;
            display: block;
            text-decoration: underline;
        }
        body.accueil .bandeauTexteWrapper a {
            display: block;
            width: min-content;
            margin: auto;
            white-space: nowrap;
            background: var(--coulTexte2);
            color: var(--coulTexte3);
            padding: 10px 15px;
            font-size: 1.2em;
            text-transform : uppercase;
            transition: all 0.3s ease 0s;
        }

        body.accueil .bandeauTexteWrapper a:hover {
            background: var(--coulTexte3);
            color: var(--coulTexte2);
        }


    /*^ ------------------------------ Actualites ------------------------------- */
        body.accueil .actualitesWrapper {
            padding: 4em 0;
        }
        body.accueil .actualitesWrapper .wrapper {
            display: flex;
            flex-wrap: wrap;
            gap: 20px;
        }
        body.accueil .actualitesWrapper .wrapper > div {
            flex: 1;
        }
        body.accueil .actualitesWrapper .wrapper h2 {
            flex: 0 0 100%;
            font-weight: 700;
            font-size: 2.5em;
        }
        body.accueil .actualitesWrapper .wrapper span.title {
            color: var(--coulTexte2);
            align-self: flex-start;
            font-weight: 700;
            font-size: 1.25em;
        }

        /*^ ------------------------------ Actualités ------------------------------- */
            body.accueil .actualitesWrapper .wrapper .actualites,
            body.accueil .actualitesWrapper .wrapper .actualites > div {
                flex: 1;
                display: flex;
                gap: 20px;
                align-items: center;
            }
            body.accueil .actualitesWrapper .wrapper .actualites {
                gap: 20px;
                align-items: flex-start;

            }
            body.accueil .actualitesWrapper .wrapper .actualites > div img {
                display: inline-block;
                width: 50%;
                height: auto;
            }
            body.accueil .actualitesWrapper .wrapper .actualites > div div {
                flex: 1;
            }

            body.accueil .actualitesWrapper .wrapper .actualites > div h3 {
                color: var(--coulTexte2);
                font-size: 1.625em;
            }
            body.accueil .actualitesWrapper .wrapper .actualites > div span {
                color: var(--coulTexte2);
                font-size: 0.8em;
                display: block;
            }
            body.accueil .actualitesWrapper .wrapper .actualites > div > div {
                position: relative;
            }
            body.accueil .actualitesWrapper .wrapper .actualites > div a {
                /*float: right;*/
                background: var(--coulTexte2);
                color: var(--coulTexte3);
                padding: 5px 10px;
                /*margin-top: 20px;*/
                display: block;
                width: fit-content;
                margin: 20px auto 0 auto;
                text-transform: lowercase;
            }

        /*^ -------------------------------- Agenda --------------------------------- */
            body.accueil .actualitesWrapper .wrapper .agenda {
                display: flex;
                flex-direction: column;
                gap: 20px;
            }
            body.accueil .actualitesWrapper .wrapper .agenda > div {
                display: flex;
                align-items: flex-start;
                gap: 10px;
            }
            body.accueil .actualitesWrapper .wrapper .agenda > div > div {
                background: var(--coulTexte2);
                color: var(--coulTexte3);
                padding: 10px 0;
                flex: 0 0 60px;
                text-align: center;
                text-transform: lowercase;
            }
            body.accueil .actualitesWrapper .wrapper .agenda > div > div span {
                display: block;
            }
            body.accueil .actualitesWrapper .wrapper .agenda div:not(.aVenir) h3 {
                color: var(--coulTexte2);
                font-size: 1.1em;
            }
            body.accueil .actualitesWrapper .wrapper .agenda div.aVenir div {
                color: var(--coulTexte2);
            }
            body.accueil .actualitesWrapper .wrapper .agenda div.aVenir span {
                font-size: 0.9em;
            }

            body.accueil .actualitesWrapper .wrapper .agenda hr {
                background: var(--coulTexte);
                border: none;
                width: 100%;
                height: 1px;
            }
        /*^ ------------------------ Gestion multiples actus ------------------------ */
            body.accueil .actualitesWrapper .wrapper.actualites.agenda .actualites {
                flex-direction: column;
            }
            body.accueil .actualitesWrapper .wrapper.actualites.agenda .agenda {
                padding-left: 20px;
                border-left: 1px solid var(--coulTexte);
            }
            body.accueil .actualitesWrapper .wrapper.actualites.agenda .actualites > div {
                flex: unset;
            }
    /*^ ------------------------------ pageEnfant ------------------------------- */
        body.accueil .pageEnfantWrapper {
            padding: 4em 0;
        }
        body.accueil .pageEnfantWrapper .wrapper h2 {
            font-weight: 700;
            font-size: 2.5em;
        }
        body.accueil .pageEnfantWrapper .wrapper > .sousTitre {
            color: var(--coulTexte2);
            text-decoration: underline;
            font-size: 1.5em;
        }
        /*^ -------------------------------- enfants -------------------------------- */
            body.accueil .pageEnfantWrapper .wrapper .enfants {
                display: grid;
                grid-template-columns: 1fr 1fr 1fr;
                margin-top: 20px;
                gap: 20px 20px;
            }
            body.accueil .pageEnfantWrapper .wrapper .enfants a {
                position: relative;
            }
            body.accueil .pageEnfantWrapper .wrapper .enfants a img {
                display: block;
                width: 100%;
                aspect-ratio: 342 / 257;
                object-fit: cover;
                margin-bottom: 10px;
            }
            body.accueil .pageEnfantWrapper .wrapper .enfants a h3 {
                font-size: 1.5em;
            }
            body.accueil .pageEnfantWrapper .wrapper .enfants a .sousTitre {
                font-size: 1.1em;
                color: var(--coulTexte2);
                border-bottom: 1px solid var(--coulTexte2);
                display: block;
                padding-bottom: 5px;
                margin-bottom: 10px;
            }
            body.accueil .pageEnfantWrapper .wrapper .enfants a .lienTexte {
                /*float: right;*/
                background: var(--coulTexte2);
                color: var(--coulTexte3);
                padding: 5px 10px;
                /*margin-top: 20px;*/
                display: block;
                width: fit-content;
                text-align: center;
                margin: 20px auto 0 auto;
                text-transform: lowercase;
            }
            body.accueil .pageEnfantWrapper .wrapper .enfants a .lienTexte::first-letter {
                text-transform: uppercase;

            }
    /*^ -------------------------------- Bandeau -------------------------------- */
        body.accueil .bandeau {
            position: relative;
        }
        body.accueil .bandeau img {
            display: block;
        }
        body.accueil .bandeau .svg {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            opacity: var(--bmCoulIntensite);
        }
    /*^ --------------------------- image avec titre ---------------------------- */
        body.accueil .imageTitre {
            position: relative;
            padding: 4em 0;
        }
        body.accueil .imageTitre h2 {
            font-weight: 700;
            font-size: 2.5em;

        }
        body.accueil .imageTitre > span {
            font-size: 1.25em;
            text-decoration: underline;
            color: var(--coulTexte2);
            line-height: 1.2;
            display: block;
        }

    /*^ ------------------------------- Chiffres -------------------------------- */
        body.accueil .chiffres {
            position: relative;
            padding: 4em 0;
        }
        body.accueil .chiffres .fond {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 0;
        }
        body.accueil .chiffres .fond img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            filter: grayscale(100%);
        }
        body.accueil .chiffres .fond::after {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 1;
            background: var(--coulAplatImage);
            opacity: var(--coulAplatIntensite);
        }
        body.accueil .chiffres .detail {
            position: relative;
            display: flex;
            gap: 2em;
            z-index: 2;
        }
        body.accueil .chiffres h2 {
            font-weight: 700;
            position: relative;
            font-size: 2.5em;
            z-index: 2;
            flex: 0 0 100%;
            color: var(--coulTexte3);

        }
        body.accueil .chiffres > span {
            font-size: 1.25em;
            position: relative;
            text-decoration: underline;
            z-index: 2;
            color: var(--coulTexte3);
            line-height: 1.2;
            flex: 0 0 100%;
            display: block;
        }

        body.accueil .chiffres .detail div span {
            color: var(--coulTexte3);
            display: block;
            text-align: center;
            position: relative;

        }
        body.accueil .chiffres .detail div span:first-child {
            font-size: 4.5em;
            font-weight: 700;
        }
        body.accueil .chiffres .detail div span:first-child::after {
            content: "";
            position: absolute;
            top: 100%;
            left: 50%;
            transform: translateX(-50%);
            width: 80%;
            height: 1px;
            background: var(--coulTexte3);
        }
        body.accueil .chiffres .detail div span:last-child {
            font-size: 1.5em;
        }

/*^ --------------------------------- wpcf7 --------------------------------- */
    .email_download_link,
    .wpcf7 {
        width:100%;
        margin:auto;
        padding:0 15px;
        display:block;
        max-width:570px;
        margin-top: 20px;
    }
    .email_download_link form span,
    .email_download_link form label,
    .wpcf7 form span,
    .wpcf7 form label {
        font-size: 0.8rem;
    }
    .email_download_link form p,
    .wpcf7 form p {
        margin-bottom: 20px;
        clear: both;
    }

    .email_download_link form input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]),
    .wpcf7 form input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]),
    .wpcf7 form textarea {
        width: 100%;
        border: none;
        border-bottom: 1px solid var(--coulTexte2);
        padding: 0 5px;
        font-size: 1rem;
        font-weight: 700;
    }
    .wpcf7 form input[type="radio"] + span,
    .wpcf7 form input[type="checkbox"] + span {
        font-size: 1rem;
        font-weight: 700;

    }

    .wpcf7 form textarea {
        height: 3em;
    }

    .email_download_link form input[type="submit"],
    .wpcf7 form input[type="submit"] {
        float: right;
        background: var(--coulTexte2);
        color: var(--coulTexte3);
        padding: 5px 10px;
        text-transform: capitalize;
        border: none;
        cursor: pointer;
    }
    .wpcf7 form.invalid .wpcf7-response-output,
    .wpcf7 form.unaccepted .wpcf7-response-output,
    .wpcf7 form.payment-required .wpcf7-response-output,
    .wpcf7 form .wpcf7-response-output {
        border:none;
    }
/*^ ------------------------------- Plan site ------------------------------- */
    body.template-plan-site main ul {
        padding-left: 2em;
        margin-bottom: 10px;
    }
    body.template-plan-site main > ul {
        margin-bottom: 4em;
    }

    body.template-plan-site main ul li {
        list-style: inside;
    }
    body.template-plan-site main ul li a {
        text-transform: capitalize;
    }
