/* V2 « Plan d'implantation » — look alternatif, activé par body[data-look="plan"].
   Le site vu comme Acthys voit un site client : une feuille de plan blanche,
   trois encres (encre forêt, vert de la tournée, bleu de l'eau), une tournée
   tracée à la main le long du couloir gauche (assets/js/plan.js) qui ne s'en
   écarte que pour finir sur le numéro de la clôture.
   Tout est scopé : la V1 ne lit rien ici, sauf les deux règles de visibilité. */

@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-weight:200 800;font-stretch:75% 100%;font-display:swap;src:url("../fonts/BricolageGrotesque-var-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-weight:200 800;font-stretch:75% 100%;font-display:swap;src:url("../fonts/BricolageGrotesque-var-latin.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

/* ---- visibilité par look (seules règles lues par la V1) ---- */
body:not([data-look="plan"]) .v2-seul{display:none!important}
body[data-look="plan"] .v1-seul{display:none!important}
body:not([data-look="plan"]) .territoire__texte > p{color:var(--encre-2);margin:clamp(28px,4vw,52px) 0 0}

/* ---- jetons ---- */
body[data-look="plan"]{
  --p-papier:#fafbf8;      /* la feuille de plan */
  --p-terre:#eef1ea;       /* bande des secteurs, fonds d'image */
  --p-encre:#16261d;       /* encre forêt : texte, murs, nuit */
  --p-encre-2:#4a5a50;
  --p-vert:#6aa828;        /* la tournée, les postes, l'appel */
  --p-vert-clair:#7fbe37;
  --p-vert-encre:#3d6b12;  /* vert lisible sur papier */
  --p-bleu:#1f98d0;        /* l'eau */
  --p-bleu-encre:#0b6d9c;  /* liens */
  /* couleur de page : bleu = ce que nous faisons (Services), vert = pour qui (Secteurs) */
  --p-page:var(--p-bleu);--p-page-encre:var(--p-bleu-encre);--p-page-autre:var(--p-vert);--p-page-autre-encre:var(--p-vert-encre);
  --p-trait:rgba(22,38,29,.16);
  --p-trait-fort:rgba(22,38,29,.4);
  --p-trait-clair:rgba(250,251,248,.2);
  --p-rail:clamp(26px,4vw,60px);   /* couloir réservé à la tournée, à gauche */
  --fond:var(--p-papier);--carreau:var(--p-papier);--encre:var(--p-encre);--encre-2:var(--p-encre-2);
  --seam:var(--p-trait);--seam-fort:var(--p-trait-fort);--seam-clair:var(--p-trait-clair);
  --bleu-encre:var(--p-bleu-encre);--acier-0:var(--p-encre);--acier-1:#223529;--inox:var(--p-terre);
  --titre:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;
  --corps:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;
  background:var(--p-papier);color:var(--p-encre);
  font-size:1.14rem;font-weight:400;font-stretch:100%;
}
body[data-look="plan"][data-page="secteurs"]{--p-page:var(--p-vert);--p-page-encre:var(--p-vert-encre);--p-page-autre:var(--p-bleu);--p-page-autre-encre:var(--p-bleu-encre)}
body[data-look="plan"] .rang{padding-left:calc(var(--gouttiere) + var(--p-rail))}
html:has(body[data-look="plan"]){scrollbar-color:var(--p-encre-2) var(--p-papier)}
body[data-look="plan"] ::selection{background:var(--p-vert);color:var(--p-encre)}
body[data-look="plan"] :focus-visible{outline:3px solid var(--p-vert-encre);outline-offset:3px}
body[data-look="plan"] a{color:var(--p-bleu-encre);text-underline-offset:.2em}
body[data-look="plan"] a:hover{color:var(--p-encre)}
body[data-look="plan"] input,body[data-look="plan"] textarea{caret-color:var(--p-vert-encre)}

/* ---- typographie : une seule famille, deux largeurs ---- */
body[data-look="plan"] h1,body[data-look="plan"] h2,body[data-look="plan"] h3,body[data-look="plan"] h4{text-transform:none;font-family:var(--titre);color:inherit}
body[data-look="plan"] h1{font-size:clamp(2.6rem,4.5vw,4.5rem);font-weight:720;font-stretch:86%;line-height:.98;letter-spacing:-.028em}
body[data-look="plan"] h2{font-size:clamp(1.95rem,3.2vw,3.05rem);font-weight:680;font-stretch:88%;line-height:1.04;letter-spacing:-.02em}
body[data-look="plan"] h3{font-size:1.45rem;font-weight:640;font-stretch:92%;line-height:1.15;letter-spacing:-.01em}
body[data-look="plan"] .entete{max-width:60ch}
body[data-look="plan"] .entete h2 + p{margin-top:.9em;font-size:1.18rem;color:var(--p-encre-2)}

/* ---- boutons : des étiquettes de poste ---- */
body[data-look="plan"] .btn{border-radius:999px;font-size:1.12rem;font-weight:620;font-stretch:92%;letter-spacing:0;padding:.7em 1.35em;border-width:1.5px}
body[data-look="plan"] .btn.btn--vert{background:var(--p-vert);border-color:var(--p-vert);color:var(--p-encre)}
body[data-look="plan"] .btn.btn--vert:hover{background:var(--p-vert-clair);border-color:var(--p-vert-clair);color:var(--p-encre)}
body[data-look="plan"] .btn.btn--contour{color:var(--p-encre);border-color:var(--p-encre)}
body[data-look="plan"] .btn.btn--contour:hover{background:var(--p-encre);color:var(--p-papier)}
body[data-look="plan"] .btn.btn--bleu,body[data-look="plan"] .btn.btn--acier{background:var(--p-encre);border-color:var(--p-encre);color:var(--p-papier)}
body[data-look="plan"] .btn.btn--bleu:hover,body[data-look="plan"] .btn.btn--acier:hover{background:#2a4234;border-color:#2a4234;color:var(--p-papier)}
body[data-look="plan"][data-page="services"] .fiche .btn.btn--bleu{background:var(--p-bleu);border-color:var(--p-bleu);color:var(--p-encre)}
body[data-look="plan"][data-page="services"] .fiche .btn.btn--bleu:hover{background:var(--p-bleu-encre);border-color:var(--p-bleu-encre);color:var(--p-papier)}
body[data-look="plan"] .lien-fleche{font-family:var(--titre);font-weight:620;font-stretch:92%;font-size:1.05rem;color:var(--p-bleu-encre)}

body[data-look="plan"] .lire-videos{border-radius:999px;background:var(--p-papier);color:var(--p-encre);border:1.5px solid var(--p-encre);font-weight:620;font-stretch:92%}
body[data-look="plan"] .lire-videos:hover{background:var(--p-vert);border-color:var(--p-vert);color:var(--p-encre)}

/* ---- panneaux sombres : l'encre, sans matière rapportée ---- */
body[data-look="plan"] .sombre,body[data-look="plan"] .pied,body[data-look="plan"] .secteurs,
body[data-look="plan"] .cloture > div,body[data-look="plan"] .contact .coordonnees,
body[data-look="plan"] .entete-site,body[data-look="plan"] .sommaire{background-image:none}
body[data-look="plan"] .sombre{background-color:var(--p-encre);color:var(--p-papier)}
body[data-look="plan"] .sombre a{color:var(--p-papier)}
body[data-look="plan"] .sombre .btn.btn--contour{color:var(--p-papier);border-color:var(--p-papier)}
body[data-look="plan"] .sombre .btn.btn--contour:hover{background:var(--p-papier);color:var(--p-encre)}

/* ---- en-tête : la feuille, pas une barre ---- */
body[data-look="plan"] .entete-site{background:var(--p-papier);color:var(--p-encre);border-bottom:1px solid var(--p-trait)}
body[data-look="plan"] .entete-site .rang{padding-left:var(--gouttiere)}
body[data-look="plan"] .nav-principale a:not(.btn){color:var(--p-encre);font-family:var(--titre);font-size:1.08rem;font-weight:540;font-stretch:92%;border-bottom:0;display:inline-flex;align-items:center;gap:.45em;min-height:44px;text-decoration:none}
body[data-look="plan"] .nav-principale a:not(.btn)::before{content:"";width:.5em;height:.5em;border-radius:50%;border:1.5px solid transparent;flex:none;transition:background-color .2s var(--ease),border-color .2s var(--ease)}
body[data-look="plan"] .nav-principale a:not(.btn):hover::before{border-color:var(--p-encre)}
body[data-look="plan"] .nav-principale a[aria-current=page]::before{background:var(--p-vert);border-color:var(--p-vert)}
body[data-look="plan"] .nav-principale a[aria-current=page]{font-weight:650}
body[data-look="plan"] .nav-principale .externe svg{margin-left:0}
body[data-look="plan"] .menu-bouton{border:1.5px solid var(--p-trait-fort);border-radius:999px;color:var(--p-encre)}
body[data-look="plan"] .tel-mobile{border-radius:999px}
@media (max-width:960px){
  body[data-look="plan"] .nav-principale{background:var(--p-papier);border-bottom:1px solid var(--p-trait)}
  body[data-look="plan"] .nav-principale a:not(.btn){border-bottom:1px solid var(--p-trait);font-size:1.4rem;padding:.7em .1em}
  body[data-look="plan"] .nav-principale a[aria-current=page]{color:var(--p-encre)}
}

/* ---- héros : le titre à gauche, le lieu à droite, les quatre faits dessous ---- */
body[data-look="plan"] .heros{background:var(--p-papier);color:var(--p-encre);grid-template-columns:minmax(0,45fr) minmax(0,55fr);min-height:min(80vh,720px)}
body[data-look="plan"] .heros__plaque{background:none;padding:clamp(44px,6vw,96px) clamp(24px,3.5vw,56px) clamp(44px,6vw,96px) calc(max(var(--gouttiere),calc((100vw - var(--largeur))/2 + var(--gouttiere))) + var(--p-rail));gap:clamp(18px,2.4vw,28px)}
body[data-look="plan"] .heros__plaque p{opacity:1;color:var(--p-encre-2);font-size:clamp(1.12rem,1.35vw,1.28rem);max-width:44ch}
body[data-look="plan"] .heros__plaque{grid-column:1;grid-row:1}
body[data-look="plan"] .heros__media{position:relative;inset:auto;grid-column:2;grid-row:1;background:var(--p-terre)}
/* les quatre faits : une bande sous le héros, jamais posée sur les boutons */
body[data-look="plan"] .cartouche{grid-column:1 / -1;grid-row:2;border-top:1.5px solid var(--p-encre);border-bottom:1px solid var(--p-trait-fort)}
body[data-look="plan"] .cartouche dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 auto;max-width:var(--largeur);padding-left:calc(var(--gouttiere) + var(--p-rail));padding-right:var(--gouttiere)}
body[data-look="plan"] .cartouche dl > div{padding:16px 20px 18px 0}
body[data-look="plan"] .cartouche dl > div + div{padding-left:20px;border-left:1px solid var(--p-trait-fort)}
body[data-look="plan"] .cartouche dt{font-size:.85rem;font-weight:600;color:var(--p-encre-2);line-height:1.2}
body[data-look="plan"] .cartouche dd{margin:.2em 0 0;font-size:1.1rem;font-weight:600;line-height:1.25}
@media (max-width:900px){
  body[data-look="plan"] .heros{grid-template-columns:1fr;min-height:0;align-content:start}
  body[data-look="plan"] .heros__plaque{grid-column:1;grid-row:1;margin-top:0;padding:36px var(--gouttiere) 28px calc(var(--gouttiere) + var(--p-rail))}
  body[data-look="plan"] .heros__media{grid-column:1;grid-row:2;aspect-ratio:4/3;margin-left:calc(var(--gouttiere) + var(--p-rail))}
  body[data-look="plan"] .cartouche{grid-column:1;grid-row:3}
  body[data-look="plan"] .cartouche dl{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-look="plan"] .cartouche dl > div:nth-child(3){padding-left:0;border-left:0}
  body[data-look="plan"] .cartouche dl > div:nth-child(n+3){border-top:1px solid var(--p-trait-fort)}
}
body[data-look="plan"] .bande-secteurs{display:none}
body[data-look="plan"] .bande-secteurs a{color:var(--p-papier)}

/* ---- services (accueil) : une légende illustrée, chaque service avec sa photo ---- */
body[data-look="plan"] .carrelage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(28px,4vw,64px);background:none;border:0;border-top:1.5px solid var(--p-encre)}
body[data-look="plan"] .tuile,body[data-look="plan"] .tuile--vedette{display:grid;grid-template-columns:clamp(120px,12vw,168px) minmax(0,1fr);column-gap:20px;align-items:start;background:none;border-bottom:1px solid var(--p-trait-fort);padding:18px 0;grid-column:auto}
body[data-look="plan"] .tuile figure,body[data-look="plan"] .tuile--vedette figure{aspect-ratio:4/3;flex:none;border:1px solid var(--p-encre);background:var(--p-terre)}
body[data-look="plan"] .tuile__corps{padding:0;gap:.3em}
body[data-look="plan"] .tuile h3,body[data-look="plan"] .tuile--vedette h3{font-size:1.32rem;color:var(--p-encre)}
body[data-look="plan"] .tuile p{font-size:1rem}
body[data-look="plan"] .tuile{position:relative;padding-right:40px}
body[data-look="plan"] .tuile .lien-fleche{position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:0;min-height:0;padding:0;color:var(--p-encre-2)}
body[data-look="plan"] .tuile .lien-fleche svg{width:1.35rem;height:1.35rem}
body[data-look="plan"] .tuile:hover .lien-fleche{color:var(--p-vert-encre)}
body[data-look="plan"] .tuile:hover h3{color:var(--p-vert-encre)}
@media (max-width:900px){body[data-look="plan"] .carrelage{grid-template-columns:1fr}}

