/* Au féminin v3 — 30 octobre 2026.
   Palette : charte SNA 2026 par défaut (papier, brume, vert, herbe). La campagne Octobre rose
   n'existe plus que sous html[data-campaign="octobre-rose"], posée par un script daté.
   Mouvement : 0,4 à 0,6 s, sans rebond ; tout est désactivé sans la classe html.fv-motion. */
:root{--card:#fbfcfa;--fv-ease:cubic-bezier(.22,.61,.36,1);--fv-dur:.5s}

/* ---------- Palette neutre : la couverture redevient un panneau titre vert ---------- */
html:not([data-campaign]) .green,html:not([data-campaign]) .cover.green{background:var(--green);color:var(--paper)}
html:not([data-campaign]) .green .eyebrow:before{background:var(--lime)}
html:not([data-campaign]) .cover figure{background:var(--green)}
html:not([data-campaign]) .cover .btn{background:var(--lime);color:var(--ink)}
html:not([data-campaign]) .cover .btn:hover,html:not([data-campaign]) .cover .btn:focus-visible{background:#e3f4a6}
html:not([data-campaign]) .cover figcaption,html:not([data-campaign]) .cover .cover-foot{color:var(--paper);opacity:.85}
html:not([data-campaign]) .green a{color:inherit}
html:not([data-campaign]) .green a:focus-visible,html:not([data-campaign]) .green button:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
html:not([data-campaign]) .prototype-label,html:not([data-campaign]) .data-area{background:var(--mist)}
html:not([data-campaign]) .video-poster:after{background:linear-gradient(transparent,rgba(24,48,38,.94))}
html:not([data-campaign]) .mp-navigation{scrollbar-color:var(--gray) transparent}
html:not([data-campaign]) .mp-rail{scrollbar-color:var(--gray) transparent}
/* Surtitres : un trait herbe, l'accent du quotidien. */
.chapter-label{display:flex;align-items:center;gap:10px}
.chapter-label:before{content:"";flex:none;width:18px;height:3px;background:var(--lime);border-radius:2px}
.ev-sound .chapter-label:before,.mp-editorial-preview .chapter-label:before{display:none}

/* ---------- En-tête : navigation collante et ligne de lecture ---------- */
.mp-navigation{position:relative;z-index:40;background:var(--paper);box-shadow:0 1px 0 var(--line)}
.mp-navigation.fv-fixed{position:fixed;top:0;left:0;right:0;padding-left:var(--gutter);padding-right:var(--gutter);animation:fv-nav .35s var(--fv-ease)}
@keyframes fv-nav{from{transform:translateY(-100%)}to{transform:none}}
.fv-nav-space{display:none}.fv-nav-space.is-on{display:block}
@supports(backdrop-filter:blur(8px)){.mp-navigation{background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}}
.mp-navigation a{position:relative;transition:color .3s var(--fv-ease)}
.mp-navigation a:after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:2px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--fv-ease)}
.mp-navigation a:hover{text-decoration:none}
.mp-navigation a:hover:after,.mp-navigation a[aria-current="page"]:after{transform:scaleX(1)}
.mp-navigation a[aria-current="page"]{text-decoration:none}
.fv-progress{position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:var(--green);transform:scaleX(var(--fv-progress,0));transform-origin:left;pointer-events:none}

