/* Feuille commune aux pages intérieures (séances apnée, puis film, photographie, à propos).
   Reprise à l’identique du système de la page d’accueil : mêmes teintes de strates, même barre,
   même menu en coupe, même visionneuse. Les photos gardent toujours leur format d’origine. */
:root{
  --lichen:#E6EBE2;
  --mousse:#D0DAC8;
  --humus:#141F18;
  --encre:#122019;
  --pale:#E8EEE9;
  --ciel:#4A6580;
  --recif:#0B3946;
  --bleu:#082848;
  --abysse:#04131F;
  --ouakari:#D8322B;
  --ouakari-fort:#B8241E;

  --display:"Cormorant Garamond","Cormorant",Garamond,"Times New Roman",serif;
  --text:"Montserrat","Helvetica Neue",Helvetica,Arial,sans-serif;

  --t-h2:clamp(2.9rem,6.2vw,5.8rem);
  --t-statement:clamp(1.8rem,2.9vw,2.85rem);
  --t-body:clamp(.98rem,.2vw + .93rem,1.0625rem);
  --t-small:.8125rem;
  --t-label:.6875rem;

  --gutter:clamp(16px,2.6vw,40px);
  --side-l:max(var(--gutter),env(safe-area-inset-left,0px));
  --side-r:max(var(--gutter),env(safe-area-inset-right,0px));
  --section:clamp(96px,13vw,200px);
  --bar-h:68px;

  --ease-out:cubic-bezier(.22,1,.36,1);
  --ease-in-out:cubic-bezier(.76,0,.24,1);
  --ease-water:cubic-bezier(.65,0,.35,1);
  --ease-soft:cubic-bezier(.33,1,.68,1);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:var(--bar-h);-webkit-text-size-adjust:100%;scrollbar-color:#7d8f86 transparent}
html.is-locked{overflow:hidden}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--lichen);color:var(--encre);font-family:var(--text);font-size:var(--t-body);line-height:1.75;font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
main{overflow-x:clip}
img{display:block;max-width:100%;height:auto}
figure{margin:0}
p{margin:0}
h1,h2,h3{margin:0;font-weight:300;text-wrap:balance}
a{color:inherit}
button{font:inherit;color:inherit}
em{font-style:italic}
::selection{background:var(--ouakari);color:#fff}
:focus-visible{outline:2px solid var(--ouakari);outline-offset:3px}

.wrap{padding-left:var(--side-l);padding-right:var(--side-r)}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gutter)}
.grid>*{min-width:0}
.label{font-family:var(--text);font-size:var(--t-label);font-weight:600;letter-spacing:.22em;text-transform:uppercase;line-height:1.2}

/* Strates ------------------------------------------------------------- */
.strate{position:relative;padding-block:var(--section)}
.s-lichen{background:var(--lichen);color:var(--encre)}
.s-mousse{background:var(--mousse);color:var(--encre)}
.s-humus{background:var(--humus);color:var(--pale)}
.s-recif{background:var(--recif);color:var(--pale)}
.s-bleu{background:var(--bleu);color:var(--pale)}
.s-abysse{background:var(--abysse);color:var(--pale)}
.s-lichen,.s-mousse{--note:color-mix(in oklab,var(--encre) 72%,transparent);--trait:color-mix(in oklab,var(--encre) 26%,transparent)}
.s-humus,.s-recif,.s-bleu,.s-abysse{--note:color-mix(in oklab,var(--pale) 70%,transparent);--trait:color-mix(in oklab,var(--pale) 22%,transparent)}

/* Texte ----------------------------------------------------------------- */
.h2{font-family:var(--display);font-size:var(--t-h2);line-height:.96;letter-spacing:-.012em;font-weight:300}
.h2 em{font-weight:300}
.statement{font-family:var(--display);font-size:var(--t-statement);line-height:1.2;font-weight:400;max-width:22ch;letter-spacing:-.005em}
.body{max-width:33em}
.body p+p{margin-top:1.1em}
.note{font-size:var(--t-small);line-height:1.5;color:var(--note)}
.note i{font-family:var(--display);font-size:1.18em;font-weight:500;letter-spacing:.01em}

.actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 30px;margin-top:clamp(28px,3vw,40px)}
.btn{display:inline-flex;align-items:center;gap:.8em;padding:1.15em 1.75em;background:var(--ouakari);color:#fff;font:600 var(--t-label)/1 var(--text);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;border:0;border-radius:0;cursor:pointer;transition:transform 140ms var(--ease-out),background-color 180ms ease}
.btn:active{transform:scale(.97)}
.lien{font:600 var(--t-label)/1.4 var(--text);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;display:inline-flex;align-items:center;gap:.7em;padding-block:6px;background:linear-gradient(currentColor,currentColor) 0 100%/100% 1.5px no-repeat;transition:background-size 420ms var(--ease-out);cursor:pointer;border:0;background-color:transparent;padding-inline:0}
.ext{width:.95em;height:.95em;flex:none}
@media (hover:hover) and (pointer:fine){
  .btn:hover{background-color:var(--ouakari-fort)}
  .lien:hover{background-size:0 1.5px;background-position:100% 100%}
}

/* Photos : format d’origine, rangées justifiées ------------------------------ */
.photo{display:block;position:relative;cursor:zoom-in;outline-offset:5px;-webkit-tap-highlight-color:transparent}
.photo img{width:100%;height:auto;transition:opacity 200ms ease}
.photo.is-lifted img{opacity:0;transition:none}
figcaption{margin-top:.75em;display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.voir{flex:none;font-size:var(--t-label);font-weight:600;letter-spacing:.2em;text-transform:uppercase;opacity:0;translate:-8px 0;transition:opacity 300ms ease,translate 420ms var(--ease-out)}
@media (hover:hover) and (pointer:fine){
  figure:hover .voir,.photo:focus-visible+figcaption .voir{opacity:1;translate:0 0}
}
.just{display:flex;flex-wrap:wrap;gap:clamp(28px,3vw,44px) clamp(10px,1.1vw,16px);--u:110px}
.just+.just{margin-top:clamp(28px,3vw,44px)}
.just>figure{flex:calc(var(--r) * 10) 1 calc(var(--r) * var(--u));min-width:0}

/* Barre --------------------------------------------------------------------- */
.bar{position:fixed;inset:0 0 auto 0;z-index:50;height:calc(var(--bar-h) + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) var(--side-r) 0 var(--side-l);display:flex;align-items:center;gap:clamp(14px,3vw,48px);background:var(--bar-bg,transparent);color:var(--bar-ink,#fff);transition:background-color 300ms ease,color 300ms ease}
.bar.is-menu{--bar-bg:transparent!important;--bar-ink:var(--encre)!important}
.wordmark{font:400 1.5rem/1 var(--display);letter-spacing:.02em;text-decoration:none;white-space:nowrap}
.gauge{display:inline-flex;align-items:center;gap:14px;background:none;border:0;padding:10px 0;cursor:pointer;text-align:left}
.gauge .label{opacity:.82}
.odo{display:inline-flex;align-items:center;height:1em;font:600 1.0625rem/1 var(--text);font-variant-numeric:tabular-nums;letter-spacing:.01em}
.odo__sign{display:inline-block;width:.62em;text-align:center}
.odo__w{display:inline-block;height:1em;overflow:hidden;width:.66em;transition:width 420ms var(--ease-out)}
.odo__w.is-off{width:0}
.odo__s{display:block;transition:transform 720ms var(--ease-out)}
.odo__s span{display:block;height:1em;line-height:1em;text-align:center}
.odo__u{margin-left:.22em;font-weight:500}
.langue{margin-left:auto;text-decoration:none;padding:12px 4px;opacity:.82;transition:opacity 200ms ease}
.langue+.menu-btn{margin-left:0}
@media (hover:hover) and (pointer:fine){.langue:hover{opacity:1}}
.menu-btn{margin-left:auto;display:inline-flex;align-items:center;gap:16px;background:none;border:0;padding:10px 0 10px 12px;cursor:pointer;transition:transform 140ms var(--ease-out)}
.menu-btn:active{transform:scale(.97)}
.rail{position:relative;display:grid;gap:2px;width:8px}
.rail i{display:block;height:4px;background:var(--c);box-shadow:0 0 0 1px color-mix(in oklab,currentColor 24%,transparent);transition:transform 420ms var(--ease-out)}
.rail b{position:absolute;left:-6px;right:-6px;top:-1px;height:2px;background:var(--ouakari);transition:transform 300ms var(--ease-out)}
@media (hover:hover) and (pointer:fine){
  .menu-btn:hover .rail i{transform:translateY(calc(var(--k) * 1.6px))}
}

/* Le menu : une coupe verticale ---------------------------------------------------- */
.coupe{position:fixed;inset:0;z-index:40;visibility:hidden;pointer-events:none;--ici-w:clamp(9.5rem,13.5vw,12.5rem)}
.coupe.is-open,.coupe.is-closing{visibility:visible}
.coupe.is-open{pointer-events:auto}
.coupe__bands{position:absolute;inset:0;display:flex;flex-direction:column}
.band{flex:1 1 0;min-height:0;position:relative;display:grid;grid-template-columns:var(--ici-w) 5.5rem 11rem minmax(0,1fr);align-items:center;padding-left:var(--side-l);padding-right:var(--side-r);background:var(--bg);color:var(--ink);text-decoration:none;clip-path:inset(0 0 100% 0);transition:clip-path 600ms var(--ease-water) calc(var(--i) * 52ms)}
.band:first-child{flex-grow:1.5;padding-top:var(--bar-h)}
.coupe.is-open .band{clip-path:inset(0)}
.coupe.is-closing .band{clip-path:inset(0 0 100% 0);transition-duration:440ms;transition-delay:calc((6 - var(--i)) * 34ms)}
.band__depth{grid-column:2;font:600 .9375rem/1 var(--text);font-variant-numeric:tabular-nums}
.band__strate{grid-column:3;opacity:.7}
.band__depth,.band__strate{opacity:0;transition:opacity 300ms ease}
.coupe.is-open .band__depth{opacity:1;transition-delay:calc(var(--i) * 52ms + 300ms)}
.coupe.is-open .band__strate{opacity:.7;transition-delay:calc(var(--i) * 52ms + 340ms)}
.band__main{grid-column:4;display:flex;align-items:baseline;gap:clamp(16px,2vw,32px);transition:opacity 300ms ease}
.band__mask{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.band__title{display:block;font:300 clamp(2rem,5.6vh,4rem)/1 var(--display);letter-spacing:-.01em;transform:translateY(108%);transition:transform 700ms var(--ease-out) calc(var(--i) * 52ms + 200ms),translate 460ms var(--ease-out)}
.band__title em{font-weight:300}
.coupe.is-open .band__title{transform:none}
.coupe.is-closing .band__title{transition-duration:240ms;transition-delay:0ms}
.band__desc{font-size:var(--t-small);opacity:0;transition:opacity 400ms ease}
.coupe.is-open .band__desc{opacity:.72;transition-delay:calc(var(--i) * 52ms + 420ms)}
.band[aria-current="page"] .band__title::after{content:"";display:inline-block;width:.16em;height:.16em;margin-left:.22em;vertical-align:.12em;background:var(--ouakari);border-radius:50%}
@media (hover:hover) and (pointer:fine){
  .band__main{transition:opacity 300ms ease,translate 460ms var(--ease-out)}
  .band:hover .band__main{translate:18px 0}
  .coupe__bands:hover .band:not(:hover) .band__main{opacity:.45}
}
.band:focus-visible{outline-offset:-6px}

.coupe__surface{position:absolute;left:0;right:0;height:22px;top:0;overflow:hidden;pointer-events:none;opacity:0;transition:opacity 300ms ease}
.coupe.is-open .coupe__surface{opacity:1;transition:opacity 500ms ease 440ms}
.coupe__surface svg{width:200%;height:100%;display:block;fill:var(--recif)}
.coupe.is-open .coupe__surface svg{animation:houle 8s linear infinite}

.coupe__ici{position:absolute;left:0;top:0;display:flex;align-items:center;padding-left:var(--side-l);opacity:0;transform:translateY(0);pointer-events:none;will-change:transform}
.coupe.is-open .coupe__ici{opacity:1;transition:transform 950ms var(--ease-in-out) 240ms,opacity 300ms ease 240ms}
.coupe__ici.is-quick{transition:transform 560ms var(--ease-in-out)!important}
.ici__tab{position:absolute;left:0;width:var(--side-l);height:2px;background:var(--ouakari)}
.ici__txt{display:inline-flex;align-items:center;gap:9px;background:var(--ouakari);color:#fff;padding:8px 11px 7px;white-space:nowrap}
.ici__txt .label{font-size:.625rem;letter-spacing:.18em}
.ici__d{font:600 .8125rem/1 var(--text);font-variant-numeric:tabular-nums}

.coupe__apercu{position:absolute;right:var(--side-r);top:0;width:min(30vw,500px);aspect-ratio:3/2;overflow:hidden;opacity:0;transform:translateY(var(--py,40vh));transition:transform 680ms var(--ease-in-out),opacity 320ms ease;box-shadow:0 34px 70px -24px rgba(4,19,31,.6);pointer-events:none;background:var(--encre)}
.coupe__apercu.is-on{opacity:1}
.coupe__apercu img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;clip-path:inset(0);transition:clip-path 640ms var(--ease-water)}

/* Visionneuse ----------------------------------------------------------------------------------------- */
.lb{position:fixed;inset:0;z-index:60;visibility:hidden;pointer-events:none;color:var(--pale)}
.lb.is-open,.lb.is-closing{visibility:visible}
.lb.is-open{pointer-events:auto}
.lb__fond{position:absolute;inset:0;background:var(--lb-bg,#101A14);opacity:0;transition:opacity 420ms ease,background-color 800ms ease}
.lb.is-open .lb__fond{opacity:1}
.lb__haut,.lb__bas{position:absolute;left:0;right:0;padding-left:var(--side-l);padding-right:var(--side-r);display:flex;align-items:center;gap:24px;opacity:0;transition:opacity 300ms ease}
.lb.is-open .lb__haut,.lb.is-open .lb__bas{opacity:1;transition-delay:220ms}
.lb__haut{top:0;height:calc(72px + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0px)}
.lb__prof{display:inline-flex;align-items:center;gap:14px}
.lb__compte{opacity:.7}
.lb__fermer{margin-left:auto;background:none;border:0;padding:12px 0 12px 12px;cursor:pointer}
.lb__bas{bottom:0;min-height:calc(112px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);justify-content:space-between;align-items:center}
.lb__legende{--note:color-mix(in oklab,var(--pale) 80%,transparent);max-width:46ch}
.lb__nav{display:flex;gap:10px;flex:none}
.lb__btn{display:inline-flex;align-items:center;gap:10px;background:color-mix(in oklab,var(--pale) 10%,transparent);border:0;padding:14px 16px;cursor:pointer;transition:background-color 200ms ease,transform 140ms var(--ease-out)}
.lb__btn:active{transform:scale(.97)}
.lb__btn svg{width:12px;height:14px}
.lb__btn:disabled{opacity:.35;cursor:default}
@media (hover:hover) and (pointer:fine){.lb__btn:not(:disabled):hover{background:color-mix(in oklab,var(--pale) 18%,transparent)}}
.lb__scene{position:absolute;inset:0}
.lb__img{position:fixed;transform-origin:0 0;max-width:none;object-fit:contain;cursor:zoom-out;user-select:none;-webkit-user-drag:none}

/* Mouvement ---------------------------------------------------------------------------------------------- */
@keyframes houle{to{transform:translateX(-50%)}}
@keyframes line-up{to{transform:none}}
@keyframes rise{to{opacity:1;transform:none}}
@keyframes fade{from{opacity:0}}
@media (prefers-reduced-motion:no-preference){
  .js .bar{animation:fade 800ms ease 300ms both}
}
@supports (animation-timeline: view()){
  @media (prefers-reduced-motion:no-preference){
    /* Au-dessus de la surface, les images montent ; en dessous, elles coulent. */
    .photo{animation:monte linear both;animation-timeline:view();animation-range:entry 0% entry 80%}
    .sous .photo{animation-name:coule}
    @keyframes monte{from{clip-path:inset(24% 0 0 0)}to{clip-path:inset(0)}}
    @keyframes coule{from{clip-path:inset(0 0 24% 0)}to{clip-path:inset(0)}}
    .h2,.statement{animation:emerge-t linear both;animation-timeline:view();animation-range:entry 0% cover 28%}
    @keyframes emerge-t{from{opacity:.0;transform:translateY(.35em)}to{opacity:1;transform:none}}
  }
}

/* Écrans moyens -------------------------------------------------------------------------------------------- */
@media (max-width:1100px){
  .coupe__apercu{display:none}
  .band{grid-template-columns:var(--ici-w) 5rem minmax(0,1fr)}
  .band__strate{display:none}
  .band__main{grid-column:3}
}

/* Téléphone ------------------------------------------------------------------------------------------------- */
@media (max-width:760px){
  :root{--bar-h:60px}
  .grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .grid>*{grid-column:1/-1!important;grid-row:auto!important}
  .just{--u:200px}
  .bar{gap:14px}
  .wordmark{font-size:1.3rem}
  .gauge{flex-direction:column;align-items:flex-start;gap:4px;padding:8px 0}
  .gauge .label{font-size:.5rem;letter-spacing:.16em;white-space:nowrap}
  .odo{font-size:.9375rem}
  .langue{font-size:.5625rem;padding:12px 2px}
  .menu-btn{gap:11px}
  .menu-btn .label{font-size:.5625rem}

  .coupe{--ici-w:0px}
  .band{grid-template-columns:3.6rem minmax(0,1fr);grid-template-rows:auto auto;align-content:center;row-gap:6px}
  .band:first-child{flex-grow:1.35}
  .band__depth{grid-column:1;grid-row:1;font-size:.75rem}
  .band__strate{display:block;grid-column:2;grid-row:1;font-size:.5625rem}
  .band__main{grid-column:1/-1;grid-row:2}
  .band__title{font-size:clamp(1.9rem,5vh,2.6rem)}
  .band__desc{display:none}
  .coupe__ici{left:auto;right:0;padding-left:0;padding-right:var(--side-r)}
  .ici__tab{left:auto;right:0;width:var(--side-r)}
  .ici__txt{padding:6px 8px}
  .ici__txt .label{display:none}

  .lb__bas{flex-direction:column;align-items:stretch;justify-content:center;gap:14px;padding-top:12px}
  .lb__nav{justify-content:space-between}
  .lb__btn{flex:1;justify-content:center}
}
@media (max-width:370px){
  .gauge .label{display:none}
}
@media (prefers-reduced-motion:reduce){
  .coupe .band,.coupe .band__title,.coupe .band__depth,.coupe .band__strate,.coupe .band__desc,.coupe__ici,.coupe__apercu,.coupe__apercu img{transition-duration:1ms!important;transition-delay:0ms!important}
  .coupe .band{clip-path:none}
  .coupe{transition:opacity 200ms ease;opacity:0}
  .coupe.is-open{opacity:1}
  .coupe .band__title{transform:none}
}

/* Carte « Jusqu’à El Chino » : calque plein écran, ouvert à la demande (commun/carte.js) ------------------------
   Toute page peut l’ouvrir avec un lien [data-carte] ; l’adresse #el-chino l’ouvre directement.
   À l’intérieur, la carte reste fixe et les phrases défilent ; la caméra descend du Pérou au village. */
.carte-calque{position:fixed;inset:0;z-index:70;background:var(--mousse);color:var(--encre);visibility:hidden;clip-path:inset(100% 0 0 0);transition:clip-path 760ms var(--ease-water),visibility 0s linear 760ms}
.carte-calque.is-open{visibility:visible;clip-path:inset(0);transition:clip-path 760ms var(--ease-water),visibility 0s}
.carte-calque__defil{position:absolute;inset:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;outline:none}
.carte-calque__defil::-webkit-scrollbar{display:none}
.carte-calque__haut{position:absolute;inset:0 0 auto 0;z-index:3;height:calc(var(--bar-h) + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) var(--side-r) 0 var(--side-l);display:flex;align-items:center;gap:clamp(14px,3vw,48px);background:var(--mousse)}
.carte-calque__titre{margin:0;font:400 1.5rem/1 var(--display);letter-spacing:.01em;white-space:nowrap}
.carte-calque__fermer{margin-left:auto;background:none;border:0;padding:12px 0 12px 12px;cursor:pointer;color:inherit}
.carte__coord{margin:0;font-variant-numeric:tabular-nums;letter-spacing:.16em;color:var(--note,currentColor);opacity:.75;white-space:nowrap}
.carte{position:relative;--pas:68vh;--lecture:.56}
.carte__scene{position:sticky;top:0;height:100vh;height:100dvh;overflow:hidden;background:var(--lichen)}
.carte__plan{position:absolute;inset:0;transition:opacity 220ms ease}
.carte__plan.is-voile{opacity:0}
.carte__plan svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.carte__echelle{position:absolute;right:var(--side-r);bottom:30px;display:flex;flex-direction:column;align-items:flex-end;gap:9px}
.carte__barre{display:block;height:6px;width:var(--l,100px);border:1.5px solid var(--encre);border-top:0}
.carte__km{font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:.08em}
.carte__sources{position:absolute;left:var(--side-l);bottom:12px;margin:0;font-size:.625rem;letter-spacing:.02em;color:color-mix(in oklab,var(--encre) 70%,transparent)}
.carte__etapes{position:relative;list-style:none;margin:-100vh 0 0;margin-top:-100dvh;padding:0 0 24vh;pointer-events:none}
.carte__etape{height:var(--pas);display:flex;align-items:center;padding-left:var(--side-l)}
.carte__etape.fin{height:auto;min-height:60vh}
.carte__etape.premiere{height:calc(var(--pas) * 2.8);padding-bottom:calc(var(--pas) * 1.8)}
.carte__texte{pointer-events:auto;width:min(25em,32vw);background:var(--mousse);padding:24px 28px 28px}
.carte__texte .label{color:color-mix(in oklab,var(--encre) 72%,transparent)}
.carte__phrase{margin-top:14px;font:400 clamp(1.4rem,1.9vw,1.8rem)/1.24 var(--display);letter-spacing:-.003em;text-wrap:pretty}
.carte__aide{display:flex;align-items:center;gap:10px;margin-top:18px;color:color-mix(in oklab,var(--encre) 60%,transparent)}
.carte__aide svg{width:10px;height:16px}
.carte__texte .actions{margin-top:22px}
/* le rail : six repères et un curseur rouge, comme le profondimètre du menu */
.carte__rail{position:absolute;z-index:2;right:var(--side-r);top:50%;translate:0 -50%;display:flex;flex-direction:column;gap:0;padding:6px 0}
.carte__rail::before{content:"";position:absolute;right:11px;top:14px;bottom:14px;width:1px;background:color-mix(in oklab,var(--encre) 30%,transparent)}
.carte__cran{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:12px;height:clamp(28px,5.4vh,46px);padding:0;background:none;border:0;cursor:pointer;color:inherit}
.carte__cran i{display:block;width:9px;height:1px;margin-right:7px;background:var(--encre);transition:width 300ms var(--ease-out)}
.carte__cran span{opacity:0;translate:6px 0;transition:opacity 250ms ease,translate 350ms var(--ease-out);white-space:nowrap}
.carte__cran.is-ici i{width:14px;margin-right:4px}
@media (hover:hover) and (pointer:fine){.carte__cran:hover span{opacity:.8;translate:0 0}}
.carte__curseur{position:absolute;right:4px;top:0;width:15px;height:2px;background:var(--ouakari);transform:translateY(var(--y,0px));pointer-events:none}
@media (max-width:760px){
  .carte{--pas:84dvh;--lecture:.8}
  .carte__etape{align-items:flex-end;padding:0 var(--side-r) 0 var(--side-l)}
  .carte__texte{width:100%;padding:18px 20px 22px}
  .carte__phrase{font-size:1.35rem;margin-top:10px}
  .carte__echelle{bottom:auto;top:calc(var(--bar-h) + 16px)}
  .carte-calque__titre{font-size:1.25rem}
  .carte-calque__haut .carte__coord{display:none}
  .carte__rail{display:none}
}
@media (prefers-reduced-motion:reduce){
  .carte-calque,.carte-calque.is-open{clip-path:none;transition:opacity 200ms ease,visibility 0s linear 200ms;opacity:0}
  .carte-calque.is-open{opacity:1;transition:opacity 200ms ease}
}
