:root{--purple:var(--mj-theme-primary);--purple-dark:var(--mj-theme-primary-hover);--ink:var(--mj-theme-text);--soft:var(--mj-theme-surface-alt);--paper:var(--mj-theme-surface);--accent:var(--mj-theme-primary-soft)}*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.65}.mj-site-header:not(.is-builder){position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1rem clamp(1rem,5vw,5rem);background:var(--mj-theme-surface);border-bottom:1px solid var(--mj-theme-border)}.mj-brand{font-family:Georgia,serif;font-size:1.7rem;color:var(--purple-dark);text-decoration:none}.mj-site-header:not(.is-builder) nav{display:flex;flex-wrap:wrap;gap:1rem}.mj-site-header:not(.is-builder) nav a{color:var(--ink);text-decoration:none}.mj-page-hero{padding:clamp(4rem,10vw,8rem) 1rem;background:linear-gradient(135deg,var(--mj-theme-primary-soft),var(--mj-theme-background));text-align:center}.mj-page-hero h1{margin:0;font-family:Georgia,serif;font-size:clamp(2.2rem,7vw,5rem);font-weight:400;color:var(--purple-dark)}.mj-section{padding:clamp(3rem,8vw,6rem) 1rem}.mj-section-light{background:var(--mj-theme-surface)}.mj-section-soft{background:var(--soft)}.mj-section-accent{background:var(--purple);color:var(--mj-safe-primary-text,var(--mj-theme-on-primary))}.mj-container{width:min(1120px,100%);margin:auto}.mj-block h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(1.8rem,4vw,3rem);line-height:1.2;margin:0 0 1.25rem}.mj-block p{font-size:clamp(1rem,2vw,1.18rem);white-space:normal}.mj-quote-block{text-align:center;max-width:850px;margin:auto}.mj-quote{margin:0}.mj-quote p{font-family:Georgia,serif;font-size:clamp(1.5rem,4vw,2.6rem);font-style:italic;line-height:1.45}.mj-author{display:block;margin-top:1rem;font-weight:700}.mj-image-text{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:clamp(2rem,6vw,5rem);align-items:center}.mj-image-left .mj-image-column{order:0}.mj-image-left .mj-text-column{order:1}.mj-image-right .mj-text-column{order:0}.mj-image-right .mj-image-column{order:1}.mj-image-column img{display:block;width:100%;max-height:650px;object-fit:cover;border-radius:32px}.mj-site-footer:not(.is-builder){display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:2rem clamp(1rem,5vw,5rem);background:var(--purple-dark);color:var(--mj-safe-primary-text,var(--mj-theme-on-primary))}@media(max-width:760px){.mj-site-header:not(.is-builder){align-items:flex-start;flex-direction:column}.mj-site-header:not(.is-builder) nav{gap:.65rem}.mj-image-text{grid-template-columns:1fr}.mj-image-column,.mj-text-column{order:initial!important}.mj-site-footer:not(.is-builder){flex-direction:column}}


/* v3.0.7 — garde anti-régression SiteChrome
   Les styles historiques ci-dessus ne doivent jamais piloter un Header/Footer
   construit par le Builder. Le moteur SiteChrome reste seul responsable de
   leur largeur, grille, padding et responsive. */
.mj-site-header.is-builder,.mj-site-footer.is-builder{width:100%;max-width:none}

/* v2.0.3 — bibliothèque de sections et fonds */
.mj-section{position:relative;overflow:hidden}.mj-section-background{position:absolute;inset:0;z-index:0;background-image:var(--mj-bg-image);background-position:var(--mj-bg-position,center center);background-size:var(--mj-bg-size,cover);background-repeat:no-repeat;opacity:var(--mj-bg-opacity,1);pointer-events:none}.mj-section-content{position:relative;z-index:1}.mj-hero-block{text-align:center;max-width:900px;margin:auto;padding:clamp(1rem,3vw,2rem) 0}.mj-hero-block h2{font-size:clamp(2.2rem,6vw,4.8rem)}.mj-hero-actions{margin-top:1.8rem}.mj-button{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 1.4rem;border-radius:999px;background:var(--purple-dark);color:var(--mj-safe-primary-text,var(--mj-theme-on-primary));text-decoration:none;font-weight:700}.mj-section-accent .mj-button{background:var(--mj-theme-surface);color:var(--mj-theme-primary-hover)}.mj-two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,6vw,5rem)}.mj-cards-block>h2{text-align:center}.mj-cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,3vw,2rem);margin-top:2rem}.mj-card{padding:clamp(1.3rem,3vw,2rem);border-radius:24px;background:color-mix(in srgb,var(--mj-theme-surface) 84%,transparent);box-shadow:0 12px 35px color-mix(in srgb,var(--mj-theme-shadow) 12%,transparent)}.mj-card h3{font-family:Georgia,serif;font-weight:400;font-size:clamp(1.35rem,2.5vw,1.9rem);margin:0 0 .8rem}.mj-section-accent .mj-card{color:var(--ink)}.mj-cta-block{display:flex;align-items:center;justify-content:space-between;gap:2rem}.mj-cta-block h2{margin-bottom:.5rem}.mj-cta-block p{margin-bottom:0}@media(max-width:760px){.mj-two-columns,.mj-cards-grid{grid-template-columns:1fr}.mj-cta-block{align-items:flex-start;flex-direction:column}}

/* v2.0.4 — jetons typographiques et colorimétriques */
.mj-section{font-family:var(--mj-text-font,inherit);color:var(--mj-text-color,inherit)}
.mj-section h1,.mj-section h2,.mj-section h3,.mj-section h4,.mj-section h5,.mj-section h6,.mj-section .mj-quote p{font-family:var(--mj-title-font,inherit);color:var(--mj-title-color,inherit)}
.mj-section p,.mj-section li,.mj-section .mj-author,.mj-section .mj-button{font-family:var(--mj-text-font,inherit)}