/* ---- secteurs : une bande de terre, la légende des métiers ---- */
body[data-look="plan"] .secteurs{background:var(--p-terre);color:var(--p-encre)}
body[data-look="plan"] .secteurs .entete h2 + p{opacity:1;color:var(--p-encre-2)}
body[data-look="plan"] .secteurs a{color:var(--p-bleu-encre)}
body[data-look="plan"] .secteurs__grille{gap:clamp(20px,3vw,48px)}
body[data-look="plan"] .secteurs__onglets{border:0;gap:4px}
body[data-look="plan"] .secteurs__onglets button,body[data-look="plan"] .secteurs__onglets button:first-child{border:0;border-radius:999px;color:var(--p-encre);font-family:var(--titre);font-size:clamp(1.2rem,1.7vw,1.55rem);font-weight:560;font-stretch:90%;padding:12px 20px;min-height:52px}
body[data-look="plan"] .secteurs__onglets button:hover{background:rgba(22,38,29,.06)}
body[data-look="plan"] .secteurs__onglets button[aria-selected=true]{background:var(--p-papier);color:var(--p-encre);font-weight:660;box-shadow:inset 0 0 0 1.5px var(--p-encre)}
body[data-look="plan"] .secteurs__onglets button .puce{border-color:var(--p-encre);width:.6em;height:.6em}
body[data-look="plan"] .secteurs__onglets button[aria-selected=true] .puce{background:var(--p-vert);border-color:var(--p-vert)}
body[data-look="plan"] .secteurs__ecran{border:1.5px solid var(--p-encre);background:var(--p-papier)}
body[data-look="plan"] .secteurs__texte{border-top:0;padding:18px 0 0}
body[data-look="plan"] .secteurs__texte p{opacity:1;color:var(--p-encre-2)}
@media (max-width:820px){
  body[data-look="plan"] .secteurs__onglets{border:0;padding-bottom:4px}
  body[data-look="plan"] .secteurs__onglets button,body[data-look="plan"] .secteurs__onglets button:last-child{border:0;font-size:1.12rem;padding:10px 16px;min-height:46px}
}