/* ---------- Couverture : le panneau monte, le titre arrive ligne par ligne ---------- */
.cover{position:relative;overflow:hidden}
.fv-motion .mp-home .cover,.fv-motion .mp-portraits .cover{animation:fv-panel .6s var(--fv-ease) both}
.fv-motion .cover .cover-copy>*{opacity:0;animation:fv-up .55s var(--fv-ease) forwards}
.fv-motion .cover .cover-copy>:nth-child(1){animation-delay:.25s}
.fv-motion .cover .cover-copy>:nth-child(2){animation-delay:.3s}
.fv-motion .cover .cover-copy>:nth-child(3){animation-delay:.55s}
.fv-motion .cover .cover-copy>:nth-child(4){animation-delay:.68s}
.fv-motion .cover .cover-copy>:nth-child(5){animation-delay:.8s}
.fv-motion .cover .cover-copy>:nth-child(n+6){animation-delay:.9s}
.fv-line{display:block;overflow:hidden;padding-bottom:.06em;margin-bottom:-.06em}
.fv-line>span{display:block;transform:translateY(110%)}
.fv-motion .fv-line>span{animation:fv-line .55s var(--fv-ease) forwards}
.fv-motion .fv-line:nth-child(1)>span{animation-delay:.35s}
.fv-motion .fv-line:nth-child(2)>span{animation-delay:.47s}
.fv-motion .fv-line:nth-child(3)>span{animation-delay:.59s}
.fv-motion .cover figure>img:not(.photo-logo){animation:fv-photo 1.1s var(--fv-ease) both;will-change:transform}
.fv-motion .cover figure{overflow:hidden}
.cover figure>img:not(.photo-logo){transform:translate3d(0,var(--fv-parallax,0),0) scale(1.02)}
@keyframes fv-panel{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes fv-up{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes fv-line{from{transform:translateY(110%)}to{transform:none}}
@keyframes fv-photo{from{opacity:0;transform:scale(1.06)}to{opacity:1;transform:translate3d(0,var(--fv-parallax,0),0) scale(1.02)}}

/* ---------- Apparitions au défilement ---------- */
.fv-motion [data-fv-reveal]{opacity:0;transform:translateY(18px);transition:opacity .6s var(--fv-ease),transform .6s var(--fv-ease);transition-delay:calc(var(--fv-i,0)*80ms)}
.fv-motion [data-fv-reveal].fv-in{opacity:1;transform:none}
.fv-motion .mag-section-head h2,.fv-motion .collection-header h2,.fv-motion .mp-section-heading h2,.fv-motion .mp-universes h2{clip-path:inset(0 0 100% 0);transition:clip-path .7s var(--fv-ease)}
.fv-motion .mag-section-head.fv-in h2,.fv-motion .collection-header.fv-in h2,.fv-motion .mp-section-heading.fv-in h2,.fv-motion .mp-universes.fv-in h2{clip-path:inset(0 0 -10% 0)}

/* ---------- Cartes : l'angle signature s'ouvre au survol ---------- */
.mp-teaser>figure,.portrait-card-photo,.actual-card-figure,.mag-mother-person figure,.mag-place-media,.ev-photo button{overflow:hidden;border-radius:0 22px 0 0;transition:border-radius .5s var(--fv-ease)}
.mp-teaser>figure img,.portrait-card-photo img,.actual-card-figure img,.mag-mother-person figure img,.ev-photo img{transition:transform .7s var(--fv-ease);display:block}
.fv-motion .mp-teaser:hover>figure,.fv-motion .portrait-card:hover .portrait-card-photo,.fv-motion .actual-card:hover .actual-card-figure,.fv-motion .mag-mother-person:hover figure,.fv-motion .ev-photo:hover button{border-radius:0 52px 0 0}
.fv-motion .mp-teaser:hover>figure img,.fv-motion .portrait-card:hover .portrait-card-photo img,.fv-motion .actual-card:hover .actual-card-figure img,.fv-motion .ev-photo:hover img{transform:scale(1.035)}
.mp-teaser h3 a,.portrait-card h3,.actual-card h3 a{background-image:linear-gradient(var(--green),var(--green));background-repeat:no-repeat;background-size:0 2px;background-position:0 96%;transition:background-size .5s var(--fv-ease)}
.fv-motion .mp-teaser:hover h3 a,.fv-motion .portrait-card:hover h3,.fv-motion .actual-card:hover h3 a{background-size:100% 2px}
.fv-filter-pop{animation:fv-up .45s var(--fv-ease) both}

/* ---------- Rail des portraits : glisser à la main, jauge de position ---------- */
.mp-rail{cursor:grab;scroll-behavior:smooth}
.mp-rail.fv-dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto;user-select:none}
.mp-rail.fv-dragging a,.mp-rail.fv-dragging img{pointer-events:none}
.fv-rail-track{position:relative;height:2px;background:var(--line);margin:4px 0 0}
.fv-rail-thumb{position:absolute;top:-1px;left:0;height:4px;width:var(--fv-thumb,33%);background:var(--green);border-radius:2px;transform:translateX(var(--fv-thumb-x,0));transition:transform .15s linear}
.mp-rail-controls button{transition:transform .35s var(--fv-ease),opacity .3s}
.mp-rail-controls button:not(:disabled):hover{transform:translateX(0) scale(1.04)}

/* ---------- Univers : tuiles qui s'ouvrent ---------- */
.mp-universe{position:relative;display:block;padding:20px 0 24px;border-top:1px solid var(--line);text-decoration:none;color:inherit;transition:padding-left .5s var(--fv-ease)}
.mp-universe:after{content:"";position:absolute;left:0;bottom:-1px;height:3px;width:0;background:var(--lime);transition:width .55s var(--fv-ease)}
.mp-universe h3{display:flex;align-items:center;gap:12px;margin:0 0 6px}
.mp-universe h3:after{content:"";width:22px;height:22px;flex:none;opacity:0;transform:translateX(-8px);transition:opacity .4s var(--fv-ease),transform .4s var(--fv-ease);background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 11h12.2l-4.6-4.6L13 5l7 7-7 7-1.4-1.4 4.6-4.6H4z' fill='%23000'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 11h12.2l-4.6-4.6L13 5l7 7-7 7-1.4-1.4 4.6-4.6H4z' fill='%23000'/%3E%3C/svg%3E") center/contain no-repeat}
.fv-motion .mp-universe:hover,.fv-motion .mp-universe:focus-visible{padding-left:10px}
.mp-universe:hover:after,.mp-universe:focus-visible:after{width:100%}
.mp-universe:hover h3:after,.mp-universe:focus-visible h3:after{opacity:1;transform:none}
.mp-universe p{margin:0;color:var(--gray)}

/* ---------- Lieux & salles : la carte des escales ---------- */
.fv-escales{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,4vw,56px);align-items:start;margin:8px 0 28px}
.fv-map-wrap{position:relative;background:var(--card);border:1px solid var(--line);border-radius:0 44px 0 0;padding:clamp(14px,2vw,26px)}
.fv-map-wrap figcaption{font-size:12px;color:var(--gray);margin-top:10px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.af-map{width:100%;height:auto;display:block}
.af-land path{fill:var(--mist);stroke:var(--paper);stroke-width:.9;transition:fill .45s var(--fv-ease)}
.af-land path.fv-country{fill:#dfe9db}
html[data-campaign] .af-land path.fv-country{fill:#f3c9d8}
.af-land path.fv-country.is-active{fill:var(--lime)}
.fv-pin{cursor:pointer}
.fv-pin circle{fill:var(--green);stroke:var(--paper);stroke-width:2.5;transition:transform .4s var(--fv-ease),fill .3s;transform-box:fill-box;transform-origin:center}
.fv-pin .fv-ring{fill:none;stroke:var(--green);stroke-width:1.5;opacity:0;transform-box:fill-box;transform-origin:center}
.fv-pin.is-active circle{fill:var(--ink);transform:scale(1.25)}
.fv-motion .fv-pin.is-active .fv-ring{animation:fv-ring 1.8s var(--fv-ease) infinite}
.fv-label{font-family:Outfit,Arial,sans-serif;font-size:13px;font-weight:600;fill:var(--ink);paint-order:stroke;stroke:var(--card);stroke-width:4px;stroke-linejoin:round;pointer-events:none;opacity:0;transition:opacity .3s}
.fv-label.is-active,.fv-label.is-hover{opacity:1}
.fv-pin:focus{outline:none}
.fv-pin:focus-visible circle{stroke:var(--lime);stroke-width:4}
@keyframes fv-ring{0%{opacity:.8;transform:scale(1)}100%{opacity:0;transform:scale(3.2)}}
.fv-escales .mag-place-regions{grid-template-columns:1fr;gap:10px;margin:0}
.fv-escales .mag-place-regions a{flex-direction:row;align-items:center;gap:14px;padding:14px 16px;transition:background .3s,transform .4s var(--fv-ease),border-color .3s}
.fv-escales .mag-place-regions a>span:first-child{min-width:135px}
.fv-escales .mag-place-regions a strong{flex:1}
.fv-escales .mag-place-regions a>span:last-child{color:var(--gray);font-size:13px;text-align:right}
.fv-motion .fv-escales .mag-place-regions a:hover,.fv-escales .mag-place-regions a.is-active{transform:translateX(6px);border-color:var(--green)}
.mag-place-card.is-active .mag-place-city{text-decoration:underline;text-decoration-color:var(--lime);text-decoration-thickness:3px;text-underline-offset:4px}
@media(max-width:900px){.fv-escales{grid-template-columns:1fr}.fv-escales .mag-place-regions{grid-template-columns:1fr 1fr}.fv-escales .mag-place-regions a{flex-direction:column;align-items:flex-start;gap:4px}.fv-escales .mag-place-regions a>span:first-child{min-width:0}.fv-escales .mag-place-regions a>span:last-child{text-align:left}}
@media(max-width:620px){.fv-escales .mag-place-regions{grid-template-columns:1fr}}

/* ---------- Santé, nutrition, mères : petits mouvements utiles ---------- */
.ev-food-tabs{position:relative}
.ev-food-tabs:after{content:"";position:absolute;left:0;bottom:0;height:3px;width:var(--fv-tab-w,0);transform:translateX(var(--fv-tab-x,0));background:var(--green);transition:transform .45s var(--fv-ease),width .45s var(--fv-ease);pointer-events:none}
.fv-motion details[open]>.mag-story-body,.fv-motion details[open]>p,.fv-motion details[open]>div{animation:fv-up .45s var(--fv-ease) both}
.fv-motion summary{transition:color .3s}
.ev-sleep-number span{font-variant-numeric:tabular-nums}

/* ---------- Haut de page ---------- */
.fv-top{position:fixed;right:clamp(16px,3vw,32px);bottom:clamp(16px,3vw,32px);z-index:50;width:48px;height:48px;border:0;border-radius:4px 22px 4px 22px;background:var(--lime);color:var(--ink);cursor:pointer;display:grid;place-items:center;box-shadow:0 6px 18px rgba(24,48,38,.14);opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .4s var(--fv-ease),transform .4s var(--fv-ease)}
.fv-top.is-visible{opacity:1;transform:none;pointer-events:auto}
.fv-top:hover{background:#e3f4a6}
.fv-top:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.fv-top svg{width:22px;height:22px;fill:currentColor}

/* ---------- Mouvement réduit : rien ne bouge, tout reste lisible ---------- */
@media(prefers-reduced-motion:reduce){.fv-motion [data-fv-reveal]{opacity:1;transform:none;transition:none}.fv-line>span{transform:none}.cover figure>img:not(.photo-logo){transform:none}.fv-top{transition:none}}
body.no-motion .fv-line>span{transform:none;animation:none}
body.no-motion .cover .cover-copy>*{opacity:1;animation:none}
body.no-motion .cover figure>img:not(.photo-logo){animation:none;transform:none}
body.no-motion [data-fv-reveal]{opacity:1;transform:none}
body.no-motion .mag-section-head h2,body.no-motion .collection-header h2,body.no-motion .mp-section-heading h2,body.no-motion .mp-universes h2{clip-path:none}

/* ======================================================================
   v4 — Le parcours de lecture : Une immersive, sommaire vivant, chapitres, portes, gabarit des rubriques.
   ====================================================================== */
.fv-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.fv-home .mp-intro{display:none}

/* ---------- La Une ---------- */
.fv-une{position:relative;display:grid;grid-template-columns:1fr;min-height:min(88vh,860px);margin:18px 0 0;background:var(--green);color:var(--paper);border-radius:0 72px 0 0;overflow:hidden;isolation:isolate}
.fv-une-photo{position:absolute;inset:0;margin:0;z-index:0}
.fv-une-photo>img:not(.photo-logo){width:100%;height:100%;object-fit:cover;object-position:50% 28%;display:block;transform:translate3d(0,var(--fv-parallax,0),0) scale(1.03)}
.fv-une-photo .photo-logo{position:absolute;top:clamp(18px,3vw,36px);right:clamp(18px,3vw,36px);width:clamp(56px,7vw,88px);height:auto;z-index:2}
.fv-une:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(21,76,54,0) 30%,rgba(21,76,54,.55) 58%,rgba(21,76,54,.96) 100%);pointer-events:none}
.fv-une-copy{position:relative;z-index:2;align-self:end;padding:clamp(28px,5vw,64px) clamp(22px,4.5vw,64px) clamp(26px,4vw,56px);max-width:860px}
.fv-une-kicker{font-size:13px;letter-spacing:.02em;margin:0 0 clamp(60px,14vh,160px);opacity:.9}
.fv-une-kicker>span:first-child{font-family:Barlow,'Arial Narrow',sans-serif;font-size:20px;letter-spacing:0;text-transform:none}
.fv-une-sep{opacity:.6;margin:0 6px}
.fv-une .eyebrow{color:var(--paper);display:flex;align-items:center;gap:10px;font-size:14px;margin:0 0 16px}
.fv-une .eyebrow:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--lime);position:static}
.fv-une-title{font-family:Barlow,'Arial Narrow',sans-serif;font-weight:700;font-size:clamp(46px,7.2vw,112px);line-height:.92;margin:0 0 20px;letter-spacing:-.01em;max-width:14ch}
.fv-une .lede{font-size:clamp(16px,1.5vw,20px);line-height:1.4;max-width:46ch;margin:0 0 26px;opacity:.95}
.fv-une .btn{display:inline-block;background:var(--lime);color:var(--ink);text-decoration:none;font-weight:600;font-size:15px;padding:14px 22px;border-radius:4px 22px 4px 22px;transition:background .3s,transform .4s var(--fv-ease)}
.fv-une .btn:hover{background:#e3f4a6;transform:translateY(-2px)}
.fv-une .btn:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.fv-une-meta{font-size:12px;opacity:.78;margin:26px 0 0}
.fv-scroll{position:absolute;right:clamp(22px,4.5vw,64px);bottom:clamp(26px,4vw,56px);z-index:3;color:var(--paper);text-decoration:none;font-size:12px;display:flex;flex-direction:column;align-items:center;gap:8px;opacity:.85}
.fv-scroll:after{content:"";width:1px;height:38px;background:var(--paper);transform-origin:top}
.fv-motion .fv-scroll:after{animation:fv-cue 1.8s var(--fv-ease) infinite}
@keyframes fv-cue{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.fv-motion .fv-une{animation:fv-panel .7s var(--fv-ease) both}
.fv-motion .fv-une-copy>*{opacity:0;animation:fv-up .6s var(--fv-ease) forwards}
.fv-motion .fv-une-copy>:nth-child(1){animation-delay:.2s}.fv-motion .fv-une-copy>:nth-child(2){animation-delay:.35s}.fv-motion .fv-une-copy>:nth-child(3){animation-delay:.4s}.fv-motion .fv-une-copy>:nth-child(4){animation-delay:.75s}.fv-motion .fv-une-copy>:nth-child(5){animation-delay:.9s}.fv-motion .fv-une-copy>:nth-child(6){animation-delay:1s}
.fv-motion .fv-une-photo>img:not(.photo-logo){animation:fv-photo 1.4s var(--fv-ease) both}
@media(max-width:700px){.fv-une{min-height:0;grid-template-rows:auto auto;border-radius:0 44px 0 0}.fv-une-photo{position:relative;aspect-ratio:4/5;max-height:62vh}.fv-une-photo>img:not(.photo-logo){transform:none}.fv-une:after{display:none}.fv-une-copy{padding:24px 22px 28px}.fv-une-kicker{margin-bottom:22px}.fv-une-title{font-size:clamp(40px,12vw,56px)}.fv-scroll{display:none}}

/* ---------- Le sommaire vivant ---------- */
.fv-chapters{position:sticky;top:0;z-index:35;background:var(--paper);border-bottom:1px solid var(--line);margin:22px 0 0}
@supports(backdrop-filter:blur(8px)){.fv-chapters{background:color-mix(in srgb,var(--paper) 90%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}}
.fv-chapters-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:0;padding-bottom:0}
.fv-chapters ol{list-style:none;margin:0;padding:0;display:flex;gap:clamp(14px,2.4vw,34px);overflow-x:auto;scrollbar-width:none;min-width:0}
.fv-chapters ol::-webkit-scrollbar{display:none}
.fv-chapters li{flex:none}
.fv-chapters a{display:flex;align-items:center;gap:8px;padding:14px 0;text-decoration:none;font-size:14px;font-weight:500;color:var(--gray);position:relative;white-space:nowrap;transition:color .3s}
.fv-chapters a span{font-family:Barlow,'Arial Narrow',sans-serif;font-size:15px;color:var(--green);opacity:.7}
.fv-chapters a:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--fv-ease)}
.fv-chapters a:hover,.fv-chapters a.is-active{color:var(--ink)}
.fv-chapters a.is-active:after,.fv-chapters a:hover:after{transform:scaleX(1)}
.fv-reading{flex:none;font-size:12px;color:var(--gray);margin:0;white-space:nowrap}
.mp-navigation.fv-fixed~.fv-nav-space~*{}
.fv-chapters.fv-below-nav{top:var(--fv-nav-h,54px)}
@media(max-width:700px){.fv-reading{display:none}.fv-chapters a{font-size:13px;padding:12px 0}}

/* ---------- Chapitres ---------- */
.fv-chapter{padding:clamp(44px,6vw,80px) 0 clamp(20px,3vw,36px);scroll-margin-top:118px}
.fv-chapter+.fv-chapter{border-top:1px solid var(--line)}
.fv-2026 .collection-header{margin-bottom:28px}
.fv-home .mp-discover{padding-top:clamp(44px,6vw,80px)}
.fv-rail-count{font-family:Barlow,'Arial Narrow',sans-serif;font-size:22px;color:var(--gray);margin-right:12px;align-self:center}
.fv-rail-count b{color:var(--ink);font-weight:700}
.fv-home .mp-rail-controls{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-bottom:14px}
.fv-home .mp-teaser .portrait-card-photo img{aspect-ratio:3/4;width:100%;object-fit:cover}
.fv-home .mp-teaser .card-summary{font-size:15px;color:var(--ink)}
.fv-home .mp-teaser>a{text-decoration:none;color:inherit;display:block}
.fv-home .mp-teaser>a>span{display:inline-block;margin-top:8px;font-weight:600;font-size:14px;color:var(--green)}

/* Les six portes */
.fv-doors-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.fv-door{position:relative;display:flex;flex-direction:column;text-decoration:none;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:0 34px 0 0;overflow:hidden;transition:transform .5s var(--fv-ease),border-radius .5s var(--fv-ease),box-shadow .5s var(--fv-ease)}
.fv-door-media{display:block;aspect-ratio:16/10;background:var(--mist);overflow:hidden;position:relative}
.fv-door-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s var(--fv-ease)}
.fv-door-figure{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:22px 26px;background:var(--green);color:var(--paper)}
.fv-door-figure b{font-family:Barlow,'Arial Narrow',sans-serif;font-size:clamp(56px,6vw,84px);line-height:.9;font-weight:700}
.fv-door-figure i{font-style:normal;font-size:15px;color:var(--lime);margin-top:6px}
.fv-door-nutrition .fv-door-figure{background:var(--mist);color:var(--ink)}
.fv-door-nutrition .fv-door-figure i{color:var(--green)}
.fv-door-map{position:absolute;inset:0;display:block;background:var(--card)}
.fv-door-map svg{width:100%;height:100%;display:block}
.fv-door-map .af-land path{fill:var(--mist);stroke:var(--card);stroke-width:.8}
.fv-door-map .af-land path.fv-country{fill:#dfe9db}
.fv-door-map circle{fill:var(--green);stroke:var(--card);stroke-width:2}
.fv-door-text{padding:18px 20px 22px;display:block}
.fv-door-n{font-family:Barlow,'Arial Narrow',sans-serif;font-size:14px;color:var(--gray)}
.fv-door h3{font-family:Barlow,'Arial Narrow',sans-serif;font-size:clamp(28px,2.6vw,36px);line-height:1;margin:4px 0 8px;display:flex;align-items:center;gap:10px}
.fv-door h3:after{content:"";width:20px;height:20px;background:currentColor;opacity:0;transform:translateX(-8px);transition:opacity .4s var(--fv-ease),transform .4s var(--fv-ease);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 11h12.2l-4.6-4.6L13 5l7 7-7 7-1.4-1.4 4.6-4.6H4z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 11h12.2l-4.6-4.6L13 5l7 7-7 7-1.4-1.4 4.6-4.6H4z'/%3E%3C/svg%3E") center/contain no-repeat}
.fv-door p{margin:0;font-size:14px;color:var(--gray);line-height:1.5}
.fv-motion .fv-door:hover,.fv-door:focus-visible{transform:translateY(-4px);border-radius:0 52px 0 0;box-shadow:0 14px 30px rgba(24,48,38,.1)}
.fv-door:hover h3:after,.fv-door:focus-visible h3:after{opacity:1;transform:none}
.fv-motion .fv-door:hover .fv-door-media img{transform:scale(1.04)}
@media(max-width:900px){.fv-doors-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:560px){.fv-doors-grid{grid-template-columns:1fr}.fv-door-media{aspect-ratio:16/9}}

/* Où pratiquer sur l'accueil */
.fv-escales-home .mag-place-rendezvous{margin-top:22px}
.fv-escales-home .mag-place-regions a>span:last-child{white-space:normal}

/* L'édito et les rendez-vous */
.fv-edito-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr);gap:clamp(22px,4vw,56px);align-items:center;background:var(--mist);border-radius:0 52px 0 0;padding:clamp(22px,3.5vw,48px)}
.fv-edito-portrait{margin:0;overflow:hidden;border-radius:0 34px 0 0;aspect-ratio:1;max-width:420px}
.fv-edito-portrait img{width:100%;height:100%;object-fit:cover;display:block}
.fv-edito-card h2{font-family:Barlow,'Arial Narrow',sans-serif;font-size:clamp(34px,3.6vw,54px);line-height:.98;margin:0 0 16px}
.fv-edito-card p{font-size:16px;line-height:1.55;max-width:62ch}
.fv-edito-card .btn{display:inline-block;margin-top:10px;background:var(--lime);color:var(--ink);text-decoration:none;font-weight:600;font-size:15px;padding:13px 20px;border-radius:4px 22px 4px 22px}
.fv-edito-card .btn:hover{background:#e3f4a6}
.fv-rdv{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}
.fv-rdv article{border:1px solid var(--line);border-radius:0 28px 0 0;padding:22px 24px;background:var(--card)}
.fv-rdv-day{font-family:Barlow,'Arial Narrow',sans-serif;font-size:30px;color:var(--green);display:block;line-height:1}
.fv-rdv h3{font-size:18px;margin:8px 0 6px}
.fv-rdv p{margin:0;font-size:14px;color:var(--gray);line-height:1.5}
@media(max-width:800px){.fv-edito-card{grid-template-columns:1fr}.fv-edito-portrait{max-width:220px}.fv-rdv{grid-template-columns:1fr}}

/* ---------- Gabarit des rubriques ---------- */
.fv-page-hero{background:var(--green);color:var(--paper);margin:18px var(--gutter) 0;border-radius:0 64px 0 0;padding:clamp(28px,4.5vw,64px) 0 clamp(26px,4vw,52px)}
.fv-page-hero .shell{padding-left:clamp(22px,4.5vw,64px);padding-right:clamp(22px,4.5vw,64px)}
.fv-crumb{font-size:13px;margin:0 0 18px;opacity:.9}
.fv-crumb a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(245,247,243,.5)}
.fv-crumb a:hover{border-color:var(--lime)}
.fv-page-hero h1{font-family:Barlow,'Arial Narrow',sans-serif;font-size:clamp(52px,8vw,120px);line-height:.9;margin:0 0 16px;letter-spacing:-.01em}
.fv-page-desc{font-size:clamp(16px,1.6vw,21px);max-width:46ch;margin:0 0 14px;line-height:1.4}
.fv-page-hero .fv-reading{color:var(--lime);font-size:13px}
.fv-motion .fv-page-hero{animation:fv-panel .6s var(--fv-ease) both}
.fv-motion .fv-page-hero .shell>*{opacity:0;animation:fv-up .55s var(--fv-ease) forwards}
.fv-motion .fv-page-hero .shell>:nth-child(1){animation-delay:.2s}.fv-motion .fv-page-hero .shell>:nth-child(2){animation-delay:.3s}.fv-motion .fv-page-hero .shell>:nth-child(3){animation-delay:.45s}.fv-motion .fv-page-hero .shell>:nth-child(4){animation-delay:.55s}
.fv-section .mp-page-intro{display:none}
.fv-section .fv-chapters{margin-top:0}
.fv-section .fv-chapters[hidden]{display:none}
.fv-section .mag-section,.fv-section .mag-explorer,.fv-section .actual-2026,.fv-section .portrait-collection{scroll-margin-top:120px}
.fv-section [data-fv-anchor]{scroll-margin-top:120px}
.fv-next{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:clamp(30px,5vw,60px) 0 10px;border-top:1px solid var(--line);padding-top:22px}
.fv-next a{text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:6px;padding:20px 22px;border:1px solid var(--line);border-radius:0 28px 0 0;background:var(--card);transition:transform .45s var(--fv-ease),border-color .3s}
.fv-next a span{font-size:12px;color:var(--gray)}
.fv-next a strong{font-family:Barlow,'Arial Narrow',sans-serif;font-size:30px;line-height:1;font-weight:700}
.fv-next-next{text-align:right;align-items:flex-end}
.fv-motion .fv-next a:hover{transform:translateY(-3px);border-color:var(--green)}
@media(max-width:620px){.fv-page-hero{margin:12px 0 0;border-radius:0 40px 0 0}.fv-next{grid-template-columns:1fr}.fv-next-next{text-align:left;align-items:flex-start}}
