/* Brochure Earth, mini-site — dans l'esprit de la plaquette Enbro & Earth 2025 :
   fond gris clair, gros numéros de chapitre, disques verts coupés par le bord,
   photos rondes, pastilles cochées, mot-clé du titre en vert.
   Toutes les valeurs viennent de tokens.css. */

/* Poppins — Indian Type Foundry, SIL OFL 1.1, servie depuis /assets/fonts (cf. CREDITS.md) */
@font-face{font-family:"Poppins";src:url("/assets/fonts/Poppins-400-latin.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Poppins";src:url("/assets/fonts/Poppins-600-latin.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Poppins";src:url("/assets/fonts/Poppins-700-latin.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Poppins repli";src:local("Arial"),local("Liberation Sans");size-adjust:112%;ascent-override:95%;descent-override:30%}

*,*::before,*::after{box-sizing:border-box}
html{background:var(--c-gris);color:var(--c-ancre);scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--f-texte);font-weight:var(--g-texte);font-size:var(--t-site-corps);line-height:var(--i-corps);text-wrap:pretty;background:var(--c-gris);overflow-x:hidden}
h1,h2,h3{margin:0;font-weight:var(--g-titre);text-wrap:balance}
p,ul,ol,dl{margin:0}
ul,ol{padding:0;list-style:none}
strong,b{font-weight:var(--g-demi)}
a{color:inherit}
img{display:block;max-width:100%;height:auto}
button{font:inherit;color:inherit}
:focus-visible{outline:var(--b-epais) solid var(--c-earth);outline-offset:3px}
em{font-style:normal;color:var(--c-earth)}

.saut{position:absolute;left:var(--gouttiere);top:-100px;padding:var(--e-2) var(--e-3);background:var(--c-ancre);color:var(--c-blanc);z-index:4}
.saut:focus{top:var(--gouttiere)}

/* ── Barre ────────────────────────────────────────────────────────────── */
.barre{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:var(--gouttiere);padding:calc(var(--gouttiere) / 2) var(--gouttiere);background:var(--c-blanc);font-size:var(--t-site-annexe)}
.barre__marque{display:flex;align-items:center;gap:.4em;text-decoration:none;font-weight:var(--g-titre);font-size:1.35rem;letter-spacing:.06em;text-transform:uppercase;min-height:var(--touch-min)}
.barre__tel{text-decoration:none;font-weight:var(--g-demi);min-height:var(--touch-min);display:inline-flex;align-items:center;color:var(--c-earth)}
.anneau{width:1.5em;height:1.5em;flex:none}
.anneau__seg{fill:none;stroke:var(--c-vert);stroke-width:14;transform:rotate(-90deg);transform-origin:50% 50%}
.anneau__pt{fill:var(--c-vert)}
.anneau--pied{vertical-align:-.3em}

/* ── Le geste : le disque vert de la plaquette, coupé par le bord ─────── */
.disque{position:absolute;border-radius:50%;background:var(--c-vert);pointer-events:none;z-index:0}
.disque--accueil{width:clamp(220px,40vw,560px);aspect-ratio:1;right:calc(-1 * clamp(80px,14vw,220px));top:clamp(40px,8vw,120px)}
.disque--01{width:clamp(160px,28vw,400px);aspect-ratio:1;left:calc(-1 * clamp(60px,10vw,160px));top:var(--e-6)}
.disque--02{width:clamp(200px,32vw,460px);aspect-ratio:1;right:calc(-1 * clamp(80px,12vw,180px));top:var(--e-6);background:var(--c-blanc);opacity:.18}
.disque--03{width:clamp(160px,28vw,400px);aspect-ratio:1;left:calc(-1 * clamp(60px,10vw,160px));top:var(--e-6)}

/* ── Types ────────────────────────────────────────────────────────────── */
.sur{font-size:var(--t-site-annexe);letter-spacing:var(--l-annexe);color:var(--c-earth);font-weight:var(--g-demi)}
.affiche{font-size:var(--t-site-affiche);line-height:1;letter-spacing:var(--l-titre);max-width:12ch}
.h2{font-size:var(--t-site-h2);line-height:var(--i-h2);letter-spacing:var(--l-h2);max-width:22ch}
.h3{font-size:clamp(1.25rem,2.2vw,1.6rem);line-height:var(--i-h2);margin-bottom:var(--e-4)}
.chapeau{max-width:var(--s-lecture)}
.annexe{font-size:var(--t-site-annexe);line-height:var(--i-annexe);max-width:var(--s-lecture);padding-top:var(--e-3);border-top:var(--b-fin) solid var(--c-trait)}
.bouton{display:inline-flex;align-items:center;min-height:var(--touch-min);padding:0 var(--e-5);background:var(--c-vert);color:var(--c-ancre);text-decoration:none;font-weight:var(--g-demi);border-radius:999px;border:0}
.bouton:hover{background:var(--c-ancre);color:var(--c-blanc)}
.lien{display:inline-flex;align-items:center;min-height:var(--touch-min);text-decoration:none;border-bottom:var(--b-epais) solid var(--c-vert);font-weight:var(--g-demi);width:max-content;max-width:100%}

/* ── Accueil : titre à gauche, disque et photo ronde à droite ─────────── */
.accueil{position:relative;width:var(--s-page);margin:0 auto;padding:var(--s-section) 0;display:grid;gap:var(--e-5);min-height:min(70vh,900px);align-content:center;isolation:isolate}
.accueil > :not(.disque){position:relative;z-index:1;grid-column:1}
.accueil__photo{z-index:1;width:clamp(180px,34vw,480px);aspect-ratio:1;border-radius:50%;overflow:hidden;border:var(--b-epais) solid var(--c-blanc)}
@media (min-width:760px){
  .accueil{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);column-gap:var(--e-6)}
  .accueil > .accueil__photo{grid-column:2;grid-row:1 / 5;align-self:center;justify-self:end;margin-right:calc(-1 * var(--e-6))}
  .disque--accueil{right:calc(-1 * clamp(80px,14vw,220px));top:0}
}
.accueil__photo img{width:100%;height:100%;object-fit:cover}
.accueil__sous{max-width:var(--s-lecture);font-size:clamp(1.05rem,1.5vw,1.3rem)}
.accueil__plan{display:grid;gap:var(--e-2);padding-top:var(--e-5);border-top:var(--b-epais) solid var(--c-ancre);max-width:var(--s-lecture)}
.accueil__plan a{display:flex;gap:var(--e-3);align-items:baseline;text-decoration:none;min-height:var(--touch-min);font-weight:var(--g-demi);font-size:clamp(1.05rem,1.8vw,1.4rem)}
.accueil__plan b{font-weight:var(--g-titre);color:var(--c-earth)}
.accueil__plan a:hover{color:var(--c-earth)}
@media (max-width:759px){.accueil__photo{position:relative;right:auto;top:auto;width:min(60vw,260px);justify-self:end;margin-top:calc(-1 * var(--e-6))}.disque--accueil{top:auto;bottom:var(--s-section)}}

/* ── Chapitres ────────────────────────────────────────────────────────── */
.chapitre{position:relative;width:100%;padding:var(--s-section) calc((100% - var(--s-page)) / 2);display:grid;gap:var(--s-section);overflow:hidden;isolation:isolate;background:var(--c-blanc)}
.chapitre > :not(.disque){position:relative;z-index:1}
.chapitre__n{font-size:clamp(6rem,20vw,16rem);line-height:.85;letter-spacing:var(--l-serre);font-weight:var(--g-titre);margin-bottom:calc(-1 * var(--s-section) + var(--e-5))}
.chapitre__tete{display:grid;gap:var(--e-4)}
.chapitre--vert{background:var(--c-earth);color:var(--c-blanc)}
.chapitre--vert .sur,.chapitre--vert em{color:var(--c-blanc)}
.chapitre--vert em{text-decoration:underline;text-decoration-color:var(--c-vert);text-decoration-thickness:var(--b-epais);text-underline-offset:.15em}
.chapitre--vert .annexe{border-color:var(--c-blanc)}
.chapitre--vert .faits div{border-color:var(--c-vert)}
.chapitre--vert .faits dt{color:var(--c-blanc);opacity:.85}
#acc{background:var(--c-gris)}

.deux{display:grid;gap:var(--e-6);grid-template-columns:1fr}
@media (min-width:760px){.deux{grid-template-columns:1fr 1fr}}

/* Compteurs */
.compteurs{display:grid;grid-template-columns:1fr 1fr;gap:var(--e-4)}
@media (min-width:760px){.compteurs{grid-template-columns:repeat(4,1fr)}}
.compteurs li{display:grid;gap:var(--e-2);padding:var(--e-5);background:var(--c-gris);border-radius:var(--r-media);border-left:var(--b-epais) solid var(--c-vert)}
.compteur{font-size:var(--t-site-chiffre);line-height:var(--i-chiffre);letter-spacing:var(--l-serre);font-weight:var(--g-titre);font-variant-numeric:tabular-nums}
.compteur__l{font-size:var(--t-site-annexe);line-height:var(--i-annexe)}

/* Carte d'Europe : les pays présents en vert */
.presence{display:grid;gap:var(--e-4)}
.carte{width:min(100%,30rem);height:auto;justify-self:start}
.pays{fill:var(--c-gris);stroke:var(--c-blanc);stroke-width:1.2}
.pays--present{fill:var(--c-vert);stroke:var(--c-blanc);stroke-width:2}

/* Réalisations : photos rondes, comme la plaquette */
.refs{display:grid;gap:var(--e-4)}
.refs__liste{display:grid;gap:var(--e-5) var(--e-4);grid-template-columns:1fr 1fr}
@media (min-width:760px){.refs__liste{grid-template-columns:repeat(3,1fr)}}
.refs__liste li{display:grid;justify-items:center;text-align:center;gap:var(--e-3)}
.refs__liste picture{display:block;width:min(100%,260px);aspect-ratio:1;border-radius:50%;overflow:hidden;border:var(--b-epais) solid var(--c-vert)}
.refs__liste img{width:100%;height:100%;object-fit:cover}
.refs__liste p{font-size:var(--t-site-annexe)}
.refs__liste b{font-weight:var(--g-demi);font-size:1.15em}
.saviez{max-width:var(--s-lecture);display:grid;gap:var(--e-2);padding:var(--e-5);background:var(--c-gris);border-radius:var(--r-media);border-left:var(--b-epais) solid var(--c-vert)}

/* Pastilles : la coche dans un rond vert, comme la plaquette */
.pastilles{display:grid;gap:var(--e-3)}
.pastilles li{position:relative;padding-left:2.4em}
.pastilles li::before{content:"";position:absolute;left:0;top:0;width:1.6em;height:1.6em;border-radius:50%;background:var(--c-vert)}
.pastilles li::after{content:"";position:absolute;left:.5em;top:.38em;width:.6em;height:.32em;border-left:var(--b-epais) solid var(--c-ancre);border-bottom:var(--b-epais) solid var(--c-ancre);transform:rotate(-45deg)}
@media (min-width:760px){.pastilles--deux{grid-template-columns:1fr 1fr;column-gap:var(--e-6)}}

/* Garanties et faits */
.garanties,.faits{display:grid;gap:var(--e-2) var(--e-5);grid-template-columns:1fr 1fr}
.garanties div,.faits div{border-top:var(--b-fin) solid var(--c-trait);padding-top:var(--e-2)}
.garanties dt,.faits dt{font-size:var(--t-site-annexe);color:var(--c-earth)}
.garanties dd,.faits dd{margin:0;font-weight:var(--g-demi)}
.garanties dd{font-size:clamp(1.4rem,2.6vw,2rem);font-weight:var(--g-titre);line-height:1.1}

/* ── Durées et montages ───────────────────────────────────────────────── */
.duree,.montage,.partage{display:grid;gap:var(--e-4)}
.duree__q{font-size:var(--t-site-annexe);font-weight:var(--g-demi)}
.duree__choix,.montage__choix,.partage__choix{display:flex;flex-wrap:wrap;gap:var(--e-3)}
.duree__b{width:calc(var(--touch-min) * 1.8);height:calc(var(--touch-min) * 1.8);background:transparent;border:var(--b-fin) solid var(--c-blanc);border-radius:50%;cursor:pointer;display:grid;justify-items:center;align-content:center;font-weight:var(--g-titre);font-size:clamp(1.4rem,3vw,2rem);line-height:.9}
.duree__b small{font-weight:var(--g-texte);font-size:var(--t-site-annexe)}
.duree__b:hover{border-color:var(--c-vert)}
.duree__b.est-choisi{background:var(--c-vert);color:var(--c-ancre);border-color:var(--c-vert)}
.duree__texte{max-width:var(--s-lecture);font-size:clamp(1.05rem,1.7vw,1.4rem)}
.duree__texte b{color:var(--c-blanc);text-decoration:underline;text-decoration-color:var(--c-vert);text-decoration-thickness:var(--b-epais);text-underline-offset:.15em}

.montage__b,.partage__b{min-height:var(--touch-min);padding:0 var(--e-4);background:transparent;border:var(--b-fin) solid currentColor;border-radius:999px;cursor:pointer;font-weight:var(--g-demi)}
.montage__b.est-choisi{background:var(--c-vert);color:var(--c-ancre);border-color:var(--c-vert)}
.montage__pan{max-width:calc(var(--s-lecture) * 1.4)}

/* ── Partage ACC ──────────────────────────────────────────────────────── */
.partage__b.est-choisi{background:var(--c-vert);color:var(--c-ancre);border-color:var(--c-vert)}
.partage__b[disabled]{cursor:default}
.partage__fig{margin:0;display:grid;gap:var(--e-3)}
.partage__svg{width:100%;height:auto}
.partage__axe{stroke:var(--c-trait);stroke-width:1.5}
.partage__prod{fill:none;stroke:var(--c-ancre);stroke-width:4;stroke-linejoin:round}
.partage__part{fill:var(--c-vert);stroke:var(--c-blanc);stroke-width:2;opacity:0;transition:opacity var(--d-long) var(--courbe)}
.partage__part.est-actif{opacity:1}
.partage__part[data-part="gymnase"].est-actif{opacity:.8}
.partage__part[data-part="mairie"].est-actif{opacity:.62}
.partage__part[data-part="ehpad"].est-actif{opacity:.46}
.partage__part[data-part="habitants"].est-actif{opacity:.32}
.partage__h{font-family:var(--f-texte);font-size:22px;fill:var(--c-ancre)}
.partage__bilan{font-size:clamp(1.05rem,1.7vw,1.4rem);max-width:var(--s-lecture)}
.partage__bilan b{font-size:1.5em;font-weight:var(--g-titre);color:var(--c-earth)}

/* Étapes */
.etapes{display:grid;gap:var(--e-3)}
@media (min-width:760px){.etapes{grid-template-columns:repeat(3,1fr);gap:var(--e-4)}}
.etapes li{display:grid;grid-template-columns:auto 1fr;gap:var(--e-3);align-items:start;padding:var(--e-4);background:var(--c-blanc);border-radius:var(--r-media)}
.etapes b{display:grid;place-items:center;width:2.2em;height:2.2em;border-radius:50%;background:var(--c-vert);font-weight:var(--g-titre)}

/* ── Contact et pied ──────────────────────────────────────────────────── */
.contact{width:var(--s-page);margin:0 auto;padding:var(--s-section) 0;display:grid;gap:var(--e-5)}
.contact__coord{font-style:normal;display:flex;flex-wrap:wrap;gap:var(--e-4) var(--e-6);align-items:center}
.pied{width:var(--s-page);margin:0 auto;padding:var(--s-section) 0 var(--e-7);border-top:var(--b-fin) solid var(--c-trait);font-size:var(--t-site-annexe);display:grid;gap:var(--e-2)}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.partage__part{transition:none}}
