/* Studio Flémal : feuille de style commune aux pages secondaires.
   Même identité que l'accueil : gris pierre, anthracite, acier. Pas d'or, pas de vert. */

@font-face{font-family:'Archivo';font-style:normal;font-weight:600 800;font-display:swap;src:url(../polices/archivo-latin.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url(../polices/inter-latin.woff2) format('woff2')}

:root{
  --pierre:#f4f2ee;
  --sable:#e7e3dc;
  --carte:#fbfaf7;
  --anth:#26231f;
  --anth2:#4a453f;
  --doux:#5a5650;        /* 6,5 : 1 sur la pierre */
  --doux-s:#cfc9bd;      /* 9,5 : 1 sur l'anthracite */
  --trait:rgba(38,35,31,.16);
  --erreur:#9b2c2c;
  --h:78px;
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--h) + 12px)}
body{background:var(--pierre);color:var(--anth);font:400 1.0625rem/1.75 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;padding-top:var(--h)}
img{max-width:100%;height:auto}
a{color:inherit}
.wrap{max-width:1060px;margin:0 auto;padding:0 24px}
h1,h2,h3{font-family:Archivo,system-ui,sans-serif;font-weight:700;letter-spacing:-.01em}
.skip{position:absolute;left:-999px;top:0;background:var(--pierre);color:var(--anth);padding:10px 16px;z-index:30}
.skip:focus{left:8px;top:8px}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--anth);outline-offset:3px}
header a:focus-visible,header button:focus-visible,footer a:focus-visible{outline-color:#fff}

/* ---------- en-tête : verre dépoli noir ---------- */
header{position:fixed;top:0;left:0;right:0;z-index:10;color:var(--pierre);
  background:linear-gradient(180deg,rgba(12,12,12,.97),rgba(0,0,0,.94));
  -webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3);
  border-bottom:1px solid rgba(255,255,255,.14);
  box-shadow:0 8px 30px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.10)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){header{background:rgba(8,8,8,.97)}}
