@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');

/* =========================================================
   BASE
   ========================================================= */

* {
    box-sizing: border-box !important;
}

html {
    scroll-behavior: smooth;
}

body,
input,
textarea,
button,
select {
    font-family: 'Montserrat', sans-serif !important;
}

body {
    margin: 0 !important;
    background: #ffffff !important;
    color: #222222 !important;
    font-size: 18px !important;
    line-height: 1.65 !important;
}

/* =========================================================
   PAGE
   ========================================================= */

#page,
#branding,
#header,
#main,
#container,
#content,
#primary,
.site-content {
    background: #ffffff !important;
}

#page {
    max-width: 1120px !important;
    margin: 0 auto !important;
    box-shadow: none !important;
}

/* =========================================================
   HEADER / LOGO
   ========================================================= */

#branding,
#header {
    text-align: center !important;
    padding: 22px 28px 0 28px !important;
    border: none !important;
    background: #ffffff !important;
}

#branding img,
#site-title img,
#header img {
    display: block !important;
    margin: 0 auto !important;
    max-width: 1000px !important;
    width: 100% !important;
    height: auto !important;
}

#site-title,
#site-description {
    margin: 0 !important;
    padding: 0 !important;
}

#site-title a {
    border: 0 !important;
    text-decoration: none !important;
}

/* =========================================================
   REMOVE SIDEBAR / SEARCH
   ========================================================= */

#secondary,
.widget-area,
.sidebar,
aside {
    display: none !important;
}

#searchform,
#branding #searchform,
#header #searchform,
#access #searchform,
.main-navigation #searchform {
    display: none !important;
}

/* =========================================================
   MAIN LAYOUT
   ========================================================= */

#main {
    padding: 0 64px 70px 64px !important;
}

#container,
#content,
#primary,
.site-content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    float: none !important;
}

#content {
    max-width: 880px !important;
}

/* =========================================================
   MENU DESKTOP
   ========================================================= */

#access,
#access .menu-menu-container,
.main-navigation,
.menu-menu-container {
    background: #ffffff !important;
    background-image: none !important;
    border: none !important;
    box-shadow: none !important;
    clear: both !important;
    text-align: center !important;
}

/* Menu principal */
#access .menu-menu-container > ul,
#access ul.menu,
.main-navigation > div > ul,
.main-navigation > ul,
.menu-menu-container > ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;

    gap: 8px 30px !important;

    width: 100% !important;
    max-width: 880px !important;

    margin: 22px auto 48px auto !important;
    padding: 0 !important;

    list-style: none !important;
    float: none !important;
    clear: both !important;
}

/* Items du menu */
#access .menu-menu-container > ul > li,
#access ul.menu > li,
.main-navigation > div > ul > li,
.main-navigation > ul > li,
.menu-menu-container > ul > li {
    display: block !important;
    float: none !important;
    clear: none !important;

    width: auto !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    position: relative !important;
}

/* Liens du menu */
#access .menu-menu-container > ul > li > a,
#access ul.menu > li > a,
.main-navigation > div > ul > li > a,
.main-navigation > ul > li > a,
.menu-menu-container > ul > li > a {
    display: block !important;

    color: #2c2488 !important;
    background: #ffffff !important;

    font-family: 'Montserrat', sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;

    text-decoration: none !important;
    text-align: center !important;

    padding: 8px 0 !important;
    border: 0 !important;
    border-bottom: 3px solid transparent !important;

    height: auto !important;
    min-height: 0 !important;

    transition: color .15s ease, border-color .15s ease !important;
}

/* Hover / actif */
#access .menu-menu-container > ul > li > a:hover,
#access ul.menu > li > a:hover,
.main-navigation > div > ul > li > a:hover,
.main-navigation > ul > li > a:hover,
.menu-menu-container > ul > li > a:hover,
#access .current-menu-item > a,
.main-navigation .current-menu-item > a {
    color: #00a651 !important;
    border-bottom-color: #00a651 !important;
}

/* Supprime les effets éventuels du thème */
#access a::before,
#access a::after,
.main-navigation a::before,
.main-navigation a::after {
    display: none !important;
    content: none !important;
}

/* =========================================================
   SOUS-MENUS DESKTOP
   ========================================================= */