/* ---- qui sommes-nous ---- */
body[data-look="plan"] .apropos__texte h2{margin-bottom:.55em}
body[data-look="plan"] .apropos__texte p:first-of-type{font-family:var(--titre);font-size:clamp(1.3rem,1.8vw,1.55rem);font-weight:480;font-stretch:96%;line-height:1.35;max-width:36ch}
body[data-look="plan"] .preuves{border:2px solid var(--p-encre);background:var(--p-papier)}
body[data-look="plan"] .preuves li{grid-template-columns:minmax(0,1fr);gap:2px;padding:14px 20px 15px;border-bottom:1px solid var(--p-trait-fort)}
body[data-look="plan"] .preuves li:last-child{border-bottom:0}
body[data-look="plan"] .preuves .coche{display:none}
body[data-look="plan"] .preuves b{font-size:1.3rem;font-weight:680;font-stretch:90%}
body[data-look="plan"] .preuves span{font-size:1rem}

@media (max-width:820px){
  body[data-look="plan"] .apropos{grid-template-columns:1fr}
}

body[data-look="plan"] .preuves__titre{font-weight:600;color:var(--p-encre-2);margin:0 0 10px}

/* ---- implantations : un « ticket » à gauche (ville, rôle, département),
   la carte à droite ; survoler une ligne allume son point (scannable-ui :
   bords, puce qui différencie le siège, montrer plutôt qu'expliquer) ---- */
