/* ═════ TOURISME — atlas : papier pierre, encre verte, ocre ; Fraunces en graisse légère ; filets fins, angles droits ═════ */
.pg-tour{
  --bg:#EFE9DA;--paper:#F8F4EA;--surface:#F8F4EA;--ink:#1B2B25;--muted:#4F5C55;--line:rgba(27,43,37,.28);--focus:#16362C;
  --deep:#16362C;--ochre:#8A5518;--ochre-l:#E9C98A;--water:#CADBDD;
  --accent:#16362C;--on-accent:#F8F4EA;--btn-bg:#16362C;--btn-ink:#F8F4EA;--w:1320px;
}
.pg-tour .btn{border-radius:3px;font-weight:600;border-color:var(--deep);letter-spacing:.005em}
.pg-tour .btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.pg-tour h1,.pg-tour h2{font-family:var(--ff-d);font-weight:480;font-variation-settings:'opsz' 144;letter-spacing:-.025em}
.pg-tour .lead{font-size:1.18rem;line-height:1.6;color:var(--muted);max-width:56ch}
.pg-tour .cap{color:var(--muted)}.pg-tour .cap.pad{padding:10px 14px 12px;background:#fff}
.pg-tour .dyn-note{margin-top:12px}

/* Premier écran : la carte comme page */
.hero-stage{--T:6s}
.hero{position:relative;overflow:hidden;isolation:isolate;padding:56px 0 88px;min-height:calc(100vh - var(--hd));display:flex;align-items:center;--T:6s}
.hero .scene{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.hero .scene .trail{fill:none;stroke:var(--ochre);stroke-opacity:.7;stroke-width:3;stroke-linecap:round;stroke-dasharray:1 10}
.hero .scene .walked{fill:none;stroke:var(--deep);stroke-width:3.5;stroke-linecap:round;stroke-dasharray:1;animation:tdraw 4.5s cubic-bezier(.5,0,.2,1) .4s both}
.hero .scene .wp circle{fill:var(--paper);stroke:var(--deep);stroke-width:2.5}
.hero .scene .wp text{fill:var(--deep);font:600 15px var(--ff-s)}
.hero .scene .wp{animation:fadein .6s ease 3.2s both}
.hero .scene .walker{display:none}
@keyframes tdraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes fadein{from{opacity:0}to{opacity:1}}
.hero-in{position:relative;display:grid;gap:40px;align-items:center;width:min(100% - 32px,var(--w))}
.hero h1{font-size:clamp(2.9rem,7.2vw,5.6rem);line-height:.98;text-wrap:balance}
.hero h1 span{display:block}
.hero .lead{margin-top:22px}
.hero .cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.plate{position:relative;height:520px;width:min(100%,520px);justify-self:center}
.plate .ph{position:absolute;width:210px;filter:drop-shadow(0 26px 32px rgba(22,54,44,.28)) drop-shadow(0 3px 6px rgba(22,54,44,.2))}
.plate .p3{left:6%;top:0}.plate .p2{right:6%;top:64px}
.callout{display:none;position:absolute;margin:0;font-size:.86rem;font-weight:600;color:var(--deep);max-width:130px;line-height:1.25}
.callout span{display:block;padding-top:8px;border-top:1px solid var(--deep)}
.callout::before{content:"";position:absolute;top:-4px;width:9px;height:9px;border-radius:50%;background:var(--ochre);left:0}
.c-a{left:6%;top:-64px}.c-b{right:4%;top:18px}

/* Le fil de lecture : carte collante (bureau) ou barre de progression (mobile) */
.atlas{position:relative;--p:1;--q:1}
.atlas-bar{position:sticky;top:var(--hd);z-index:20;background:color-mix(in srgb,var(--bg) 96%,transparent);border-block:1px solid var(--line)}
.atlas-bar svg{display:block;width:100%;max-width:520px;margin-inline:auto;height:auto}
.atlas-bar text{font:600 11.5px var(--ff-s);fill:var(--muted)}
.atlas-bar .wp.on ~ text{}
.atlas .trail{fill:none;stroke:var(--ochre);stroke-opacity:.75;stroke-width:2.5;stroke-linecap:round;stroke-dasharray:1 8}
.atlas .walked{fill:none;stroke:var(--deep);stroke-width:3.5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--p))}
.atlas-bar .walked{stroke-dashoffset:calc(1 - var(--q))}
.atlas .wp circle{fill:var(--paper);stroke:var(--deep);stroke-width:2;transition:fill .3s}
.atlas .wp.on circle{fill:var(--deep)}
.atlas .wp .n{font:600 13px var(--ff-s);fill:var(--deep)}
.atlas .wp.on .n{fill:#F8F4EA}
.atlas .wp .lab{font:500 15px var(--ff-s);fill:var(--muted)}
.atlas .wp.on .lab{fill:var(--ink);font-weight:700}
.atlas-map{display:none}
.atlas-grid{display:block}

.chapters{padding-bottom:40px}
.ch{padding:72px 0 24px;border-top:1px solid var(--line)}
.ch:first-child{border-top:0}
.ch h2{font-size:clamp(2.1rem,5vw,3.7rem);line-height:1.04;margin-bottom:22px;text-wrap:balance;max-width:20ch}
.n{display:inline-grid;place-items:center;width:44px;height:44px;margin-right:14px;border:1.5px solid var(--deep);border-radius:50%;font:400 1.3rem/1 var(--ff-d);vertical-align:.2em;letter-spacing:0}
.win.big{margin-top:36px;border-radius:2px;border:1px solid var(--ink);box-shadow:10px 12px 0 rgba(22,54,44,.14)}
.win.big .win-bar{background:var(--water)}

.duo{display:grid;gap:36px;margin-top:36px;align-items:start}
.plan [role=tablist]{margin-bottom:22px}
.plan [role=tab]{border-radius:3px;border-color:var(--deep);color:var(--deep)}
.plan{--tab-on-bg:var(--deep);--tab-on-ink:#F8F4EA}
.plan .ph,.qr .ph{width:min(74%,270px)}
.qr p{margin-top:20px;max-width:32ch;color:var(--muted)}
.facts{display:grid;gap:0;margin-top:48px;border-top:1px solid var(--line)}
.facts li{display:flex;gap:16px;align-items:flex-start;padding:18px 0;border-bottom:1px solid var(--line)}
.facts .ic{width:28px;height:28px;color:var(--ochre);margin-top:2px}

.idx-h{margin-top:64px;font:420 clamp(1.6rem,3.4vw,2.3rem)/1.1 var(--ff-d);font-variation-settings:'opsz' 144;letter-spacing:-.02em}
.idx{margin-top:18px;border-top:1.5px solid var(--ink)}
.idx details{border-bottom:1px solid var(--line)}
.idx summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 24px;min-height:64px;padding:16px 44px 16px 0;cursor:pointer;list-style:none;position:relative}
.idx summary::-webkit-details-marker{display:none}
.idx summary span{font:420 clamp(1.5rem,3vw,2.2rem)/1.1 var(--ff-d);font-variation-settings:'opsz' 144;letter-spacing:-.02em}
.idx summary small{color:var(--muted);font-size:.95rem}
.idx summary::after{content:"+";position:absolute;right:4px;top:50%;translate:0 -50%;font:300 2rem/1 var(--ff-d);transition:rotate .3s var(--ease)}
.idx details[open] summary::after{rotate:45deg}
.idx summary:hover span{color:var(--ochre)}
.idx-b{display:grid;gap:20px;padding:4px 0 28px;align-items:center}
.idx-b p{max-width:48ch;color:var(--muted)}
.idx-b .ph{width:170px}

.band{margin:72px 0 0}
.band img{width:100%;aspect-ratio:16/9;object-fit:cover}

.figs{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:36px;border-top:1.5px solid var(--ink)}
.figs>div{padding:20px 12px 24px 0;border-bottom:1px solid var(--line)}
.figs dt{font-size:.92rem;font-weight:600;color:var(--muted)}
.figs dd:not(.s){margin:6px 0 4px;font:300 clamp(3.2rem,9vw,5.6rem)/1 var(--ff-d);font-variation-settings:'opsz' 144;letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--deep)}
.star{color:var(--ochre);font:400 .5em var(--ff-s)}
.figs .s{font-size:.9rem;color:var(--muted);margin:0}
.bilan{display:flex;gap:16px;align-items:center;margin-top:28px;padding:18px 20px;background:var(--deep);color:#F1EBDA;border-radius:2px}
.bilan .ic{width:34px;height:34px;color:var(--ochre-l)}

.quad{display:grid;gap:0;margin-top:36px;border-top:1px solid var(--line)}
.quad li{display:flex;gap:14px;align-items:flex-start;padding:16px 0;border-bottom:1px solid var(--line)}
.quad .ic{color:var(--ochre);width:28px;height:28px}

.plans{display:grid;margin-top:32px;border-top:1.5px solid var(--ink)}
.plans>li{padding:22px 0 26px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.plans h3{font:420 2rem/1.05 var(--ff-d);font-variation-settings:'opsz' 144;letter-spacing:-.02em}
.plans>li>p{color:var(--muted);max-width:34ch}

.finale{position:relative;overflow:hidden;isolation:isolate;background:var(--deep);color:#F1EBDA;padding:96px 0;text-align:center}
.finale .scene{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.finale h2{font-size:clamp(2.2rem,5.6vw,4.2rem);line-height:1.02;max-width:17ch;margin-inline:auto;text-wrap:balance}
.finale p{max-width:52ch;margin:18px auto 0;color:#D8E0D6;font-size:1.1rem}
.pills{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:24px 0 28px}
.pills li{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid rgba(241,235,218,.5)}
.finale .btn{--btn-bg:var(--ochre-l);--btn-ink:#16362C;border-color:var(--ochre-l)}

@media(min-width:720px){
  .figs{grid-template-columns:repeat(4,1fr)}
  .figs>div{border-left:1px solid var(--line);padding-left:16px;border-bottom:0}
  .figs>div:first-child{border-left:0;padding-left:0}
  .facts{grid-template-columns:1fr 1fr;column-gap:48px}
  .quad{grid-template-columns:1fr 1fr;column-gap:48px}
  .plans{grid-template-columns:repeat(3,1fr);column-gap:0}
  .plans>li{padding-right:28px;border-bottom:0;border-left:1px solid var(--line);padding-left:24px}
  .plans>li:first-child{border-left:0;padding-left:0}
  .duo{grid-template-columns:1fr 1fr}
  .idx-b{grid-template-columns:1fr auto;gap:40px}
}
@media(min-width:960px){
  .callout{display:block}
  .hero-in{grid-template-columns:1.15fr .85fr}
  .plate{height:600px;width:100%}
  .plate .ph{width:240px}
  .plate .p2{top:90px}
}
@media(min-width:1100px){
  .atlas-bar{display:none}
  .atlas-grid{display:grid;grid-template-columns:300px minmax(0,1fr);column-gap:80px}
  .atlas-map{display:block;position:sticky;top:calc(var(--hd) + 24px);height:calc(100vh - var(--hd) - 48px);max-height:700px;margin-top:72px;border:1px solid var(--ink);background:var(--paper);overflow:hidden}
  .atlas-map svg{display:block;width:100%;height:100%}
  .chapters{max-width:860px}
}
@media(prefers-reduced-motion:reduce){
  .hero .scene .walked{stroke-dashoffset:0}
  .hero .scene .wp{opacity:1}
}

/* Univers et offre (sections hors chapitres) */
.univers h2,.offre h2{font-size:clamp(2.1rem,5vw,3.7rem);line-height:1.04;max-width:20ch;text-wrap:balance}
.univers,.offre{border-top:1px solid var(--line)}
