/* ============ POLICE AUTO-HÉBERGÉE (Andika) ============ */
@font-face{font-family:'Andika';font-style:italic;font-weight:400;font-display:swap;src:url('/assets/fonts/andika-latin-ext-1.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:'Andika';font-style:italic;font-weight:400;font-display:swap;src:url('/assets/fonts/andika-latin-2.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;}
@font-face{font-family:'Andika';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/andika-latin-ext-3.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:'Andika';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/andika-latin-4.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;}
@font-face{font-family:'Andika';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/fonts/andika-latin-ext-5.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:'Andika';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/fonts/andika-latin-6.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;}

/* ============ RESET & TOKENS ============ */
*{margin:0;padding:0;box-sizing:border-box;}
:root{
  /* Palette inspirée du logo : vert forêt, vert tilleul, bleu ciel, pierre */
  --paper:#F4F1E7; --paper-2:#E8EEDC; --card:#FBFAF3;
  --ink:#17241A; --ink-soft:#43513E; --ink-mute:#6E7A63;
  --pine:#0C5432; --pine-d:#08381F; --moss:#5E7A3E;
  --ochre:#6F9E1A; --ochre-d:#567C14;      /* accent = vert tilleul du logo */
  --cta:#0E7A3C; --cta-d:#0A5E2D;           /* bouton = vert forêt vif */
  --sky:#0F9BD0; --sand:#C9B79A;            /* bleu ciel + pierre */
  --topo:rgba(12,84,50,.055);
  --line:rgba(23,36,26,.13); --line-soft:rgba(23,36,26,.07);
  --serif:'Andika','Segoe UI',system-ui,sans-serif;
  --sans:'Andika','Segoe UI',system-ui,sans-serif;
  --wrap:1480px; --r:16px;
  --sh-sm:0 2px 8px rgba(33,31,26,.06);
  --sh:0 18px 44px -22px rgba(33,31,26,.35);
  --sh-lg:0 40px 80px -40px rgba(30,50,39,.55);
}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden;}
body{font-family:var(--sans);color:var(--ink);background:var(--paper) url("/assets/img/topo.svg") center center / cover no-repeat fixed;line-height:1.65;
  font-size:17px;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}