body[data-look="plan"] .territoire{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(28px,5vw,88px);align-items:center;margin-top:clamp(48px,6vw,96px);padding-top:clamp(32px,4vw,56px);border-top:1px solid var(--p-trait-fort)}
body[data-look="plan"] .territoire__texte h3{font-size:clamp(1.6rem,2.4vw,2.2rem);font-weight:680;font-stretch:88%;letter-spacing:-.015em;margin-bottom:.45em}
body[data-look="plan"] .territoire__texte > p{color:var(--p-encre-2);max-width:52ch;margin-bottom:22px}
body[data-look="plan"] .territoire .agences{display:block;margin:0;background:none;border:0;border-top:1.5px solid var(--p-encre)}
body[data-look="plan"] .territoire .agences li{display:grid;grid-template-columns:14px minmax(0,auto) auto minmax(0,1fr);align-items:center;column-gap:14px;padding:14px 4px;background:none;border-bottom:1px solid var(--p-trait-fort);transition:background-color .2s var(--ease)}
body[data-look="plan"] .territoire .agences li::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--p-vert);box-shadow:0 0 0 1.5px var(--p-encre)}
body[data-look="plan"] .territoire .agences li.agences--siege::before{background:var(--p-encre);box-shadow:inset 0 0 0 3px var(--p-vert),0 0 0 1.5px var(--p-encre)}
body[data-look="plan"] .territoire .agences b{font-size:1.35rem;font-weight:700;font-stretch:90%;line-height:1.1}
body[data-look="plan"] .territoire .agences .role{font-size:.82rem;font-weight:620;line-height:1;padding:.4em .75em;border-radius:999px;border:1px solid var(--p-trait-fort);color:var(--p-encre-2)}
body[data-look="plan"] .territoire .agences li.agences--siege .role{background:var(--p-encre);border-color:var(--p-encre);color:var(--p-papier)}
body[data-look="plan"] .territoire .agences .dept{justify-self:end;font-size:.95rem;color:var(--p-encre-2);font-variant-numeric:tabular-nums}
body[data-look="plan"] .territoire .agences abbr{text-decoration:none}
body[data-look="plan"] .territoire .agences li:hover{background:rgba(22,38,29,.04)}
body[data-look="plan"] .territoire__texte > .agences__urgence{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:0;padding:14px 4px 0;max-width:none;font-size:.95rem;color:var(--p-encre-2)}
body[data-look="plan"] .agences__urgence b{color:var(--p-encre);font-size:1.1rem;font-weight:700}
body[data-look="plan"] .carte{width:100%;max-width:460px;justify-self:end}
body[data-look="plan"] .carte__svg{width:100%;height:auto;overflow:visible}
body[data-look="plan"] .carte__terre{fill:var(--p-terre);stroke:var(--p-encre);stroke-width:1;vector-effect:non-scaling-stroke;stroke-linejoin:round}
body[data-look="plan"] .point__halo{fill:var(--p-vert);opacity:0;transform:scale(.4);transform-box:fill-box;transform-origin:center;transition:opacity .25s var(--ease),transform .35s var(--ease)}
body[data-look="plan"] .point__rond{fill:var(--p-vert);stroke:var(--p-encre);stroke-width:1.5;vector-effect:non-scaling-stroke}
body[data-look="plan"] .point--siege .point__rond{fill:var(--p-encre);stroke:var(--p-vert);stroke-width:5}
body[data-look="plan"] .point__nom{font-family:var(--titre);font-size:30px;font-weight:700;fill:var(--p-encre);opacity:0;transition:opacity .2s var(--ease);paint-order:stroke;stroke:var(--p-papier);stroke-width:8px;stroke-linejoin:round}
body[data-look="plan"] .territoire:not(:has(.agences li:hover)) .point--siege .point__nom{opacity:1}
body[data-look="plan"] .territoire:has(li[data-ville="havre"]:hover) [data-ville="havre"] :is(.point__halo,.point__nom),
body[data-look="plan"] .territoire:has(li[data-ville="paris"]:hover) [data-ville="paris"] :is(.point__halo,.point__nom),
body[data-look="plan"] .territoire:has(li[data-ville="blois"]:hover) [data-ville="blois"] :is(.point__halo,.point__nom),
body[data-look="plan"] .territoire:has(li[data-ville="nantes"]:hover) [data-ville="nantes"] :is(.point__halo,.point__nom){opacity:1;transform:none}
body[data-look="plan"] .territoire:has(li[data-ville]:hover) [data-ville] .point__halo{opacity:0}
body[data-look="plan"] .territoire:has(li[data-ville="havre"]:hover) [data-ville="havre"] .point__halo,
body[data-look="plan"] .territoire:has(li[data-ville="paris"]:hover) [data-ville="paris"] .point__halo,
body[data-look="plan"] .territoire:has(li[data-ville="blois"]:hover) [data-ville="blois"] .point__halo,
body[data-look="plan"] .territoire:has(li[data-ville="nantes"]:hover) [data-ville="nantes"] .point__halo{opacity:.28;transform:none}
@media (max-width:820px){
  body[data-look="plan"] .territoire{grid-template-columns:1fr}
  body[data-look="plan"] .carte{grid-row:1;max-width:300px;justify-self:start}
}
@media (max-width:600px){
  /* ticket de téléphone : ville à gauche, puce, numéro de département seul à droite */
  body[data-look="plan"] .territoire .agences li{column-gap:10px;padding:13px 0}
  body[data-look="plan"] .territoire .agences b{font-size:1.2rem}
  body[data-look="plan"] .territoire .agences .dept{font-size:0}
  body[data-look="plan"] .territoire .agences .dept abbr{font-size:1rem;font-weight:600;color:var(--p-encre-2)}
}

