
/* =========================================================
   VERSION 1.6 — PALETTE DE TEXTE HARMONISÉE AVEC « À PROPOS »
   ========================================================= */

/*
 * Sur la page Mes livres, seuls les boutons et les éléments décoratifs
 * conservent le vert. Tous les textes reprennent les tons crème/beige
 * de la page À propos.
 */

/* Titres et textes principaux */
.vdml-hero h1,
.vdml-page .vdml-hero-content h1,
.vdml-section-heading h2,
.vdml-book-kicker,
.vdml-book-copy h3,
.vdml-modal-content h2 {
    color: #f5efe6 !important;
    -webkit-text-fill-color: #f5efe6 !important;
    background: none !important;
    background-image: none !important;
}

/* Bonne lecture et autres textes manuscrits */
.vdml-signature,
.vdml-script,
.vdml-quote {
    color: #f5efe6 !important;
    -webkit-text-fill-color: #f5efe6 !important;
}

/* Textes secondaires */
.vdml-intro,
.vdml-book-copy p,
.vdml-modal-content p,
.vdml-book-kicker,
.vdml-modal-emphasis {
    color: #d7c9b8 !important;
    -webkit-text-fill-color: #d7c9b8 !important;
}

/* Les emplacements d’image restent sobres et non verts */
.vdml-hero-placeholder span,
.vdml-cover-placeholder span,
.vdml-cover-placeholder small {
    color: #d7c9b8 !important;
    -webkit-text-fill-color: #d7c9b8 !important;
}

/*
 * Le vert reste réservé aux boutons et aux éléments décoratifs :
 * lignes, cœurs, feuilles, petites formes.
 */
.vdml-ornament b,
.vdml-mini-ornament,
.vdml-quote span,
.vdml-leaf,
.vdml-brand-heart {
    color: #9dbd68 !important;
    -webkit-text-fill-color: #9dbd68 !important;
}

