@font-face{font-family:'Instrument Serif';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-400.woff2) format('woff2')}
@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-400-italic.woff2) format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/jost-300.woff2) format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/jost-400.woff2) format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/jost-500.woff2) format('woff2')}
/* =========================================================
   SUMus — page d'accueil. Couleurs reprises du logo.
   Pour changer une photo : déposez votre image dans
   sumus-assets/ avec le nom indiqué (voir LISEZ-MOI.txt).
   ========================================================= */
:root{
  --ivoire:#FBF7EE;
  --ivoire-2:#F4EDDC;
  --sable:#E6D795;      /* or sable du logo */
  --or:#8A6B1E;         /* or foncé, pour petits textes sur fond clair */
  --bleu:#0702CA;       /* bleu roi du logo */
  --encre:#1C2050;      /* texte courant */
  --encre-2:#4A4F7A;
  --nuit:#0A0E4A;       /* chapitres sombres */
  --nuit-2:#121766;
  --creme:#F3EADF;
  --serif:'Instrument Serif',Georgia,serif;
  --sans:'Jost',system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--ivoire);color:var(--encre);font-family:var(--sans);font-weight:300;font-size:18px;line-height:1.65;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%;display:block}
a{color:var(--bleu)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--bleu);outline-offset:4px;border-radius:6px}
.sombre a:focus-visible{outline-color:var(--sable)}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px}
.kicker{margin:0;font-size:13px;letter-spacing:.32em;text-transform:uppercase;color:var(--or);font-weight:400}
.sombre .kicker{color:var(--sable)}
h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0;line-height:1.02}
h2{font-size:clamp(42px,5.6vw,84px)}
em{font-style:italic}
.btn{display:inline-flex;align-items:center;gap:10px;padding:16px 30px;border-radius:999px;text-decoration:none;font-weight:500;font-size:16px;line-height:1.2;transition:transform .25s ease,background .25s ease}
.btn:hover{transform:translateY(-2px)}
.btn-bleu{background:var(--bleu);color:#fff}
.btn-bleu:hover{background:#0500A0}
.btn-sable{background:var(--sable);color:var(--nuit)}
.btn-lien{padding:16px 6px;color:inherit}
.sombre{background:var(--nuit);color:var(--creme)}
.sombre p{color:#E3DCEB}

/* ---------- En-tête ---------- */
.entete{position:sticky;top:0;z-index:50;background:rgba(251,247,238,.88);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(7,2,202,.08)}
.entete .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:12px;padding-bottom:12px}
.marque{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--bleu)}
.marque img{width:58px;height:58px;object-fit:contain}
.marque span{font-family:var(--serif);font-size:30px;letter-spacing:.04em}
.nav{display:flex;align-items:center;gap:30px;font-size:15px;letter-spacing:.03em}
.nav a{color:var(--encre);text-decoration:none;padding:10px 0}
.nav a:hover{color:var(--bleu)}
.nav .btn{color:#fff;padding:12px 24px}
.langues{font-size:13px;color:var(--encre-2);letter-spacing:.08em}
.menu-mobile{display:none}
.menu-mobile summary{list-style:none;cursor:pointer;padding:12px 18px;border:1px solid rgba(7,2,202,.3);border-radius:999px;color:var(--bleu);font-size:15px}
.menu-mobile summary::-webkit-details-marker{display:none}
.menu-mobile nav{position:absolute;left:16px;right:16px;top:calc(100% + 8px);background:var(--ivoire);border-radius:22px;box-shadow:0 20px 50px rgba(10,14,74,.18);padding:16px 24px;display:flex;flex-direction:column}
.menu-mobile nav a{padding:14px 0;color:var(--encre);text-decoration:none;border-bottom:1px solid var(--ivoire-2);font-size:17px}
.menu-mobile nav a:last-child{border:0;color:var(--bleu);font-weight:500}
@media (max-width:980px){.nav{display:none}.menu-mobile{display:block}}

/* ---------- Ouverture ---------- */
.ouverture{position:relative;min-height:calc(100vh - 82px);min-height:760px;display:flex;align-items:flex-start;overflow:hidden}
.ouverture .ciel{position:absolute;inset:0;width:100%;height:100%}
.ouverture .wrap{position:relative;padding-top:clamp(64px,10vh,120px);padding-bottom:300px;display:flex;flex-direction:column;gap:26px}
.ouverture h1{font-size:clamp(56px,8.6vw,136px);line-height:.95;color:var(--bleu);max-width:1000px}
.ouverture h1 em{color:var(--or)}
.ouverture p.chapo{margin:0;font-size:clamp(19px,1.7vw,22px);max-width:560px;color:var(--encre)}
.actions{display:flex;flex-wrap:wrap;gap:12px;padding-top:6px}
.apparait{animation:monte 1.2s ease both}
.apparait.d2{animation-delay:.2s}.apparait.d3{animation-delay:.4s}.apparait.d4{animation-delay:.6s}
@keyframes monte{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.apparait{animation:none}}

/* ---------- Chapitre I ---------- */
.reve{text-align:center;padding:150px 0 140px}
.reve .wrap{max-width:1000px;display:flex;flex-direction:column;align-items:center;gap:34px}
.citation{margin:0;font-family:var(--serif);font-style:italic;font-size:clamp(34px,4.6vw,66px);line-height:1.15;color:var(--bleu)}
.auteur{margin:0;font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:var(--encre-2)}
.filet{width:1px;height:72px;background:linear-gradient(var(--sable),transparent)}
.reve p.texte{margin:0;font-size:20px;line-height:1.8;max-width:720px}
.et{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 44px;font-family:var(--serif);font-size:clamp(24px,2.6vw,34px);color:var(--bleu)}
.et em{color:var(--or)}

/* ---------- Chapitre II : la fleur ---------- */
.fleur{padding:140px 0;overflow:hidden}
.fleur .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:40px 64px}
.fleur .intro{flex:1 1 380px;display:flex;flex-direction:column;gap:22px}
.fleur .intro h2 em{color:var(--sable)}
.fleur .intro p{margin:0}
.fleur .visuel{flex:1.4 1 520px;min-width:0}
.fleur-svg{width:100%;height:auto}
.fleur-svg .labels text{font:400 30px var(--sans)}
.fleur-svg .centre{font:italic 30px var(--serif)}
.priorites{display:flex;flex-wrap:wrap;gap:10px;padding-top:6px}
.priorites span{border:1px solid rgba(230,215,149,.45);color:var(--sable);border-radius:999px;padding:8px 18px;font-size:15px;letter-spacing:.04em}
@media (prefers-reduced-motion:no-preference){
  .fleur-svg g.petales{transform-origin:500px 430px;animation:respire 9s ease-in-out infinite}
  @keyframes respire{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}
}


/* ---------- Chapitre I : trois questions ---------- */
.questions{padding:140px 0 120px}
.questions .wrap{display:flex;flex-direction:column;gap:56px}
.trio{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:56px}
.trio article{display:flex;flex-direction:column;gap:20px;border-top:1px solid var(--sable);padding-top:28px}
.trio .q{font-size:clamp(36px,3.6vw,52px);color:var(--bleu)}
.trio .q em{color:var(--or)}
.trio p{margin:0;font-size:18px;line-height:1.75}
.parce{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:16px;font-size:18px;line-height:1.7}
.parce li{padding-left:28px;position:relative}
.parce li::before{content:"";position:absolute;left:0;top:.62em;width:14px;height:1px;background:var(--or)}
.mead{text-align:center;padding:110px 0}
.mead .wrap{max-width:1000px;display:flex;flex-direction:column;gap:22px}
.mead .citation{color:var(--creme);font-size:clamp(30px,3.8vw,54px)}
.mead .auteur{color:var(--sable)}
/* ---------- Chapitre II : le mouvement ---------- */
.mouvement{padding:140px 0}
.mouvement .wrap{display:flex;flex-direction:column;gap:64px}
.mouvement .tete{display:flex;flex-direction:column;gap:24px;max-width:900px}
.mouvement h2{color:var(--bleu)}.mouvement h2 em{color:var(--or)}
.mouvement .chapo{margin:0;font-size:20px;line-height:1.75}
.priorites-grandes{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:24px}
.prio{background:#fff;border-radius:32px;padding:40px 34px;display:flex;flex-direction:column;gap:18px;border:1px solid rgba(7,2,202,.1)}
.prio h3{font-size:44px;color:var(--bleu)}
.prio p{margin:0;font-size:17px;line-height:1.75;color:var(--encre)}
.prio.humain{background:linear-gradient(180deg,#FFF3F2,#fff 55%)}
.prio.terre{background:linear-gradient(180deg,#EEF8EF,#fff 55%)}
.prio.eau{background:linear-gradient(180deg,#EEF4FF,#fff 55%)}
.citation{margin:0;font-family:var(--serif);font-style:italic;line-height:1.2}
.auteur{margin:0;font-size:14px;letter-spacing:.16em;text-transform:uppercase}
.vous h2{font-size:clamp(42px,5.2vw,80px);line-height:1.02}
@media (max-width:640px){.questions,.mouvement{padding:96px 0}.mead{padding:80px 0}}

/* ---------- Photos (avec couleur de repli si l'image manque) ---------- */
.photo{background-color:#3A3F7A;background-size:cover;background-position:center}
.photo-venise{background-image:url(sumus-assets/venise.jpg),linear-gradient(180deg,#3A3F8A 0%,#6B4E7A 50%,#1A1F5A 100%)}
.photo-expo{background-image:url(sumus-assets/exposition-2022.jpg),linear-gradient(180deg,#6B4E7A,#1A1F5A)}
.photo-concert{background-image:url(sumus-assets/concert.jpg),linear-gradient(180deg,#8A5E7A,#2A2F6A)}
.photo-forge{background-image:url(sumus-assets/forge-du-futur.jpg),linear-gradient(180deg,#C98E80,#3A3F7A)}

/* ---------- Chapitre III : Venise ---------- */
.venise{position:relative;min-height:820px;display:flex;align-items:flex-end;color:var(--creme);overflow:hidden}
.venise .photo{position:absolute;inset:0}
.venise::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,14,74,0) 30%,rgba(10,14,74,.85) 100%)}
.venise .wrap{position:relative;z-index:1;padding-bottom:120px;display:flex;flex-direction:column;gap:26px}
.venise h2{font-size:clamp(44px,6vw,98px);max-width:1000px}
.venise h2 em{color:var(--sable)}
.venise p{margin:0;font-size:20px;max-width:640px;color:#EEE6F0}
.venise a{color:var(--sable);align-self:flex-start;padding:10px 0;text-underline-offset:8px}

/* ---------- Chapitre IV : Forum ---------- */
.forum{padding:150px 0}
.forum .wrap{display:flex;flex-wrap:wrap;gap:64px;align-items:center}
.forum .texte{flex:1 1 460px;display:flex;flex-direction:column;gap:24px}
.forum h2{color:var(--bleu)}.forum h2 em{color:var(--or)}
.forum .date{flex:1 1 380px;display:flex;flex-direction:column;align-items:center;gap:8px;padding:72px 32px;border:1px solid var(--sable);border-radius:300px 300px 28px 28px;background:linear-gradient(180deg,var(--ivoire-2),var(--ivoire));text-align:center}
.forum .date .jour{font-family:var(--serif);font-size:130px;line-height:1;color:var(--bleu)}
.forum .date .mois{font-family:var(--serif);font-size:38px}
.forum .date small{font-size:16px;color:var(--encre-2)}

/* ---------- Chapitre V : l'art ---------- */
.art{padding:120px 0}
.art .tete{display:flex;flex-wrap:wrap;gap:24px 64px;align-items:flex-end;justify-content:space-between;margin-bottom:56px}
.art .tete > div{flex:1 1 520px;display:flex;flex-direction:column;gap:20px}
.art h2 em{color:var(--sable)}
.art .tete > p{flex:1 1 360px;margin:0}
.arches{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;max-width:860px}
.arches figure{margin:0;display:flex;flex-direction:column;gap:16px}
.arches .photo{aspect-ratio:4/5;border-radius:160px 160px 14px 14px;transition:transform .6s ease}
.arches figure:hover .photo{transform:scale(1.02)}
.arches figcaption{display:flex;flex-direction:column;gap:4px}
.arches figcaption b{font-family:var(--serif);font-weight:400;font-size:24px;color:var(--creme)}
.arches figcaption span{font-size:15px;color:#B9B4D0}

/* ---------- Chapitre VI : vous ---------- */
.vous{padding:150px 0;text-align:center}
.vous .wrap{display:flex;flex-direction:column;align-items:center;gap:56px}
.vous h2{color:var(--bleu);font-size:clamp(48px,6.6vw,108px);line-height:.98}
.vous h2 em{color:var(--or)}
.portes{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;width:100%}
.porte{text-decoration:none;color:var(--encre);border:1px solid rgba(7,2,202,.18);border-radius:30px;padding:44px 28px;display:flex;flex-direction:column;gap:12px;align-items:center;transition:transform .3s ease,box-shadow .3s ease;background:#fff}
.porte:hover{transform:translateY(-4px);box-shadow:0 24px 50px rgba(10,14,74,.12)}
.porte b{font-family:var(--serif);font-weight:400;font-size:36px;color:var(--bleu)}
.porte span{font-size:16px;color:var(--encre-2)}
.porte.don{background:var(--bleu);border-color:var(--bleu)}
.porte.don b{color:#fff}.porte.don span{color:#D9D8FF}

/* ---------- Partenaires ---------- */
.partenaires{border-top:1px solid var(--ivoire-2);padding:84px 0;text-align:center;background:var(--ivoire-2)}
.partenaires .wrap{display:flex;flex-direction:column;align-items:center;gap:26px}
.partenaires p.noms{margin:0;font-family:var(--serif);font-size:clamp(22px,2.4vw,30px);line-height:1.75;max-width:1100px}

/* ---------- Pied de page ---------- */
.pied{padding:80px 0 44px}
.pied .haut{display:flex;flex-wrap:wrap;gap:40px 64px;justify-content:space-between;align-items:flex-start}
.pied .marque-pied{display:flex;gap:18px;align-items:center;max-width:460px}
.pied .marque-pied img{width:92px;height:92px;object-fit:contain;background:var(--ivoire);border-radius:50%;padding:8px}
.pied .marque-pied p{margin:0;font-size:16px}
.pied .lettre{display:flex;flex-direction:column;gap:14px;max-width:420px}
.pied .lettre b{font-family:var(--serif);font-weight:400;font-size:30px;color:var(--creme)}
.pied .bas{margin-top:56px;padding-top:24px;border-top:1px solid rgba(243,234,223,.14);display:flex;flex-wrap:wrap;gap:12px 28px;font-size:14px;color:#B9B4D0}
.pied .bas a{color:#B9B4D0}

@media (max-width:640px){
  body{font-size:17px}
  .wrap{padding:0 20px}
  .reve,.fleur,.forum,.art,.vous{padding:96px 0}
  .ouverture .wrap{padding-bottom:220px}
  .forum .date .jour{font-size:96px}
  .marque img{width:48px;height:48px}.marque span{font-size:26px}
  .fleur-svg .labels text{font-size:44px}
  .fleur-svg .centre{font-size:34px}
}

/* ---------- Logos partenaires ---------- */
.tuile{margin:0;display:flex;flex-direction:column;gap:12px;align-items:center;text-align:center}
.logo-box{width:100%;aspect-ratio:3/2;min-height:0;overflow:hidden;background:#fff;border:1px solid rgba(7,2,202,.1);border-radius:20px;display:flex;align-items:center;justify-content:center;padding:18px;box-sizing:border-box;transition:transform .3s ease,box-shadow .3s ease}
.tuile:hover .logo-box{transform:translateY(-3px);box-shadow:0 18px 40px rgba(10,14,74,.1)}
.logo-box img{width:100%;height:100%;object-fit:contain}
.logo-box .initiales{display:none;font-family:var(--serif);font-size:40px;color:var(--bleu);letter-spacing:.04em}
.logo-box.vide{background:linear-gradient(160deg,#fff,var(--ivoire-2))}
.logo-box.vide .initiales{display:block}
.tuile figcaption{font-size:15px;line-height:1.35;color:var(--encre)}
.logos-accueil{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:22px 18px;width:100%;max-width:1100px}
.tuile.petite .logo-box{border-radius:16px;padding:14px}
.tuile.petite .initiales{font-size:30px}
/* ---------- Page partenaires ---------- */
.p-hero{padding:120px 0 70px;text-align:center}
.p-hero .wrap{max-width:900px;display:flex;flex-direction:column;align-items:center;gap:22px}
.p-hero h1{font-size:clamp(52px,7vw,104px);color:var(--bleu);line-height:.98}
.p-hero h1 em{color:var(--or)}
.p-hero p{margin:0;font-size:20px;line-height:1.75}
.p-cercle{padding:70px 0 90px}
.p-cercle .tete{display:flex;align-items:baseline;gap:20px;margin-bottom:40px;flex-wrap:wrap}
.p-cercle h2{font-size:clamp(38px,4.4vw,64px);color:var(--bleu)}
.p-cercle .compte{font-size:15px;color:var(--encre-2);letter-spacing:.06em}
.cartes-part{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px}
.carte-part{background:#fff;border:1px solid rgba(7,2,202,.1);border-radius:26px;padding:24px;display:flex;flex-direction:column;gap:16px}
.carte-part .logo-box{border:0;background:var(--ivoire);border-radius:18px;aspect-ratio:2/1}
.carte-part h3{font-size:30px;color:var(--bleu);line-height:1.1}
.carte-part .desc{display:flex;flex-direction:column;gap:12px;font-size:16px;line-height:1.7;color:var(--encre)}
.carte-part .desc p{margin:0}
.carte-part .desc ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px}
.p-cercle.alt{background:var(--ivoire-2)}
.p-rejoindre{padding:120px 0;text-align:center}
.p-rejoindre .wrap{max-width:820px;display:flex;flex-direction:column;align-items:center;gap:24px}
.p-rejoindre h2{font-size:clamp(40px,5vw,72px)}
.p-rejoindre h2 em{color:var(--sable)}

/* ---------- Page don ---------- */
.d-hero{padding:110px 0 60px}
.d-hero .wrap{display:flex;flex-wrap:wrap;gap:56px;align-items:flex-start}
.d-hero .texte{flex:1 1 440px;display:flex;flex-direction:column;gap:24px;padding-top:12px}
.d-hero h1{font-size:clamp(52px,6.6vw,100px);color:var(--bleu);line-height:.98}
.d-hero h1 em{color:var(--or)}
.d-hero .texte p{margin:0;font-size:19px;line-height:1.75}
.formulaire-don{flex:1 1 420px;max-width:520px;background:#fff;border:1px solid rgba(7,2,202,.12);border-radius:32px;padding:34px;display:flex;flex-direction:column;gap:20px;box-shadow:0 30px 60px rgba(10,14,74,.08)}
.formulaire-don h2{font-size:34px;color:var(--bleu)}
.bascule{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:var(--ivoire-2);border-radius:999px;padding:6px;border:0;margin:0}
.bascule legend,.montants legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.choix input{position:absolute;opacity:0;pointer-events:none}
.bascule .choix span{display:block;text-align:center;padding:12px;border-radius:999px;font-weight:500;font-size:15px;cursor:pointer;color:var(--encre)}
.bascule .choix input:checked+span{background:var(--bleu);color:#fff}
.montants{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border:0;margin:0;padding:0}
.montants .choix span{display:block;text-align:center;padding:16px 6px;border:1.5px solid rgba(7,2,202,.25);border-radius:18px;font-family:var(--serif);font-size:28px;color:var(--bleu);cursor:pointer;transition:all .2s}
.montants .choix input:checked+span{background:var(--bleu);border-color:var(--bleu);color:#fff}
.choix input:focus-visible+span{outline:2px solid var(--bleu);outline-offset:3px}
.autre{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:500}
.autre input{border:1.5px solid rgba(7,2,202,.25);border-radius:16px;padding:14px 16px;font:300 18px var(--sans);color:var(--encre);background:var(--ivoire)}
.formulaire-don .btn{justify-content:center;font-size:17px;padding:18px}
.formulaire-don .mention{margin:0;font-size:14px;color:var(--encre-2);text-align:center}
.pays{display:flex;flex-direction:column;gap:12px}
.pays-btn{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:16px;align-items:center;text-decoration:none;color:var(--encre);border:1.5px solid rgba(7,2,202,.2);border-radius:22px;padding:18px 22px;transition:all .25s ease;background:var(--ivoire)}
.pays-btn b{font-family:var(--serif);font-weight:400;font-size:28px;color:var(--bleu);line-height:1.1}
.pays-btn b small{font-family:var(--sans);font-size:14px;color:var(--encre-2)}
.pays-btn span{grid-row:2;font-size:14px;color:var(--encre-2)}
.pays-btn i{grid-row:1/3;grid-column:2;font-style:normal;font-size:24px;color:var(--bleu);transition:transform .25s}
.pays-btn:hover{background:var(--bleu);border-color:var(--bleu)}
.pays-btn:hover b,.pays-btn:hover i,.pays-btn:hover b small,.pays-btn:hover span{color:#fff}
.pays-btn:hover i{transform:translateX(4px)}
.d-fiscal{padding:110px 0}
.d-fiscal .wrap{display:flex;flex-wrap:wrap;gap:48px 72px;align-items:center}
.d-fiscal .sceau{flex:0 0 220px;height:220px;border-radius:50%;border:1px solid var(--sable);display:flex;align-items:center;justify-content:center;text-align:center;box-shadow:inset 0 0 0 10px var(--nuit),inset 0 0 0 11px rgba(230,215,149,.5)}
.d-fiscal .sceau span{font-family:var(--serif);font-style:italic;font-size:30px;line-height:1.1;color:var(--sable)}
.d-fiscal .texte{flex:1 1 520px;display:flex;flex-direction:column;gap:22px}
.d-fiscal h2 em{color:var(--sable)}
.d-fiscal p{margin:0;font-size:18px;line-height:1.8}
.d-fiscal a{color:var(--sable)}
.liens-fiscal{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;font-size:16px;color:#E3DCEB}
.d-destination{padding:110px 0}
.d-destination .tete{display:flex;flex-direction:column;gap:18px;max-width:760px;margin-bottom:48px}
.d-destination h2{color:var(--bleu)}.d-destination h2 em{color:var(--or)}
.d-grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.d-grille article{background:#fff;border:1px solid rgba(7,2,202,.1);border-radius:26px;padding:30px 26px;display:flex;flex-direction:column;gap:12px}
.d-grille h3{font-size:32px;color:var(--bleu)}
.d-grille p{margin:0;font-size:16px;line-height:1.7}
.d-autres{padding:110px 0}
.d-autres .wrap{display:flex;flex-direction:column;gap:44px}
.d-autres h2 em{color:var(--sable)}
.d-autres .grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px}
.d-autres article{background:var(--nuit-2);border:1px solid rgba(230,215,149,.25);border-radius:28px;padding:32px 28px;display:flex;flex-direction:column;gap:14px}
.d-autres h3{font-size:32px;color:var(--creme)}
.d-autres p{margin:0;font-size:16px;line-height:1.7}
.d-autres a{color:var(--sable);align-self:flex-start;padding:8px 0;text-underline-offset:6px}

/* ---------- Page vision ---------- */
.v-hero{padding:120px 0 90px;text-align:center}
.v-hero .wrap{max-width:980px;display:flex;flex-direction:column;align-items:center;gap:24px}
.v-hero h1{font-size:clamp(40px,7.4vw,112px);overflow-wrap:break-word;hyphens:auto;color:var(--bleu);line-height:.97}
.v-hero h1 em{color:var(--or)}
.v-hero p{margin:0;font-size:20px;line-height:1.75;max-width:720px}
.v-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;padding-top:8px}
.v-nav a{border:1px solid rgba(7,2,202,.22);border-radius:999px;padding:10px 20px;text-decoration:none;color:var(--bleu);font-size:15px}
.v-nav a:hover{background:var(--bleu);color:#fff}
.v-bloc{padding:120px 0}
.v-bloc .wrap{display:flex;flex-wrap:wrap;gap:48px 80px;align-items:flex-start}
.v-bloc .gauche{flex:1 1 380px;display:flex;flex-direction:column;gap:20px;position:sticky;top:120px}
.v-bloc .droite{flex:1.3 1 480px;display:flex;flex-direction:column;gap:22px}
.v-bloc .droite p{margin:0;font-size:19px;line-height:1.8}
.v-bloc h2 em{color:var(--or)}
.v-bloc:not(.sombre) h2{color:var(--bleu)}
.v-bloc.sombre h2 em{color:var(--sable)}
.v-bloc .droite .v-citation{margin:0;font-family:var(--serif);font-style:italic;font-size:clamp(30px,3.4vw,46px);line-height:1.2;color:var(--bleu)}
.v-latin{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;font-family:var(--serif);font-size:clamp(40px,4.6vw,64px);color:var(--bleu)}
.v-latin span{font-family:var(--sans);font-size:15px;letter-spacing:.2em;text-transform:uppercase;color:var(--or)}
.v-passages{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.v-passages div{background:#fff;border:1px solid rgba(7,2,202,.1);border-radius:22px;padding:20px 22px;font-family:var(--serif);font-size:26px;color:var(--encre)}
.v-passages div em{color:var(--or);font-size:22px}
.v-domaines{display:flex;flex-wrap:wrap;gap:10px}
.v-domaines span{border:1px solid rgba(230,215,149,.45);color:var(--sable);border-radius:999px;padding:9px 18px;font-size:15px}
.v-refs{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;padding-top:8px}
.v-refs article{border:1px solid rgba(230,215,149,.3);border-radius:24px;padding:26px;display:flex;flex-direction:column;gap:8px}
.v-refs b{font-family:var(--serif);font-weight:400;font-size:28px;color:var(--creme)}
.v-refs p{font-size:16px!important}
.v-et{display:flex;flex-direction:column;gap:14px}
.v-et div{display:flex;align-items:baseline;justify-content:center;gap:18px;font-family:var(--serif);font-size:clamp(28px,3.2vw,44px);color:var(--bleu);border-bottom:1px solid var(--ivoire-2);padding:14px 0}
.v-et em{color:var(--or);font-size:.8em}
.v-valeurs{display:flex;flex-wrap:wrap;gap:10px}
.v-valeurs span{background:var(--bleu);color:#fff;border-radius:999px;padding:9px 18px;font-size:15px}
.v-fin{padding:120px 0;text-align:center}
.v-fin .wrap{max-width:860px;display:flex;flex-direction:column;align-items:center;gap:26px}
.v-fin h2 em{color:var(--sable)}
@media (max-width:860px){.v-bloc .gauche{position:static}}

/* ---------- Page méthode ---------- */
.m-fleur{padding:110px 0}
.m-fleur .wrap{display:flex;flex-wrap:wrap;gap:40px 72px;align-items:center}
.m-fleur .texte{flex:1 1 400px;display:flex;flex-direction:column;gap:22px}
.m-fleur .texte p{margin:0;font-size:18px;line-height:1.8}
.m-fleur h2 em{color:var(--sable)}
.m-fleur .visuel{flex:1.3 1 520px;min-width:0}
.m-legende{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.m-legende div{border:1px solid rgba(230,215,149,.35);border-radius:22px;padding:18px 20px;display:flex;flex-direction:column;gap:4px}
.m-legende b{font-family:var(--serif);font-weight:400;font-size:26px;color:var(--creme)}
.m-legende span{font-size:15px;color:#D9D3E6}
.m-duo{padding:120px 0}
.m-duo .tete{display:flex;flex-direction:column;gap:18px;max-width:780px;margin-bottom:52px}
.m-duo h2{color:var(--bleu)}.m-duo h2 em{color:var(--or)}
.m-duo .grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px}
.m-duo article{background:#fff;border:1px solid rgba(7,2,202,.1);border-radius:30px;padding:36px 32px;display:flex;flex-direction:column;gap:14px}
.m-duo article .etiquette{font-size:13px;letter-spacing:.24em;text-transform:uppercase;color:var(--or)}
.m-duo article h3{font-size:40px;color:var(--bleu)}
.m-duo article p{margin:0;font-size:17px;line-height:1.75}
.m-duo article ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:16px;line-height:1.6}
.m-forge{position:relative;min-height:640px;display:flex;align-items:flex-end;color:var(--creme);overflow:hidden}
.m-forge .photo{position:absolute;inset:0}
.m-forge::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,14,74,.05) 20%,rgba(10,14,74,.88) 100%)}
.m-forge .wrap{position:relative;z-index:1;width:100%;padding-bottom:100px;display:flex;flex-direction:column;gap:22px}
.m-forge h2{font-size:clamp(44px,5.6vw,88px)}
.m-forge h2 em{color:var(--sable)}
.m-forge p{margin:0;font-size:19px;max-width:640px;color:#EEE6F0}

/* ---------- Pages juridiques ---------- */
.l-hero{padding:110px 0 50px}
.l-hero .wrap{max-width:900px;display:flex;flex-direction:column;gap:20px}
.l-hero h1{font-size:clamp(48px,6vw,88px);color:var(--bleu);line-height:1}
.l-hero h1 em{color:var(--or)}
.l-corps{padding:20px 0 120px}
.l-corps .wrap{display:flex;flex-wrap:wrap;gap:40px 72px;align-items:flex-start}
.l-sommaire{flex:0 1 260px;position:sticky;top:120px;display:flex;flex-direction:column;gap:6px;border-left:1px solid var(--sable);padding-left:20px}
.l-sommaire b{font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--or);font-weight:400;margin-bottom:6px}
.l-sommaire a{color:var(--encre);text-decoration:none;padding:6px 0;font-size:16px}
.l-sommaire a:hover{color:var(--bleu)}
.l-texte{flex:1 1 560px;max-width:780px;display:flex;flex-direction:column;gap:56px}
.l-texte section{display:flex;flex-direction:column;gap:18px;scroll-margin-top:110px}
.l-texte h2{font-size:clamp(32px,3.2vw,44px);color:var(--bleu)}
.l-texte p{margin:0;font-size:17px;line-height:1.85}
.l-fiche{display:grid;grid-template-columns:minmax(160px,220px) 1fr;gap:0;border-top:1px solid var(--ivoire-2)}
.l-fiche dt,.l-fiche dd{margin:0;padding:16px 0;border-bottom:1px solid var(--ivoire-2);font-size:16px;line-height:1.6}
.l-fiche dt{color:var(--encre-2);padding-right:20px}
@media (max-width:640px){.l-fiche{grid-template-columns:1fr}.l-fiche dt{border-bottom:0;padding-bottom:0}.l-sommaire{position:static}}

.s-doc{flex:1 1 560px;max-width:800px;display:flex;flex-direction:column;gap:16px}
.s-doc .s-titre{display:flex;flex-direction:column;gap:6px;font-size:clamp(34px,3.6vw,50px);color:var(--bleu);margin-top:40px;padding-top:32px;border-top:1px solid var(--sable);scroll-margin-top:110px}
.s-doc .s-titre:first-child{margin-top:0;border-top:0;padding-top:0}
.s-doc .s-titre span{font-family:var(--sans);font-size:13px;letter-spacing:.24em;text-transform:uppercase;color:var(--or)}
.s-doc h3{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;font-size:30px;color:var(--bleu);margin-top:28px;scroll-margin-top:110px}
.s-doc h3 span{font-family:var(--sans);font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--or);border:1px solid rgba(138,107,30,.35);border-radius:999px;padding:4px 12px}
.s-doc h4{font-family:var(--sans);font-weight:500;font-size:17px;color:var(--encre);margin:10px 0 0}
.s-doc p{margin:0;font-size:17px;line-height:1.85}
.s-doc .s-inter{font-weight:500}
.s-doc ul{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:8px;font-size:17px;line-height:1.75}
.s-signature{margin-top:40px;padding:28px 32px;border-radius:24px;background:var(--ivoire-2);display:flex;flex-direction:column;gap:6px;font-family:var(--serif);font-size:24px;color:var(--bleu)}
.s-signature p{font-size:24px!important;font-family:var(--serif);line-height:1.4!important}
.l-sommaire.s-som{max-height:calc(100vh - 150px);overflow:auto}
.l-sommaire .t{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--or);font-weight:400;margin-top:10px}
.l-sommaire.s-som a{font-size:14px;padding:4px 0}

/* ---------- Page contact ---------- */
.c-zone{padding:110px 0 120px}
.c-zone .wrap{display:flex;flex-wrap:wrap;gap:56px 80px;align-items:flex-start}
.c-intro{flex:1 1 380px;display:flex;flex-direction:column;gap:22px}
.c-intro h1{font-size:clamp(50px,6.4vw,96px);color:var(--bleu);line-height:.98}
.c-intro h1 em{color:var(--or)}
.c-intro p{margin:0;font-size:19px;line-height:1.75}
.c-coord{display:flex;flex-direction:column;gap:14px;margin-top:10px}
.c-coord div{display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--ivoire-2);padding-top:14px}
.c-coord span{font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--or)}
.c-coord b{font-weight:400;font-size:17px}
.c-form{flex:1.2 1 460px;max-width:640px;background:#fff;border:1px solid rgba(7,2,202,.12);border-radius:32px;padding:38px;display:flex;flex-direction:column;gap:20px;box-shadow:0 30px 60px rgba(10,14,74,.08)}
.c-form h2{font-size:36px;color:var(--bleu)}
.c-ligne{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.c-champ{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:500;color:var(--encre)}
.c-champ input,.c-champ select,.c-champ textarea{border:1.5px solid rgba(7,2,202,.2);border-radius:16px;padding:14px 16px;font:300 17px var(--sans);color:var(--encre);background:var(--ivoire);width:100%}
.c-champ textarea{min-height:170px;resize:vertical;line-height:1.6}
.c-champ input:focus,.c-champ select:focus,.c-champ textarea:focus{outline:2px solid var(--bleu);outline-offset:1px;border-color:var(--bleu);background:#fff}
.c-champ small{font-weight:300;color:var(--encre-2)}
.c-accord{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.6}
.c-accord input{width:20px;height:20px;margin-top:3px;accent-color:var(--bleu);flex-shrink:0}
.c-piege{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.c-form .btn{justify-content:center;font-size:17px;padding:18px;border:0;cursor:pointer;font-family:var(--sans)}
.c-message{border-radius:18px;padding:16px 20px;font-size:16px;line-height:1.6}
.c-message.ok{background:#EEF8EF;color:#1E5B2C}
.c-message.err{background:#FFF1F0;color:#8A1F14}
.c-message[hidden]{display:none}
@media (max-width:640px){.c-ligne{grid-template-columns:1fr}.c-form{padding:26px}}

/* ---------- Page communauté ---------- */
.co-hero{padding:110px 0 70px}
.co-hero .wrap{max-width:980px;display:flex;flex-direction:column;gap:22px}
.co-hero h1{font-size:clamp(48px,6.6vw,100px);color:var(--bleu);line-height:.98}
.co-hero h1 em{color:var(--or)}
.co-hero .chapo{margin:0;font-family:var(--serif);font-style:italic;font-size:clamp(26px,2.6vw,36px);color:var(--bleu);line-height:1.3}
.co-hero p{margin:0;font-size:19px;line-height:1.8;max-width:820px}
.co-devises{padding:110px 0}
.co-devises .tete{display:flex;flex-direction:column;gap:16px;max-width:760px;margin-bottom:56px}
.co-devises h2 em{color:var(--sable)}
.co-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.co-liste li{display:grid;grid-template-columns:110px 1fr;gap:12px 40px;padding:40px 0;border-top:1px solid rgba(230,215,149,.25)}
.co-liste li:last-child{border-bottom:1px solid rgba(230,215,149,.25)}
.co-num{font-family:var(--serif);font-size:84px;line-height:.9;color:var(--sable)}
.co-liste h3{font-size:clamp(32px,3.4vw,48px);color:var(--creme);letter-spacing:.01em}
.co-liste .latin{font-family:var(--serif);font-style:italic;font-size:22px;color:var(--sable);margin:0}
.co-liste p{margin:0;font-size:18px;line-height:1.8;max-width:760px}
.co-liste .corps{display:flex;flex-direction:column;gap:12px}
.co-form-zone{padding:110px 0 120px}
.co-form-zone .wrap{display:flex;flex-direction:column;gap:40px;max-width:980px}
.co-form-zone h2{color:var(--bleu)}.co-form-zone h2 em{color:var(--or)}
.co-form{background:#fff;border:1px solid rgba(7,2,202,.12);border-radius:32px;padding:40px;display:flex;flex-direction:column;gap:22px;box-shadow:0 30px 60px rgba(10,14,74,.08)}
.co-form .note{margin:0;font-size:14px;color:var(--encre-2)}
.co-type{display:grid;grid-template-columns:1fr 1fr;gap:10px;border:0;padding:0;margin:0}
.co-type legend,.co-domaines legend{font-size:15px;font-weight:500;margin-bottom:10px;padding:0}
.co-type .choix span{display:block;padding:16px 18px;border:1.5px solid rgba(7,2,202,.2);border-radius:18px;font-size:16px;cursor:pointer;text-align:center}
.co-type .choix input:checked+span{background:var(--bleu);border-color:var(--bleu);color:#fff}
.co-domaines{border:0;padding:0;margin:0}
.co-domaines .puces{display:flex;flex-wrap:wrap;gap:10px}
.co-domaines .choix span{display:inline-block;padding:10px 18px;border:1.5px solid rgba(7,2,202,.2);border-radius:999px;font-size:15px;cursor:pointer}
.co-domaines .choix input:checked+span{background:var(--bleu);border-color:var(--bleu);color:#fff}
.co-grille{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:640px){.co-liste li{grid-template-columns:1fr}.co-num{font-size:60px}.co-grille,.co-type{grid-template-columns:1fr}.co-form{padding:24px}}

.l-hero .l-intro{margin:0;font-size:20px;line-height:1.6;max-width:640px;color:var(--encre-2)}
.l-maj{font-size:14px!important;color:var(--encre-2);padding-top:12px}
.l-fiche a,.l-texte p a{color:var(--bleu)}
