:root{
  --astree-mc-ink:#3e342b;
  --astree-mc-green:#496b4a;
  --astree-mc-sepia:#5a4332;
  --astree-mc-paper:#fbfaf6;
  --astree-mc-panel:#f6f1e8;
  --astree-mc-border:#d8cfc1;
}
.astree-mc{width:100%;overflow:hidden;background:var(--astree-mc-paper);color:var(--astree-mc-ink);font-family:"EB Garamond",Garamond,Georgia,serif}
.astree-mc h1,.astree-mc h2,.astree-mc h3{font-family:"Cormorant Garamond",Garamond,Georgia,serif;font-weight:500;color:var(--astree-mc-ink)}
.astree-mc-hero{position:relative;min-height:505px;background:#f7fbfa;overflow:hidden}
.astree-mc-hero-copy{position:relative;z-index:3;width:46%;padding:42px 24px 38px max(7vw,54px)}
.astree-mc-scroll{font-size:29px;margin-bottom:4px}
.astree-mc-hero h1{font-size:31px;margin:0 0 28px;line-height:1.15}
.astree-mc-hero-copy p{margin:0 0 24px;font-family:Arial,sans-serif;font-size:18px;line-height:1.55}
.astree-mc-scribe{font-family:"Cormorant Garamond",Garamond,serif!important}
.astree-mc-hero-image{position:absolute;z-index:1;right:0;top:0;bottom:0;width:69%;background-image:var(--astree-mc-hero);background-size:cover;background-position:58% 50%;clip-path:url(#astree-mc-hero-clip-desktop)}
.astree-mc-hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,251,250,.02),rgba(247,251,250,0))}
.astree-mc-hero-placeholder{display:flex;align-items:center;justify-content:center;padding:30px;background:#e8eee9;color:#6a746c;clip-path:none}
.astree-mc-story,.astree-mc-chevaliers{padding:78px 7%;max-width:980px;margin:auto}
.astree-mc-story h2,.astree-mc-parcelles-section>h2,.astree-mc-chevaliers h2{font-size:31px;text-align:center;margin:0 0 64px}
.astree-mc-story-copy{max-width:760px;margin:auto;font-family:Arial,sans-serif;font-size:18px;line-height:1.55}
.astree-mc-welcome{font-family:"Cormorant Garamond",Garamond,serif;font-size:20px}
.astree-mc-parcelles-section{padding:70px 7% 40px}
.astree-parcelles{width:min(94%,900px);margin:0 auto 40px}
.astree-parcelles-chargement,.astree-parcelles-message{padding:34px 28px;background:var(--astree-mc-panel);border:1px solid var(--astree-mc-border);border-radius:16px;text-align:center}
.astree-sablier{font-size:34px}
.astree-parcelle{margin:0 0 26px;padding:30px 34px;background:var(--astree-mc-panel);border:1px solid var(--astree-mc-border);border-radius:16px}
.astree-parcelle-domaine{font-size:31px!important;color:var(--astree-mc-green)!important;margin:0 0 8px}
.astree-parcelle-code{font-size:23px;font-weight:600;color:var(--astree-mc-sepia)}
.astree-parcelle-verrou,.astree-parcelle-localisation{margin-top:18px;padding:15px 18px;background:rgba(90,67,50,.06);border-radius:8px;font-size:18px;line-height:1.5}
.astree-parcelle-localisation a{color:var(--astree-mc-green);font-weight:600}
.astree-charte{width:min(92%,900px);margin:42px auto;padding:36px 42px;background:var(--astree-mc-panel);border:1px solid var(--astree-mc-border);border-radius:18px;text-align:center}
.astree-charte-surtitre{font-style:italic;font-size:20px;margin:8px 0}
.astree-charte h2{font-size:38px;margin:8px 0 18px}
.astree-charte-entete>p:not(.astree-charte-surtitre){max-width:730px;margin:0 auto 12px;font-size:20px;line-height:1.5}
.astree-charte-details{margin-top:28px;background:#fffdf9;border:1px solid var(--astree-mc-border);border-radius:12px;overflow:hidden}
.astree-charte-details summary{position:relative;padding:16px 50px 16px 22px;cursor:pointer;list-style:none;font-size:23px}
.astree-charte-details summary::-webkit-details-marker{display:none}
.astree-charte-details summary:after{content:"+";position:absolute;right:22px;font-size:28px;color:var(--astree-mc-green)}
.astree-charte-details[open] summary:after{content:"−"}
.astree-charte-summary-ouvert{display:none}.astree-charte-details[open] .astree-charte-summary-ferme{display:none}.astree-charte-details[open] .astree-charte-summary-ouvert{display:inline}
.astree-charte-texte{max-height:620px;overflow-y:auto;padding:34px 38px 40px;border-top:1px solid var(--astree-mc-border);font-size:18px;line-height:1.62;text-align:left}
.astree-charte-texte h3{font-size:27px;color:var(--astree-mc-green);border-bottom:1px solid var(--astree-mc-border);padding-bottom:7px;margin-top:36px}
.astree-charte-texte h4{font-size:22px;color:var(--astree-mc-sepia);margin:28px 0 9px}
.astree-charte-scribe{margin:30px 0;padding:24px 26px;background:rgba(73,107,74,.07);border-left:3px solid var(--astree-mc-green);font-style:italic}
.astree-charte-acceptation{margin-top:24px;padding-top:24px;border-top:1px solid var(--astree-mc-border)}
.astree-charte-acceptation label{display:flex;gap:12px;max-width:730px;margin:0 auto 20px;text-align:left;font-size:19px}
#astree-charte-bouton{max-width:540px;min-height:54px;padding:13px 25px;border:0;border-radius:999px;background:var(--astree-mc-green);color:#fff;font:600 22px "Cormorant Garamond",serif}
#astree-charte-bouton:disabled{opacity:.45}
.astree-mc-chevaliers{font-size:20px;line-height:1.65}
.astree-mc-chevaliers h2{text-align:left;margin:0 0 34px}.astree-mc-chevaliers h2:not(:first-child){margin-top:80px}
.astree-mc-seuil{padding:70px 7% 90px}
.astree-mc-scribe-letter{max-width:560px;margin:0 auto 80px;font-size:31px;line-height:1.45;font-style:italic;color:var(--astree-mc-sepia)}
.astree-mc-porte{max-width:620px;margin:auto;padding:45px 44px;background:#fffdf8;border:1px solid var(--astree-mc-border);border-radius:34px;text-align:center;box-shadow:0 14px 44px rgba(90,67,50,.09)}
.astree-mc-book{font-size:38px}.astree-mc-porte h2{font-size:46px;color:#183126}.astree-mc-notice{padding:18px;background:#f6f1e8;border-radius:12px}
@media(max-width:767px){
  .astree-mc-hero{min-height:690px;background:#fff}
  .astree-mc-hero-copy{z-index:3;width:50%;padding:74px 0 42px 9%}
  .astree-mc-scroll{font-size:25px;margin-bottom:8px}
  .astree-mc-hero h1{font-size:23px;margin:0 0 30px;line-height:1.15}
  .astree-mc-hero-copy p{font-size:15px;line-height:1.7;margin-bottom:24px}
  .astree-mc-hero-image{
    top:0;right:0;bottom:0;width:67%;
    background-position:59% 50%;
    clip-path:url(#astree-mc-hero-clip-mobile)
  }
  .astree-mc-hero-placeholder{display:none}
  .astree-mc-story,.astree-mc-chevaliers{padding:54px 9%}
  .astree-mc-story h2,.astree-mc-parcelles-section>h2{font-size:25px;text-align:left;margin-bottom:78px}
  .astree-mc-story-copy{font-size:18px;line-height:1.7}
  .astree-mc-welcome{font-size:20px}
  .astree-mc-parcelles-section{padding:54px 6%}
  .astree-mc-parcelles-section>h2{text-align:center;margin-bottom:80px}
  .astree-charte{width:86%;padding:30px 20px;margin:20px auto 60px}
  .astree-charte h2{font-size:34px;line-height:1.12}
  .astree-charte-entete>p:not(.astree-charte-surtitre){font-size:20px;line-height:1.5}
  .astree-charte-surtitre{font-size:21px}
  .astree-charte-details summary{font-size:24px}
  .astree-charte-acceptation label{font-size:20px;line-height:1.45}
  #astree-charte-bouton{font-size:22px;width:100%}
  .astree-mc-chevaliers{font-size:20px}
  .astree-mc-chevaliers h2{font-size:32px}
  .astree-mc-scribe-letter{font-size:28px;line-height:1.55}
  .astree-mc-porte{padding:34px 24px}
  .astree-mc-porte h2{font-size:40px}
}

/* ==========================================================
   v0.2.4 — Référence desktop Divi
   Aucun de ces réglages ne s'applique au mobile.
   ========================================================== */
@media (min-width: 768px) {
  .astree-mc-hero {
    min-height: 540px;
    background: #f7fbfa;
  }

  .astree-mc-hero-copy {
    width: 38%;
    margin-left: 19%;
    padding: 42px 0 34px 0;
  }

  .astree-mc-scroll {
    font-size: 30px;
    margin-bottom: 4px;
  }

  .astree-mc-hero h1 {
    font-size: 31px;
    margin: 0 0 28px;
  }

  .astree-mc-hero-copy p {
    font-size: 20px;
    line-height: 1.58;
    margin: 0 0 24px;
  }

  .astree-mc-hero-image {
    width: 82%;
    right: 0;
    top: 0;
    bottom: 0;
    background-size: cover;
    background-position: 57% 50%;
    clip-path: url(#astree-mc-hero-clip-desktop);
  }
}

/* v0.2.5 — Charte déjà acceptée */
.astree-charte-est-acceptee label,
.astree-charte-est-acceptee #astree-charte-bouton {
  display: none;
}
.astree-charte-est-acceptee .astree-charte-message {
  margin-top: 0;
}