.vdml-ornament span,
.vdml-section-heading span,
body.vdml-active .vdml-header-brand::after {
    background-color: rgba(157, 189, 104, .72) !important;
    background-image: linear-gradient(90deg, transparent, #9dbd68, transparent) !important;
}

/* Boutons : seuls éléments textuels verts */
.vdml-button,
.vdml-buy-link {
    color: #a7c36e !important;
    -webkit-text-fill-color: #a7c36e !important;
    border-color: #8fa85b !important;
}

.vdml-button:hover,
.vdml-button:focus-visible,
.vdml-buy-link:hover,
.vdml-buy-link:focus-visible {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Le nom du site dans l’en-tête reste crème comme sur À propos */
body.vdml-active .vdml-brand-small,
body.vdml-active .vdml-brand-name {
    color: #f5efe6 !important;
    -webkit-text-fill-color: #f5efe6 !important;
}


/* =========================================================
   VERSION 1.5 — titre plus éditorial et suppression du surtitre
   ========================================================= */

/* Le surtitre vert au-dessus de MES LIVRES est supprimé du HTML.
   Sécurité supplémentaire au cas où il subsisterait dans le cache. */
.vdml-eyebrow {
    display: none !important;
}

/* Titre plus élégant, plus fin et légèrement moins imposant */
.vdml-hero h1,
.vdml-page .vdml-hero-content h1 {
    max-width: 430px !important;
    margin: 0 !important;
    font-family: "Cormorant Garamond", "Baskerville", "Garamond", "Times New Roman", serif !important;
    font-size: clamp(2.8rem, 5vw, 5.15rem) !important;
    font-weight: 500 !important;
    line-height: .92 !important;
    letter-spacing: .055em !important;
    text-transform: uppercase !important;
    color: #9dbd68 !important;
    -webkit-text-fill-color: #9dbd68 !important;
}

/* Mise en page éditoriale sur deux lignes, sans effet de texte caché */
.vdml-hero h1 {
    white-space: normal !important;
}

.vdml-hero-content {
    padding-top: 108px !important;
}

/* Ajustement de l'ornement sous le titre pour un rendu plus haut de gamme */
.vdml-ornament {
    width: min(320px, 82%) !important;
    margin-top: 24px !important;
    margin-bottom: 30px !important;
}

.vdml-ornament span {
    opacity: .72;
}

/* Tablette et téléphone */
@media (max-width: 900px) {
    .vdml-hero h1,
    .vdml-page .vdml-hero-content h1 {
        max-width: 100% !important;
        font-size: clamp(2.6rem, 8vw, 4.3rem) !important;
        letter-spacing: .045em !important;
        line-height: .95 !important;
    }

    .vdml-hero-content {
        padding-top: 50px !important;
    }
}

@media (max-width: 560px) {
    .vdml-hero h1,
    .vdml-page .vdml-hero-content h1 {
        font-size: clamp(2.35rem, 12vw, 3.45rem) !important;
        letter-spacing: .035em !important;
    }

    .vdml-ornament {
        width: min(285px, 92%) !important;
    }
}


/* =========================================================
   VERSION 1.4 — corrections titre, signature et feuilles
   ========================================================= */

/* Corrige définitivement le titre invisible : aucune découpe ni texte transparent */
.vdml-hero h1,
.vdml-hero h1 *,
.vdml-page .vdml-hero-content h1 {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    background: none !important;
    background-image: none !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
    -webkit-text-fill-color: #9dbd68 !important;
    color: #9dbd68 !important;
    text-shadow: none !important;
}

/* Signature du site fidèle à la maquette */
body.vdml-active .vdml-header-brand {
    position: relative;
    align-items: center !important;
    justify-content: center !important;
    min-width: 220px !important;
    padding: 8px 18px 12px !important;
    color: #f3e8da !important;
}

body.vdml-active .vdml-header-brand::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 6px;
    width: 82px;
    height: 1px;
    transform: translateX(-50%);
    background: linear-gradient(90deg, transparent, #7f9b4f, transparent);
    opacity: .85;
}

body.vdml-active .vdml-brand-small {
    color: #d9c5ae !important;
    font-size: .73rem !important;
    letter-spacing: .16em !important;
}

body.vdml-active .vdml-brand-name {
    color: #f3e8da !important;
    font-size: 1.28rem !important;
    letter-spacing: .08em !important;
}

body.vdml-active .vdml-brand-heart {
    position: absolute;
    left: 50%;
    bottom: 0;
    z-index: 2;
    padding: 0 5px;
    transform: translateX(-50%);
    background: #160f0b;
    color: #9dbd68 !important;
    line-height: 1;
}

/* Feuilles décoratives */
.vdml-button-row,
.vdml-shop-row {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.vdml-shop-row {
    justify-content: center;
    margin-top: 22px;
}

.vdml-leaf {
    display: inline-block;
    color: #91ad5f;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 2rem;
    line-height: 1;
    transform-origin: center;
    user-select: none;
}

.vdml-leaf-left {
    transform: rotate(180deg);
}

.vdml-leaf-right {
    transform: rotate(0deg);
}

.vdml-button-row .vdml-button,
.vdml-shop-row .vdml-button {
    margin-top: 0 !important;
}

/* Croix et flèche : neutralisation totale de tout fond bleu du thème */
.vdml-modal-close,
.vdml-modal-close::before,
.vdml-modal-close::after {
    background: transparent !important;
    background-color: transparent !important;
}

.vdml-modal-close:focus,
.vdml-modal-close:focus-visible,
.vdml-modal-close:active {
    outline: 0 !important;
    box-shadow: none !important;
}

body.vdml-active #ast-scroll-top,
body.vdml-active #ast-scroll-top:focus,
body.vdml-active #ast-scroll-top:active,
body.vdml-active #ast-scroll-top:hover {
    outline: 0 !important;
    border: 0 !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.28) !important;
    background-color: #758f4a !important;
}

/* Responsive */
@media (max-width: 900px) {
    body.vdml-active .vdml-header-brand {
        min-width: 170px !important;
        padding-left: 4px !important;
        padding-right: 4px !important;
    }

    body.vdml-active .vdml-header-brand::after {
        width: 66px;
    }

    .vdml-button-row,
    .vdml-shop-row {
        justify-content: center;
    }
}


/* =========================================================
   VERSION 1.3 — finitions conformes à la maquette validée
   ========================================================= */

/* Signature L’Atelier de Virginie Del, replacée à gauche du menu */
body.vdml-active .vdml-header-brand {
    display: inline-flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-width: 190px;
    margin-right: auto;
    padding: 7px 14px 5px;
    color: #f1e4d6 !important;
    text-decoration: none !important;
    line-height: 1;
    font-family: Georgia, "Times New Roman", serif;
}

body.vdml-active .vdml-brand-small {
    display: block;
    margin-bottom: 2px;
    font-size: .72rem;
    letter-spacing: .12em;
}

body.vdml-active .vdml-brand-name {
    display: block;
    font-size: 1.28rem;
    letter-spacing: .05em;
}

body.vdml-active .vdml-brand-heart {
    display: block;
    margin-top: 3px;
    color: #91ad5f !important;
    font-size: .9rem;
}

body.vdml-active #masthead .ast-container,
body.vdml-active .site-header .ast-container,
body.vdml-active .main-header-bar .ast-container {
    display: flex !important;
    align-items: center !important;
}

/* Le titre MES LIVRES reprend exactement le vert de “Bonne lecture” */
.vdml-hero h1 {
    background: none !important;
    -webkit-background-clip: initial !important;
    background-clip: initial !important;
    color: var(--vdml-green-2) !important;
}

/* Voile extrêmement léger sur l’image principale */
.vdml-hero.has-image {
    background-image:
        linear-gradient(90deg,
            rgba(10, 7, 5, .30) 0%,
            rgba(18, 12, 8, .12) 40%,
            rgba(20, 13, 9, .03) 100%),
        var(--vdml-hero-image) !important;
}

.vdml-hero-overlay {
    background: linear-gradient(to bottom, rgba(0,0,0,.015), rgba(0,0,0,.055)) !important;
}

/* Bouton Acheter avec cadre fin et angles décoratifs */
.vdml-button {
    position: relative;
    min-width: 198px;
    border-radius: 0 !important;
    border: 1px solid #8fa85b !important;
    padding: 15px 34px !important;
    background: rgba(35, 47, 22, .10) !important;
    color: #a7c36e !important;
    box-shadow: none !important;
}

.vdml-button::before,
.vdml-button::after {
    content: "";
    position: absolute;
    width: 17px;
    height: 17px;
    pointer-events: none;
}

.vdml-button::before {
    left: -5px;
    top: -5px;
    border-left: 1px solid #8fa85b;
    border-top: 1px solid #8fa85b;
}

.vdml-button::after {
    right: -5px;
    bottom: -5px;
    border-right: 1px solid #8fa85b;
    border-bottom: 1px solid #8fa85b;
}

.vdml-button:hover,
.vdml-button:focus-visible {
    background: linear-gradient(180deg, #789445, #5f7637) !important;
    color: #fff !important;
    transform: translateY(-2px);
}

/* Croix de fermeture sans carré bleu */
.vdml-modal-close,
.vdml-modal-close:hover,
.vdml-modal-close:focus,
.vdml-modal-close:focus-visible,
.vdml-modal-close:active {
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #9dbd68 !important;
    -webkit-appearance: none;
    appearance: none;
}

/* Flèche de retour en haut : suppression des carrés bleus */
body.vdml-active #ast-scroll-top,
body.vdml-active .ast-scroll-to-top-right,
body.vdml-active .scroll-to-top,
body.vdml-active .back-to-top,
body.vdml-active [class*="scroll-top"],
body.vdml-active [class*="back-to-top"] {
    border: 0 !important;
    outline: none !important;
    background: #758f4a !important;
    color: #fff !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.28) !important;
}

body.vdml-active #ast-scroll-top:hover,
body.vdml-active #ast-scroll-top:focus,
body.vdml-active .ast-scroll-to-top-right:hover,
body.vdml-active .ast-scroll-to-top-right:focus,
body.vdml-active .scroll-to-top:hover,
body.vdml-active .scroll-to-top:focus,
body.vdml-active .back-to-top:hover,
body.vdml-active .back-to-top:focus,
body.vdml-active [class*="scroll-top"]:hover,
body.vdml-active [class*="scroll-top"]:focus,
body.vdml-active [class*="back-to-top"]:hover,
body.vdml-active [class*="back-to-top"]:focus {
    outline: none !important;
    background: #8daa5b !important;
    color: #fff !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.28) !important;
}

/* Mobile et tablette : image en haut avec voile toujours très léger */
@media (max-width: 900px) {
    .vdml-hero.has-image::before {
        background:
            linear-gradient(to bottom, rgba(0,0,0,.015), rgba(0,0,0,.07)),
            var(--vdml-hero-image) center top / cover no-repeat !important;
    }

    body.vdml-active .vdml-header-brand {
        min-width: 152px;
        align-items: flex-start;
        padding-left: 0;
    }

    body.vdml-active .vdml-brand-name {
        font-size: 1.02rem;
    }

    body.vdml-active .vdml-brand-small {
        font-size: .61rem;
    }
}


/* =========================================================
   VERSION 1.2 — intégration visuelle identique aux autres pages
   ========================================================= */

html,
body.vdml-active {
    margin: 0 !important;
    padding: 0 !important;
    background: #120c08 !important;
}

body.vdml-active {
    overflow-x: hidden;
}

/* Suppression complète des bandes blanches et des conteneurs du thème */
body.vdml-active #page,
body.vdml-active .site,
body.vdml-active .site-content,
body.vdml-active #content,
body.vdml-active .content-area,
body.vdml-active #primary,
body.vdml-active main,
body.vdml-active article,
body.vdml-active .entry-content,
body.vdml-active .wp-site-blocks,
body.vdml-active .wp-block-post-content,
body.vdml-active .ast-container,
body.vdml-active .site-primary,
body.vdml-active .content-area.primary,
body.vdml-active .entry-content-wrap,
body.vdml-active .site-main {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Masque le titre de page et le nom du site uniquement ici */
body.vdml-active .entry-header,
body.vdml-active .entry-title,
body.vdml-active .page-title,
body.vdml-active .post-thumbnail,
body.vdml-active .site-branding,
body.vdml-active .ast-site-title-wrap,
body.vdml-active .site-title,
body.vdml-active .wp-block-site-title {
    display: none !important;
}

/* En-tête sombre comme les autres pages */
body.vdml-active #masthead,
body.vdml-active .site-header,
body.vdml-active .ast-primary-header-bar,
body.vdml-active .main-header-bar,
body.vdml-active header.wp-block-template-part {
    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    background: linear-gradient(90deg, #110b07 0%, #21150e 55%, #120c08 100%) !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(144, 171, 93, .22) !important;
    box-shadow: none !important;
}

body.vdml-active #masthead .ast-container,
body.vdml-active .site-header .ast-container,
body.vdml-active .main-header-bar .ast-container {
    min-height: 70px !important;
    padding-left: clamp(20px, 4vw, 72px) !important;
    padding-right: clamp(20px, 4vw, 72px) !important;
}

/* Menu blanc, page active et survol verts */
body.vdml-active .main-header-menu a,
body.vdml-active .main-navigation a,
body.vdml-active .site-header a,
body.vdml-active header.wp-block-template-part a {
    color: #f3e8da !important;
}

body.vdml-active .main-header-menu a:hover,
body.vdml-active .main-navigation a:hover,
body.vdml-active .site-header a:hover,
body.vdml-active .current-menu-item > a,
body.vdml-active .current_page_item > a {
    color: #8eaa60 !important;
}

/* La page commence immédiatement sous le menu */
body.vdml-active .vdml-page {
    width: 100vw !important;
    max-width: none !important;
    margin: 0 !important;
}

/* Pied de page foncé, sans bande blanche */
body.vdml-active #colophon,
body.vdml-active .site-footer,
body.vdml-active .site-below-footer-wrap,
body.vdml-active footer.wp-block-template-part {
    margin: 0 !important;
    background: #110b07 !important;
    color: #e8d7c5 !important;
    border-top: 1px solid rgba(142,170,96,.28) !important;
}

body.vdml-active #colophon a,
body.vdml-active .site-footer a {
    color: #8eaa60 !important;
}

/* Palette verte demandée */
.vdml-page {
    --vdml-green: #7f9b4f;
    --vdml-green-2: #9dbd68;
    --vdml-green-dark: #60743f;
}

.vdml-eyebrow,
.vdml-ornament b,
.vdml-signature,
.vdml-section-heading h2,
.vdml-book-kicker,
.vdml-mini-ornament,
.vdml-cover-placeholder span,
.vdml-hero-placeholder span,
.vdml-modal-emphasis {
    color: var(--vdml-green-2) !important;
}

.vdml-hero h1 {
    color: #f3e8da !important;
}

.vdml-hero h1::first-line {
    color: #f3e8da;
}

.vdml-book-copy h3,
.vdml-modal-content h2 {
    color: #f3e8da !important;
}

/* Met le second mot du grand titre en vert sans modifier le HTML */
.vdml-hero h1 {
    max-width: 520px;
}

.vdml-hero h1 {
    background: linear-gradient(to bottom, #f3e8da 0 46%, #8eaa60 46% 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent !important;
}

.vdml-ornament span,
.vdml-section-heading span {
    background-color: rgba(142,170,96,.55) !important;
}

.vdml-button {
    color: var(--vdml-green-2) !important;
    border-color: var(--vdml-green-2) !important;
    background: rgba(43, 57, 27, .08) !important;
}

.vdml-button:hover,
.vdml-button:focus-visible {
    color: #fff !important;
    background: var(--vdml-green-dark) !important;
    border-color: var(--vdml-green-2) !important;
    box-shadow: 0 12px 28px rgba(127,155,79,.28) !important;
}

.vdml-quote {
    color: #c8b292 !important;
}

.vdml-quote span {
    color: var(--vdml-green-2) !important;
}

@media (max-width: 921px) {
    body.vdml-active #masthead,
    body.vdml-active .site-header,
    body.vdml-active .ast-primary-header-bar,
    body.vdml-active .main-header-bar {
        background: linear-gradient(135deg, #110b07, #2a1a10) !important;
    }

    body.vdml-active .ast-mobile-header-wrap,
    body.vdml-active .ast-mobile-header-content,
    body.vdml-active .main-header-menu {
        background: #160f0b !important;
    }
}


/* Intégration plein écran avec le thème WordPress */
body.vdml-active {
    margin: 0;
    background: #160f0b;
}

body.vdml-active .site,
body.vdml-active #page,
body.vdml-active .site-content,
body.vdml-active #content,
body.vdml-active .content-area,
body.vdml-active #primary,
body.vdml-active main.site-main,
body.vdml-active article,
body.vdml-active .entry-content,
body.vdml-active .wp-site-blocks,
body.vdml-active .wp-block-post-content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.vdml-active .entry-header,
body.vdml-active .entry-title,
body.vdml-active .page-title,
body.vdml-active .post-thumbnail,
body.vdml-active .site-branding,
body.vdml-active .custom-logo-link + .site-title,
body.vdml-active .wp-block-site-title,
body.vdml-active header .site-title {
    display: none !important;
}

body.vdml-active .vdml-page {
    width: 100vw !important;
    max-width: none !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
}

/* Barre de navigation harmonisée avec les autres pages */
body.vdml-active .site-header,
body.vdml-active header.wp-block-template-part,
body.vdml-active header#masthead {
    background: linear-gradient(90deg, #1a110c, #332218) !important;
    border-bottom: 1px solid rgba(230, 210, 187, .18) !important;
}

body.vdml-active .site-header a,
body.vdml-active header.wp-block-template-part a,
body.vdml-active header#masthead a,
body.vdml-active .main-navigation a {
    color: #f3e8da !important;
}

body.vdml-active .site-header a:hover,
body.vdml-active header.wp-block-template-part a:hover,
body.vdml-active header#masthead a:hover,
body.vdml-active .main-navigation a:hover,
body.vdml-active .current-menu-item > a {
    color: #8cab68 !important;
}

body.vdml-active .site-footer,
body.vdml-active footer.wp-block-template-part {
    margin-top: 0 !important;
}

@media (max-width: 900px) {
    body.vdml-active .site-header,
    body.vdml-active header.wp-block-template-part,
    body.vdml-active header#masthead {
        background: linear-gradient(135deg, #1a110c, #332218) !important;
    }
}


:root {
    --vdml-bg-1: #160f0b;
    --vdml-bg-2: #2d1e15;
    --vdml-bg-3: #493123;
    --vdml-cream: #f3e8da;
    --vdml-muted: #cfbda9;
    --vdml-line: rgba(228, 203, 175, .48);
    --vdml-green: #738f56;
    --vdml-green-2: #8cab68;
    --vdml-shadow: rgba(0, 0, 0, .38);
}

.vdml-page,
.vdml-page * {
    box-sizing: border-box;
}

.vdml-page {
    width: 100%;
    overflow: hidden;
    color: var(--vdml-cream);
    background: var(--vdml-bg-1);
    font-family: Georgia, "Times New Roman", serif;
}

.vdml-hero {
    position: relative;
    min-height: 88vh;
    display: flex;
    align-items: center;
    isolation: isolate;
    background:
        radial-gradient(circle at 78% 20%, rgba(126, 86, 48, .18), transparent 32%),
        linear-gradient(115deg, #100b08 0%, #23170f 48%, #3a281b 100%);
}

.vdml-hero.has-image {
    background-image:
        linear-gradient(90deg, rgba(10, 7, 5, .93) 0%, rgba(18, 12, 8, .72) 42%, rgba(20, 13, 9, .30) 100%),
        var(--vdml-hero-image);
    background-size: cover;
    background-position: center;
}

.vdml-hero-placeholder {
    position: absolute;
    inset: 0 0 0 43%;
    display: grid;
    place-items: center;
    border-left: 1px dashed rgba(243,232,218,.18);
    background:
        linear-gradient(135deg, rgba(255,255,255,.025), rgba(255,255,255,.005)),
        repeating-linear-gradient(45deg, transparent 0 18px, rgba(255,255,255,.012) 18px 19px);
    z-index: -2;
}

.vdml-hero.has-image .vdml-hero-placeholder {
    display: none;
}

.vdml-hero-placeholder span,
.vdml-cover-placeholder span {
    color: rgba(243,232,218,.56);
    letter-spacing: .14em;
    text-transform: uppercase;
    font-size: .78rem;
}

.vdml-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(to bottom, rgba(0,0,0,.08), rgba(0,0,0,.22));
}

.vdml-hero-content {
    width: min(620px, 88vw);
    margin-left: clamp(28px, 7vw, 120px);
    padding: 120px 0 80px;
}

.vdml-eyebrow {
    margin: 0 0 12px;
    color: var(--vdml-muted);
    text-transform: uppercase;
    letter-spacing: .26em;
    font-size: .72rem;
}

.vdml-hero h1 {
    margin: 0;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: .04em;
    font-size: clamp(3rem, 6vw, 6.3rem);
    line-height: .96;
}

.vdml-ornament {
    display: flex;
    align-items: center;
    gap: 14px;
    width: min(370px, 85%);
    margin: 28px 0 32px;
}

.vdml-ornament span {
    height: 1px;
    flex: 1;
    background: var(--vdml-line);
}

.vdml-ornament b {
    font-weight: 400;
    color: var(--vdml-muted);
}

.vdml-script {
    margin: 0 0 28px;
    font-family: "Brush Script MT", "Segoe Script", cursive;
    font-size: clamp(2rem, 3.2vw, 3.35rem);
    line-height: 1.08;
}

.vdml-intro {
    max-width: 470px;
    margin: 0;
    color: #eadfd2;
    font-size: clamp(1rem, 1.25vw, 1.24rem);
    line-height: 1.72;
}

.vdml-signature {
    margin: 28px 0 0;
    font-family: "Brush Script MT", "Segoe Script", cursive;
    font-size: 2rem;
    color: var(--vdml-muted);
}

.vdml-books {
    padding: clamp(72px, 8vw, 126px) 24px 62px;
    background:
        radial-gradient(circle at 50% 0%, rgba(123,83,51,.25), transparent 35%),
        linear-gradient(135deg, #130d09 0%, #2b1c13 50%, #17100c 100%);
}

.vdml-inner {
    width: min(1180px, 100%);
    margin: auto;
}

.vdml-section-heading {
    display: grid;
    grid-template-columns: minmax(50px,1fr) auto minmax(50px,1fr);
    align-items: center;
    gap: 24px;
    margin-bottom: clamp(48px, 6vw, 82px);
}

.vdml-section-heading span {
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--vdml-line));
}

.vdml-section-heading span:last-child {
    background: linear-gradient(90deg, var(--vdml-line), transparent);
}

.vdml-section-heading h2 {
    margin: 0;
    max-width: 760px;
    text-align: center;
    font-size: clamp(1.2rem, 2.3vw, 2.15rem);
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.vdml-book-card {
    display: grid;
    grid-template-columns: minmax(280px, .78fr) minmax(360px, 1.22fr);
    align-items: center;
    gap: clamp(48px, 8vw, 110px);
    max-width: 980px;
    margin: auto;
}

.vdml-cover-zone {
    display: flex;
    justify-content: center;
}

.vdml-cover,
.vdml-modal-cover img {
    display: block;
    width: min(100%, 365px);
    aspect-ratio: 2 / 3;
    object-fit: cover;
    box-shadow: 0 28px 65px var(--vdml-shadow);
}

.vdml-cover-placeholder {
    width: min(100%, 365px);
    aspect-ratio: 2 / 3;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 12px;
    padding: 30px;
    text-align: center;
    border: 1px solid rgba(232,212,190,.42);
    background:
        radial-gradient(circle at 50% 25%, rgba(134,98,63,.22), transparent 35%),
        linear-gradient(145deg, #20150f, #0f0a07);
    box-shadow: 0 28px 65px var(--vdml-shadow);
}

.vdml-cover-placeholder small {
    color: rgba(243,232,218,.42);
}

.vdml-book-copy {
    max-width: 560px;
}

.vdml-book-kicker {
    margin: 0 0 12px;
    color: var(--vdml-muted);
    font-style: italic;
    letter-spacing: .04em;
}

.vdml-book-copy h3,
.vdml-modal-content h2 {
    margin: 0;
    font-size: clamp(2rem, 4vw, 4.2rem);
    font-weight: 400;
    text-transform: uppercase;
    line-height: 1.03;
}

.vdml-mini-ornament {
    margin: 18px 0 22px;
    color: var(--vdml-muted);
    font-size: 1.15rem;
}

.vdml-book-copy p:not(.vdml-book-kicker) {
    color: #e6d9cb;
    font-size: 1.08rem;
    line-height: 1.72;
}

.vdml-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 148px;
    margin-top: 20px;
    padding: 14px 28px;
    border: 1px solid rgba(238,222,204,.75);
    border-radius: 999px;
    background: transparent;
    color: var(--vdml-cream);
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: .13em;
    font: 600 .78rem/1 Arial, sans-serif;
    cursor: pointer;
    transition: background .25s ease, border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}

.vdml-button:hover,
.vdml-button:focus-visible {
    background: var(--vdml-green);
    border-color: var(--vdml-green-2);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(115,143,86,.28);
}

.vdml-quote {
    margin: 88px auto 0;
    padding: 26px 0 0;
    border-top: 1px solid rgba(232,212,190,.2);
    text-align: center;
    color: var(--vdml-muted);
    font-family: "Brush Script MT", "Segoe Script", cursive;
    font-size: clamp(1.5rem, 2.4vw, 2.25rem);
    line-height: 1.35;
}

.vdml-quote span {
    margin: 0 12px;
    font-family: Georgia, serif;
    font-size: 1rem;
}

.vdml-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    place-items: center;
    padding: 24px;
}

.vdml-modal.is-open {
    display: grid;
}

.vdml-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(7,5,4,.82);
    backdrop-filter: blur(6px);
}

.vdml-modal-panel {
    position: relative;
    z-index: 1;
    width: min(1050px, 96vw);
    max-height: 90vh;
    overflow: auto;
    padding: clamp(28px, 5vw, 60px);
    border: 1px solid rgba(232,212,190,.3);
    background:
        radial-gradient(circle at 80% 10%, rgba(111,83,54,.22), transparent 30%),
        linear-gradient(140deg, #281a12, #110c09);
    box-shadow: 0 35px 100px rgba(0,0,0,.62);
}

.vdml-modal-close {
    position: absolute;
    top: 12px;
    right: 18px;
    border: 0;
    background: transparent;
    color: var(--vdml-cream);
    font-size: 2.2rem;
    cursor: pointer;
}

.vdml-modal-grid {
    display: grid;
    grid-template-columns: minmax(220px, .72fr) minmax(360px, 1.28fr);
    align-items: center;
    gap: clamp(34px, 6vw, 72px);
}

.vdml-modal-cover {
    display: flex;
    justify-content: center;
}

.vdml-cover-placeholder.compact {
    width: min(100%, 300px);
}

.vdml-modal-content p {
    color: #e5d8ca;
    line-height: 1.67;
}

.vdml-modal-emphasis {
    font-style: italic;
    color: var(--vdml-cream) !important;
}

.vdml-buy-link.is-disabled {
    opacity: .55;
    cursor: default;
    pointer-events: none;
}

body.vdml-lock {
    overflow: hidden;
}

@media (max-width: 900px) {
    .vdml-hero {
        min-height: auto;
        display: grid;
        grid-template-rows: minmax(360px, 54vh) auto;
    }

    .vdml-hero-placeholder {
        position: relative;
        inset: auto;
        grid-row: 1;
        border-left: 0;
        border-bottom: 1px dashed rgba(243,232,218,.18);
    }

    .vdml-hero.has-image {
        background-image: none;
    }

    .vdml-hero.has-image::before {
        content: "";
        grid-row: 1;
        background:
            linear-gradient(to bottom, rgba(0,0,0,.12), rgba(0,0,0,.38)),
            var(--vdml-hero-image) center top / cover no-repeat;
    }

    .vdml-hero-content {
        grid-row: 2;
        width: 100%;
        margin: 0;
        padding: 58px 7vw 70px;
        background: linear-gradient(145deg, #140e0a, #2e1f16);
    }

    .vdml-book-card,
    .vdml-modal-grid {
        grid-template-columns: 1fr;
    }

    .vdml-cover-zone,
    .vdml-modal-cover {
        order: -1;
    }

    .vdml-book-copy {
        margin: auto;
        text-align: center;
    }

    .vdml-section-heading {
        grid-template-columns: 1fr;
    }

    .vdml-section-heading span {
        display: none;
    }
}

@media (max-width: 560px) {
    .vdml-hero {
        grid-template-rows: 330px auto;
    }

    .vdml-hero-content {
        padding: 46px 24px 58px;
    }

    .vdml-books {
        padding-inline: 18px;
    }

    .vdml-section-heading h2 {
        line-height: 1.45;
    }

    .vdml-book-card {
        gap: 38px;
    }

    .vdml-cover-placeholder,
    .vdml-cover {
        width: min(82vw, 330px);
    }

    .vdml-modal {
        padding: 10px;
    }

    .vdml-modal-panel {
        width: 100%;
        max-height: 94vh;
        padding: 48px 22px 28px;
    }

    .vdml-modal-content {
        text-align: center;
    }

    .vdml-quote span {
        display: none;
    }
}

/* =========================================================
   VERSION 1.7 — CORRECTION FINALE DU TITRE « MES LIVRES »
   Placée en dernier pour écraser toutes les anciennes règles.
   ========================================================= */

html body.vdml-active .vdml-page .vdml-hero .vdml-hero-content h1,
html body.vdml-active .vdml-page .vdml-hero-content h1,
html body.vdml-active .vdml-hero h1 {
    color: #f5efe6 !important;
    -webkit-text-fill-color: #f5efe6 !important;
    background: none !important;
    background-image: none !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
    text-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Sécurité supplémentaire contre les anciens effets de texte vert/transparents */
html body.vdml-active .vdml-page .vdml-hero h1::before,
html body.vdml-active .vdml-page .vdml-hero h1::after {
    color: #f5efe6 !important;
    -webkit-text-fill-color: #f5efe6 !important;
    background: none !important;
}