#access ul ul,
#access .sub-menu,
.main-navigation ul ul,
.main-navigation .sub-menu,
.menu-menu-container ul ul {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 9999 !important;

    width: 300px !important;
    margin: 0 !important;
    padding: 12px !important;

    background: #ffffff !important;
    border: 1px solid #e8e8e8 !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.10) !important;

    list-style: none !important;
    text-align: left !important;
}

/* Pont invisible pour éviter que le sous-menu disparaisse */
#access ul ul::before,
#access .sub-menu::before,
.main-navigation ul ul::before,
.main-navigation .sub-menu::before,
.menu-menu-container ul ul::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: -14px !important;
    height: 14px !important;
    display: block !important;
}

#access li:hover > ul,
#access li:focus-within > ul,
#access ul ul:hover,
#access .sub-menu:hover,
.main-navigation li:hover > ul,
.main-navigation li:focus-within > ul,
.main-navigation ul ul:hover,
.main-navigation .sub-menu:hover,
.menu-menu-container li:hover > ul,
.menu-menu-container li:focus-within > ul {
    display: block !important;
}

#access ul ul li,
.main-navigation ul ul li,
.menu-menu-container ul ul li {
    display: block !important;
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

#access ul ul a,
.main-navigation ul ul a,
.menu-menu-container ul ul a {
    display: block !important;

    color: #2c2488 !important;
    background: transparent !important;

    font-family: 'Montserrat', sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;

    padding: 10px 12px !important;
    border: 0 !important;
    border-radius: 9px !important;

    text-align: left !important;
    text-decoration: none !important;
    white-space: normal !important;
}

#access ul ul a:hover,
.main-navigation ul ul a:hover,
.menu-menu-container ul ul a:hover {
    background: #f5f4fb !important;
    color: #00a651 !important;
}

/* =========================================================
   TYPOGRAPHIE CONTENU
   ========================================================= */

.entry-title,
.page-title,
h1 {
    color: #222222 !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: clamp(28px, 3.2vw, 40px) !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 24px 0 !important;
    padding: 0 !important;
}

h2 {
    color: #2c2488 !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    margin: 34px 0 14px 0 !important;
}

h3 {
    color: #2c2488 !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    margin: 26px 0 10px 0 !important;
}

.entry-content,
.entry-content p,
#content p {
    color: #333333 !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1.75 !important;
}

.entry-content p,
#content p {
    margin: 0 0 22px 0 !important;
}

.entry-content strong,
#content strong {
    font-weight: 700 !important;
}

/* Liens du contenu */
.entry-content a,
#content a {
    color: #2c2488 !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 4px !important;
}

.entry-content a:hover,
#content a:hover {
    color: #00a651 !important;
}

/* Listes */
.entry-content ul,
.entry-content ol {
    margin: 0 0 24px 26px !important;
    padding: 0 !important;
}

.entry-content li {
    margin-bottom: 8px !important;
    line-height: 1.65 !important;
}

/* Tableaux */
.entry-content table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 28px 0 !important;
}

.entry-content th,
.entry-content td {
    padding: 12px 14px !important;
    border: 1px solid #e5e5e5 !important;
    text-align: left !important;
}

.entry-content th {
    background: #f5f4fb !important;
    color: #2c2488 !important;
    font-weight: 700 !important;
}

/* =========================================================
   ARCHIVES / CATÉGORIES : LISTE COMPACTE
   ========================================================= */

/* Masquer le titre automatique "Archives de catégorie..." */
.archive .page-title,
.category .page-title,
.archive-title,
#content .page-title {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.archive #content,
.category #content {
    padding-top: 0 !important;
}

/* Article = ligne compacte */
.category article,
.archive article,
.category .post,
.archive .post {
    background: #ffffff !important;
    border: 1px solid rgba(44,36,136,.14) !important;
    border-radius: 14px !important;

    padding: 13px 18px !important;
    margin: 0 0 10px 0 !important;

    box-shadow: none !important;
}

/* Titre article */
.category article .entry-title,
.archive article .entry-title,
.category .post .entry-title,
.archive .post .entry-title,
.blog .entry-title,
.search .entry-title,
#content .post .entry-title {
    font-size: 19px !important;
    line-height: 1.22 !important;
    letter-spacing: -0.01em !important;
    margin: 0 !important;
}

/* Lien du titre */
.category article .entry-title a,
.archive article .entry-title a,
.category .post .entry-title a,
.archive .post .entry-title a,
.blog .entry-title a,
.search .entry-title a,
#content .post .entry-title a {
    display: block !important;
    color: #2c2488 !important;
    text-decoration: none !important;
}