/* ============ TRANSITIONS DE PAGE (douce, entre chaque page) ============ */
@view-transition{navigation:auto;}
::view-transition-old(root){animation:vt-out .3s cubic-bezier(.4,0,.2,1) both;}
::view-transition-new(root){animation:vt-in .42s cubic-bezier(.2,.7,.3,1) both;}
@keyframes vt-out{to{opacity:0;transform:translateY(-8px);}}
@keyframes vt-in{from{opacity:0;transform:translateY(12px);}}
@media (prefers-reduced-motion:reduce){
  ::view-transition-old(root),::view-transition-new(root){animation:none;}
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
h1,h2,h3,h4{font-family:var(--serif);font-weight:600;line-height:1.06;letter-spacing:-.015em;}
::selection{background:var(--ochre);color:#fff;}

/* ============ HELPERS ============ */
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 clamp(20px,5vw,44px);}
.kicker{font-family:var(--sans);font-weight:700;font-size:.74rem;letter-spacing:.22em;
  text-transform:uppercase;color:var(--ochre-d);display:inline-flex;align-items:center;gap:12px;}
.kicker::before{content:"";width:26px;height:2px;background:var(--ochre);display:inline-block;}
.kicker.light{color:#C7E39A;}
.kicker.light::before{background:var(--ochre);}
.eyebrow-c{justify-content:center;}
h2.sec{font-size:clamp(2.1rem,5vw,3.5rem);margin:.5em 0 .3em;font-weight:600;}
.lead{font-size:clamp(1.05rem,1.6vw,1.22rem);color:var(--ink-soft);max-width:56ch;}
.serif-i{font-style:italic;font-weight:500;color:var(--ochre-d);}
.btn{display:inline-flex;align-items:center;gap:.6em;font-family:var(--sans);font-weight:700;
  font-size:.98rem;padding:.92em 1.6em;border-radius:100px;border:1.6px solid transparent;
  cursor:pointer;transition:transform .25s cubic-bezier(.2,.7,.3,1),background .25s,box-shadow .25s,color .25s;white-space:nowrap;}
.btn svg{width:1.05em;height:1.05em;transition:transform .3s;}
.btn:hover{transform:translateY(-2px);}
.btn-primary{background:var(--cta);color:#fff;box-shadow:0 12px 26px -12px rgba(14,122,60,.7);}
.btn-primary:hover{background:var(--cta-d);box-shadow:0 16px 30px -12px rgba(14,122,60,.85);}
.btn-primary:hover svg{transform:translateX(4px);}
.btn-ghost{border-color:rgba(255,255,255,.55);color:#fff;}
.btn-ghost:hover{background:rgba(255,255,255,.12);border-color:#fff;}
.btn-dark{background:var(--pine);color:#fff;}
.btn-dark:hover{background:var(--pine-d);}
.btn-outline{border-color:var(--ink);color:var(--ink);}
.btn-outline:hover{background:var(--ink);color:var(--paper);}

/* reveal */
.js .reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.3,1);}
.js .reveal.in{opacity:1;transform:none;}
.js .reveal.d1{transition-delay:.09s}.js .reveal.d2{transition-delay:.18s}.js .reveal.d3{transition-delay:.27s}.js .reveal.d4{transition-delay:.36s}
@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1!important;transform:none!important;}html{scroll-behavior:auto;}}

/* ============ HEADER ============ */
.hdr{position:fixed;top:0;left:0;right:0;z-index:60;transition:background .4s,box-shadow .4s,padding .4s;padding:22px 0;}
.hdr::before{content:"";position:absolute;inset:0;background:var(--paper);opacity:0;transition:opacity .4s;border-bottom:1px solid var(--line-soft);}
.hdr.scrolled{padding:12px 0;}
.hdr.scrolled::before{opacity:1;box-shadow:0 6px 24px -18px rgba(0,0,0,.4);}
.hdr-in{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(18px,2.2vw,32px);position:relative;}
.nav-left{grid-column:1;justify-self:end;}
.hdr-right{grid-column:3;justify-self:start;display:flex;align-items:center;gap:clamp(18px,2vw,30px);}
.brand-cta{white-space:nowrap;}
.brand-logo{grid-column:2;justify-self:center;display:block;line-height:0;flex:none;}
.brand-logo img{height:82px;width:auto;transition:height .4s,filter .4s;
  filter:drop-shadow(0 3px 10px rgba(0,0,0,.4));}
.hdr.scrolled .brand-logo img{height:62px;filter:drop-shadow(0 1px 3px rgba(0,0,0,.14));}
.brand{display:flex;align-items:center;gap:12px;color:#fff;transition:color .4s;z-index:2;}
.hdr.scrolled .brand{color:var(--ink);}
.brand .mk{width:40px;height:40px;flex:none;border-radius:11px;background:var(--ochre);
  display:grid;place-items:center;box-shadow:var(--sh-sm);}
.brand .mk svg{width:23px;height:23px;}
.brand-tx{display:flex;flex-direction:column;line-height:1;}
.brand-tx b{font-family:var(--serif);font-weight:600;font-size:1.16rem;letter-spacing:-.01em;}
.brand-tx span{font-family:var(--sans);font-size:.6rem;letter-spacing:.25em;text-transform:uppercase;opacity:.82;margin-top:3px;}
.nav{display:flex;align-items:center;gap:34px;}
.nav a.lnk{font-weight:400;font-size:1rem;color:#fff;position:relative;transition:color .4s;opacity:.94;}
.hdr.scrolled .nav a.lnk{color:var(--ink);}
.nav a.lnk::after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:2px;background:var(--ochre);transition:right .32s;}
.nav a.lnk:hover::after{right:0;}
.nav a.lnk:hover{color:#fff;}
.hdr.scrolled .nav a.lnk:hover{color:var(--ochre-d);}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px;z-index:70;}
.burger span{width:26px;height:2.4px;background:#fff;border-radius:2px;transition:.35s;}
.hdr.scrolled .burger span{background:var(--ink);}

/* ============ HERO ============ */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;color:#fff;overflow:hidden;}
.hero-bg{position:absolute;inset:0;z-index:-2;}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center 42%;will-change:transform;transform:scale(1.22);}
.hero-bg::after{content:"";position:absolute;inset:0;
  background:linear-gradient(178deg,rgba(20,30,24,.34) 0%,rgba(20,30,24,0) 24%),
    linear-gradient(8deg,rgba(18,28,22,.9) 4%,rgba(18,28,22,.36) 40%,rgba(18,28,22,.12) 66%);}
.hero-in{padding-bottom:clamp(46px,8vh,88px);padding-top:150px;width:100%;}
.hero h1{font-size:clamp(2.9rem,7.4vw,6rem);font-weight:600;max-width:15ch;letter-spacing:-.02em;
  text-shadow:0 2px 34px rgba(0,0,0,.28);}
.hero h1 em{font-style:italic;font-weight:500;color:#C7E39A;}
.hero p.sub{font-size:clamp(1.08rem,1.7vw,1.35rem);max-width:52ch;margin-top:1.3rem;color:rgba(255,255,255,.92);
  text-shadow:0 1px 16px rgba(0,0,0,.3);}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:2.1rem;}
.hero-trust{display:flex;flex-wrap:wrap;gap:12px 30px;margin-top:2.6rem;padding-top:1.7rem;
  border-top:1px solid rgba(255,255,255,.22);max-width:640px;}
.hero-trust .ti{display:flex;align-items:center;gap:9px;font-size:.92rem;color:rgba(255,255,255,.9);}
.hero-trust .ti svg{width:19px;height:19px;color:#C7E39A;flex:none;}
.hero-trust .stars{letter-spacing:2px;color:#C7E39A;}
.scrolldown{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:2;
  writing-mode:vertical-rl;font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;opacity:.72;
  display:flex;align-items:center;gap:12px;}
.scrolldown::after{content:"";width:1px;height:42px;background:#fff;animation:sd 1.9s ease-in-out infinite;}
@keyframes sd{0%,100%{transform:scaleY(.3);opacity:.4;transform-origin:top}50%{transform:scaleY(1);opacity:1;transform-origin:top}}

/* ============ INTRO ============ */
.intro{padding:clamp(72px,11vw,140px) 0;position:relative;}
.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(36px,6vw,84px);align-items:center;}
.intro-tx h2{font-size:clamp(1.9rem,3.6vw,3rem);margin:.55em 0 .6em;}
.intro-tx p{color:var(--ink-soft);margin-bottom:1.1rem;max-width:54ch;}
.intro-sign{font-family:var(--serif);font-style:italic;font-size:1.28rem;color:var(--pine);margin-top:1.4rem;}
.intro-media{position:relative;}
.intro-media img{width:100%;height:clamp(360px,52vh,560px);object-fit:cover;border-radius:22px;box-shadow:var(--sh);}
.intro-badge{position:absolute;right:-18px;bottom:-22px;background:var(--pine);color:#fff;border-radius:18px;
  padding:20px 24px;box-shadow:var(--sh-lg);max-width:210px;}
.intro-badge b{font-family:var(--serif);font-size:2.5rem;display:block;line-height:1;color:#C7E39A;}
.intro-badge span{font-size:.82rem;color:rgba(255,255,255,.85);display:block;margin-top:6px;}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:clamp(48px,7vw,80px);
  padding-top:clamp(40px,5vw,56px);border-top:1px solid var(--line);}
.stat b{font-family:var(--serif);font-size:clamp(1.9rem,3.4vw,2.7rem);color:var(--pine);display:block;line-height:1;}
.stat span{font-size:.9rem;color:var(--ink-mute);display:block;margin-top:9px;}

/* ============ ACTIVITÉS ============ */
.acts{padding:clamp(64px,9vw,120px) 0;background:var(--paper-2);}
.sec-head{max-width:640px;margin-bottom:clamp(34px,4vw,54px);}
.sec-head.center{margin-inline:auto;text-align:center;}
.act-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;}
.act{position:relative;border-radius:var(--r);overflow:hidden;min-height:340px;display:flex;
  align-items:flex-end;color:#fff;box-shadow:var(--sh);isolation:isolate;}
.act img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .9s cubic-bezier(.2,.7,.3,1);}
.act::after{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(6deg,rgba(16,26,20,.92) 2%,rgba(16,26,20,.28) 52%,rgba(16,26,20,.05) 82%);}
.act:hover img{transform:scale(1.06);}
.act-tx{padding:26px 28px 24px;}
.act-tx .n{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:#C7E39A;font-weight:700;}
.act-tx h3{font-size:1.62rem;margin:.35em 0 .3em;font-weight:600;}
.act-tx p{font-size:.96rem;color:rgba(255,255,255,.86);max-width:40ch;}
.act .go{position:absolute;top:22px;right:22px;width:44px;height:44px;border-radius:50%;
  background:rgba(255,255,255,.16);backdrop-filter:blur(4px);display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.3);transition:.3s;}
.act:hover .go{background:var(--sky);border-color:var(--sky);transform:rotate(0);}
.act .go svg{width:18px;height:18px;}
.act.wide{grid-column:1/-1;min-height:250px;}

/* ============ SIGNATURE ============ */
.sig{padding:clamp(72px,10vw,130px) 0;background:var(--pine);color:#fff;position:relative;overflow:hidden;}
.sig .topo{display:none;}
.sig>*{position:relative;z-index:1;}
.sig .sec-head h2{color:#fff;}
.sig .lead{color:rgba(255,255,255,.82);}
.sig-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,72px);align-items:center;margin-top:clamp(40px,5vw,66px);}
.sig-row+.sig-row{margin-top:clamp(46px,6vw,84px);}
.sig-row:nth-child(even) .sig-media{order:2;}
.sig-media{border-radius:20px;overflow:hidden;box-shadow:var(--sh-lg);}
.sig-media img{width:100%;height:clamp(320px,46vh,480px);object-fit:cover;animation:kenburns2 26s ease-in-out infinite alternate;}
.sig-row:nth-child(3) .sig-media img{animation-delay:-9s;}
.sig-row:nth-child(4) .sig-media img{animation-delay:-18s;}
@keyframes kenburns2{from{transform:scale(1.02)}to{transform:scale(1.13) translate(-1.5%,1.5%)}}
.sig-tx .num{font-family:var(--serif);font-size:1rem;color:var(--sky);font-style:italic;font-weight:700;}
.sig-tx h3{font-size:clamp(1.7rem,3vw,2.5rem);margin:.3em 0 .5em;color:#fff;}
.sig-tx p{color:rgba(255,255,255,.82);max-width:46ch;margin-bottom:1.1rem;}
.sig-tx .feat{display:flex;flex-wrap:wrap;gap:8px 10px;margin:1.2rem 0 1.5rem;}
.sig-tx .feat span{font-size:.82rem;padding:.4em .95em;border:1px solid rgba(255,255,255,.24);border-radius:100px;color:rgba(255,255,255,.9);}
.sig-tx a.txtlink{display:inline-flex;align-items:center;gap:.5em;color:#C7E39A;font-weight:700;border-bottom:2px solid rgba(241,201,160,.4);padding-bottom:3px;transition:.3s;}
.sig-tx a.txtlink:hover{gap:.9em;border-color:#C7E39A;}

/* ============ QUOTE BAND ============ */
.quote{position:relative;color:#fff;text-align:center;padding:clamp(90px,15vw,190px) 0;overflow:hidden;}
.quote-bg{position:absolute;inset:0;z-index:-2;}
.quote-bg img{width:100%;height:100%;object-fit:cover;object-position:center 60%;animation:kenburns 26s ease-in-out infinite alternate;}
@keyframes kenburns{from{transform:scale(1.03)}to{transform:scale(1.16) translate(-1.5%,-2%)}}
.quote-bg::after{content:"";position:absolute;inset:0;background:rgba(18,28,22,.6);}
.quote blockquote{font-family:var(--serif);font-weight:500;font-style:italic;
  font-size:clamp(1.7rem,4.2vw,3.2rem);line-height:1.24;max-width:20ch;margin:0 auto;text-shadow:0 2px 30px rgba(0,0,0,.4);}
.quote .qby{margin-top:1.6rem;font-size:.95rem;letter-spacing:.16em;text-transform:uppercase;color:#C7E39A;}

/* ============ ÉQUIPE ============ */
.team{padding:clamp(72px,11vw,140px) 0;}
.team-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(36px,6vw,80px);align-items:center;}
.team-media{position:relative;}
.team-media img{width:100%;height:clamp(400px,58vh,600px);object-fit:cover;border-radius:22px;box-shadow:var(--sh);}
.team-media .tag{position:absolute;left:-16px;top:34px;background:var(--card);border:1px solid var(--line);
  border-radius:14px;padding:14px 18px;box-shadow:var(--sh);display:flex;align-items:center;gap:12px;}
.team-media .tag svg{width:26px;height:26px;color:var(--ochre);}
.team-media .tag b{font-family:var(--serif);font-size:1rem;display:block;line-height:1.1;}
.team-media .tag span{font-size:.78rem;color:var(--ink-mute);}
.team-tx h2{font-size:clamp(1.9rem,3.6vw,3rem);margin:.5em 0 .1em;}
.team-tx .role{font-family:var(--serif);font-style:italic;font-size:1.2rem;color:var(--ochre-d);margin-bottom:1.2rem;}
.team-tx p{color:var(--ink-soft);margin-bottom:1rem;max-width:56ch;}
.badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:1.5rem;}
.badge{display:flex;align-items:center;gap:9px;font-size:.9rem;font-weight:700;color:var(--pine);
  background:var(--paper-2);border:1px solid var(--line);border-radius:100px;padding:.55em 1.1em;}
.badge svg{width:17px;height:17px;color:var(--ochre);}

/* ============ AVIS ============ */
.avis{padding:clamp(64px,9vw,120px) 0;background:var(--pine-d);color:#fff;}
.avis .sec-head h2{color:#fff;}
.avis-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:14px;}
.avis-c{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:var(--r);padding:30px 28px;}
.avis-c .stars{color:#C7E39A;letter-spacing:2px;font-size:1rem;}
.avis-c p{font-family:var(--serif);font-style:italic;font-size:1.16rem;line-height:1.5;margin:16px 0 22px;color:#fff;}
.avis-c .who{display:flex;align-items:center;gap:13px;}
.avis-c .av{width:44px;height:44px;border-radius:50%;background:var(--ochre);display:grid;place-items:center;
  font-family:var(--serif);font-weight:600;color:#fff;flex:none;}
.avis-c .who b{font-size:.98rem;font-weight:700;}
.avis-c .who span{font-size:.82rem;color:rgba(255,255,255,.6);}
.avis-note{text-align:center;margin-top:34px;font-size:.95rem;color:rgba(255,255,255,.7);}
.avis-note b{color:#C7E39A;}
.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:16px;}
.why-c{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:var(--r);
  padding:26px 26px;display:flex;gap:18px;align-items:flex-start;}
.why-c .ic{width:48px;height:48px;flex:none;border-radius:13px;background:rgba(241,201,160,.14);display:grid;place-items:center;}
.why-c .ic svg{width:24px;height:24px;color:#C7E39A;}
.why-c h3{font-size:1.28rem;color:#fff;margin-bottom:.35em;}
.why-c p{color:rgba(255,255,255,.8);font-size:.98rem;line-height:1.55;}

/* ============ AVIS (témoignages) ============ */
.temoins{padding:clamp(64px,9vw,120px) 0;background:var(--paper);}
.temoins-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:16px;}
.temoin-c{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:28px 26px;box-shadow:var(--sh-sm);}
.temoin-c .stars{color:var(--ochre);letter-spacing:2px;font-size:1rem;}
.temoin-c blockquote{font-size:1.1rem;line-height:1.55;color:var(--ink);margin:14px 0 20px;}
.temoin-c figcaption{display:flex;align-items:center;gap:13px;}
.temoin-c .av{width:44px;height:44px;border-radius:50%;background:var(--pine);color:#fff;display:grid;place-items:center;font-weight:700;flex:none;}
.temoin-c figcaption b{display:block;font-size:.98rem;}
.temoin-c figcaption span{font-size:.82rem;color:var(--ink-mute);}
.temoins-note{text-align:center;margin-top:30px;font-size:.9rem;color:var(--ink-mute);}
.temoins-note b{color:var(--ochre-d);}
@media (max-width:940px){.temoins-grid{grid-template-columns:1fr;}}

/* ============ FAQ ============ */
.faq{padding:clamp(64px,9vw,120px) 0;background:var(--paper-2);}
.faq-list{max-width:830px;margin:0 auto;}
.faq details{border-bottom:1px solid var(--line);}
.faq details:first-child{border-top:1px solid var(--line);}
.faq summary{font-family:var(--serif);font-size:clamp(1.12rem,2.1vw,1.45rem);font-weight:600;color:var(--ink);
  cursor:pointer;list-style:none;padding:24px 48px 24px 0;position:relative;transition:color .25s;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";position:absolute;right:4px;top:calc(24px + .1em);
  font-family:var(--sans);font-size:1.7rem;font-weight:400;color:var(--sky);transition:transform .3s;line-height:1;}
.faq details[open] summary::after{transform:rotate(45deg);}
.faq summary:hover{color:var(--ochre-d);}
.faq details p{color:var(--ink-soft);padding:0 48px 26px 0;max-width:72ch;margin-top:-6px;}
.faq details[open]>p{animation:faqIn .42s cubic-bezier(.2,.7,.3,1);}
.faq details[open] summary{color:var(--sky);}
@keyframes faqIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}

/* ============ CTA ============ */
.cta{padding:clamp(66px,9vw,110px) 0;text-align:center;background:
  radial-gradient(120% 130% at 50% -10%,#356049 0%,var(--pine) 55%);color:#fff;position:relative;overflow:hidden;}
.cta::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:url("/assets/img/topo-footer.svg") center/cover no-repeat;opacity:.5;}
.cta > .wrap{position:relative;z-index:1;}
.cta h2{font-size:clamp(2.1rem,5vw,3.6rem);max-width:18ch;margin:.4em auto .4em;}
.cta p{color:rgba(255,255,255,.82);max-width:48ch;margin:0 auto 2rem;}
.cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
/* ---- Section contact : formulaire de réservation ---- */
.cta-grid{display:grid;grid-template-columns:1fr;gap:clamp(30px,4vw,60px);text-align:left;align-items:center;}
@media(min-width:920px){.cta-grid{grid-template-columns:1fr 1.05fr;}}
.cta-grid h2{margin:.26em 0 .45em;max-width:15ch;}
.cta-grid .cta-intro p{margin:0 0 1.6rem;max-width:44ch;}
.cta-direct{list-style:none;display:flex;flex-direction:column;gap:14px;}
.cta-direct li{display:flex;align-items:center;gap:12px;color:rgba(255,255,255,.88);font-size:.98rem;}
.cta-direct svg{width:20px;height:20px;flex:none;stroke:#C7E39A;}
.cta-direct a{color:#fff;border-bottom:1px solid rgba(199,227,154,.42);transition:border-color .3s;}
.cta-direct a:hover{border-color:#C7E39A;}
.cta-form-wrap{background:var(--card);border-radius:22px;padding:clamp(22px,3vw,38px);box-shadow:var(--sh-lg);}
.cta-form{display:flex;flex-direction:column;gap:16px;}
.cta-form[hidden]{display:none;}
.ff-row{display:grid;grid-template-columns:1fr;gap:16px;}
@media(min-width:560px){.ff-row{grid-template-columns:1fr 1fr;}}
.ff{display:flex;flex-direction:column;min-width:0;}
.ff label{font-size:.8rem;font-weight:700;color:var(--ink-soft);margin-bottom:.42em;}
.ff input,.ff select,.ff textarea{font-family:var(--sans);font-size:.98rem;color:var(--ink);background:#fff;
  border:1.5px solid var(--line);border-radius:12px;padding:.72em .9em;width:100%;
  transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none;}
.ff textarea{resize:vertical;min-height:104px;line-height:1.55;}
.ff select{cursor:pointer;padding-right:2.4em;background-repeat:no-repeat;background-position:right .85em center;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236E7A63' stroke-width='2.4'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");}
.ff input:focus,.ff select:focus,.ff textarea:focus{outline:none;border-color:var(--cta);box-shadow:0 0 0 3px rgba(14,122,60,.14);}
.ff input::placeholder,.ff textarea::placeholder{color:#9AA394;}
.ff.invalid input,.ff.invalid select,.ff.invalid textarea{border-color:#C0392B;box-shadow:0 0 0 3px rgba(192,57,43,.12);}
.ff-err{color:#C0392B;font-size:.78rem;margin-top:.4em;font-weight:600;}
.ff-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden;}
.cta-form-foot{display:flex;flex-direction:column;gap:12px;align-items:flex-start;margin-top:2px;}
.cta-form .ff-note{font-size:.8rem;color:var(--ink-soft);max-width:48ch;line-height:1.5;margin:0;}
.cta-done{text-align:center;padding:clamp(22px,4vw,46px) 8px;animation:ctaDoneIn .5s both;}
.cta-done-ic{width:60px;height:60px;border-radius:50%;background:rgba(14,122,60,.12);display:grid;place-items:center;margin:0 auto 18px;}
.cta-done-ic svg{width:30px;height:30px;stroke:var(--cta);}
.cta-done h3{font-size:1.5rem;color:var(--ink);margin-bottom:.4em;}
.cta-done p{color:var(--ink-soft);max-width:46ch;margin:0 auto;line-height:1.6;font-size:.98rem;}
.cta-done a{color:var(--cta-d);font-weight:700;border-bottom:1px solid rgba(14,122,60,.35);}
@keyframes ctaDoneIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* ============ FOOTER ============ */
.ft{background:var(--pine-d);color:rgba(255,255,255,.72);padding:clamp(56px,7vw,84px) 0 30px;border-top:1px solid rgba(255,255,255,.09);}
.ft-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:36px;}
.ft-brand .brand{color:#fff;margin-bottom:16px;}
.ft-brand .ft-logo{display:inline-block;}
.ft-brand .ft-logo img{height:104px;width:auto;filter:drop-shadow(0 2px 8px rgba(0,0,0,.25));}
.ft-brand p{font-size:.95rem;max-width:32ch;margin-top:4px;}
.ft-soc{display:flex;gap:11px;margin-top:18px;}
.ft-soc a{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.18);
  display:grid;place-items:center;transition:.3s;}
.ft-soc a:hover{background:var(--ochre);border-color:var(--ochre);transform:translateY(-2px);}
.ft-soc svg{width:18px;height:18px;color:#fff;}
.ft h4{font-family:var(--sans);font-weight:700;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:#C7E39A;margin-bottom:16px;}
.ft ul{list-style:none;}
.ft ul li{margin-bottom:10px;}
.ft ul a{font-size:.96rem;transition:color .25s,padding .25s;}
.ft ul a:hover{color:#fff;padding-left:4px;}
.ft-contact li{display:flex;gap:11px;align-items:flex-start;font-size:.96rem;margin-bottom:13px;}
.ft-contact svg{width:18px;height:18px;color:#C7E39A;flex:none;margin-top:3px;}
.ft-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:clamp(40px,5vw,60px);
  padding-top:26px;border-top:1px solid rgba(255,255,255,.1);font-size:.85rem;color:rgba(255,255,255,.5);}
.ft-bottom a{color:rgba(255,255,255,.72);}
.ft-bottom a:hover{color:#C7E39A;}

/* sticky mobile cta */
.mcta{position:fixed;left:14px;right:14px;bottom:14px;z-index:55;display:none;gap:10px;}
.mcta .btn{flex:1;justify-content:center;box-shadow:var(--sh-lg);}

/* ============ MOBILE MENU ============ */
.mmenu{position:fixed;inset:0;background:var(--pine);z-index:65;display:flex;flex-direction:column;
  justify-content:center;padding:40px;opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .38s ease,visibility .38s;}
.mmenu.open{opacity:1;visibility:visible;pointer-events:auto;}
.mmenu a{font-family:var(--serif);font-size:2rem;color:#fff;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.12);}
.mmenu a:last-of-type{border:0;}
.mmenu .btn{margin-top:24px;justify-content:center;}
.mmenu-close{position:absolute;top:24px;right:24px;background:none;border:0;color:#fff;font-size:2rem;cursor:pointer;line-height:1;}
body.lock{overflow:hidden;}

/* ============ RESPONSIVE ============ */
@media (max-width:940px){
  .intro-grid,.sig-row,.team-grid{grid-template-columns:1fr;}
  .sig-row:nth-child(even) .sig-media{order:0;}
  .intro-media{max-width:560px;}
  .team-media{max-width:520px;order:-1;}
  .avis-grid,.why-grid{grid-template-columns:1fr;}
  .ft-grid{grid-template-columns:1fr 1fr;gap:34px;}
  .stats{grid-template-columns:repeat(2,1fr);gap:28px 20px;}
}
@media (max-width:860px){
  .nav-left,.hdr-right{display:none;}
  .burger{display:flex;position:absolute;right:0;top:50%;transform:translateY(-50%);}
  .brand-logo img{height:58px;}
}
@media (max-width:720px){
  .act-grid{grid-template-columns:1fr;}
  .hero-in{padding-top:120px;}
  .scrolldown{display:none;}
  .mcta{display:flex;}
  .ft-grid{grid-template-columns:1fr;}
  .intro-badge{right:12px;}
}

/* ============ DÉTAILS PREMIUM ============ */
/* barre de progression de lecture */
.progress{position:fixed;top:0;left:0;height:3px;width:0;z-index:100;
  background:linear-gradient(90deg,var(--ochre),var(--cta));transition:width .12s linear;}
/* grain très léger (texture papier) */
body::after{content:"";position:fixed;inset:0;z-index:98;pointer-events:none;opacity:.03;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
/* cartes qui se soulèvent au survol */
.act,.why-c,.temoin-c{transition:transform .4s cubic-bezier(.2,.7,.3,1),box-shadow .4s,border-color .4s;}
.act:hover,.temoin-c:hover{transform:translateY(-5px);}
.temoin-c:hover{box-shadow:0 26px 54px -32px rgba(23,36,26,.45);}
.why-c:hover{transform:translateY(-4px);border-color:rgba(199,227,154,.4);background:rgba(255,255,255,.08);}
@media (prefers-reduced-motion:reduce){.progress{display:none;}}
/* fondu doux au chargement */
body{animation:pagein .6s ease both;}
@keyframes pagein{from{opacity:0}}
@media (prefers-reduced-motion:reduce){body{animation:none;}}
/* bouton retour en haut */
.totop{position:fixed;left:22px;bottom:24px;z-index:56;width:48px;height:48px;border-radius:50%;
  background:var(--pine);color:#fff;border:0;cursor:pointer;display:grid;place-items:center;box-shadow:var(--sh);
  opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .3s,visibility .3s,transform .3s,background .3s;}
.totop.show{opacity:1;visibility:visible;transform:none;}
.totop:hover{background:var(--cta);transform:translateY(-3px);}
.totop svg{width:22px;height:22px;}
@media (max-width:720px){.totop{bottom:80px;left:14px;width:44px;height:44px;}}
/* lightbox photos */
.zoomable{cursor:zoom-in;}
.lb{position:fixed;inset:0;z-index:200;background:rgba(9,18,12,.93);display:flex;align-items:center;justify-content:center;
  padding:5vmin;opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s;cursor:zoom-out;}
.lb.open{opacity:1;visibility:visible;}
.lb img{max-width:100%;max-height:100%;border-radius:12px;box-shadow:0 40px 90px -30px rgba(0,0,0,.7);
  transform:scale(.94);transition:transform .4s cubic-bezier(.2,.7,.3,1);}
.lb.open img{transform:scale(1);}
.lb-close{position:absolute;top:20px;right:24px;width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.3);color:#fff;font-size:1.6rem;line-height:1;cursor:pointer;display:grid;place-items:center;transition:.25s;}
.lb-close:hover{background:rgba(255,255,255,.26);transform:rotate(90deg);}
/* traînée d'empreintes de randonnée (desktop) — vraies empreintes de chaussure */
.footprint{position:fixed;z-index:97;pointer-events:none;width:19px;height:22px;
  opacity:.42;transition:opacity 1.5s ease;will-change:opacity;}
.footprint img{width:100%;height:100%;display:block;filter:drop-shadow(0 0 1px rgba(255,255,255,.45));}
/* curseur boussole (desktop) — la boussole EST le curseur, pile sur le pointeur */
@media (hover:hover) and (pointer:fine){html.cur,html.cur *{cursor:none !important;}}
.cur-ring{position:fixed;left:0;top:0;z-index:9999;pointer-events:none;opacity:0;transition:opacity .3s;will-change:transform;}
.cur-ring i{display:block;width:34px;height:34px;margin:-17px 0 0 -17px;
  background:url('/assets/img/cursor-compass.png') center/contain no-repeat;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.22)) drop-shadow(0 0 1.5px rgba(255,255,255,.9));
  transition:transform .3s cubic-bezier(.2,.7,.3,1);}
.cur-ring.hover i{transform:scale(1.55);}
.cur-ring.click i{transform:scale(.8);}

/* ============ WHATSAPP FLOTTANT ============ */
.wa{position:fixed;right:22px;bottom:24px;z-index:56;width:60px;height:60px;border-radius:50%;
  background:#25D366;display:grid;place-items:center;box-shadow:0 12px 30px -8px rgba(37,211,102,.7);
  transition:transform .3s,box-shadow .3s;animation:wapop .5s .8s both;}
.wa:hover{transform:scale(1.08) translateY(-2px);box-shadow:0 16px 34px -8px rgba(37,211,102,.85);}
.wa svg{width:34px;height:34px;fill:#fff;}
.wa::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #25D366;
  animation:wapulse 2.4s ease-out infinite;}
@keyframes wapulse{0%{transform:scale(1);opacity:.6}100%{transform:scale(1.5);opacity:0}}
@keyframes wapop{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}

@media (max-width:720px){
  .wa{bottom:80px;width:54px;height:54px;}
  .wa svg{width:30px;height:30px;}
}

/* ============ GABARIT PAGE INTÉRIEURE ============ */
.lnk.is-active{color:#C7E39A;}
.page-hero{position:relative;display:flex;align-items:flex-end;min-height:clamp(360px,50vh,500px);color:#fff;overflow:hidden;isolation:isolate;}
.page-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;}
.page-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(8,56,31,.58),rgba(8,56,31,.12) 40%,rgba(8,56,31,.85));}
.page-hero .wrap{padding-top:132px;padding-bottom:54px;width:100%;}
.crumb{font-size:.86rem;color:rgba(255,255,255,.8);margin-bottom:16px;}
.crumb a{color:#fff;border-bottom:1px solid rgba(255,255,255,.32);}
.crumb a:hover{border-color:#C7E39A;}
.page-hero h1{font-size:clamp(2.2rem,5vw,3.7rem);max-width:20ch;margin:.08em 0 .34em;line-height:1.03;}
.page-hero .lead{font-size:clamp(1.05rem,1.7vw,1.26rem);max-width:60ch;color:rgba(255,255,255,.92);line-height:1.5;}
.psec{padding:clamp(52px,7vw,98px) 0;}
.psec.alt{background:var(--paper-2);}
.psec-head{max-width:700px;margin-bottom:clamp(28px,3.5vw,46px);}
.psec-head .kicker{margin-bottom:14px;}
.psec-head h2{font-size:clamp(1.7rem,3.4vw,2.6rem);}
.psec-head p{color:var(--ink-soft);margin-top:.55em;max-width:62ch;line-height:1.6;}
.act-grid.cols3{grid-template-columns:repeat(3,1fr);}
a.act{text-decoration:none;color:#fff;}
@media(max-width:960px){.act-grid,.act-grid.cols3{grid-template-columns:1fr;}}

.ul-check{list-style:none;display:grid;gap:15px;margin-top:22px;max-width:760px;}
.ul-check li{position:relative;padding-left:36px;color:var(--ink-soft);line-height:1.6;font-size:1.02rem;}
.ul-check li strong{color:var(--ink);}
.ul-check li::before{content:"";position:absolute;left:0;top:1px;width:23px;height:23px;border-radius:50%;background:rgba(14,122,60,.12) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230E7A3C' stroke-width='3'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") no-repeat center;}

.prose{max-width:760px;}
.prose p{color:var(--ink-soft);line-height:1.75;margin-bottom:1.1rem;font-size:1.06rem;}
.prose p:last-child{margin-bottom:0;}
.prose strong{color:var(--ink);font-weight:700;}

.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.4vw,26px);}
@media(max-width:900px){.price-grid{grid-template-columns:1fr;}}
.price-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:clamp(22px,3vw,30px);box-shadow:var(--sh-sm);display:flex;flex-direction:column;}
.price-card h3{font-size:1.24rem;margin-bottom:.15em;}
.price-card .sub{color:var(--ink-mute);font-size:.86rem;margin-bottom:1.1em;}
.price-card ul{list-style:none;display:grid;gap:.1em;margin-top:auto;}
.price-card li{display:flex;justify-content:space-between;gap:1em;align-items:baseline;padding:.6em 0;border-bottom:1px dashed var(--line-soft);}
.price-card li:last-child{border-bottom:0;}
.price-card li span{color:var(--ink-soft);}
.price-card .p{font-weight:700;color:var(--pine);white-space:nowrap;text-align:right;}
.price-card .p small{font-weight:400;color:var(--ink-mute);}
.price-card .p .from{display:block;font-weight:400;font-size:.62em;letter-spacing:.02em;color:var(--ink-mute);line-height:1;margin-bottom:.2em;}
.price-note{margin-top:clamp(24px,3vw,36px);color:var(--ink-soft);max-width:820px;line-height:1.7;font-size:.98rem;}

/* ---- Slider équipe (animated testimonials, vanilla) ---- */
.team-slider{display:grid;grid-template-columns:.85fr 1fr;gap:clamp(30px,5vw,68px);align-items:center;max-width:1060px;margin:0 auto;}
@media(max-width:820px){.team-slider{grid-template-columns:1fr;gap:28px;}}
.ts-photos{position:relative;height:clamp(360px,44vw,460px);}
.ts-card{position:absolute;inset:0;transition:transform .55s cubic-bezier(.4,0,.2,1),opacity .55s;transform-origin:bottom center;will-change:transform,opacity;}
.ts-card img{width:100%;height:100%;object-fit:cover;border-radius:26px;box-shadow:var(--sh-lg);}
.ts-panel{display:flex;flex-direction:column;min-height:clamp(360px,44vw,460px);padding:6px 0;}
.ts-info{flex:1;}
.ts-name{font-size:clamp(1.7rem,3vw,2.2rem);color:var(--ink);line-height:1.06;}
.ts-role{color:var(--ochre-d);font-weight:700;font-size:.82rem;margin-top:.5em;text-transform:uppercase;letter-spacing:.09em;}
.ts-quote{color:var(--ink-soft);font-size:1.1rem;line-height:1.75;margin-top:1.5em;}
.ts-w{display:inline-block;filter:blur(9px);opacity:0;transform:translateY(5px);transition:filter .3s ease,opacity .3s ease,transform .3s ease;}
.ts-w.in{filter:blur(0);opacity:1;transform:none;}
.ts-arrows{display:flex;gap:12px;margin-top:1.9em;}
.ts-btn{width:46px;height:46px;border-radius:50%;border:1.5px solid var(--line);background:#fff;color:var(--pine);display:grid;place-items:center;cursor:pointer;transition:background .3s,color .3s,border-color .3s,transform .3s;}
.ts-btn:hover{background:var(--cta);border-color:var(--cta);color:#fff;transform:translateY(-2px);}
.ts-btn svg{width:20px;height:20px;}

.tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;}
.tags span{background:var(--card);border:1px solid var(--line);border-radius:100px;padding:.55em 1.15em;font-size:.94rem;color:var(--ink-soft);}

/* ============ FICHE DÉTAILLÉE (séjour / sortie) ============ */
/* Hero — léger zoom sur la vraie photo (mouvement, pas de motif) */
@media(prefers-reduced-motion:no-preference){
  .fiche-hero>img{animation:fiche-kenburns 18s ease-out both;}
}
@keyframes fiche-kenburns{from{transform:scale(1.1)}to{transform:scale(1)}}

/* Barre de faits — carte flottante qui chevauche le hero */
.fiche-facts{position:relative;z-index:3;margin-top:clamp(-38px,-3.6vw,-54px);}
.fiche-facts .wrap{background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:var(--sh);display:grid;grid-template-columns:repeat(auto-fit,minmax(158px,1fr));padding:0;overflow:hidden;}
.fiche-facts .ff-item{display:flex;align-items:center;gap:13px;padding:19px clamp(15px,1.7vw,23px);position:relative;}
.fiche-facts .ff-item+.ff-item::before{content:"";position:absolute;left:0;top:20%;height:60%;width:1px;background:var(--line);}
.fiche-facts .ff-ic{flex:none;width:42px;height:42px;border-radius:12px;background:var(--paper-2);display:grid;place-items:center;}
.fiche-facts .ff-ic svg{width:21px;height:21px;stroke:var(--pine);fill:none;stroke-width:1.9;}
.fiche-facts .ff-tx{min-width:0;}
.fiche-facts .ff-k{display:block;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);font-weight:700;margin-bottom:2px;}
.fiche-facts .ff-v{font-size:1.05rem;font-weight:700;color:var(--ink);line-height:1.12;}
.fiche-facts .ff-v small{display:block;font-weight:400;font-size:.76rem;color:var(--ink-mute);margin-top:1px;}

/* Layout deux colonnes : contenu + aside réservation sticky */
.fiche-body{padding:clamp(46px,5.5vw,80px) 0;}
.fiche-cols{display:grid;grid-template-columns:minmax(0,1fr) 344px;gap:clamp(32px,4vw,64px);align-items:start;}
.fiche-main>section{margin-bottom:clamp(46px,5vw,70px);}
.fiche-main>section:last-child{margin-bottom:0;}
.fiche-main section>.kicker{margin-bottom:.75em;}
.fiche-main h2{font-size:clamp(1.55rem,2.6vw,2.05rem);margin-bottom:.55em;letter-spacing:-.012em;}
.fiche-main .lead-p{color:var(--ink-soft);font-size:1.1rem;line-height:1.75;max-width:64ch;}

/* Sommaire d'ancres — navigation intuitive sur la page */
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth;}}
#itineraire,#en-images,#tarif,#infos{scroll-margin-top:92px;}
.fiche-nav{background:var(--paper);border-bottom:1px solid var(--line);}
.fiche-nav .wrap{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;padding:14px 0;}
.fiche-nav a{font-size:.9rem;font-weight:700;color:var(--pine);padding:.55em 1.3em;border-radius:100px;border:1.5px solid var(--line);background:var(--card);box-shadow:var(--sh-sm);display:inline-flex;align-items:center;gap:7px;transition:transform .18s,background .2s,border-color .2s,color .2s;}
.fiche-nav a::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ochre);transition:background .2s;}
.fiche-nav a:hover{background:var(--pine);border-color:var(--pine);color:#fff;transform:translateY(-2px);}
.fiche-nav a:hover::before{background:#fff;}

/* Itinéraire jour par jour — cartes reliées par une timeline numérotée */
.itin{position:relative;margin-top:30px;padding-left:56px;}
.itin::before{content:"";position:absolute;left:21px;top:20px;bottom:20px;width:2px;background:linear-gradient(var(--ochre),var(--pine));border-radius:2px;}
.itin-day{position:relative;margin-bottom:16px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 26px;box-shadow:var(--sh-sm);transition:transform .25s,box-shadow .25s,border-color .25s;}
.itin-day:last-child{margin-bottom:0;}
.itin-day:hover{transform:translateY(-2px);box-shadow:var(--sh);border-color:var(--ochre);}
.itin-day .d-dot{position:absolute;left:-56px;top:19px;width:44px;height:44px;border-radius:50%;background:var(--pine);color:#fff;display:grid;place-items:center;font-weight:700;font-size:1.04rem;box-shadow:0 0 0 5px var(--paper-2),var(--sh-sm);transition:transform .3s,background .3s;}
.itin-day:hover .d-dot{background:var(--ochre-d);transform:scale(1.1);}
.itin-day h3{font-size:1.22rem;margin:0 0 .6em;letter-spacing:-.01em;}
.itin-day .d-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:.8em;}
.itin-day .d-meta span{display:inline-flex;align-items:center;gap:6px;background:var(--paper-2);color:var(--pine-d);border:1px solid var(--line-soft);border-radius:100px;padding:.32em .9em;font-size:.8rem;font-weight:600;}
.itin-day .d-meta svg{width:14px;height:14px;stroke:var(--ochre-d);fill:none;stroke-width:2;}
.itin-day p{color:var(--ink-soft);line-height:1.72;}
.itin-day .d-plus{display:flex;gap:8px;align-items:flex-start;margin-top:.9em;padding-top:.8em;border-top:1px dashed var(--line);font-size:.88rem;color:var(--ink-mute);font-style:italic;}
.itin-day .d-plus::before{content:"✦";font-style:normal;color:var(--ochre-d);flex:none;}

/* Points forts — cartes à spotlight (glow qui suit le curseur) */
.hi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(236px,1fr));gap:16px;margin-top:24px;}
.hi-grid li{position:relative;overflow:hidden;isolation:isolate;display:flex;flex-direction:column;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:24px 24px;transition:transform .25s,box-shadow .25s,border-color .25s;}
.hi-grid li::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;opacity:0;transition:opacity .35s;background:radial-gradient(240px circle at var(--mx,50%) var(--my,50%),rgba(111,158,26,.18),transparent 68%);}
.hi-grid li:hover{transform:translateY(-4px);box-shadow:var(--sh);border-color:var(--ochre);}
.hi-grid li:hover::before{opacity:1;}
.hi-grid li>svg{flex:none;width:48px;height:48px;padding:12px;border-radius:14px;background:linear-gradient(135deg,#e6efd6,#cfe0b2);stroke:var(--pine);fill:none;stroke-width:1.9;box-sizing:border-box;box-shadow:inset 0 0 0 1px rgba(12,84,50,.06);}
.hi-grid li b{display:block;font-size:1.04rem;margin-bottom:2px;color:var(--ink);}
.hi-grid li span{color:var(--ink-mute);font-size:.89rem;line-height:1.55;}

/* Itinéraire — timeline sticky à progression (recréation vanilla du style Aceternity) */
.tl{position:relative;padding-bottom:20px;}
.tl-track{position:absolute;left:20px;top:6px;bottom:6px;width:2px;background:var(--line);overflow:hidden;
  -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 8%,#000 92%,transparent 100%);
          mask-image:linear-gradient(to bottom,transparent 0,#000 8%,#000 92%,transparent 100%);}
.tl-fill{position:absolute;left:0;top:0;width:100%;height:0;opacity:0;transition:opacity .3s;border-radius:2px;
  background:linear-gradient(to top,var(--pine) 0,var(--ochre) 55%,rgba(111,158,26,0) 100%);}
.tl-row{display:grid;grid-template-columns:minmax(150px,238px) 1fr;gap:clamp(22px,3vw,46px);align-items:start;padding-top:clamp(42px,7vw,120px);}
.tl-row:first-child{padding-top:6px;}
.tl-head{position:sticky;top:112px;align-self:start;display:flex;align-items:center;gap:20px;z-index:2;}
.tl-dot{flex:none;position:relative;width:42px;height:42px;border-radius:50%;background:var(--paper);border:1px solid var(--line);display:grid;place-items:center;box-shadow:var(--sh-sm);}
.tl-dot::after{content:"";width:15px;height:15px;border-radius:50%;background:var(--moss);border:2px solid var(--paper-2);transition:background .3s,transform .3s;}
.tl-row:hover .tl-dot::after{background:var(--ochre-d);transform:scale(1.15);}
.tl-day{font-size:clamp(1.55rem,3.4vw,2.7rem);font-weight:700;line-height:1;color:var(--moss);letter-spacing:-.02em;opacity:.6;transition:opacity .3s,color .3s;}
.tl-row:hover .tl-day{opacity:1;color:var(--pine);}
.tl-body{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:24px 28px;box-shadow:var(--sh-sm);transition:box-shadow .25s,border-color .25s;}
.tl-row:hover .tl-body{box-shadow:var(--sh);border-color:var(--ochre);}
.tl-body h3{font-size:1.2rem;margin:0 0 .6em;letter-spacing:-.01em;}
.tl-body .d-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:.8em;}
.tl-body .d-meta span{display:inline-flex;align-items:center;gap:6px;background:var(--paper-2);color:var(--pine-d);border:1px solid var(--line-soft);border-radius:100px;padding:.32em .9em;font-size:.8rem;font-weight:600;}
.tl-body .d-meta svg{width:14px;height:14px;stroke:var(--ochre-d);fill:none;stroke-width:2;}
.tl-body p{color:var(--ink-soft);line-height:1.72;}
.tl-body .d-plus{display:flex;gap:8px;align-items:flex-start;margin-top:.9em;padding-top:.8em;border-top:1px dashed var(--line);font-size:.88rem;color:var(--ink-mute);font-style:italic;}
.tl-body .d-plus::before{content:"✦";font-style:normal;color:var(--ochre-d);flex:none;}
@media(max-width:760px){
  .tl-track{display:none;}
  .tl-row{grid-template-columns:1fr;gap:14px;padding-top:34px;}
  .tl-head{position:static;top:auto;gap:14px;}
  .tl-day{font-size:1.5rem;opacity:1;color:var(--pine);}
}

/* Comprend / ne comprend pas */
.incl-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:24px;}
.incl-card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:28px 30px;position:relative;overflow:hidden;box-shadow:var(--sh-sm);}
.incl-card::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;}
.incl-card.yes::before{background:linear-gradient(90deg,var(--ochre),var(--cta));} .incl-card.no::before{background:#C56A4E;}
.incl-card h3{font-size:1.12rem;display:flex;align-items:center;gap:11px;margin-bottom:1em;}
.incl-card h3 svg{width:32px;height:32px;padding:7px;border-radius:50%;box-sizing:border-box;stroke-width:2.6;fill:none;}
.incl-card.yes h3{color:var(--cta-d);} .incl-card.yes h3 svg{stroke:var(--cta-d);background:rgba(14,122,60,.12);}
.incl-card.no h3{color:#B4462F;} .incl-card.no h3 svg{stroke:#B4462F;background:rgba(180,70,47,.1);}
.incl-card ul{list-style:none;display:grid;gap:.8em;}
.incl-card li{color:var(--ink-soft);line-height:1.55;padding-left:28px;position:relative;font-size:.95rem;}
.incl-card li::before{position:absolute;left:0;top:0;width:19px;height:19px;border-radius:50%;display:grid;place-items:center;font-size:.72rem;font-weight:700;}
.incl-card.yes li::before{content:"✓";color:var(--cta-d);background:rgba(14,122,60,.13);}
.incl-card.no li::before{content:"–";color:#B4462F;background:rgba(180,70,47,.1);}
.incl-note{margin-top:20px;font-size:.9rem;color:var(--ink-mute);line-height:1.6;}
.incl-note b{color:var(--ink-soft);}

/* Infos pratiques — accordéon natif */
.acc{margin-top:24px;border-top:1px solid var(--line);}
.acc details{border-bottom:1px solid var(--line);}
.acc summary{list-style:none;cursor:pointer;padding:18px 4px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-weight:700;font-size:1.04rem;color:var(--ink);transition:color .2s;}
.acc summary:hover{color:var(--pine);}
.acc summary::-webkit-details-marker{display:none;}
.acc summary .chev{flex:none;width:22px;height:22px;stroke:var(--pine);fill:none;stroke-width:2.2;transition:transform .25s;}
.acc details[open] summary .chev{transform:rotate(180deg);}
.acc .acc-body{padding:0 4px 22px;color:var(--ink-soft);line-height:1.7;}
.acc .acc-body p{margin-bottom:.7em;} .acc .acc-body p:last-child{margin-bottom:0;}
.acc .acc-body ul{list-style:disc;padding-left:1.2em;display:grid;gap:.3em;margin:.4em 0;}

/* Aside réservation sticky */
.fiche-aside{position:sticky;top:100px;}
.book-card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--sh);position:relative;overflow:hidden;}
.book-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--ochre),var(--pine));}
.book-card .bc-price{font-size:2.3rem;font-weight:700;color:var(--pine);line-height:1;letter-spacing:-.02em;}
.book-card .bc-price small{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--ochre-d);margin-bottom:6px;}
.book-card .bc-price .per{font-size:.9rem;font-weight:400;color:var(--ink-mute);letter-spacing:0;}
.book-card .bc-list{list-style:none;display:grid;gap:.75em;margin:22px 0;border-top:1px solid var(--line-soft);padding-top:20px;}
.book-card .bc-list li{display:flex;gap:11px;align-items:flex-start;font-size:.92rem;color:var(--ink-soft);}
.book-card .bc-list svg{flex:none;width:18px;height:18px;stroke:var(--ochre-d);fill:none;stroke-width:2;margin-top:1px;}
.book-card .btn{width:100%;justify-content:center;margin-top:4px;}
.book-card .bc-alt{text-align:center;font-size:.86rem;color:var(--ink-mute);margin-top:13px;}
.book-card .bc-alt a{color:var(--pine);font-weight:600;}

/* Sections pleine largeur, centrées (galerie, prix, infos pratiques) */
.fiche-full{background:var(--paper-2);padding:clamp(46px,5.5vw,80px) 0 clamp(46px,5.5vw,84px);}
.fiche-full>.wrap>section{margin:0 auto clamp(46px,5vw,72px);}
.fiche-full>.wrap>section:last-child{margin-bottom:0;}
.fiche-full h2{text-align:center;font-size:clamp(1.6rem,2.7vw,2.1rem);margin-bottom:.7em;letter-spacing:-.012em;}
.ff-itin{max-width:880px;}
.ff-gallery{max-width:1120px;}
.ff-price{max-width:960px;}
.ff-prat{max-width:820px;}
.ff-price .incl-note{text-align:center;max-width:760px;margin-left:auto;margin-right:auto;}
.ff-price .dates-list{max-width:560px;margin:22px auto 0;}
.ff-price .dates-resa{max-width:560px;margin:20px auto 0;text-align:center;}
.ff-price .dates-resa h3{font-size:1.05rem;margin-bottom:.5em;}
.ff-price .dates-resa ul{list-style:none;display:grid;gap:.5em;}
.ff-price .dates-resa li{color:var(--ink-soft);font-size:.95rem;}
.ff-price .dates-resa a{color:var(--pine);font-weight:600;}

/* Galerie de vraies photos — grille régulière zoomable */
.fiche-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;}
.fiche-gallery .g-cell{position:relative;border-radius:16px;overflow:hidden;box-shadow:var(--sh-sm);aspect-ratio:3/2;}
.fiche-gallery img{width:100%;height:100%;object-fit:cover;display:block;cursor:zoom-in;transition:transform .55s ease;}
.fiche-gallery .g-cell:hover img{transform:scale(1.06);}

/* ===== Fiche — flux de sections cohérent, fonds alternés ===== */
.fsec{padding:clamp(50px,6vw,90px) 0;}
.fsec.alt{background:var(--paper-2);}
.fsec-in{margin:0 auto;}
.fsec-head{text-align:center;margin-bottom:clamp(30px,3.6vw,46px);}
.fsec-head .kicker{display:inline-flex;justify-content:center;}
.fsec-head h2{font-size:clamp(1.7rem,3vw,2.3rem);letter-spacing:-.015em;margin-top:.35em;}
.fsec .lead-p{color:var(--ink-soft);font-size:1.13rem;line-height:1.8;text-align:center;}
.fsec .incl-note{text-align:center;max-width:720px;margin-left:auto;margin-right:auto;}

/* Bloc prix + CTA (intégré à la section Tarif) */
.price-hero{text-align:center;margin-bottom:38px;}
.price-hero .ph-amt{display:flex;flex-direction:column;align-items:center;line-height:1;margin-bottom:20px;}
.price-hero .ph-amt small{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--ochre-d);margin-bottom:9px;}
.price-hero .ph-amt b{font-size:clamp(2.6rem,4vw,3.1rem);font-weight:700;color:var(--pine);letter-spacing:-.02em;}
.price-hero .ph-amt span{font-size:.95rem;color:var(--ink-mute);margin-top:5px;}
.price-hero .ph-quick{margin-top:16px;font-size:.9rem;color:var(--ink-mute);}

/* Dates & réservation (séjours partenaires) */
.dates-intro{text-align:center;color:var(--ink-soft);max-width:620px;margin:0 auto;}
.dates-list{max-width:560px;margin:24px auto 0;}
.dates-resa{max-width:560px;margin:24px auto 0;text-align:center;}
.dates-resa h3{font-size:1.05rem;margin-bottom:.5em;}
.dates-resa ul{list-style:none;display:grid;gap:.5em;}
.dates-resa li{color:var(--ink-soft);font-size:.95rem;}
.dates-resa a{color:var(--pine);font-weight:600;}

@media(max-width:960px){ .incl-grid{grid-template-columns:1fr;} }
@media(max-width:560px){
  .fiche-facts{margin-top:-24px;}
  .fiche-facts .wrap{grid-template-columns:1fr 1fr;}
  .fiche-facts .ff-item:nth-child(odd)::before{display:none;}
}

/* ============ PAGE RÉSERVATION — étapes + rassurance ============ */
.rsv-how{padding:clamp(50px,6vw,84px) 0;}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-top:38px;}
.step{position:relative;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:28px 24px 24px;box-shadow:var(--sh-sm);transition:transform .25s,box-shadow .25s;}
.step:hover{transform:translateY(-4px);box-shadow:var(--sh);}
.step .st-n{position:absolute;top:-15px;left:24px;width:32px;height:32px;border-radius:50%;background:var(--pine);color:#fff;display:grid;place-items:center;font-weight:700;font-size:.92rem;box-shadow:0 0 0 4px var(--paper);}
.step .st-ic{display:block;width:48px;height:48px;padding:12px;border-radius:14px;background:linear-gradient(135deg,#e6efd6,#cfe0b2);margin:6px 0 14px;box-sizing:border-box;box-shadow:inset 0 0 0 1px rgba(12,84,50,.06);}
.step .st-ic svg{width:100%;height:100%;stroke:var(--pine);fill:none;stroke-width:2;}
.step h3{font-size:1.1rem;margin-bottom:.4em;}
.step p{color:var(--ink-mute);font-size:.92rem;line-height:1.56;}
.reassure{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:36px;}
.reassure span{display:inline-flex;align-items:center;gap:8px;background:var(--paper-2);border:1px solid var(--line-soft);border-radius:100px;padding:.55em 1.15em;font-size:.9rem;font-weight:600;color:var(--pine-d);}
.reassure svg{width:16px;height:16px;stroke:var(--cta-d);fill:none;stroke-width:2.6;}

/* ============ Sélecteur de dates (calendrier vanilla) ============ */
.cta-form-wrap{overflow:visible;}
.datepick{position:relative;}
.datepick > input{cursor:pointer;}
.dp-pop{position:absolute;z-index:60;top:calc(100% + 8px);left:0;width:min(342px,90vw);background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--sh-lg);padding:16px;color:var(--ink);}
.dp-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}
.dp-title{font-weight:700;text-transform:capitalize;font-size:1rem;}
.dp-nav{width:34px;height:34px;border-radius:10px;border:1px solid var(--line);background:var(--paper);font-size:1.15rem;line-height:1;color:var(--pine);cursor:pointer;transition:background .2s;}
.dp-nav:hover{background:var(--paper-2);}
.dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;}
.dp-dow span{text-align:center;font-size:.7rem;font-weight:700;color:var(--ink-mute);padding:2px 0 6px;}
.dp-day{aspect-ratio:1;border:0;background:transparent;border-radius:9px;font-size:.9rem;color:var(--ink-soft);cursor:pointer;font-family:inherit;padding:0;}
.dp-day:not(.off):not(.empty):hover{background:var(--paper-2);}
.dp-day.off{color:var(--line);cursor:default;}
.dp-day.empty{cursor:default;background:transparent;}
.dp-day.today{box-shadow:inset 0 0 0 1.5px var(--ochre);}
.dp-day.inrange{background:var(--paper-2);border-radius:0;}
.dp-day.sel{background:var(--pine);color:#fff;font-weight:700;}
.dp-day.sel.start{border-radius:9px 0 0 9px;}
.dp-day.sel.end{border-radius:0 9px 9px 0;}
.dp-day.sel.start.end{border-radius:9px;}
.dp-hint{font-size:.76rem;color:var(--ink-mute);margin-top:10px;text-align:center;}
.dp-foot{display:flex;justify-content:space-between;align-items:center;margin-top:6px;gap:10px;}
.dp-clear{background:transparent;border:0;color:var(--ink-mute);font-weight:600;cursor:pointer;text-decoration:underline;font-family:inherit;font-size:.88rem;}
.dp-ok{padding:.5em 1.3em;font-size:.9rem;}

/* ============ Carte (fiche séjour) ============ */
.fiche-map{border-radius:18px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--sh-sm);aspect-ratio:16/9;background:var(--paper-2);}
.fiche-map iframe{width:100%;height:100%;border:0;display:block;}

/* ============ Rail vertical de navigation (scrollspy) ============ */
.fiche-rail{position:fixed;right:22px;top:50%;transform:translateY(-50%);z-index:40;display:none;flex-direction:column;gap:2px;}
@media(min-width:1200px){ .fiche-rail{display:flex;} .fiche-nav{display:none;} }
.fiche-rail a{display:flex;align-items:center;justify-content:flex-end;gap:11px;padding:8px 0;text-decoration:none;}
.fiche-rail .r-lbl{opacity:0;transform:translateX(8px);transition:opacity .25s,transform .25s;background:var(--card);border:1px solid var(--line);box-shadow:var(--sh-sm);padding:.34em .85em;border-radius:100px;font-size:.82rem;font-weight:700;white-space:nowrap;color:var(--ink-soft);pointer-events:none;}
.fiche-rail a:hover .r-lbl,.fiche-rail a.on .r-lbl{opacity:1;transform:none;}
.fiche-rail a.on .r-lbl{color:var(--pine);border-color:var(--ochre);}
.fiche-rail .r-dot{flex:none;width:11px;height:11px;border-radius:50%;border:2px solid var(--ink-mute);background:transparent;transition:transform .25s,background .25s,border-color .25s;}
.fiche-rail a:hover .r-dot{border-color:var(--pine);}
.fiche-rail a.on .r-dot{background:var(--pine);border-color:var(--pine);transform:scale(1.35);}
/* état actif sur la barre horizontale (mobile) */
.fiche-nav a.on{background:var(--pine);border-color:var(--pine);color:#fff;}
.fiche-nav a.on::before{background:#fff;}

/* ============ Carte Leaflet (fiche séjour) ============ */
.fiche-map.leaflet-map{aspect-ratio:16/9;background:var(--paper-2);}
@media(max-width:600px){.fiche-map.leaflet-map{aspect-ratio:4/3;}}
.leaflet-map .leaflet-control-attribution{font-size:10px;background:rgba(255,255,255,.75);}
.leaflet-map .leaflet-tooltip{font-family:var(--sans);font-weight:600;font-size:.8rem;border:1px solid var(--line);color:var(--ink);box-shadow:var(--sh-sm);}
.lm-pin span{display:block;width:15px;height:15px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--cta);border:2px solid #fff;box-shadow:0 2px 5px rgba(0,0,0,.4);}
.lm-pin.lm-base span{background:var(--pine);width:19px;height:19px;}
.map-note{text-align:center;font-size:.8rem;color:var(--ink-mute);margin-top:14px;}
.map-note a{color:var(--pine);text-decoration:underline;}

/* ============ Profil altimétrique animé (fiche séjour) ============ */
.elev{margin-top:6px;}
.elev svg{width:100%;height:auto;display:block;overflow:visible;}
.elev .ev-base{stroke:var(--line);stroke-width:1;}
.elev .ev-fill{fill:url(#evgrad);opacity:0;transition:opacity 1.4s ease;}
.elev .ev-line{fill:none;stroke:var(--pine);stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round;}
.elev .ev-dot{fill:#fff;stroke:var(--ochre-d);stroke-width:2;}
.elev .ev-day{font-size:12px;fill:var(--ink-mute);font-weight:700;font-family:var(--sans);}
.elev .ev-val{font-size:11px;fill:var(--pine);font-weight:700;font-family:var(--sans);}
.elev .ev-ymax{font-size:11px;fill:var(--ink-mute);font-family:var(--sans);}