/* ---- portail : la feuille de relevés ---- */
body[data-look="plan"] .portail{background:var(--p-papier);color:var(--p-encre)}
body[data-look="plan"] .portail .rang > div{border-top:1.5px solid var(--p-encre);padding-top:clamp(22px,3vw,36px)}
body[data-look="plan"] .portail p{color:var(--p-encre-2)}
body[data-look="plan"] .portail .btn.btn--acier{background:var(--p-encre);border-color:var(--p-encre);color:var(--p-papier)}
body[data-look="plan"] .portail .btn.btn--acier:hover{background:#2a4234;color:var(--p-papier)}
body[data-look="plan"] .portail a{color:var(--p-papier)}

/* ---- clôture : la nuit, là où la tournée arrive ---- */
body[data-look="plan"] .sombre > .rang:has(.nuit){display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,4vw,64px);align-items:center}
body[data-look="plan"] .nuit{margin:0}
body[data-look="plan"] .nuit img{width:100%;aspect-ratio:4/5;object-fit:cover;border:1.5px solid var(--p-trait-clair)}
body[data-look="plan"] .nuit figcaption{font-size:.9rem;opacity:.78;padding-top:10px}
body[data-look="plan"] .cloture{background:none;border:0;gap:clamp(24px,3vw,48px)}
body[data-look="plan"] .cloture > div{background:none;padding:0}
body[data-look="plan"] .cloture > div + div{border-left:1px solid var(--p-trait-clair);padding-left:clamp(24px,3vw,48px)}
body[data-look="plan"] .cloture .grand-numero{font-family:var(--titre);font-size:clamp(2.6rem,4.8vw,4.3rem);font-weight:740;font-stretch:84%;letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--p-papier)}
body[data-look="plan"] .cloture .grand-numero:hover{color:var(--p-vert-clair)}
body[data-look="plan"] .cloture h3{font-size:1.5rem}
body[data-look="plan"] .cloture .btn.btn--vert{background:var(--p-papier);border-color:var(--p-papier);color:var(--p-encre)}
body[data-look="plan"] .cloture .btn.btn--vert:hover{background:var(--p-vert);border-color:var(--p-vert)}
@media (max-width:1000px){
  body[data-look="plan"] .cloture{grid-template-columns:1fr}
  body[data-look="plan"] .cloture > div + div{border-left:0;padding-left:0;border-top:1px solid var(--p-trait-clair);padding-top:24px}
}
@media (max-width:760px){
  body[data-look="plan"] .sombre > .rang:has(.nuit){grid-template-columns:1fr}
  body[data-look="plan"] .nuit img{aspect-ratio:16/10}
  body[data-look="plan"] .cloture > div + div{border-left:0;padding-left:0;border-top:1px solid var(--p-trait-clair);padding-top:24px}
}

/* ---- pied ---- */
body[data-look="plan"] .pied{background:var(--p-encre);color:var(--p-papier);border-top:1px solid var(--p-trait-clair)}
body[data-look="plan"] .pied a{color:var(--p-papier)}
body[data-look="plan"] .pied h3{color:var(--p-papier);font-size:1.12rem}
body[data-look="plan"] .pied li{padding:0}
body[data-look="plan"] .pied li a,body[data-look="plan"] .pied__bas a{display:inline-flex;align-items:center;min-height:44px}
body[data-look="plan"] .pied__bas .rang{align-items:center;padding-block:6px}