@media(prefers-reduced-transparency:reduce){header{background:#0a0a0a;-webkit-backdrop-filter:none;backdrop-filter:none}}
header .wrap{display:flex;justify-content:space-between;align-items:center;height:var(--h);gap:16px}
.logo{display:block;line-height:0}
.logo img{height:66px;width:auto;display:block}
nav.principal{display:flex;gap:26px;margin-left:auto;margin-right:10px;font-size:.875rem;font-weight:500}
nav.principal a{text-decoration:none;color:#e6e2d9}
nav.principal a:hover{color:#fff}
@media(max-width:1000px){nav.principal{gap:16px;font-size:.82rem}}
.tel{font-size:.875rem;font-weight:600;text-decoration:none;color:var(--anth);background:var(--pierre);padding:8px 16px;border-radius:5px;white-space:nowrap}
.tel:hover{background:#fff}
.menu-btn{display:none;background:transparent;border:2px solid var(--doux-s);color:var(--pierre);border-radius:5px;padding:6px 13px;font:600 .85rem Inter,sans-serif;cursor:pointer}
.menu-panneau{display:none}

/* ---------- corps de page ---------- */
main.contenu{max-width:880px;margin:0 auto;padding:60px 24px 90px}
.intro{margin-bottom:44px}
.doc__tag{font-size:.88rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--doux);margin-bottom:12px}
.intro h1{font-size:clamp(2rem,4.2vw,3rem);line-height:1.12;font-weight:800;margin-bottom:16px}
.chapeau{font-size:1.15rem;color:var(--doux);max-width:40em}
.maj{margin-top:14px;font-size:.88rem;color:var(--doux)}

.sommaire{background:var(--carte);border:1px solid var(--trait);border-top:5px solid var(--anth);border-radius:6px;padding:22px 26px;margin-bottom:52px}
.sommaire ol{list-style:none;padding:0;counter-reset:s;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:4px 28px}
.sommaire li{counter-increment:s}
.sommaire a{display:flex;gap:12px;align-items:baseline;padding:5px 0;font-size:.97rem;text-decoration:none}
.sommaire a::before{content:counter(s,decimal-leading-zero);flex:none;font:700 .82rem Archivo,sans-serif;color:var(--doux)}
.sommaire a:hover{text-decoration:underline}

.bloc{margin:0 0 52px}
.bloc h2{font-size:clamp(1.4rem,2.6vw,1.8rem);line-height:1.2;margin-bottom:16px;display:flex;align-items:baseline;gap:14px}
.bloc h2 .n{font:700 .85rem Archivo,sans-serif;color:var(--pierre);background:var(--anth);border-radius:4px;padding:2px 8px;flex:none;position:relative;top:-.15em}
.bloc h3{font-size:1.1rem;margin:28px 0 8px}
.bloc p,.bloc li{max-width:42em}
.bloc p{margin-bottom:14px}
.bloc ul,.bloc ol{margin:0 0 16px;padding-left:22px}
.bloc li{margin-bottom:6px}
.bloc li::marker{color:var(--anth)}
.bloc .chemin,.bloc .etapes,.bloc .livre{padding-left:0}
.bloc a{text-decoration:underline;text-underline-offset:3px;font-weight:500}
.bloc a:hover{text-decoration-thickness:2px}
.bloc code{font:.92em ui-monospace,Consolas,monospace;background:var(--sable);padding:2px 7px;border-radius:4px;overflow-wrap:anywhere}

.fiche{margin:0 0 22px;display:grid;grid-template-columns:minmax(9rem,13rem) 1fr;background:var(--carte);border:1px solid var(--trait);border-radius:6px;overflow:hidden}
.fiche dt,.fiche dd{padding:12px 18px;border-top:1px solid var(--trait)}
.fiche dt:first-of-type,.fiche dt:first-of-type + dd{border-top:0}
.fiche dt{font-size:.82rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--doux);background:var(--sable)}
.fiche dd{margin:0;font-weight:500;overflow-wrap:anywhere}
.fiche dd a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:620px){
  .fiche{grid-template-columns:1fr}
  .fiche dt{border-top:1px solid var(--trait);padding-bottom:6px}
  .fiche dd{border-top:0;padding-top:8px}
}

.note{background:var(--sable);border-left:5px solid var(--anth);border-radius:0 6px 6px 0;padding:18px 24px;margin:0 0 20px}
.note p{margin:0;max-width:none}

.retour{margin-top:52px;padding-top:30px;border-top:1px solid var(--trait)}
.btn{display:inline-block;padding:14px 26px;border-radius:5px;background:var(--anth);color:var(--pierre);text-decoration:none;font-weight:600;border:2px solid var(--anth);font-family:inherit;font-size:1rem;cursor:pointer}
.btn:hover{background:var(--anth2);border-color:var(--anth2)}
.btn.l{background:transparent;color:var(--anth)}
.btn.l:hover{background:var(--anth);color:var(--pierre)}
.bloc a.btn,.visiter a.btn,.retour a.btn{text-decoration:none;color:var(--pierre);font-weight:600}
.bloc a.btn.l,.retour a.btn.l{color:var(--anth)}
.bloc a.btn.l:hover,.retour a.btn.l:hover{color:var(--pierre)}
.visiter{margin:8px 0 0}
.visiter__ou{margin-top:16px;color:var(--doux)}
.visiter__ou a{font-weight:600}

/* ---------- réalisation ---------- */
.capture{margin:0 0 30px;background:var(--carte);border:1px solid var(--trait);border-top:5px solid var(--anth);border-radius:6px;overflow:hidden}
.capture img{display:block;width:100%}
.capture figcaption{padding:12px 20px;font-size:.9rem;color:var(--doux);border-top:1px solid var(--trait)}
.reperes{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0 0 56px;border:1px solid var(--trait);border-radius:6px;background:var(--carte);overflow:hidden}
.repere{padding:16px 18px;border-left:1px solid var(--trait)}
.repere:first-child{border-left:0}
.repere dt{font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--doux);margin-bottom:4px}
.repere dd{margin:0;font-weight:600;font-size:.98rem;line-height:1.45}
.metiers{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:0 0 22px}
.metier{background:var(--carte);border:1px solid var(--trait);border-top:5px solid var(--anth);border-radius:6px;padding:22px 24px}
.metier h3{margin:0 0 8px;font-size:1.15rem}
.metier ul{margin:0;padding-left:20px}
.metier li{margin-bottom:3px}
.deux-univers{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:0 0 22px}
.univers{background:var(--carte);border:1px solid var(--trait);border-radius:6px;padding:22px 24px;border-top:5px solid var(--anth)}
.univers dt{font:700 1.15rem Archivo,sans-serif;margin-bottom:6px}
.univers dd{margin:0;color:var(--doux)}
.univers.sombre{background:var(--anth);border-color:var(--anth);border-top-color:var(--pierre);color:var(--pierre)}
.univers.sombre dd{color:var(--doux-s)}

/* ---------- référencement ---------- */
.chemin{list-style:none;padding:0;margin:0 0 30px;counter-reset:c;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.chemin li{counter-increment:c;background:var(--carte);border:1px solid var(--trait);border-top:5px solid var(--anth);border-radius:6px;padding:18px 18px 20px;font-size:.98rem;line-height:1.5;margin:0;max-width:none}
.chemin li::before{content:counter(c);display:block;font:800 1.5rem Archivo,sans-serif;color:var(--doux);margin-bottom:6px}
.serp{background:var(--carte);border:1px solid var(--trait);border-radius:6px;padding:22px 24px;margin:0 0 8px}
.serp .barre-rech{display:flex;align-items:center;justify-content:space-between;border:1.5px solid rgba(38,35,31,.45);border-radius:999px;padding:10px 18px;background:#fff;margin-bottom:18px;font-weight:500}
.serp .barre-rech svg{width:18px;height:18px;flex:none}
.serp .res{padding:12px 14px;border-radius:6px;margin-bottom:8px;color:var(--doux);font-size:.95rem}
.serp .res.vous{border:2px solid var(--anth);background:#fff;color:var(--anth)}
.serp .res small{display:block;font-size:.82rem;color:var(--doux)}
.serp .res strong{display:block;font:700 1.12rem Archivo,sans-serif;margin:2px 0 4px}
.serp .res i{display:block;height:9px;border-radius:5px;background:rgba(38,35,31,.14);margin:6px 0;width:78%}
.serp .res i + i{width:60%}
.legende{font-size:.9rem;color:var(--doux);margin:0 0 44px}
.etapes{list-style:none;padding:0;margin:0 0 16px;counter-reset:e}
.etapes li{counter-increment:e;display:grid;grid-template-columns:auto 1fr;gap:16px;padding:14px 0;border-top:1px solid var(--trait);max-width:none;margin:0}
.etapes li:last-child{border-bottom:1px solid var(--trait)}
.etapes li::before{content:counter(e,decimal-leading-zero);font:700 .95rem Archivo,sans-serif;color:var(--pierre);background:var(--anth);border-radius:4px;padding:2px 8px;height:fit-content;margin-top:3px}

/* ---------- pied de page ---------- */
footer{background:var(--anth);color:var(--doux-s);padding:44px 0 30px;font-size:.8rem}
footer .logo-pied{display:block;width:min(500px,92%);height:auto;margin:0 auto 30px}
.pied{display:flex;justify-content:space-between;align-items:center;gap:8px 24px;flex-wrap:wrap;border-top:1px solid rgba(244,242,238,.18);padding-top:22px}
footer a{color:var(--doux-s)}
.liens-pied{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px 12px}
.liens-pied a[aria-current="page"]{color:#fff}
.copie{font-size:inherit}
.liens-pied .court{display:none}
@media(max-width:600px){.pied{flex-wrap:nowrap;justify-content:space-between;gap:6px;font-size:min(.72rem,3.1vw);white-space:nowrap}.liens-pied{flex-wrap:nowrap;gap:5px}.liens-pied .long{display:none}.liens-pied .court{display:inline}}

/* ---------- téléphone ---------- */
@media(max-width:860px){
  nav.principal,.tel{display:none}
  .menu-btn{display:block}
  .menu-panneau{position:absolute;left:0;right:0;top:var(--h);background:#0a0a0a;border-top:1px solid rgba(244,242,238,.18);padding:10px 24px 22px}
  .menu-panneau.ouvert{display:block}
  .menu-panneau a{display:block;padding:13px 0;font-size:.9rem;color:var(--pierre);text-decoration:none;font-weight:500;border-bottom:1px solid rgba(244,242,238,.12)}
  .menu-panneau a.tel-m{margin-top:14px;text-align:center;background:var(--pierre);color:var(--anth);border-radius:5px;font-weight:600;border:0}
  .logo img{height:52px}
  main.contenu{padding:40px 20px 64px}
  .reperes{grid-template-columns:1fr 1fr}
  .repere:nth-child(3){border-left:0}
  .repere:nth-child(n+3){border-top:1px solid var(--trait)}
  .metiers,.deux-univers{grid-template-columns:1fr}
  .chemin{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){.chemin{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