.category article .entry-title a:hover,
.archive article .entry-title a:hover,
.category .post .entry-title a:hover,
.archive .post .entry-title a:hover,
.blog .entry-title a:hover,
.search .entry-title a:hover,
#content .post .entry-title a:hover {
    color: #00a651 !important;
}

/* Masquer tout sauf le titre dans les catégories ordinaires */
.category article .entry-content,
.archive article .entry-content,
.category article .entry-summary,
.archive article .entry-summary,
.category .post .entry-content,
.archive .post .entry-content,
.category .post .entry-summary,
.archive .post .entry-summary,
.category .entry-meta,
.archive .entry-meta,
.category .postmetadata,
.archive .postmetadata,
.category .more-link,
.archive .more-link,
.category article img,
.archive article img,
.category .post img,
.archive .post img {
    display: none !important;
}

/* =========================================================
   RUBRIQUE PHOTOS : UNE IMAGE + TITRE
   ========================================================= */

/* Carte article Photos */
.category-photos article,
.category-photos .post {
    display: block !important;

    background: #ffffff !important;
    border: 1px solid rgba(44,36,136,.14) !important;
    border-radius: 14px !important;

    padding: 12px !important;
    margin: 0 0 16px 0 !important;

    box-shadow: none !important;
    overflow: hidden !important;
}

/* Masquer les métadonnées et boutons */
.category-photos .entry-meta,
.category-photos .postmetadata,
.category-photos .more-link {
    display: none !important;
}

/* Le contenu sert de zone image */
.category-photos article .entry-content,
.category-photos article .entry-summary,
.category-photos .post .entry-content,
.category-photos .post .entry-summary {
    display: block !important;
    position: relative !important;

    width: 100% !important;
    height: 220px !important;

    margin: 0 0 12px 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
}

/* Masquer les paragraphes */
.category-photos article .entry-content p,
.category-photos article .entry-summary p,
.category-photos .post .entry-content p,
.category-photos .post .entry-summary p {
    display: none !important;
}

/* Masquer toutes les images et galeries par défaut */
.category-photos article .entry-content img,
.category-photos article .entry-summary img,
.category-photos .post .entry-content img,
.category-photos .post .entry-summary img,
.category-photos article figure,
.category-photos .post figure,
.category-photos .wp-block-gallery,
.category-photos .gallery,
.category-photos .blocks-gallery-grid {
    display: none !important;
}

/* Réafficher seulement le premier bloc image si c'est un figure */
.category-photos article .entry-content figure:first-of-type,
.category-photos article .entry-summary figure:first-of-type,
.category-photos .post .entry-content figure:first-of-type,
.category-photos .post .entry-summary figure:first-of-type {
    display: block !important;

    width: 100% !important;
    height: 220px !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
}

/* Réafficher l'image du premier figure */
.category-photos article .entry-content figure:first-of-type img,
.category-photos article .entry-summary figure:first-of-type img,
.category-photos .post .entry-content figure:first-of-type img,
.category-photos .post .entry-summary figure:first-of-type img {
    display: block !important;

    width: 100% !important;
    height: 220px !important;

    object-fit: cover !important;
    border-radius: 12px !important;

    margin: 0 !important;
}

/* Cas où l'image est directe dans le contenu */
.category-photos article .entry-content > img:first-of-type,
.category-photos article .entry-summary > img:first-of-type,
.category-photos .post .entry-content > img:first-of-type,
.category-photos .post .entry-summary > img:first-of-type {
    display: block !important;

    width: 100% !important;
    height: 220px !important;

    object-fit: cover !important;
    border-radius: 12px !important;

    margin: 0 !important;
}

/* Titre Photos */
.category-photos article .entry-title,
.category-photos .post .entry-title {
    display: block !important;

    font-size: 19px !important;
    line-height: 1.22 !important;
    letter-spacing: -0.01em !important;

    margin: 0 !important;
}

/* Lien titre Photos */
.category-photos article .entry-title a,
.category-photos .post .entry-title a {
    display: block !important;

    color: #2c2488 !important;
    text-decoration: none !important;
}

.category-photos article .entry-title a:hover,
.category-photos .post .entry-title a:hover {
    color: #00a651 !important;
}

/* =========================================================
   MEDIA
   ========================================================= */