/* ---- pages intérieures : bandeau ---- */
body[data-look="plan"] .bandeau{background:var(--p-papier);color:var(--p-encre);grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:min(48vh,420px)}
body[data-look="plan"] .bandeau__plaque{background:none;box-shadow:none;padding:clamp(36px,5vw,80px) clamp(24px,3.5vw,56px) clamp(36px,5vw,80px) calc(max(var(--gouttiere),calc((100vw - var(--largeur))/2 + var(--gouttiere))) + var(--p-rail))}
body[data-look="plan"] .bandeau__plaque p{opacity:1;color:var(--p-encre-2)}
body[data-look="plan"] .bandeau:not(.bandeau--simple) .bandeau__plaque::before{content:"";display:block;width:56px;height:6px;border-radius:3px;background:var(--p-page);margin-bottom:-4px}
body[data-look="plan"] .bandeau__media{position:relative;inset:auto;background:var(--p-terre)}
body[data-look="plan"] .bandeau--simple{border-bottom:1px solid var(--p-trait)}
body[data-look="plan"] .bandeau--simple .bandeau__plaque{background:none;color:var(--p-encre)}
@media (max-width:760px){
  body[data-look="plan"] .bandeau{grid-template-columns:1fr}
  body[data-look="plan"] .bandeau:not(.bandeau--simple) .bandeau__plaque{margin-top:0;background:none;padding:32px var(--gouttiere) 24px calc(var(--gouttiere) + var(--p-rail))}
  body[data-look="plan"] .bandeau__media{aspect-ratio:16/10;margin-left:calc(var(--gouttiere) + var(--p-rail))}
}

/* ---- sommaire collant : la légende de la page ---- */
body[data-look="plan"] .sommaire{background:var(--p-papier);border-bottom:1px solid var(--p-trait);border-top:1px solid var(--p-trait)}
body[data-look="plan"] .sommaire__barre{padding-left:calc(var(--gouttiere) + var(--p-rail))}
body[data-look="plan"] .sommaire ul{gap:4px}
body[data-look="plan"] .sommaire__page{font-family:var(--titre);font-size:.9rem;font-weight:660;font-stretch:92%;letter-spacing:.04em;color:var(--p-encre);background:var(--p-page);border-radius:999px;padding:.34em .7em .28em}
body[data-look="plan"] .sommaire .sommaire__autre{display:inline-flex;align-items:center;gap:.45em;min-height:36px;font-family:var(--titre);font-size:.9rem;font-weight:660;font-stretch:92%;letter-spacing:.02em;text-transform:none;color:var(--p-encre);border:1.5px solid var(--p-page-autre);border-radius:999px;padding:.3em .8em .26em .9em}
body[data-look="plan"] .sommaire .sommaire__autre::before{display:none}
body[data-look="plan"] .sommaire .sommaire__autre:hover{background:var(--p-page-autre);border-color:var(--p-page-autre);color:var(--p-encre)}
@media (max-width:600px){
  body[data-look="plan"] .sommaire .sommaire__page{font-size:0;width:8px;padding:0;border-radius:2px}
  body[data-look="plan"] .sommaire a,body[data-look="plan"] .sommaire li:first-child a{font-size:.95rem;padding:10px 8px;gap:.4em}
  body[data-look="plan"] .sommaire .sommaire__autre{padding:.28em .6em .24em .7em;letter-spacing:0}
}
@media (max-width:360px){body[data-look="plan"] .sommaire .sommaire__autre{font-size:0;gap:0;padding:0 10px;min-height:34px}body[data-look="plan"] .sommaire .sommaire__autre svg{width:16px;height:16px}}
body[data-look="plan"] .sommaire a,body[data-look="plan"] .sommaire li:first-child a{color:var(--p-encre);font-family:var(--titre);font-size:1.02rem;font-weight:540;font-stretch:92%;border:0;display:flex;align-items:center;gap:.5em;padding:12px 12px;min-height:46px}
body[data-look="plan"] .sommaire li:first-child a{padding-left:0}
body[data-look="plan"] .sommaire a::before{content:"";width:.55em;height:.55em;border-radius:50%;border:1.5px solid var(--p-encre);flex:none}
body[data-look="plan"] .sommaire a:hover,body[data-look="plan"] .sommaire a[aria-current]{color:var(--p-encre)}
body[data-look="plan"] .sommaire a[aria-current]{font-weight:660}
body[data-look="plan"] .sommaire a[aria-current]::before{background:var(--p-page);border-color:var(--p-page)}

/* ---- fiches : en quinconce, la tournée marque chaque titre ---- */
body[data-look="plan"] .fiche{border-top:0}
body[data-look="plan"] .fiche .rang{column-gap:clamp(40px,6vw,100px);padding-block:clamp(40px,5.5vw,84px)}
@media (min-width:821px){
  body[data-look="plan"][data-page="secteurs"] .fiche .rang{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
  body[data-look="plan"][data-page="secteurs"] .fiche__media{order:2}
}
body[data-look="plan"] .fiche__media figure{border:1.5px solid var(--p-encre);background:var(--p-terre)}
body[data-look="plan"] .fiche__media figcaption{color:var(--p-encre-2)}
body[data-look="plan"] .fiche h2{box-shadow:none;padding-left:0}
body[data-look="plan"] .fiche h2::before{content:"";display:block;width:40px;height:5px;border-radius:3px;background:var(--p-page);margin-bottom:12px}
body[data-look="plan"] .enjeux{background:none;color:var(--p-encre);box-shadow:none;padding:2px 0 2px 18px;border-left:3px solid var(--p-page)}
body[data-look="plan"] .enjeux h3{color:var(--p-page-encre);font-size:.9rem;letter-spacing:.06em}
body[data-look="plan"] .enjeux p{color:var(--p-encre-2);opacity:1}
body[data-look="plan"] .fiche__colonnes{background:none;border:0;gap:clamp(18px,2.4vw,32px)}
body[data-look="plan"] .fiche__colonnes > div{background:none;padding:0;border-top:3px solid var(--p-bleu);padding-top:14px}
body[data-look="plan"] .fiche__colonnes h3{font-size:1.2rem;color:var(--p-bleu-encre);border-bottom:0;padding-bottom:0;margin-bottom:.4em}
body[data-look="plan"] .fiche__colonnes > div:last-child h3{color:var(--p-vert-encre)}
body[data-look="plan"] .fiche__colonnes > div:last-child{border:1.5px solid var(--p-vert-encre);border-top-width:3px;border-top-color:var(--p-vert);padding:16px 20px 18px;background:var(--p-papier)}
body[data-look="plan"] .fiche__colonnes > div:last-child h3::before{content:"";display:inline-block;width:.5em;height:.5em;border-radius:50%;background:var(--p-vert);margin-right:.45em;vertical-align:.08em}
/* listes en lignes de ticket : ni coche ni puce (retour utilisateur 24/09) */
body[data-look="plan"] .liste li{padding:.5em 0;border-top:1px solid var(--p-trait)}
body[data-look="plan"] .liste li:first-child{border-top:0;padding-top:0}
body[data-look="plan"] .fiche__media figure{position:relative;aspect-ratio:auto;overflow:visible;border:0;background:none}
body[data-look="plan"] .fiche__media img,body[data-look="plan"] .fiche__media video{aspect-ratio:4/3;height:auto;border:1.5px solid var(--p-encre);background:var(--p-terre)}
/* le clip CHR a une rampe de passe en haut et en bas qui se lit comme une pellicule */
body[data-look="plan"] video[data-secteur="chr"],body[data-look="plan"] #hotellerie-restauration video{object-view-box:inset(7% 0 7% 0)}

/* ---- contact ---- */
body[data-look="plan"] .contact{background:none;border:0;gap:clamp(24px,4vw,64px)}
body[data-look="plan"] .contact > *{background:none;padding:0}
body[data-look="plan"] .contact .coordonnees{background:var(--p-papier);color:var(--p-encre);border:1.5px solid var(--p-encre);padding:clamp(20px,2.6vw,32px);align-self:start}
body[data-look="plan"] .contact .coordonnees a{color:var(--p-bleu-encre)}
body[data-look="plan"] .contact .coordonnees .grand-numero{color:var(--p-encre);font-weight:740;font-stretch:84%;font-variant-numeric:tabular-nums}
body[data-look="plan"] .contact .coordonnees .grand-numero:hover{color:var(--p-vert-encre)}
body[data-look="plan"] .contact .coordonnees dl{gap:0}
body[data-look="plan"] .contact .coordonnees dl > div{padding:12px 0;border-top:1px solid var(--p-trait-fort)}
/* ticket : libellé à gauche, valeur à droite (au-delà du téléphone ; en mobile les valeurs longues restent empilées) */
@media (min-width:601px){
  body[data-look="plan"] .contact .coordonnees dl > div{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:20px;align-items:baseline}
  body[data-look="plan"] .contact .coordonnees dd{text-align:right}
  body[data-look="plan"] .contact .coordonnees dd .grand-numero{display:block}
}
body[data-look="plan"] .contact .coordonnees dt{opacity:1;color:var(--p-encre-2);font-size:.85rem;font-weight:600;letter-spacing:0}
body[data-look="plan"] .contact .coordonnees dd a:not(.grand-numero){display:inline-flex;align-items:center;min-height:36px}
body[data-look="plan"] .formulaire label{font-family:var(--titre);font-weight:600;font-size:1rem}
body[data-look="plan"] .formulaire input,body[data-look="plan"] .formulaire select,body[data-look="plan"] .formulaire textarea{border:1.5px solid var(--p-trait-fort);border-radius:10px;background:#fff}
body[data-look="plan"] .formulaire input:focus,body[data-look="plan"] .formulaire select:focus,body[data-look="plan"] .formulaire textarea:focus{border-color:var(--p-encre);outline:3px solid var(--p-vert);outline-offset:0}
body[data-look="plan"] .formulaire .aide a{display:inline-flex;min-height:36px;align-items:center}
body[data-look="plan"] .formulaire .confirmation{background:var(--p-terre);border:1.5px solid var(--p-encre)}
body[data-look="plan"] .prose dd a,body[data-look="plan"] .lien-fleche{min-height:44px}

/* ---- la tournée (tracée par plan.js) ---- */
body[data-look="plan"] main{position:relative}
.tournee{display:none}
body[data-look="plan"] .tournee{display:block;position:absolute;left:0;top:0;width:100%;pointer-events:none;z-index:3;overflow:visible}
body[data-look="plan"] .tournee__prevue{fill:none;stroke:var(--p-vert);stroke-opacity:.5;stroke-width:1.6;stroke-dasharray:1 7;stroke-linecap:round}
body[data-look="plan"] .tournee__faite{fill:none;stroke:var(--p-vert);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
body[data-look="plan"] .tournee__noeud{fill:var(--p-papier);stroke:var(--p-encre);stroke-width:1.5;transition:fill .3s var(--ease),stroke .3s var(--ease)}
body[data-look="plan"] .tournee__noeud.est-passe{fill:var(--p-vert);stroke:var(--p-vert)}
body[data-look="plan"] .tournee__arrivee{fill:none;stroke:var(--p-vert);stroke-width:2.5}
body[data-look="plan"] .tournee__tete{fill:var(--p-vert);stroke:var(--p-papier);stroke-width:3}
@media (prefers-reduced-motion:reduce){body[data-look="plan"] .tournee__tete{display:none}}
@media print{body[data-look="plan"] .tournee{display:none}}

/* ---- repli des colonnes de fiche (bouton posé par plan.js) ---- */
body[data-look="plan"] .fiche__colonnes h3 .depli{all:unset;display:inline;cursor:default}
body[data-look="plan"] .fiche__colonnes h3 .depli:focus-visible{outline:3px solid var(--p-vert-encre);outline-offset:3px}

/* ---- mobile (retour utilisateur 23/09 : « illisible, trop d'infos, texte trop petit ») :
   plus gros, moins de choses à la fois, tout le reste à un geste ---- */
@media (max-width:600px){
  html:has(body[data-look="plan"]){font-size:16px}
  body[data-look="plan"]{--p-rail:22px}
  body[data-look="plan"] h1{font-size:2.35rem;line-height:1.02}
  body[data-look="plan"] h2{font-size:1.75rem}
  body[data-look="plan"] .entete h2 + p,body[data-look="plan"] .heros__plaque p,body[data-look="plan"] .bandeau__plaque p{font-size:1.05rem}
  /* héros : les quatre faits en 2 × 2 */
  body[data-look="plan"] .cartouche dd{font-size:1rem}
  body[data-look="plan"] .cartouche dt{font-size:.82rem}
  /* services : vignette + titre + lien ; le détail est sur la page Services */
  body[data-look="plan"] .tuile,body[data-look="plan"] .tuile--vedette{grid-template-columns:96px minmax(0,1fr);column-gap:14px;padding:14px 36px 14px 0;align-items:center}
  body[data-look="plan"] .tuile p{display:none}
  body[data-look="plan"] .tuile h3,body[data-look="plan"] .tuile--vedette h3{font-size:1.15rem}
  /* qui sommes-nous : le chapeau et les trois preuves ; le reste est redit ailleurs */
  body[data-look="plan"] .apropos__texte p:not(:first-of-type){display:none}
  body[data-look="plan"] .apropos__texte p:first-of-type{font-size:1.2rem}
  body[data-look="plan"] .preuves li{padding:12px 16px}
  body[data-look="plan"] .preuves b{font-size:1.1rem}
  body[data-look="plan"] .preuves span{font-size:.95rem}
  /* clôture : le numéro d'abord, pas de photo d'ambiance */
  body[data-look="plan"] .nuit{display:none}
  body[data-look="plan"] .cloture .grand-numero{font-size:2.5rem}
  /* fiches : titre, chapeau, puis les colonnes repliées derrière leur titre */
  body[data-look="plan"] .fiche__colonnes > div[data-replie] > ul{display:none}
  body[data-look="plan"] .fiche__colonnes h3 .depli{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;cursor:pointer}
  body[data-look="plan"] .fiche__colonnes h3 .depli::after{content:"";flex:none;width:.55em;height:.55em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);transition:transform .2s var(--ease)}
  body[data-look="plan"] .fiche__colonnes h3 .depli[aria-expanded=true]::after{transform:rotate(-135deg) translate(-2px,-2px)}
  body[data-look="plan"] .fiche__colonnes > div,body[data-look="plan"] .fiche__colonnes > div:last-child{padding-top:4px}
  body[data-look="plan"] .fiche__colonnes > div:last-child{padding:4px 16px}
  body[data-look="plan"] .fiche__colonnes{gap:10px}
  body[data-look="plan"] .fiche__colonnes > div:last-child h3::before{display:none}
  body[data-look="plan"] .fiche__colonnes .depli{color:var(--p-bleu-encre)}
  body[data-look="plan"] .fiche__colonnes > div:last-child .depli{color:var(--p-vert-encre)}
  body[data-look="plan"] .fiche__media figcaption{display:none}
  body[data-look="plan"] .fiche .actions .lien-fleche{font-size:1rem}
  /* pied : le contact seulement ; services et secteurs sont dans le menu */
  body[data-look="plan"] .pied .rang > div:nth-child(2),body[data-look="plan"] .pied .rang > div:nth-child(3){display:none}
  body[data-look="plan"] .pied p{font-size:1rem}
  body[data-look="plan"] .pied__bas .rang{font-size:.9rem}
}