img,
iframe,
video,
embed,
object {
    max-width: 100% !important;
    height: auto !important;
}

.entry-content img {
    border-radius: 10px !important;
}

/* =========================================================
   FOOTER
   ========================================================= */

#colophon,
#footer {
    background: #ffffff !important;
    color: #555555 !important;
    border-top: 1px solid #eeeeee !important;
    padding: 28px 64px !important;
    text-align: center !important;
}

/* Masque les icônes crayon du Customizer */
.customize-partial-edit-shortcut,
.customize-partial-edit-shortcut-button {
    display: none !important;
}

/* =========================================================
   TABLETTE
   ========================================================= */

@media (max-width: 900px) {

    #main {
        padding: 0 36px 56px 36px !important;
    }

    #branding,
    #header {
        padding: 22px 24px 0 24px !important;
    }

    #access .menu-menu-container > ul,
    #access ul.menu,
    .main-navigation > div > ul,
    .main-navigation > ul,
    .menu-menu-container > ul {
        gap: 8px 22px !important;
        margin: 22px auto 42px auto !important;
    }

    #access .menu-menu-container > ul > li > a,
    #access ul.menu > li > a,
    .main-navigation > div > ul > li > a,
    .main-navigation > ul > li > a,
    .menu-menu-container > ul > li > a {
        font-size: 16px !important;
    }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 640px) {

    body {
        background: #ffffff !important;
        font-size: 16px !important;
    }

    #page {
        width: 100% !important;
        max-width: 100% !important;
    }

    #branding,
    #header {
        padding: 16px 14px 0 14px !important;
    }

    #main {
        padding: 0 18px 44px 18px !important;
    }

    #content {
        max-width: 100% !important;
    }

    /* Bloc menu */
    #access,
    #access .menu-menu-container,
    .main-navigation,
    .menu-menu-container {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        padding: 0 !important;
        background: #ffffff !important;
        text-align: center !important;
        float: none !important;
        clear: both !important;
    }

    /* Menu mobile : centré, 1 élément par ligne */
    #access .menu-menu-container > ul,
    #access ul.menu,
    .main-navigation > div > ul,
    .main-navigation > ul,
    .menu-menu-container > ul {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;

        width: 100% !important;
        max-width: 320px !important;

        margin: 18px auto 34px auto !important;
        padding: 0 !important;

        gap: 10px !important;
        list-style: none !important;

        float: none !important;
        clear: both !important;
        text-align: center !important;
    }

    #access .menu-menu-container > ul > li,
    #access ul.menu > li,
    .main-navigation > div > ul > li,
    .main-navigation > ul > li,
    .menu-menu-container > ul > li {
        display: block !important;
        width: 100% !important;
        max-width: 320px !important;
        margin: 0 auto !important;
        padding: 0 !important;
        float: none !important;
        clear: both !important;
        text-align: center !important;
    }

    #access .menu-menu-container > ul > li > a,
    #access ul.menu > li > a,
    .main-navigation > div > ul > li > a,
    .main-navigation > ul > li > a,
    .menu-menu-container > ul > li > a {
        display: block !important;
        width: 100% !important;
        max-width: 320px !important;
        margin: 0 auto !important;

        padding: 11px 16px !important;

        color: #2c2488 !important;
        background: #ffffff !important;

        border: 1px solid rgba(44,36,136,.18) !important;
        border-radius: 999px !important;

        font-family: 'Montserrat', sans-serif !important;
        font-size: 15px !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;

        text-align: center !important;
        text-decoration: none !important;
    }

    /* Accueil en bleu spécial */
    #access .menu-menu-container > ul > li:first-child > a,
    #access ul.menu > li:first-child > a,
    .main-navigation > div > ul > li:first-child > a,
    .main-navigation > ul > li:first-child > a,
    .menu-menu-container > ul > li:first-child > a {
        color: #ffffff !important;
        background: #2c2488 !important;
        border-color: #2c2488 !important;
    }

    /* Survol / actif */
    #access .menu-menu-container > ul > li > a:hover,
    #access ul.menu > li > a:hover,
    .main-navigation > div > ul > li > a:hover,
    .main-navigation > ul > li > a:hover,
    .menu-menu-container > ul > li > a:hover,
    #access .current-menu-item > a,
    .main-navigation .current-menu-item > a {
        color: #ffffff !important;
        background: #00a651 !important;
        border-color: #00a651 !important;
    }

    /* Accueil reste bleu même si actif */
    #access .menu-menu-container > ul > li:first-child.current-menu-item > a,
    #access ul.menu > li:first-child.current-menu-item > a,
    .main-navigation > div > ul > li:first-child.current-menu-item > a,
    .main-navigation > ul > li:first-child.current-menu-item > a,
    .menu-menu-container > ul > li:first-child.current-menu-item > a {
        color: #ffffff !important;
        background: #2c2488 !important;
        border-color: #2c2488 !important;
    }

    /* Parent avec sous-menu */
    #access li.menu-item-has-children,
    .main-navigation li.menu-item-has-children,
    .menu-menu-container li.menu-item-has-children {
        position: relative !important;
        width: 100% !important;
        max-width: 320px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    /* Lien parent avec flèche */
    #access li.menu-item-has-children > a,
    .main-navigation li.menu-item-has-children > a,
    .menu-menu-container li.menu-item-has-children > a {
        display: block !important;
        position: relative !important;
        width: 100% !important;
        max-width: 320px !important;
        margin: 0 auto !important;
        cursor: pointer !important;
        touch-action: manipulation !important;
    }

    #access li.menu-item-has-children > a::after,
    .main-navigation li.menu-item-has-children > a::after,
    .menu-menu-container li.menu-item-has-children > a::after {
        content: "▾" !important;
        display: inline-block !important;
        float: right !important;
        margin-left: 8px !important;
        font-size: 15px !important;
        font-weight: 800 !important;
        line-height: 1 !important;
        transform: translateY(2px) !important;
    }

    /* Sous-menu mobile fermé */
    #access li.menu-item-has-children > ul,
    #access li.menu-item-has-children > .sub-menu,
    .main-navigation li.menu-item-has-children > ul,
    .main-navigation li.menu-item-has-children > .sub-menu,
    .menu-menu-container li.menu-item-has-children > ul,
    .menu-menu-container li.menu-item-has-children > .sub-menu {
        display: none !important;

        position: static !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;

        width: 100% !important;
        max-width: 320px !important;

        margin: 8px auto 0 auto !important;
        padding: 8px !important;

        background: #f7f7fb !important;
        border: 1px solid rgba(44,36,136,.12) !important;
        border-radius: 16px !important;
        box-shadow: none !important;

        list-style: none !important;
        text-align: center !important;
    }

    /* Sous-menu mobile ouvert au doigt */
    #access li.menu-item-has-children:hover > ul,
    #access li.menu-item-has-children:hover > .sub-menu,
    #access li.menu-item-has-children:focus-within > ul,
    #access li.menu-item-has-children:focus-within > .sub-menu,
    #access li.menu-item-has-children:active > ul,
    #access li.menu-item-has-children:active > .sub-menu,
    .main-navigation li.menu-item-has-children:hover > ul,
    .main-navigation li.menu-item-has-children:hover > .sub-menu,
    .main-navigation li.menu-item-has-children:focus-within > ul,
    .main-navigation li.menu-item-has-children:focus-within > .sub-menu,
    .main-navigation li.menu-item-has-children:active > ul,
    .main-navigation li.menu-item-has-children:active > .sub-menu,
    .menu-menu-container li.menu-item-has-children:hover > ul,
    .menu-menu-container li.menu-item-has-children:hover > .sub-menu,
    .menu-menu-container li.menu-item-has-children:focus-within > ul,
    .menu-menu-container li.menu-item-has-children:focus-within > .sub-menu,
    .menu-menu-container li.menu-item-has-children:active > ul,
    .menu-menu-container li.menu-item-has-children:active > .sub-menu {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 7px !important;
    }

    /* Flèche retournée quand ouvert */
    #access li.menu-item-has-children:hover > a::after,
    #access li.menu-item-has-children:focus-within > a::after,
    #access li.menu-item-has-children:active > a::after,
    .main-navigation li.menu-item-has-children:hover > a::after,
    .main-navigation li.menu-item-has-children:focus-within > a::after,
    .main-navigation li.menu-item-has-children:active > a::after,
    .menu-menu-container li.menu-item-has-children:hover > a::after,
    .menu-menu-container li.menu-item-has-children:focus-within > a::after,
    .menu-menu-container li.menu-item-has-children:active > a::after {
        transform: translateY(2px) rotate(180deg) !important;
    }

    /* Items du sous-menu */
    #access li.menu-item-has-children > ul > li,
    #access li.menu-item-has-children > .sub-menu > li,
    .main-navigation li.menu-item-has-children > ul > li,
    .main-navigation li.menu-item-has-children > .sub-menu > li,
    .menu-menu-container li.menu-item-has-children > ul > li,
    .menu-menu-container li.menu-item-has-children > .sub-menu > li {
        display: block !important;
        width: 100% !important;
        max-width: 300px !important;
        margin: 0 auto !important;
        padding: 0 !important;
        text-align: center !important;
    }

    /* Liens du sous-menu */
    #access li.menu-item-has-children > ul > li > a,
    #access li.menu-item-has-children > .sub-menu > li > a,
    .main-navigation li.menu-item-has-children > ul > li > a,
    .main-navigation li.menu-item-has-children > .sub-menu > li > a,
    .menu-menu-container li.menu-item-has-children > ul > li > a,
    .menu-menu-container li.menu-item-has-children > .sub-menu > li > a {
        display: block !important;
        width: 100% !important;
        max-width: 300px !important;

        margin: 0 auto !important;
        padding: 10px 11px !important;

        color: #2c2488 !important;
        background: #ffffff !important;

        border: 1px solid rgba(44,36,136,.12) !important;
        border-radius: 12px !important;

        font-size: 13px !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;

        text-align: center !important;
        text-decoration: none !important;
    }

    #access li.menu-item-has-children > ul > li > a:hover,
    #access li.menu-item-has-children > .sub-menu > li > a:hover,
    .main-navigation li.menu-item-has-children > ul > li > a:hover,
    .main-navigation li.menu-item-has-children > .sub-menu > li > a:hover,
    .menu-menu-container li.menu-item-has-children > ul > li > a:hover,
    .menu-menu-container li.menu-item-has-children > .sub-menu > li > a:hover {
        background: #2c2488 !important;
        color: #ffffff !important;
    }

    /* Titres mobile */
    .entry-title,
    .page-title,
    h1 {
        font-size: 26px !important;
        line-height: 1.18 !important;
        letter-spacing: -0.01em !important;
        margin-bottom: 20px !important;
    }

    h2 {
        font-size: 21px !important;
        line-height: 1.25 !important;
        margin-top: 28px !important;
        margin-bottom: 12px !important;
    }

    h3 {
        font-size: 18px !important;
        line-height: 1.25 !important;
        margin-top: 22px !important;
        margin-bottom: 10px !important;
    }

    .category article,
    .archive article,
    .category .post,
    .archive .post {
        padding: 12px 14px !important;
        margin-bottom: 9px !important;
        border-radius: 12px !important;
    }

    .category article .entry-title,
    .archive article .entry-title,
    .category .post .entry-title,
    .archive .post .entry-title,
    .blog .entry-title,
    .search .entry-title,
    #content .post .entry-title {
        font-size: 17px !important;
        line-height: 1.25 !important;
    }

    .entry-content,
    .entry-content p,
    #content p {
        font-size: 16px !important;
        line-height: 1.7 !important;
    }

    /* Photos mobile */
    .category-photos article,
    .category-photos .post {
        padding: 10px !important;
        margin-bottom: 14px !important;
        border-radius: 12px !important;
    }

    .category-photos article .entry-content,
    .category-photos article .entry-summary,
    .category-photos .post .entry-content,
    .category-photos .post .entry-summary,
    .category-photos article .entry-content figure:first-of-type,
    .category-photos article .entry-summary figure:first-of-type,
    .category-photos .post .entry-content figure:first-of-type,
    .category-photos .post .entry-summary figure:first-of-type,
    .category-photos article .entry-content figure:first-of-type img,
    .category-photos article .entry-summary figure:first-of-type img,
    .category-photos .post .entry-content figure:first-of-type img,
    .category-photos .post .entry-summary figure:first-of-type img,
    .category-photos article .entry-content > img:first-of-type,
    .category-photos article .entry-summary > img:first-of-type,
    .category-photos .post .entry-content > img:first-of-type,
    .category-photos .post .entry-summary > img:first-of-type {
        height: 180px !important;
    }

    .category-photos article .entry-title,
    .category-photos .post .entry-title {
        font-size: 17px !important;
        line-height: 1.25 !important;
    }

    #colophon,
    #footer {
        padding: 24px 18px !important;
    }
}