/* Experimental V2C: fluorescent bar accents and recycled-rubber flecks. */
.v2c.c-fluo{--fluo:#d9ff25;--accent:#e4e8da;--blue:#293c32;--sky:#e2e8ef;--soft:#eeefea}
.v2c.c-fluo .c-wordmark{display:flex;width:127px;gap:6px;line-height:1;text-decoration:none}
.v2c.c-fluo .c-wordmark strong{display:flex;width:100%;justify-content:space-between;letter-spacing:0}
.v2c.c-fluo .c-wordmark>span{display:flex;width:100%;align-items:center;gap:8px;letter-spacing:0;white-space:nowrap}
.v2c.c-fluo .c-wordmark>span>b{display:flex;justify-content:space-between;font-weight:inherit}
.v2c.c-fluo .c-wordmark>span>b:first-child{flex:6}
.v2c.c-fluo .c-wordmark>span>b:last-child{flex:8}
.v2c.c-fluo .c-wordmark i{font-style:normal}
/* Logo de l'en-tête = celui du pied de page, sans le slogan (Virginie, 02/10) : mêmes proportions,
   ramenées de 239 à 160 px de large (×160/239) — même hauteur totale qu'avant, texte à 8 px.
   Sélecteurs renforcés (.v-brand) : les réglages génériques .v-brand, plus bas, l'emportaient. */
.v2c.c-fluo .v-brand.c-header-logo-final{display:grid;width:160px;grid-template-rows:auto calc(14px * 160 / 239);row-gap:calc(3px * 160 / 239);line-height:1}
.v2c.c-fluo .c-header-logo-final img{display:block;width:100%;height:auto}
.v2c.c-fluo .v-brand.c-header-logo-final>span{display:flex;width:100%;align-items:center;gap:calc(24px * 160 / 239);white-space:nowrap;font-size:calc(12px * 160 / 239);font-weight:750;line-height:1}
.v2c.c-fluo .c-header-logo-final>span>b{display:flex;justify-content:space-between;font-weight:inherit}
.v2c.c-fluo .c-header-logo-final>span>b:first-child{flex:6}
.v2c.c-fluo .c-header-logo-final>span>b:last-child{flex:8}
.v2c.c-fluo .c-header-logo-final i{font-style:normal}
.c-fluo .he-highlight{color:var(--ink);background:linear-gradient(transparent 68%,var(--fluo) 68%,var(--fluo) 94%,transparent 94%);box-decoration-break:clone;-webkit-box-decoration-break:clone}
.v2c.c-fluo .v-cta,.v2c.c-fluo .v-hero .v-cta{background:var(--fluo);color:var(--ink)}
.v2c.c-fluo .v-cta:hover{background:#e5ff68}
.v2c.c-fluo .v-cta svg{background:var(--night);color:var(--fluo)}
.c-fluo .c-hero-board{background-color:var(--night);background-image:url('/m/assets/v2c-fluo/mouchete.svg');background-size:210px 210px;isolation:isolate;padding-bottom:155px}
.c-fluo .c-board-word{position:relative;z-index:2;top:auto;left:auto;width:100%;transform:none;background:var(--night);padding:12px 10px;margin:0;text-shadow:none}
.c-fluo .c-photo-note{position:relative;left:auto;bottom:auto;width:100%;margin-top:10px;padding:11px 14px;background:var(--night);border-radius:0;justify-content:center;white-space:nowrap}
.c-fluo .c-photo-note .c-wave{color:var(--fluo)}
.v2c.c-fluo .c-small-photo{right:-48px;bottom:-72px;width:61%;height:215px;border-color:var(--fluo)}
.c-fluo .c-hero-bottom .c-wave{color:var(--night)}
.v2c.c-fluo .v-ribbon{background:var(--fluo);color:var(--night)}
.v2c.c-fluo .v-ribbon span{font-weight:700}
.v2c.c-fluo .v-ribbon b{color:var(--night)}
.c-fluo .c-title-highlight{background:linear-gradient(transparent 70%,var(--fluo) 70%,var(--fluo) 94%,transparent 94%);box-decoration-break:clone;-webkit-box-decoration-break:clone}
.c-fluo .c-title-block{display:inline;padding:0 .12em .04em;background:var(--fluo);color:var(--ink);box-shadow:.13em .13em 0 var(--night);box-decoration-break:clone;-webkit-box-decoration-break:clone}
.v2c.c-fluo .v-trial-step:nth-child(1){transform:rotate(1.2deg)}
.v2c.c-fluo .v-trial-step:nth-child(3){transform:rotate(-1deg)}
.v2c.c-fluo .c-trial-collage{position:relative;display:grid;grid-template-columns:1.45fr .75fr;grid-template-rows:1fr 1fr;gap:9px;width:min(880px,92%);height:360px;margin:0 auto 78px;padding:11px;border-radius:16px;background:var(--night) url('/m/assets/v2c-fluo/mouchete.svg') center/240px;box-sizing:border-box;transform:rotate(-1.2deg)}
.v2c.c-fluo .c-trial-photo{position:relative;margin:0;overflow:hidden;border-radius:10px;background:var(--night)}
.v2c.c-fluo .c-trial-photo img{display:block;width:100%;height:100%;object-fit:cover}
.v2c.c-fluo .c-trial-photo-main{grid-row:1 / 3}
.v2c.c-fluo .c-trial-photo-main img{object-position:center 63%}
.v2c.c-fluo .c-trial-photo-hug{grid-column:2;grid-row:1}
.v2c.c-fluo .c-trial-photo-hug img{object-position:center 43%}
.v2c.c-fluo .c-trial-photo-energy{grid-column:2;grid-row:2}
.v2c.c-fluo .c-trial-photo-energy img{object-position:center 32%}
.v2c.c-fluo .c-trial-collage>span{position:absolute;left:24px;bottom:14px;padding:10px 16px;background:var(--fluo);box-shadow:5px 5px 0 var(--night);font-size:13px;font-weight:900;letter-spacing:.08em}
.v2c.c-fluo .c-trial-p5{padding:96px 0 100px;overflow:visible;background:var(--paper)}
.v2c.c-fluo .c-trial-p5-grid{display:grid;grid-template-columns:minmax(0,1fr) 620px;gap:80px;align-items:center}
.v2c.c-fluo .c-trial-p5-copy{display:flex;flex-direction:column;min-width:0;text-align:left}
.v2c.c-fluo .c-trial-p5-copy .v-title{margin:0;font-size:40px;font-weight:800;line-height:1.25;letter-spacing:-.025em}
.v2c.c-fluo .c-trial-p5-steps{display:flex;flex-direction:column;gap:28px;margin-top:40px}
.v2c.c-fluo .c-trial-p5-step{display:grid;grid-template-columns:44px minmax(0,1fr);gap:18px;align-items:start}
.v2c.c-fluo .c-trial-p5-step>span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--fluo);color:var(--night);font-size:18px;font-weight:800;line-height:1}
.v2c.c-fluo .c-trial-p5-step h3{color:var(--night);font-size:20px;font-weight:800;line-height:1.2;letter-spacing:-.02em}
.v2c.c-fluo .c-trial-p5-step p{margin-top:6px;color:#4a4b48;font-size:15px;font-weight:400;line-height:1.55}
.v2c.c-fluo .c-trial-p5-copy .v-cta{align-self:flex-start;margin-top:40px}
.v2c.c-fluo .c-trial-p5-visual{position:relative;width:620px;height:560px;border-radius:32px;background:#efefec}
.v2c.c-fluo .c-trial-p5-photo{position:absolute;margin:0;overflow:hidden;border:6px solid var(--paper);border-radius:16px;background:var(--soft);box-sizing:border-box}
.v2c.c-fluo .c-trial-p5-photo img{display:block;width:100%;height:100%;object-fit:cover}
.v2c.c-fluo .c-trial-p5-team{z-index:1;top:-30px;left:28px;width:380px;height:262px;box-shadow:0 20px 40px rgba(32,35,34,.22);transform:rotate(-2.5deg)}
.v2c.c-fluo .c-trial-p5-team img{object-position:50% 55%}
.v2c.c-fluo .c-trial-p5-hug{z-index:2;top:150px;right:-28px;width:250px;height:250px;box-shadow:0 18px 36px rgba(32,35,34,.22);transform:rotate(3deg)}
.v2c.c-fluo .c-trial-p5-hug img{object-position:50% 58%;transform:scale(1.48)}
.v2c.c-fluo .c-trial-p5-bike{z-index:3;bottom:-26px;left:60px;width:330px;height:220px;box-shadow:0 18px 36px rgba(32,35,34,.22);transform:rotate(2deg)}
.v2c.c-fluo .c-trial-p5-wave{position:absolute;z-index:4;top:40px;right:36px;width:66px;height:15px}
.v2c.c-fluo .c-trial-p5-wave path{fill:none;stroke:var(--night);stroke-width:2;stroke-linecap:round}
.v2c.c-fluo .c-trial-p5-label{position:absolute;z-index:5;right:40px;bottom:24px;padding:12px 18px;border-radius:6px;background:var(--fluo);box-shadow:0 12px 24px rgba(32,35,34,.16);color:var(--night);font-size:13px;font-weight:800;line-height:1;letter-spacing:.14em;white-space:nowrap;transform:rotate(-3deg)}
.v2c.c-fluo .c-planning{display:grid;gap:32px}
.v2c.c-fluo .c-planning-filters{display:grid;gap:14px;padding:22px 24px;border-radius:10px;background:var(--night);color:var(--white)}
.v2c.c-fluo .c-planning-filters>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.v2c.c-fluo .c-planning-filters strong{min-width:190px;color:var(--fluo);font-size:11px;letter-spacing:.15em}
.v2c.c-fluo .c-planning-filters button{min-height:38px;padding:8px 13px;border:1px solid #ffffff4d;border-radius:3px;background:transparent;color:var(--white);font-size:11px;font-weight:850;letter-spacing:.05em;cursor:pointer}
.v2c.c-fluo .c-planning-filters button[aria-pressed="true"]{border-color:var(--fluo);background:var(--fluo);color:var(--night)}
.v2c.c-fluo .c-planning-filters button:focus-visible{outline-color:var(--fluo)}
.v2c.c-fluo .c-planning-days{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.v2c.c-fluo .c-plan-day{min-width:0;border:1px solid #2024201f;border-radius:9px;background:var(--soft);overflow:hidden}
.v2c.c-fluo .c-plan-day>h3{padding:16px 18px;background:var(--night);color:var(--white);font-size:18px;letter-spacing:.12em;text-align:center}
.v2c.c-fluo .c-plan-day>div{display:grid;gap:8px;padding:14px}
.v2c.c-fluo .c-plan-slot{display:grid;grid-template-columns:66px 1fr;gap:12px;align-items:center;min-height:55px;padding:10px 12px;border-radius:6px;background:var(--paper)}
.v2c.c-fluo .c-plan-slot time{font-size:12px;font-weight:900}
.v2c.c-fluo .c-plan-slot strong{font-size:13px;line-height:1.2}
.v2c.c-fluo .c-plan-slot[data-family~="wod"]{border-left:6px solid var(--fluo)}
.v2c.c-fluo .c-plan-slot[data-family~="hyrox"]{border-left:6px solid var(--night)}
.v2c.c-fluo .c-plan-slot[data-family~="athx"]{border-left:6px solid #aebdca}
.v2c.c-fluo .c-plan-slot[data-family~="free"]{border-left:6px solid #9cd7b5}
.v2c.c-fluo .c-plan-slot[hidden]{display:none}
.v2c.c-fluo .c-plan-empty{display:none;padding:24px 18px;color:var(--muted);font-size:13px;text-align:center}
.v2c.c-fluo .c-plan-day.is-empty .c-plan-empty{display:block}
.v2c.c-fluo .v-reason:first-child .v-reason-index{color:var(--fluo)}
.v2c.c-fluo .v-reason:first-child:after{background:repeating-linear-gradient(125deg,transparent 0 14px,var(--fluo) 14px 17px);opacity:.85}
.v2c.c-fluo .v-reason:last-child{background:var(--soft);border-top:6px solid var(--fluo)}
.v2c.c-fluo .v2-activity-panel .v2-activity-art{background-color:var(--night);background-image:url('/m/assets/v2c-fluo/mouchete.svg');background-size:210px;color:var(--white)}
.v2c.c-fluo .v2-activity-art:before{border-color:var(--fluo)}
.v2c.c-fluo .v2-activity-art>span{color:var(--fluo)}
.v2c.c-fluo .v2-activity-panel .v2-activity-art svg{color:var(--white)}
.v2c.c-fluo .v2-activity-panel:nth-of-type(even) .v2-activity-art{background-color:var(--night)}
.v2c.c-fluo .c-activity-concepts{margin:100px 0 4px;padding:0;background:transparent;border:0;box-shadow:none}
.v2c.c-fluo .c-concept-intro{max-width:none;margin:0 auto 52px;text-align:center}
.v2c.c-fluo .c-concept-intro h3{margin:0 0 18px;font-size:clamp(30px,2.5vw,42px);line-height:1.14;letter-spacing:-.035em;white-space:nowrap}
.v2c.c-fluo .c-concept-card{position:relative;display:grid;grid-template-columns:minmax(280px,.9fr) minmax(340px,1.1fr);grid-template-rows:auto auto auto 1fr;column-gap:54px;align-items:start;min-width:0;padding:0;background:transparent;border:0;border-radius:0;overflow:visible}
.v2c.c-fluo .c-concept-kicker{color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.13em}
.v2c.c-fluo .c-concept-example{grid-column:1;display:block;margin:0 0 16px}
.v2c.c-fluo .c-concept-example strong{display:block;font-size:20px;line-height:1.25}
.v2c.c-fluo .c-concept-example p{margin:6px 0 0;color:var(--muted);font-size:16px;line-height:1.45}
.v2c.c-fluo .c-concept-tabs{grid-column:1;display:flex;align-items:flex-start;justify-content:flex-start;gap:10px;flex-wrap:wrap;margin:0}
.v2c.c-fluo .c-concept-tabs button,.v2c.c-fluo .c-phone-tabs>label{box-sizing:border-box;display:inline-flex;flex:0 0 auto;align-self:flex-start;align-items:center;justify-content:center;min-height:44px;padding:11px 20px;border:2px solid var(--night);border-radius:3px;background:var(--paper);font-family:inherit;font-size:14px;font-weight:800;line-height:normal;text-transform:uppercase;cursor:pointer;box-shadow:4px 4px 0 var(--night)}
.v2c.c-fluo .c-concept-tabs button.is-active,.v2c.c-fluo .c-phone-tabs>input:checked+label{background:var(--fluo);transform:translate(3px,3px);box-shadow:1px 1px 0 var(--night)}
.v2c.c-fluo .c-level-versions{grid-column:2;grid-row:1 / span 4;display:block;width:100%;max-width:460px;margin:0 0 0 auto;align-self:center}
.v2c.c-fluo .c-level-version{margin:0}
.v2c.c-fluo .c-level-visual{position:relative;width:100%;height:auto;aspect-ratio:4/3;background:var(--night);border-radius:12px;overflow:hidden}
.v2c.c-fluo .c-level-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.v2c.c-fluo .c-level-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 0 60%,#0d0f0d88 100%);pointer-events:none}
.v2c.c-fluo .c-level-visual>b{position:absolute;z-index:2;right:14px;top:8px;color:var(--fluo);font-size:50px;line-height:1;text-shadow:0 2px 12px #000}
.v2c.c-fluo .c-concept-answer{grid-column:1;margin:24px 0 0;padding-left:18px;border-left:5px solid var(--fluo)}
.v2c.c-fluo .c-concept-answer strong{display:block;margin-bottom:7px;font-size:18px}
.v2c.c-fluo .c-concept-answer p{font-size:14px;line-height:1.42}
.v2c.c-fluo .c-health-choices input:focus-visible+label{outline:3px solid var(--blue);outline-offset:4px}
.v2c.c-fluo .v-goal:nth-child(2){background:var(--fluo)}
.v2c.c-fluo .v-goals{overflow:hidden;background-image:linear-gradient(100deg,transparent 0 48%,#ffffff0b 48% 49%,transparent 49% 100%)}
.v2c.c-fluo .v-goals-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:26px;align-items:start;padding:10px 0 46px}
.v2c.c-fluo .v-goal{position:relative;min-height:285px;box-shadow:13px 15px 0 #0d0f0d;padding:40px 42px;overflow:hidden}
.v2c.c-fluo .v-goal:after{position:absolute;right:18px;bottom:-20px;font-size:112px;font-weight:900;line-height:1;color:var(--night);opacity:.07;letter-spacing:-.08em}
.v2c.c-fluo .v-goal:nth-child(1){grid-column:1 / 7;transform:rotate(-1.2deg)}
.v2c.c-fluo .v-goal:nth-child(1):after{content:'01'}
.v2c.c-fluo .v-goal:nth-child(2){grid-column:7 / 13;transform:rotate(1.4deg);margin-top:58px}
.v2c.c-fluo .v-goal:nth-child(2):after{content:'02'}
.v2c.c-fluo .v-goal:nth-child(3){grid-column:2 / 8;transform:rotate(1deg);margin-top:-18px}
.v2c.c-fluo .v-goal:nth-child(3):after{content:'03'}
.v2c.c-fluo .v-goal:nth-child(4){grid-column:8 / 13;transform:rotate(-1.3deg);margin-top:40px}
.v2c.c-fluo .v-goal:nth-child(4):after{content:'04'}
.v2c.c-fluo .v-goal-symbol{position:relative;z-index:1}
.v2c.c-fluo .v-goal-symbol svg{display:block;width:52px;height:52px;stroke-width:2.2}
.v2c.c-fluo .v-coach:nth-child(2)>div:last-child,.v2c.c-fluo .v-coach:nth-child(4)>div:last-child{background:var(--fluo);color:var(--ink)}
.v2c.c-fluo .v-coaches-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.v2c.c-fluo .v-coach,.v2c.c-fluo .v-coach:nth-child(2){padding-top:0}
.v2c.c-fluo .v-coach .photo-slot{padding:0}
.v2c.c-fluo .v-coach .photo-slot:before,.v2c.c-fluo .v-coach .photo-slot:after{display:none}
.v2c.c-fluo .v-coach .photo-slot img{display:block;width:100%;height:100%;object-fit:cover}
.v2c.c-fluo .v-coach>div:last-child{min-height:110px}
.v2c.c-fluo .c-coach-role{display:block;font-size:10px;font-weight:800;line-height:1.35;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;opacity:.82}
.v2c.c-fluo .v-contact{display:grid;gap:8px}
.v2c.c-fluo .v-contact>div{display:flex;align-items:center;gap:14px;margin:10px 0}
.v2c.c-fluo .v-contact>div>span{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid var(--night);border-radius:50%;background:#fff;box-shadow:3px 3px 0 var(--fluo)}
.v2c.c-fluo .v-contact>div>span svg{width:17px;height:17px;stroke-width:1.8}
.v2c.c-fluo .v-contact a{text-decoration:none}
.v2c.c-fluo .v-contact a:hover{text-decoration:underline;text-underline-offset:3px}
.v2c.c-fluo .c-map-card{display:block;position:relative;overflow:hidden;background:var(--soft);color:var(--ink)}
.v2c.c-fluo .c-map-card :is(iframe,:where(.c-carte-plan)){display:block;width:100%;height:100%;min-height:430px;border:0}
.v2c.c-fluo .v-coach .v-missing{color:var(--fluo)}
.v2c.c-fluo .v-coach:nth-child(2) .v-missing,.v2c.c-fluo .v-coach:nth-child(4) .v-missing{color:var(--ink)}
.v2c.c-fluo .v-health{background:var(--soft)}
.v2c.c-fluo .v-health-grid .v-title{margin-bottom:45px}
.c-fluo .v-health-symbol{position:relative;isolation:isolate}
.c-fluo .v-health-symbol:before{content:'';position:absolute;inset:-12px auto auto -14px;width:105px;height:105px;background:var(--fluo);border-radius:50%;z-index:-1}
.v2c.c-fluo .c-health-stack{display:grid;gap:18px;padding:12px 10px 20px}
.v2c.c-fluo .c-health-card{border:0;border-radius:7px;background:var(--paper);box-shadow:10px 10px 0 var(--night);overflow:hidden;transform:rotate(-1deg)}
.v2c.c-fluo .c-health-card:nth-child(2){background:var(--fluo);transform:rotate(1.2deg)}
.v2c.c-fluo .c-health-card:nth-child(3){background:var(--sky);transform:rotate(-.6deg)}
.v2c.c-fluo .c-health-card summary{display:grid;grid-template-columns:54px 1fr 82px;gap:17px;align-items:center;padding:18px 22px;list-style:none;cursor:pointer}
.v2c.c-fluo .c-health-card summary::-webkit-details-marker{display:none}
.v2c.c-fluo .c-health-card summary>span{font-size:34px;font-weight:900;line-height:1;color:var(--night);opacity:.25}
.v2c.c-fluo .c-health-card summary small{display:block;margin-bottom:3px;font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.v2c.c-fluo .c-health-card summary h3{font-size:25px}
.v2c.c-fluo .c-health-more{display:grid;justify-items:center;gap:2px;color:var(--night);font-size:inherit;opacity:.7}
.v2c.c-fluo .c-health-more svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.v2c.c-fluo .c-health-more small{margin:0;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.v2c.c-fluo .c-health-card[open] .c-health-more small{font-size:0}
.v2c.c-fluo .c-health-card[open] .c-health-more small:after{content:'Réduire';font-size:9px}
.v2c.c-fluo .c-health-card>p{padding:0 28px 26px 93px;font-size:16px}
.v2c.c-fluo .c-health-chooser{position:relative;z-index:2;margin-top:-64px;padding:0 0 80px;background:linear-gradient(to bottom,transparent 0 64px,var(--paper) 64px)}
.v2c.c-fluo .c-health-drawer{background:var(--paper);box-shadow:11px 11px 0 var(--night)}
.v2c.c-fluo .c-health-drawer>summary{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:22px 28px;border:2px solid var(--night);list-style:none;cursor:pointer}
.v2c.c-fluo .c-health-drawer>summary::-webkit-details-marker{display:none}
.v2c.c-fluo .c-health-drawer>summary span strong,.v2c.c-fluo .c-health-drawer>summary span small{display:block}
.v2c.c-fluo .c-health-drawer>summary span strong{font-size:21px}
.v2c.c-fluo .c-health-drawer>summary span small{margin-top:3px;color:var(--muted)}
.v2c.c-fluo .c-health-drawer>summary>b{padding:12px 16px;background:var(--fluo);font-size:12px;letter-spacing:.08em;box-shadow:4px 4px 0 var(--night)}
.v2c.c-fluo .c-health-drawer[open]>summary>b{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--night)}
.v2c.c-fluo .c-health-chooser-box{padding:38px 34px 32px;border:2px solid var(--night);border-top:0;background:#f4faf7}
.v2c.c-fluo .c-health-chooser h2{text-align:left;font-size:30px}
.v2c.c-fluo .c-health-choices{display:grid;grid-template-columns:1fr 1fr;gap:30px 44px;margin-top:26px}
.v2c.c-fluo .c-health-choices fieldset{display:flex;flex-wrap:wrap;align-content:flex-start;gap:10px;margin:0;padding:0;border:0}
.v2c.c-fluo .c-health-choices legend{width:100%;margin-bottom:4px;color:#787b75;font-size:11px;font-weight:900;letter-spacing:.15em}
.v2c.c-fluo .c-health-choices input{position:absolute;opacity:0;pointer-events:none}
.v2c.c-fluo .c-health-choices label{padding:11px 14px;border:2px solid transparent;background:var(--paper);font-size:13px;font-weight:800;cursor:pointer}
.v2c.c-fluo .c-health-choices input:checked+label{border-color:var(--night);background:var(--fluo);box-shadow:4px 4px 0 var(--night)}
.v2c.c-fluo .c-health-match{grid-column:1/-1;display:none;flex-wrap:wrap;gap:12px;margin-top:4px;padding:22px 24px;background:var(--night);color:var(--white)}
.v2c.c-fluo .c-health-match>small,.v2c.c-fluo .c-health-match>p{flex:0 0 100%;margin:0}
.v2c.c-fluo .c-health-match>small{color:var(--fluo);font-weight:900;letter-spacing:.15em}
.v2c.c-fluo .c-health-match article{display:none;flex:1 1 260px;padding:16px;background:#303532}
.v2c.c-fluo .c-health-match article strong,.v2c.c-fluo .c-health-match article span{display:block}
.v2c.c-fluo .c-health-match article strong{margin-bottom:5px;font-size:20px}
.v2c.c-fluo .c-health-match>p{color:#d4d6d1;font-size:12px}
.v2c.c-fluo .c-health-drawer:has(input[name="health-primary"]:checked):has(input[name="health-goal"]:checked) .c-health-match{display:flex}
.v2c.c-fluo .c-health-drawer:has(#health-primary-drainage:checked) .service-drainage,.v2c.c-fluo .c-health-drawer:has(#health-goal-relief:checked) .service-drainage,.v2c.c-fluo .c-health-drawer:has(#health-primary-chinese:checked) .service-chinese,.v2c.c-fluo .c-health-drawer:has(#health-goal-balance:checked) .service-chinese,.v2c.c-fluo .c-health-drawer:has(#health-primary-nutrition:checked) .service-nutrition,.v2c.c-fluo .c-health-drawer:has(#health-goal-habits:checked) .service-nutrition{display:block}
.v2c.c-fluo .c-phone-objections{background:var(--paper)}
.v2c.c-fluo .c-phone-objections .v-title,.v2c.c-fluo .c-phone-objections .v-hint{text-align:center;margin-left:auto;margin-right:auto}
.v2c.c-fluo .c-phone-tabs{position:relative;display:flex;align-items:flex-start;justify-content:center;gap:10px;flex-wrap:wrap;padding-top:10px}
.v2c.c-fluo .c-phone-tabs:after{content:'';order:5;flex:0 0 100%;height:0}
.v2c.c-fluo .c-phone-tabs>input{position:absolute;opacity:0;pointer-events:none}
.v2c.c-fluo .c-phone-shell{order:10;flex:0 0 100%;width:min(100%,455px);max-width:455px;min-width:0;margin:28px auto 0;border:12px solid var(--night);border-radius:42px;background:var(--paper);box-shadow:18px 18px 0 var(--fluo);overflow:hidden}
.v2c.c-fluo .c-phone-top{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;padding:13px 16px;background:var(--night);color:var(--white);font-size:13px}
.v2c.c-fluo .c-phone-top strong{display:flex;flex-direction:column;width:86px;line-height:1;font-size:15px;letter-spacing:.17em;text-align:left}
.v2c.c-fluo .c-phone-top small{display:block;width:100%;margin-top:4px;font-size:6px;letter-spacing:.23em;white-space:nowrap}
.v2c.c-fluo .c-phone-top em{color:var(--fluo);font-style:normal;font-size:11px}
.v2c.c-fluo .c-phone-screen{min-height:510px;padding:18px;background:linear-gradient(135deg,#f7f6ef,#e8eadf)}
.v2c.c-fluo .c-phone-thread{display:none}
.v2c.c-fluo .c-phone-thread time{display:block;width:max-content;margin:0 auto 18px;padding:5px 12px;background:#dedfd7;border-radius:20px;font-size:10px;font-weight:800;letter-spacing:.1em}
.v2c.c-fluo .c-phone-thread h3,.v2c.c-fluo .c-phone-thread p{max-width:88%;padding:14px 16px;border-radius:16px;font-size:15px;line-height:1.42;box-shadow:0 2px 4px #00000012}
.v2c.c-fluo .c-phone-thread h3{margin-right:auto;max-width:100%;background:var(--paper);font-size:16px}
.v2c.c-fluo .c-phone-thread p{margin:10px 0 0 auto;background:var(--night);color:var(--white)}
.v2c.c-fluo #phone-forme:checked~.c-phone-shell .c-thread-forme,.v2c.c-fluo #phone-budget:checked~.c-phone-shell .c-thread-budget,.v2c.c-fluo #phone-age:checked~.c-phone-shell .c-thread-age,.v2c.c-fluo #phone-blessure:checked~.c-phone-shell .c-thread-blessure{display:block}
.v2c.c-fluo .c-phone-compose{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:12px;padding:9px 10px 9px 18px;background:var(--soft);border-radius:24px;color:var(--muted);font-size:13px}
.v2c.c-fluo .c-phone-compose b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--fluo);color:var(--night)}
.v2c.c-fluo .v-results{position:relative;background:var(--sky);background-image:linear-gradient(115deg,#ffffff55 0 38%,transparent 38% 100%);color:var(--ink);overflow:visible}
.v2c.c-fluo .v-results .v-title{position:relative;z-index:1;max-width:none;white-space:nowrap}
.v2c.c-fluo .c-results-chapters{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:38px}
.v2c.c-fluo .c-results-chapters>article{background:var(--paper);box-shadow:12px 12px 0 var(--night)}
.v2c.c-fluo .c-results-chapters>article:nth-child(2){transform:translateY(45px)}
.v2c.c-fluo .c-results-chapters header{padding:26px 28px;background:var(--night);color:var(--white)}
.v2c.c-fluo .c-results-chapters article:nth-child(2) header{background:var(--fluo);color:var(--night)}
.v2c.c-fluo .c-results-chapters header span,.v2c.c-fluo .c-results-chapters header strong,.v2c.c-fluo .c-results-chapters header small{display:block}
.v2c.c-fluo .c-results-chapters header span{font-size:10px;font-weight:900;letter-spacing:.2em;color:var(--fluo)}
.v2c.c-fluo .c-results-chapters article:nth-child(2) header span{color:var(--night)}
.v2c.c-fluo .c-results-chapters header strong{margin:5px 0 2px;font-size:30px;line-height:1.05}
.v2c.c-fluo .c-results-chapters header small{font-size:13px;opacity:.72}
.v2c.c-fluo .c-results-chapters article>div{padding:8px 28px 14px}
.v2c.c-fluo .c-results-chapters section{display:grid;grid-template-columns:92px 1fr;gap:20px;padding:19px 0;border-bottom:1px solid #d9dcd5}
.v2c.c-fluo .c-results-chapters section:last-child{border-bottom:0}
.v2c.c-fluo .c-results-chapters section>b{font-size:14px;letter-spacing:.05em;text-transform:uppercase}
.v2c.c-fluo .c-results-chapters section p{font-size:15px;line-height:1.42}
.v2c.c-fluo .c-progress-note{position:relative;z-index:1;margin:78px 0 0;padding:14px 18px;background:var(--night);color:var(--fluo);font-weight:800;font-size:13px;text-align:center;text-transform:uppercase;letter-spacing:.1em}
.v2c.c-fluo .c-google-score{display:flex;align-items:baseline;gap:14px;margin:28px 0 30px}
.v2c.c-fluo .c-google-score strong{font-size:48px;line-height:1;letter-spacing:-.05em}
.v2c.c-fluo .c-stars{color:#e2aa00;font-size:24px;line-height:1;letter-spacing:.08em}
.v2c.c-fluo .c-review-card:nth-child(3n + 2) .c-stars,.v2c.c-fluo .c-review-card:nth-child(3n) .c-stars{color:var(--night)}
.v2c.c-fluo .c-review-card:nth-child(3n) .c-stars{color:var(--fluo)}
.v2c.c-fluo .c-google-score>span:last-child{color:var(--muted);font-weight:700}
.v2c.c-fluo .c-review-carousel{position:relative}
.v2c.c-fluo .c-google-reviews{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:3px 10px 14px 0}
.v2c.c-fluo .c-google-reviews::-webkit-scrollbar{display:none}
.v2c.c-fluo .c-review-card{flex:0 0 calc((100% - 24px)/2);min-height:255px;padding:30px;display:flex;flex-direction:column;background:var(--soft);border-radius:8px;box-shadow:10px 10px 0 var(--night);scroll-snap-align:start}
.v2c.c-fluo .c-review-card:nth-child(3n + 2){background:var(--fluo);transform:rotate(1.1deg)}
.v2c.c-fluo .c-review-card:nth-child(3n){position:relative;isolation:isolate;background:var(--night);background-image:url('/m/assets/v2c-fluo/mouchete.svg');background-size:210px;color:var(--white);transform:rotate(-.8deg)}
.v2c.c-fluo .c-review-card:nth-child(3n):before{content:'';position:absolute;inset:0;z-index:-1;background:#090b09b8;border-radius:8px}
.v2c.c-fluo .c-review-card blockquote{margin:24px 0 30px;font-size:24px;line-height:1.25;font-weight:750;letter-spacing:-.02em}
.v2c.c-fluo .c-review-card>div{display:flex;flex-direction:column;gap:2px;margin-top:auto}
.v2c.c-fluo .c-review-card>div span{font-size:13px;color:var(--muted)}
.v2c.c-fluo .c-review-card:nth-child(3n)>div span{color:#d8d8d2}
.v2c.c-fluo .c-review-nav{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:22px;font-weight:800}
.v2c.c-fluo .c-review-nav>div{display:flex;gap:8px}
.v2c.c-fluo .c-review-nav button{width:46px;height:42px;border:1px solid var(--night);background:var(--paper);box-shadow:4px 4px 0 var(--night);font:800 21px/1 inherit;cursor:pointer}
.v2c.c-fluo .c-review-nav button:last-child{background:var(--fluo)}
.v2c.c-fluo .c-review-nav button:focus-visible{outline:3px solid #1670ff;outline-offset:3px}
.v2c.c-fluo .c-google-link{display:inline-block;margin-top:34px;font-weight:800;text-underline-offset:5px}
.v2c.c-fluo .v-room-grid{align-items:stretch}
.v2c.c-fluo .v-room-text>div{margin:11px 0;padding:17px 18px;border:1px solid #ffffff1f;border-radius:7px;background:#2b302d}
.v2c.c-fluo .v-room-text>div:nth-child(2){background:var(--fluo);color:var(--night);transform:rotate(.6deg)}
.v2c.c-fluo .v-room-text>div:nth-child(4){background:var(--sky);color:var(--night);transform:rotate(-.6deg)}
.v2c.c-fluo .v-room-text>div:nth-child(2) svg,.v2c.c-fluo .v-room-text>div:nth-child(4) svg{color:var(--night)}
.v2c.c-fluo .c-room-carousel{position:relative;min-height:100%;overflow:hidden;border-radius:12px;background:var(--night)}
.v2c.c-fluo .c-room-track{position:absolute;inset:0}
.v2c.c-fluo .c-room-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .35s ease}
.v2c.c-fluo .c-room-slide.is-active{opacity:1;visibility:visible}
.v2c.c-fluo .c-room-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.v2c.c-fluo .c-room-slide:first-child img{object-position:center 48%}
.v2c.c-fluo .c-room-nav{position:absolute;z-index:2;right:16px;bottom:16px;display:flex;align-items:center;padding:7px 8px;border-radius:999px;background:#fffefae8;color:var(--night);font-size:12px;font-weight:850;backdrop-filter:blur(8px)}
.v2c.c-fluo .c-room-nav>div{display:flex;gap:6px}
.v2c.c-fluo .c-room-nav button{display:grid;place-items:center;width:36px;height:34px;border:0;border-radius:50%;background:var(--night);color:var(--fluo);font-weight:900;cursor:pointer}
.v2c.c-fluo .c-room-nav button:last-child{background:var(--fluo);color:var(--night)}
.v2c.c-fluo .v-closing{overflow:hidden;border-top:10px solid var(--fluo);border-radius:70px 0 0 0;background:var(--soft)}
.v2c.c-fluo .c-site-footer{padding:76px 0 34px;background-color:var(--night);background-image:linear-gradient(rgba(0,0,0,.32),rgba(0,0,0,.32)),url('/m/assets/v2c-fluo/mouchete.svg');background-size:auto,210px;color:var(--white)}
.v2c.c-fluo .c-footer-grid{display:grid;grid-template-columns:270px 1fr .8fr .8fr;column-gap:110px;row-gap:56px}
.v2c.c-fluo .c-footer-grid>div{min-width:0}
.v2c.c-fluo .c-footer-grid h2{margin:0 0 16px;color:var(--fluo);font-size:13px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}
.v2c.c-fluo .c-footer-grid a{display:block;color:#e4e8da;font-size:15px;line-height:1.9;text-decoration:none}
.v2c.c-fluo .c-footer-grid a:hover{color:var(--fluo)}
.v2c.c-fluo .c-footer-logo-custom{display:grid;width:260px;max-width:100%;aspect-ratio:316/137;padding:5px 0 8px;grid-template-rows:48px 20px 13px;align-content:space-between;color:#fff;font-family:inherit;line-height:1;text-decoration:none}
.v2c.c-fluo .c-footer-logo-custom strong,.v2c.c-fluo .c-footer-logo-custom>span,.v2c.c-fluo .c-footer-logo-custom small{display:flex;width:100%;align-items:center}
.v2c.c-fluo .c-footer-logo-custom strong{justify-content:space-between;font-size:48px;font-weight:900;letter-spacing:0}
.v2c.c-fluo .c-footer-logo-custom>span{gap:13px;font-size:20px;font-weight:850}
.v2c.c-fluo .c-footer-logo-custom>span>b{display:flex;justify-content:space-between;font-weight:inherit}
.v2c.c-fluo .c-footer-logo-custom>span>b:first-child{flex:6}
.v2c.c-fluo .c-footer-logo-custom>span>b:last-child{flex:8}
.v2c.c-fluo .c-footer-logo-custom small{justify-content:space-between;font-size:11px;font-weight:650;letter-spacing:-.02em;white-space:nowrap}
.v2c.c-fluo .c-footer-logo-custom small b{font-weight:inherit}
.v2c.c-fluo .c-footer-logo-custom i{font-style:normal}
.v2c.c-fluo .c-footer-grid .c-footer-logo-final{display:grid;width:239px;max-width:100%;grid-template-rows:auto 14px;row-gap:3px;color:#fff;font-family:inherit;line-height:1;text-decoration:none}
.v2c.c-fluo .c-footer-logo-final img{display:block;width:100%;height:auto}
.v2c.c-fluo .c-footer-logo-final>span{display:flex;width:100%;align-items:center;line-height:1}
.v2c.c-fluo .c-footer-logo-final>span{gap:24px;font-size:12px;font-weight:750}
.v2c.c-fluo .c-footer-logo-final>span>b{display:flex;justify-content:space-between;font-weight:inherit}
.v2c.c-fluo .c-footer-logo-final>span>b:first-child{flex:6}
.v2c.c-fluo .c-footer-logo-final>span>b:last-child{flex:8}
.v2c.c-fluo .c-footer-logo-final i{font-style:normal}
.v2c.c-fluo .c-footer-brand>.c-footer-slogan{width:max-content;max-width:100%;margin:7px 0 0;color:var(--fluo);font-size:14px;font-weight:500;line-height:1.3;white-space:nowrap;word-spacing:normal}
.v2c.c-fluo .c-footer-brand>.c-footer-intro{max-width:32ch;margin-top:18px;color:#c8cdc5;font-size:14px;line-height:1.55}
.v2c.c-fluo .c-footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:46px;padding-top:22px;border-top:1px solid #ffffff26;color:#c8cdc5;font-size:13px}
.v2c.c-fluo .c-footer-bottom a{color:inherit;text-underline-offset:4px}
@media(max-width:1050px){.v2c.c-fluo .c-footer-grid{grid-template-columns:1fr 1fr;gap:44px 70px}}
@media(max-width:560px){.v2c.c-fluo .c-site-footer{padding:58px 0 28px}.v2c.c-fluo .c-footer-grid{grid-template-columns:1fr;gap:38px}.v2c.c-fluo .c-footer-logo-custom{width:260px}.v2c.c-fluo .c-footer-bottom{align-items:flex-start;flex-direction:column;margin-top:40px}}
@media(prefers-reduced-motion:reduce){.v2c.c-fluo .c-room-slide{transition:none}}
@media(max-width:850px){.v2c.c-fluo .c-map-card :is(iframe,:where(.c-carte-plan)){min-height:360px}.v2c.c-fluo .v-goals-grid{display:grid;grid-template-columns:1fr 1fr}.v2c.c-fluo .v-goal:nth-child(n){grid-column:auto;margin-top:0;min-height:0}.v2c.c-fluo .c-review-card{flex-basis:78%}.v2c.c-fluo .v-health-grid{grid-template-columns:1fr}.v2c.c-fluo .c-health-stack{max-width:640px}.v2c.c-fluo .c-phone-screen{min-height:480px}.v2c.c-fluo .c-results-chapters{grid-template-columns:1fr}.v2c.c-fluo .c-results-chapters>article:nth-child(2){transform:none}.v2c.c-fluo .c-progress-note{margin-top:30px}}
@media(max-width:850px){.v2c.c-fluo .c-concept-intro h3{font-size:30px;white-space:normal}.v2c.c-fluo .c-concept-card{grid-template-columns:1fr}.v2c.c-fluo .c-concept-example,.v2c.c-fluo .c-concept-tabs,.v2c.c-fluo .c-concept-answer{grid-column:1}.v2c.c-fluo .c-level-versions{grid-column:1;grid-row:auto;max-width:500px;margin:28px auto 0}.v2c.c-fluo .c-level-visual{height:auto}}
@media(max-width:560px){.c-fluo .c-board-word{top:auto;width:100%;font-size:38px}.c-fluo .c-photo-note{left:auto;bottom:auto;width:100%;padding:8px 5px;font-size:10px;gap:6px}.c-fluo .c-photo-note .c-wave{width:28px}.v2c.c-fluo .c-small-photo{right:-10px;bottom:-20px;width:53%;height:150px}.c-fluo .v-footer>*{padding:5px 7px}.v2c.c-fluo .v-trial-step:nth-child(n){transform:none}.v2c.c-fluo .v-goals-grid{grid-template-columns:1fr;gap:24px;padding-bottom:18px}.v2c.c-fluo .v-goal:nth-child(n){transform:none;padding:30px;box-shadow:8px 9px 0 #0d0f0d}.v2c.c-fluo .c-results-chapters{gap:20px;margin-top:25px}.v2c.c-fluo .c-results-chapters header{padding:22px}.v2c.c-fluo .c-results-chapters article>div{padding:5px 20px 12px}.v2c.c-fluo .c-results-chapters section{grid-template-columns:1fr;gap:5px;padding:16px 0}.v2c.c-fluo .c-google-reviews{gap:18px}.v2c.c-fluo .c-review-card:nth-child(n){flex-basis:92%;transform:none;min-height:220px;padding:26px}.v2c.c-fluo .c-review-card blockquote{font-size:22px}.v2c.c-fluo .c-google-score{flex-wrap:wrap}.v2c.c-fluo .v-room-text>div:nth-child(n){transform:none}.v2c.c-fluo .c-health-card:nth-child(n){transform:none}.v2c.c-fluo .c-health-card summary{grid-template-columns:42px 1fr 64px;padding:16px}.v2c.c-fluo .c-health-more svg{width:34px;height:34px}.v2c.c-fluo .c-health-card>p{padding:0 20px 22px;font-size:15px}.v2c.c-fluo .c-health-chooser-box{padding:28px 20px 24px;border-radius:18px}.v2c.c-fluo .c-health-chooser h2{font-size:27px}.v2c.c-fluo .c-health-choices{grid-template-columns:1fr;gap:26px}.v2c.c-fluo .c-health-choices label{padding:10px 13px;font-size:13px}.v2c.c-fluo .c-phone-tabs>label{padding:9px 12px;font-size:11px}.v2c.c-fluo .c-phone-shell{border-width:8px;border-radius:30px;box-shadow:10px 10px 0 var(--fluo)}.v2c.c-fluo .c-phone-screen{min-height:470px;padding:13px}.v2c.c-fluo .c-phone-thread h3,.v2c.c-fluo .c-phone-thread p{max-width:94%;font-size:14px}}
@media(max-width:560px){.v2c.c-fluo .c-activity-concepts{margin-top:72px}.v2c.c-fluo .c-concept-intro{margin-bottom:36px}.v2c.c-fluo .c-concept-intro h3{font-size:30px}.v2c.c-fluo .c-concept-tabs{grid-template-columns:1fr}.v2c.c-fluo .c-level-versions{max-width:100%}.v2c.c-fluo .c-level-visual{height:auto}}
@media(max-width:850px){.v2c.c-fluo .v-results .v-title{white-space:normal}.v2c.c-fluo .c-health-drawer>summary{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.v2c.c-fluo .c-health-chooser{margin-top:-40px;padding-bottom:55px;background:linear-gradient(to bottom,transparent 0 40px,var(--paper) 40px)}.v2c.c-fluo .c-health-drawer>summary{padding:18px}.v2c.c-fluo .c-health-drawer>summary>b{width:100%;text-align:center}.v2c.c-fluo .c-health-chooser-box{border-radius:0}.v2c.c-fluo .c-phone-tabs{max-width:430px;margin-inline:auto}}
@media(max-width:560px){.v2c.c-fluo .c-concept-tabs button,.v2c.c-fluo .c-phone-tabs>label{min-height:38px;padding:9px 12px;font-size:11px}}
@media(max-width:850px){.v2c.c-fluo .c-trial-collage{width:min(680px,94%);height:320px;margin-bottom:72px}.v2c.c-fluo .c-planning-days{grid-template-columns:repeat(2,minmax(0,1fr))}.v2c.c-fluo .c-planning-filters strong{min-width:100%}.v2c.c-fluo .c-room-carousel{min-height:470px}}
@media(max-width:850px){.v2c.c-fluo .v-coaches-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.v2c.c-fluo .c-small-photo{right:-18px;bottom:-46px;width:59%;height:165px}.v2c.c-fluo .c-trial-collage{width:96%;height:260px;margin-bottom:62px;padding:8px;gap:7px;grid-template-columns:1.35fr .8fr;transform:rotate(-.7deg)}.v2c.c-fluo .c-trial-photo{border-radius:7px}.v2c.c-fluo .c-trial-collage>span{left:16px;bottom:12px;padding:8px 10px;font-size:9px}.v2c.c-fluo .c-planning{gap:22px}.v2c.c-fluo .c-planning-filters{padding:18px 16px}.v2c.c-fluo .c-planning-filters>div{gap:7px}.v2c.c-fluo .c-planning-filters button{padding:8px 10px;font-size:10px}.v2c.c-fluo .c-planning-days{display:grid;grid-auto-flow:column;grid-auto-columns:86%;grid-template-columns:none;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 10px 12px 0}.v2c.c-fluo .c-plan-day{scroll-snap-align:start}.v2c.c-fluo .c-plan-slot{grid-template-columns:58px 1fr}.v2c.c-fluo .c-room-carousel{min-height:440px}.v2c.c-fluo .c-room-nav{right:12px;bottom:12px}}
@media(max-width:560px){.v2c.c-fluo .v-closing{border-radius:40px 0 0 0}}
@media(max-width:1279px) and (min-width:1024px){
  .v2c.c-fluo .c-trial-p5-grid{grid-template-columns:minmax(0,1fr) 520px;gap:50px}
  .v2c.c-fluo .c-trial-p5-visual{width:520px;height:480px}
  .v2c.c-fluo .c-trial-p5-team{top:-26px;left:24px;width:323px;height:223px}
  .v2c.c-fluo .c-trial-p5-hug{top:128px;right:-20px;width:213px;height:213px}
  .v2c.c-fluo .c-trial-p5-bike{bottom:-22px;left:51px;width:281px;height:187px}
  .v2c.c-fluo .c-trial-p5-wave{top:34px;right:30px}
  .v2c.c-fluo .c-trial-p5-label{right:24px;bottom:22px;font-size:11px}
}
@media(max-width:1023px){
  .v2c.c-fluo .c-trial-p5-grid{grid-template-columns:1fr;gap:78px}
  .v2c.c-fluo .c-trial-p5-copy{max-width:680px}
  .v2c.c-fluo .c-trial-p5-visual{justify-self:center;width:min(100%,620px);height:440px}
  .v2c.c-fluo .c-trial-p5-team{top:20px;left:20px;width:266px;height:183px}
  .v2c.c-fluo .c-trial-p5-hug{top:135px;right:-16px;width:175px;height:175px}
  .v2c.c-fluo .c-trial-p5-bike{bottom:-16px;left:36px;width:231px;height:154px}
  .v2c.c-fluo .c-trial-p5-label{right:22px;bottom:20px;padding:10px 14px;font-size:10px}
}
@media(max-width:560px){
  .v2c.c-fluo .c-trial-p5{padding:70px 0 78px}
  .v2c.c-fluo .c-trial-p5-grid{gap:50px}
  .v2c.c-fluo .c-trial-p5-copy .v-title{font-size:34px}
  .v2c.c-fluo .c-trial-p5-steps{gap:24px;margin-top:34px}
  .v2c.c-fluo .c-trial-p5-step{grid-template-columns:40px minmax(0,1fr);gap:14px}
  .v2c.c-fluo .c-trial-p5-step>span{width:40px;height:40px;font-size:16px}
  .v2c.c-fluo .c-trial-p5-step h3{font-size:18px}
  .v2c.c-fluo .c-trial-p5-copy .v-cta{margin-top:34px}
  .v2c.c-fluo .c-trial-p5-visual{width:100%;height:400px}
  .v2c.c-fluo .c-trial-p5-photo{border-width:5px;border-radius:12px}
  .v2c.c-fluo .c-trial-p5-team{top:18px;left:10px;width:72%;height:auto;aspect-ratio:380/262}
  .v2c.c-fluo .c-trial-p5-hug{top:138px;right:-8px;width:49%;height:auto;aspect-ratio:1}
  .v2c.c-fluo .c-trial-p5-bike{bottom:-14px;left:18px;width:66%;height:auto;aspect-ratio:3/2}
  .v2c.c-fluo .c-trial-p5-wave{top:24px;right:16px;width:54px}
  .v2c.c-fluo .c-trial-p5-label{right:8px;bottom:16px;padding:9px 11px;font-size:9px;letter-spacing:.1em}
  .v2c.c-fluo .v-coaches-grid{grid-template-columns:1fr}
  .v2c.c-fluo .c-coach-role{font-size:11px}
}

/* Hero D6A — reproduction fidèle de la proposition Claude Design retenue. */
.v2c.c-fluo .v-header{border-bottom:1px solid #edede8}
/* Barre du menu en pleine largeur, comme le premier site TDB (Virginie, 05/10 — règle de tous les sites TDB) :
   logo à 56 px du bord gauche, liens et bouton à 56 px du bord droit. Avant : plafonnée à 1 440 px
   avec 150 px de marge, soit la colonne du contenu. */
.v2c.c-fluo .v-nav{width:100%;max-width:none;height:92px;margin:0 auto;padding:0 56px;gap:40px}
.v2c.c-fluo .v-brand{gap:6px;line-height:1}
.v2c.c-fluo .v-brand strong{font-size:25px;font-weight:900;letter-spacing:0}
.v2c.c-fluo .v-brand>span{margin:0;font-size:9px;font-weight:750;letter-spacing:0}
.v2c.c-fluo .v-nav nav{gap:32px}
.v2c.c-fluo .v-nav nav a{font-size:15px;font-weight:500}
.v2c.c-fluo .v-nav nav a:hover{color:inherit;text-decoration:underline;text-decoration-color:var(--fluo);text-decoration-thickness:3px;text-underline-offset:9px}
.v2c.c-fluo .v-nav>.v-cta{min-height:0;padding:8px 8px 8px 28px;gap:16px;font-size:15px;font-weight:700}
.v2c.c-fluo .v-nav>.v-cta svg{width:36px;height:36px;padding:9px}
.v2c.c-fluo .v-hero{padding:0;overflow:visible}
.v2c.c-fluo .c-hero-grid{box-sizing:border-box;width:100%;max-width:1440px;min-height:660px;margin:0 auto;padding:78px 150px 86px;grid-template-columns:max-content minmax(0,1fr);gap:40px;align-items:center}
.v2c.c-fluo .c-hero-copy{display:flex;flex-direction:column;width:max-content}
.v2c.c-fluo .v-kicker{max-width:none;margin:0;color:#7c7c79;font-size:18px;font-weight:400;line-height:1.55;white-space:nowrap}
.v2c.c-fluo .v-hero-title{margin:24px 0 0;color:#202322;font-size:68px;font-weight:800;line-height:1.06;letter-spacing:-.032em}
.v2c.c-fluo .he-highlight{background:linear-gradient(to top,var(--fluo) 0 37%,transparent 37%);box-decoration-break:clone;-webkit-box-decoration-break:clone}
.v2c.c-fluo .v-hero-intro{max-width:none;margin:30px 0 0;color:#202322;font-size:18px;font-weight:400;line-height:1.65;letter-spacing:0}
.v2c.c-fluo .v-hero .v-cta{align-self:flex-start;min-height:0;margin:38px 0 0;padding:9px 9px 9px 30px;gap:16px;font-size:16px;font-weight:700}
.v2c.c-fluo .v-hero .v-cta svg{width:38px;height:38px;padding:10px}
.v2c.c-fluo .c-hero-board{position:relative;isolation:isolate;justify-self:center;width:320px;height:480px;min-height:0;margin:0 0 0 30px;padding:0;overflow:visible;border-radius:32px;background:#efefec;background-image:none}
.v2c.c-fluo .c-hero-video{display:block;position:absolute;z-index:2;top:-40px;left:-56px;width:246px;height:438px;object-fit:cover;border-radius:22px;background:#202322;box-shadow:0 24px 44px rgba(32,35,34,.24);transform:rotate(-3deg)}
.v2c.c-fluo .c-hero-detail{position:absolute;z-index:3;right:-26px;bottom:-30px;width:206px;height:140px;margin:0;overflow:hidden;border:5px solid #fffefa;border-radius:14px;background:#202322;box-shadow:0 14px 28px rgba(32,35,34,.2);transform:rotate(3.4deg)}
.v2c.c-fluo .c-hero-detail img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 55%}
.v2c.c-fluo .c-hero-squiggle{position:absolute;z-index:4;top:38px;right:34px;width:66px;height:15px;overflow:visible}
.v2c.c-fluo .c-hero-squiggle path{fill:none;stroke:#202322;stroke-width:2;stroke-linecap:round}
.v2c.c-fluo .c-hero-place{position:absolute;z-index:4;top:70px;right:34px;color:#7c7c79;font-size:11px;font-weight:700;line-height:1.5;letter-spacing:.2em;text-align:right;text-transform:uppercase}
.v2c.c-fluo .c-hero-place span{display:block}
.v2c.c-fluo .c-hero-edge-selected{position:absolute;z-index:1;top:198px;right:-48px;padding:10px 7px 9px;border-left:5px solid var(--fluo);color:#202322;font-size:31px;font-weight:900;line-height:1;letter-spacing:.19em;pointer-events:none;text-transform:uppercase;user-select:none;writing-mode:vertical-rl}
@media(max-width:1279px){
  .v2c.c-fluo .v-nav{padding:0 56px}
  .v2c.c-fluo .c-hero-grid{min-height:620px;padding:68px 80px 76px}
  .v2c.c-fluo .v-hero-title{font-size:56px}
  .v2c.c-fluo .c-hero-board{margin-left:0}
}
@media(max-width:1023px){
  .v2c.c-fluo .v-nav{padding:0 40px}
  .v2c.c-fluo .c-hero-grid{min-height:0;padding:58px 40px 72px;grid-template-columns:1fr;gap:86px}
  /* Haut de page centré sur téléphone et tablette ; l'ordinateur reste à gauche (Virginie, 19/10). */
  .v2c.c-fluo .c-hero-copy{width:auto;max-width:640px;margin-inline:auto;text-align:center;align-items:center}
  .v2c.c-fluo .v-hero .v-cta{align-self:center}
  .v2c.c-fluo .v-kicker{white-space:normal}
  /* Plus d'interligne sur téléphone et tablette, comme les titres des pages intérieures (Virginie, 19/10). */
  .v2c.c-fluo .v-hero-title{font-size:44px;line-height:1.2}
  /* 22/10 (Virginie) : « pareil que sur la version ordinateur » — la même composition, à l'échelle du téléphone : vidéo
     pivotée qui sort du gris en haut à gauche (jusqu'au bord de l'écran), vague et « PORNIC » dans le gris, HYBRID à droite
     hors du gris (le gris laisse 44 px à droite pour lui), petite photo en bas à droite. */
  .v2c.c-fluo .c-hero-board{justify-self:start;width:calc(100% - 44px);height:420px;margin:0}
  .v2c.c-fluo .c-hero-video{top:-40px;left:6px;width:min(215px,calc(100vw - 190px));height:auto;aspect-ratio:246/438;transform:rotate(-3deg)}   /* Virginie, 22/10 : autant de marge à gauche (du coin haut-gauche pivoté au bord de l'écran) qu'à droite (de HYBRID au bord) ;   /* la largeur suit l'écran pour laisser la vague et « PORNIC » dans le gris, jamais sur la vidéo (mesuré à 320–430 px) */
  .v2c.c-fluo .c-hero-detail{right:-26px;bottom:-30px;width:170px;height:116px}
  .v2c.c-fluo .c-hero-squiggle{top:38px;right:10px}
  .v2c.c-fluo .c-hero-place{top:70px;right:10px}
  .v2c.c-fluo .c-hero-edge-selected{top:150px;right:-48px;font-size:28px}
}
@media(max-width:850px){
  .v2c.c-fluo .v-nav{height:auto;padding:16px 24px}
  .v2c.c-fluo .v-nav nav,.v2c.c-fluo .v-nav>.v-cta{display:none}
  .v2c.c-fluo .v-menu{display:block}
}
@media(max-width:560px){
  .v2c.c-fluo .c-hero-grid{padding:46px 22px 64px;gap:78px}
  .v2c.c-fluo .v-kicker{font-size:16px}
  .v2c.c-fluo .v-hero-title{font-size:40px}
  .v2c.c-fluo .v-hero-intro{font-size:17px;line-height:1.55}
  .v2c.c-fluo .v-hero-intro br{display:none}
  .v2c.c-fluo .v-hero .v-cta{max-width:100%;padding-left:23px;font-size:15px}
  .v2c.c-fluo .c-hero-board{height:420px}
}
@media(max-width:429px){.v2c.c-fluo .c-hero-video{left:4px}}   /* vidéo plus étroite : le coin pivoté dépasse moins, 18 px à gauche comme à droite */
@media(prefers-reduced-motion:reduce) and (min-width:1024px){
  .v2c.c-fluo .c-hero-video{transform:rotate(-3deg)}
}
@media(prefers-reduced-motion:reduce) and (max-width:1023px){
  .v2c.c-fluo .c-hero-video{transform:rotate(-3deg)}
}

/* Prévisualisation client : le responsive sera présenté après validation du desktop. */
.v2c.c-fluo .c-device-preview-notice{display:none}
@media(max-width:1199px),(hover:none) and (pointer:coarse){
  body.v2c.c-fluo:has(.c-device-preview-notice){overflow:hidden}
  .v2c.c-fluo .c-device-preview-notice{display:grid;position:fixed;z-index:2147483647;inset:0;place-items:center;padding:28px;background:#fffefa;color:#202322;text-align:center}
  .v2c.c-fluo .c-device-preview-notice>div{display:grid;width:min(100%,520px);padding:42px 30px 38px;border-top:8px solid var(--fluo);border-radius:24px;background:#efefec;box-shadow:0 24px 60px rgba(32,35,34,.14)}
  .v2c.c-fluo .c-device-preview-brand{display:grid;justify-self:center;margin-bottom:30px;font-size:31px;font-weight:900;line-height:1;letter-spacing:.12em}
  .v2c.c-fluo .c-device-preview-brand small{margin-top:7px;font-size:10px;font-weight:750;letter-spacing:.18em}
  .v2c.c-fluo .c-device-preview-notice strong{font-size:clamp(27px,7vw,42px);font-weight:850;line-height:1.08;letter-spacing:-.025em}
  .v2c.c-fluo .c-device-preview-notice p{max-width:38ch;margin:20px auto 0;color:#555b57;font-size:17px;line-height:1.55}
}

/* Accueil : « Notre équipe de coachs » suit l’accès sur le même fond clair ; les deux marges
   s’additionnaient (208 px). Le haut de l’équipe tombe à zéro (Virginie, 02/10). */
.v2c.c-fluo #acces + #equipe{padding-top:0}

/* FAQ : toute la largeur de la colonne, alignée sur les autres sections. La limite de 920 px venait
   des premières maquettes, sans règle ni décision derrière (Virginie, 05/10 : « aligner partout »). */
.v2c.c-fluo .v-faq-list{max-width:none}

/* Les « En savoir plus » / « Voir plus » sont devenus des liens vers les pages (06/10) : même trait
   qu'avant, sans le soulignement du navigateur en plus. */
.v2c.c-fluo a.v-more{text-decoration:none}
/* Pôle santé : le lien vers la page, aligné sous le texte de la carte dépliée. */
.v2c.c-fluo .c-health-card>.c-health-link{margin:-8px 28px 26px 93px}
@media(max-width:560px){.v2c.c-fluo .c-health-card>.c-health-link{margin:-6px 20px 22px}}

/* Menu (variante A de la planche menu-propositions, Virginie, 06/10) : « Activités » s'ouvre sur trois
   groupes de tuiles à icône (survol, clavier et clic gérés par le script du menu, liens_site.py). 24 px entre les liens, comme le premier site TDB. */
.v2c.c-fluo .v-nav{position:relative}
.v2c.c-fluo .v-nav nav{gap:24px;align-items:center}
.v2c.c-fluo .mn-bouton{position:relative;display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:none;color:inherit;font:inherit;font-size:15px;font-weight:500;cursor:pointer}
/* Le survol ne se perd pas entre le mot et le panneau : une zone invisible prolonge le bouton vers le bas. */
.v2c.c-fluo .mn-bouton:after{content:'';position:absolute;left:-12px;right:-12px;top:100%;height:40px}
.v2c.c-fluo .mn-bouton:hover,.v2c.c-fluo .mn-groupe.is-open .mn-bouton{text-decoration:underline;text-decoration-color:var(--fluo);text-decoration-thickness:3px;text-underline-offset:9px}
.v2c.c-fluo .mn-bouton:focus-visible{outline:3px solid var(--night);outline-offset:4px}
.v2c.c-fluo .mn-chevron{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.v2c.c-fluo .mn-groupe.is-open .mn-chevron{transform:rotate(180deg)}
.v2c.c-fluo .mn-panneau{display:none;position:absolute;z-index:30;top:100%;left:0;right:0;background:var(--paper);border-top:1px solid #edede8;box-shadow:0 24px 40px #20232214}
/* Le panneau suit un seul état, posé par le script du menu (survol, clavier, clic) : voir liens_site.py. */
/* Pont invisible, sur toute la largeur, entre la barre et le panneau ouvert : on peut y descendre en biais sans quitter le
   menu (Virginie, 08/10). Le logo et le bouton de réservation restent au-dessus, donc toujours cliquables. */
.v2c.c-fluo .mn-panneau:before{content:'';position:absolute;left:0;right:0;bottom:100%;height:40px}
.v2c.c-fluo .v-nav>.v-brand,.v2c.c-fluo .v-nav>.v-cta{position:relative;z-index:31}
.v2c.c-fluo .mn-groupe.is-open .mn-panneau{display:block}
.v2c.c-fluo .mn-wrap{display:grid;grid-template-columns:2fr 1fr 1fr;gap:44px;max-width:1140px;margin:0 auto;padding:30px 0 38px}
.v2c.c-fluo .mn-titre{display:flex;align-items:center;gap:9px;margin:0 0 14px;font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--night)}
.v2c.c-fluo .mn-titre i{width:9px;height:9px;border-radius:50%;background:var(--fluo);box-shadow:0 0 0 2px var(--night)}
.v2c.c-fluo .mn-liste{display:grid;gap:10px}
.v2c.c-fluo .mn-col-4 .mn-liste{grid-template-columns:1fr 1fr}
/* Un onglet par groupe (Virginie, 08/10) : ses tuiles sur une rangée, à la même largeur dans les trois onglets. */
.v2c.c-fluo .mn-wrap-groupe{display:block}
/* L'en-tête de l'accueil s'efface en descendant et revient en remontant, comme celui des pages intérieures
   (Virginie, 08/10) ; le script est posé par build_v2c_fluo.py. */
.v2c.c-fluo .v-header{transition:transform .24s ease}
@media(min-width:1180px){.v2c.c-fluo .v-header.hx-away{transform:translateY(-100%)}}
@media(prefers-reduced-motion:reduce){.v2c.c-fluo .v-header{transition:none}}
/* Panneau flottant, coins arrondis, colonne de texte à droite (Virginie, 08/10, sur le modèle du premier site TDB ; planche
   menu-flottant/) : à la distance du bord du logo et du bouton, 10 px sous la barre. Pas d'overflow:hidden : le pont
   invisible (:before) déborde du panneau vers le haut. */
/* Depuis le 29/10 (Virginie) : le panneau prend la largeur de son contenu et se centre sous son onglet ; le script du
   menu (liens_site.py) le place, sans jamais dépasser la marge du logo et du bouton (--mn-marge). */
.v2c.c-fluo .mn-panneau{--mn-marge:56px;top:calc(100% + 10px);left:56px;right:auto;width:max-content;max-width:calc(100% - 112px);border:1px solid #e6e6e0;border-radius:24px;
  box-shadow:0 26px 60px rgba(32,35,34,.16),0 4px 12px rgba(32,35,34,.06)}
.v2c.c-fluo .mn-panneau:before{height:50px}
@media(min-width:851px) and (max-width:1279px){.v2c.c-fluo .mn-panneau{--mn-marge:40px;left:40px;max-width:calc(100% - 80px)}}
.v2c.c-fluo .mn-wrap.mn-wrap-groupe{display:flex;align-items:stretch;gap:30px;max-width:none;padding:26px 28px;white-space:normal}
.v2c.c-fluo .mn-wrap-groupe .mn-rangee{flex:none;align-self:center}
.v2c.c-fluo .mn-a-cote{flex:none;width:290px;display:flex;flex-direction:column;justify-content:center;padding-left:28px;border-left:1px solid #e6e6e0}
.v2c.c-fluo .mn-a-cote b{display:flex;align-items:center;gap:9px;margin-bottom:10px;font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--night)}
.v2c.c-fluo .mn-a-cote b i{flex:none;width:9px;height:9px;border-radius:50%;background:var(--fluo);box-shadow:0 0 0 2px var(--night)}
.v2c.c-fluo .mn-a-cote .mn-phrase{margin-bottom:14px;color:#5a625f;font-size:15px;line-height:1.5}
.v2c.c-fluo .v-nav .mn-panneau a.mn-a-cote-lien{align-self:flex-start;color:var(--night);font-size:15px;font-weight:800;line-height:1.4;
  text-decoration:underline;text-decoration-color:var(--fluo);text-decoration-thickness:3px;text-underline-offset:6px}
.v2c.c-fluo .v-nav .mn-panneau a.mn-a-cote-lien:after{content:none}
.v2c.c-fluo .mn-fleche{display:inline-block;margin-left:8px;text-decoration:none;transition:transform .2s}
.v2c.c-fluo .mn-a-cote-lien:hover .mn-fleche{transform:translateX(4px)}
.v2c.c-fluo .mn-a-cote-lien:focus-visible{outline:3px solid var(--night);outline-offset:3px}
/* Rangée centrée dans le panneau (Virginie, 08/10), tuiles à la même largeur dans les trois onglets (un quart de la rangée). */
.v2c.c-fluo .mn-rangee{display:flex;justify-content:center;gap:10px}
/* Tuiles à la même largeur dans les trois menus, celle d'avant le 29/10 (un quart de la rangée d'Activités pleine
   largeur) : le script du menu la calcule depuis la barre (--mn-tuile). Le panneau, lui, suit son nombre de tuiles. */
.v2c.c-fluo .mn-rangee>.mn-lien{flex:none;width:var(--mn-tuile,230px)}
/* 10 px à droite au lieu de 14 : « Coaching personnalisé » tient sur une ligne à 1 440 px (il manquait 1 px). */
.v2c.c-fluo .v-nav .mn-panneau .mn-rangee>a.mn-lien{padding-right:10px}
/* Trois onglets et six liens : la « barre resserrée » choisie par Virginie le 08/10 (planche menu-onglets/), pour tenir
   sur une ligne jusqu'à 1 200 px — liens en 14 px, 18 px entre eux ; sous 1 280 px, logo de 130 px et marges de 40 px
   (56 px au-dessus, comme le veut la règle des sites TDB). Le téléphone (850 px et moins) n'est pas touché. */
@media(min-width:851px){
  .v2c.c-fluo .v-nav{gap:28px}
  .v2c.c-fluo .v-nav nav{gap:18px}
  .v2c.c-fluo .v-nav nav>*,.v2c.c-fluo .v-nav>.v-cta{flex:none;white-space:nowrap}
  .v2c.c-fluo .v-nav nav>a,.v2c.c-fluo .mn-bouton{font-size:14px}
}
/* Texte du menu en 16 px dès 1 366 px (Virginie, 08/10) ; 14 px en dessous, faute de place. */
@media(min-width:1366px){
  .v2c.c-fluo .v-nav nav>a,.v2c.c-fluo .mn-bouton{font-size:16px}
}
@media(min-width:851px) and (max-width:1279px){
  .v2c.c-fluo .v-nav{padding:0 40px}
  .v2c.c-fluo .v-nav nav{gap:16px}
  .v2c.c-fluo .v-brand.c-header-logo-final{width:130px;grid-template-rows:auto calc(14px * 130 / 239);row-gap:calc(3px * 130 / 239)}
}
/* Les tuiles : plus précises que les règles « lien actif » des pages (nav a:first-child), qui ne les visent pas. */
.v2c.c-fluo .v-nav .mn-panneau a.mn-lien{display:flex;align-items:center;gap:12px;padding:10px 14px 10px 10px;border-radius:12px;background:var(--soft);color:var(--night);font-size:15px;font-weight:700;line-height:1.2;text-decoration:none;transition:background .2s,box-shadow .2s,transform .2s}
.v2c.c-fluo .v-nav .mn-panneau a.mn-lien:after{content:none}
.v2c.c-fluo .v-nav .mn-panneau a.mn-lien:hover,.v2c.c-fluo .v-nav .mn-panneau a.mn-lien[aria-current="page"]{background:var(--fluo);box-shadow:4px 4px 0 var(--night);transform:translate(-2px,-2px)}
.v2c.c-fluo .v-nav .mn-panneau a.mn-lien:focus-visible{outline:3px solid var(--night);outline-offset:3px}
.v2c.c-fluo .mn-ic{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--paper)}
.v2c.c-fluo .mn-ic svg{width:21px;height:21px;fill:none;stroke:var(--night);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.v2c.c-fluo .mn-ic svg[viewBox="0 0 48 48"]{stroke-width:2.6}
/* Survol et page en cours : texte noir, trait fluo dessous — plus de vert olive (Virginie, 06/10 : « je déteste
   cette couleur »). La page en cours passe en gras. */
.v2c.c-fluo .v-nav nav>a[aria-current="page"],.v2c.c-fluo .mn-bouton.is-current{color:inherit;font-weight:750;text-decoration:underline;text-decoration-color:var(--fluo);text-decoration-thickness:3px;text-underline-offset:9px}
/* Téléphone : les groupes en petits titres, puis les pages. */
.v2c.c-fluo #v-mobile a[aria-current="page"]{font-weight:750;text-decoration:underline;text-decoration-color:var(--fluo);text-decoration-thickness:3px;text-underline-offset:6px}
.v2c.c-fluo #v-mobile .mn-tel-titre{margin:10px 0 -6px;font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--night)}

/* ======================================================================================================
   VERSION TÉLÉPHONE ET TABLETTE — commun à l'accueil et aux 15 pages (08/10/2026)
   Au-dessus de 1 200 px, rien ne change : l'ordinateur validé reste au pixel.
   ====================================================================================================== */
/* (U) L'en-tête colle en haut, s'efface en descendant et revient en remontant, à TOUTES les largeurs (règle des sites
   TDB, bloc « U » du premier site TDB) ; le script commun de l'en-tête pose hx-away (liens_site.py, SCRIPT_ENTETE). Avant, les
   pages intérieures le laissaient partir avec la page sous 1 180 px. Une cible d'ancre ne se pose pas sous la barre. */
@media(max-width:1199px){html{scroll-padding-top:84px}}   /* l'ordinateur garde son réglage (relecture Codex, 08/10) */
.v2c.c-fluo .v-header{position:sticky;top:0}
.v2c.c-fluo .v-header.hx-away{transform:translateY(-101%)}
.v2c.c-fluo .v-header.mn-tel-ouvert{transform:none}
.v2c.c-fluo .v-cta-court{display:none}
/* Sous 1 200 px, la barre de neuf entrées ne tient plus (mesuré : elle débordait de la tablette) : logo, « Réserver »,
   trois traits ; le menu s'ouvre par-dessus la page. 1 200 px est aussi le seuil de l'écran « sur ordinateur ». */
@media(max-width:1199px){
  .v2c.c-fluo .v-nav{height:auto;min-height:68px;padding:10px 40px;gap:12px}
  .v2c.c-fluo .v-nav nav,.v2c.c-fluo .v-nav>.v-cta svg,.v2c.c-fluo .v-cta-long{display:none}
  .v2c.c-fluo .v-brand.c-header-logo-final{width:130px;grid-template-rows:auto calc(14px * 130 / 239);row-gap:calc(3px * 130 / 239)}
  .v2c.c-fluo .v-nav>.v-cta{display:inline-flex;min-height:44px;margin-left:auto;padding:0 18px;font-size:15px;font-weight:750}
  .v2c.c-fluo .v-cta-court{display:inline}
  .v2c.c-fluo .v-menu{display:grid;place-content:center;gap:5px;width:44px;height:44px;margin:0 -8px 0 0;padding:0;border:0;border-radius:50%;background:none;color:var(--night);cursor:pointer}
  .v2c.c-fluo .v-menu i{display:block;width:22px;height:2px;border-radius:2px;background:currentColor;transition:transform .2s,opacity .2s}
  .v2c.c-fluo .v-menu[aria-expanded="true"] i:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .v2c.c-fluo .v-menu[aria-expanded="true"] i:nth-child(2){opacity:0}
  .v2c.c-fluo .v-menu[aria-expanded="true"] i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .v2c.c-fluo .v-menu:focus-visible{outline:3px solid var(--night);outline-offset:2px}
  /* Le panneau : accroché sous la barre, par-dessus la page, et il défile dans la hauteur de l'écran (ses 15 liens
     dépassent un téléphone : sans ce défilement, le bas du menu serait hors d'atteinte). */
  .v2c.c-fluo #v-mobile:not([hidden]){position:absolute;z-index:40;top:100%;left:0;right:0;display:block;max-height:calc(100dvh - 68px);
    overflow-y:auto;overscroll-behavior:contain;padding:8px 40px 28px;background:var(--paper);border-top:1px solid #edede8;box-shadow:0 24px 40px #20232229}
  .v2c.c-fluo #v-mobile .mn-tel-titre{margin:18px 0 10px;font-size:12px;letter-spacing:.16em}
  .v2c.c-fluo .mn-tel-grille{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .v2c.c-fluo #v-mobile a.mn-lien{display:flex;align-items:center;gap:10px;min-height:56px;padding:8px 10px 8px 8px;border-radius:12px;background:var(--soft);color:var(--night);font-size:15px;font-weight:700;line-height:1.2;text-decoration:none}
  .v2c.c-fluo #v-mobile a.mn-lien[aria-current="page"]{background:var(--fluo);text-decoration:none;box-shadow:3px 3px 0 var(--night)}
  .v2c.c-fluo #v-mobile .mn-ic{width:36px;height:36px}
  .v2c.c-fluo .mn-tel-pages{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
  .v2c.c-fluo .mn-tel-pages a{display:flex;align-items:center;min-height:46px;border-bottom:1px solid #edede8;color:var(--night);font-size:16px;font-weight:600;text-decoration:none}
}
@media(min-width:1200px){.v2c.c-fluo .v-menu,.v2c.c-fluo #v-mobile{display:none!important}}
@media(max-width:560px){
  .v2c.c-fluo .v-nav{padding:10px 22px}
  .v2c.c-fluo #v-mobile:not([hidden]){padding:4px 22px 26px}
  .v2c.c-fluo #v-mobile a.mn-lien{font-size:14.5px}
}
/* Sous 360 px, le logo et les trois traits seuls : « Réserver » ne tiendrait plus à côté. */
@media(max-width:359px){.v2c.c-fluo .v-nav>.v-cta{display:none}.v2c.c-fluo .v-menu{margin-left:auto}}
/* Cibles tactiles : au moins 44 px au doigt. Un lien souligné garde son dessin : c'est sa zone de toucher qui s'agrandit,
   par une couche invisible autour du mot (contrôle : controle_telephone.py, qui en tient compte). */
@media(max-width:1199px){
  .v2c.c-fluo .v-brand.c-header-logo-final,.v2c.c-fluo a.v-more,.v2c.c-fluo .c-google-link,.v2c.c-fluo .v-contact a{position:relative}
  .v2c.c-fluo .v-brand.c-header-logo-final:after,.v2c.c-fluo a.v-more:after,.v2c.c-fluo .c-google-link:after,.v2c.c-fluo .v-contact a:after{content:'';position:absolute;inset:-9px -6px}
}
/* Pied de page : liens à 44 px de haut, petits titres et mentions à 14 px ; sur téléphone, « Navigation » et
   « Découvrir » côte à côte (le pied faisait 970 px, plus d'un écran). */
@media(max-width:1023px){   /* jusqu'à 1 023 px depuis le 23/10 : la tablette en paysage gardait les tailles de l'ordinateur */
  .v2c.c-fluo .c-footer-grid h2{font-size:14px}
  .v2c.c-fluo .c-footer-grid a:not(.c-footer-logo-final){display:flex;align-items:center;min-height:44px;line-height:1.35}
  .v2c.c-fluo .c-footer-bottom{font-size:14px}
  .v2c.c-fluo .c-footer-bottom a{display:inline-flex;align-items:center;min-height:44px}
}
@media(max-width:560px){
  .v2c.c-fluo .c-footer-grid{grid-template-columns:1fr 1fr;gap:34px 18px}
  .v2c.c-fluo .c-footer-grid>.c-footer-brand,.v2c.c-fluo .c-footer-grid>div:nth-child(2){grid-column:1/-1}
  .v2c.c-fluo .c-footer-bottom{gap:0;margin-top:30px}
}
/* Composants de l'accueil repris par les pages (planning, avis, coachs, pôle santé, salle) : boutons à 44 px, textes
   courants à 14 px, petites étiquettes en capitales à 12 px au moins. */
@media(max-width:1023px){   /* jusqu'à 1 023 px depuis le 23/10 : la tablette en paysage gardait les tailles de l'ordinateur */
  .v2c.c-fluo .c-planning-filters button{min-height:44px;font-size:12px}
  .v2c.c-fluo .c-planning-filters strong{font-size:12px}
  .v2c.c-fluo .c-concept-tabs button,.v2c.c-fluo .c-phone-tabs>label{min-height:44px;font-size:12px}
  .v2c.c-fluo .c-room-nav button{width:44px;height:44px;font-size:14px}
  .v2c.c-fluo .c-plan-slot time{font-size:14px}
  .v2c.c-fluo .c-plan-slot strong{font-size:14px}
  .v2c.c-fluo .c-plan-slot{grid-template-columns:62px 1fr}
  .v2c.c-fluo .c-review-card>div span{font-size:14px}
  .v2c.c-fluo .c-coach-role{font-size:12px}
  .v2c.c-fluo .c-health-choices label{min-height:44px;display:inline-flex;align-items:center;font-size:14px}
  .v2c.c-fluo .c-health-choices legend{font-size:12px}
}
/* Boutons de réservation propres au téléphone (telephone.py) : posés à la sortie des sections, ils ne s'affichent
   qu'à 760 px et moins ; l'ordinateur garde exactement ses boutons. */
.v2c.c-fluo .cta-tel{display:none}
@media(max-width:1023px){
  .v2c.c-fluo .cta-tel{position:relative;z-index:2;display:flex;max-width:1140px;margin:34px auto 0;padding:0 24px}
  .v2c.c-fluo .cta-tel-centre{justify-content:center}
  /* Après un bloc de la colonne (dans une grille) : toute la largeur de la colonne, sans second retrait. */
  .v2c.c-fluo .cta-tel-dedans{width:100%;margin-left:0;margin-right:0;padding:0}
  /* 22/10 : un séparateur va entre deux questions, jamais sous la dernière (téléphone seulement, l'ordinateur est validé). */
  .v2c.c-fluo .v-faq-item:last-child{border-bottom:0}
}
@media(max-width:560px){.v2c.c-fluo .cta-tel:not(.cta-tel-dedans){padding:0 22px}}
/* Accueil sur téléphone : les petites étiquettes à 12 px, les sous-titres à 14 px, les flèches des avis à 44 px. Le haut et
   le bas du faux téléphone des objections (« en ligne », « Écrire un message… ») sont un décor, masqué aux lecteurs
   d'écran (build_v2c_fluo.py) : seul le fil de la conversation se lit. */
@media(max-width:1023px){   /* jusqu'à 1 023 px depuis le 23/10 : la tablette en paysage gardait les tailles de l'ordinateur */
  .v2c.c-fluo .c-results-chapters header span{font-size:12px}
  .v2c.c-fluo .c-results-chapters header small{font-size:14px}
  .v2c.c-fluo .c-health-card summary small{font-size:12px}
  .v2c.c-fluo .c-health-more small,.v2c.c-fluo .c-health-card[open] .c-health-more small:after{font-size:12px}
  .v2c.c-fluo .c-hero-place{font-size:12px}
  .v2c.c-fluo .c-trial-p5-label{font-size:12px}
  .v2c.c-fluo .c-review-nav button{width:48px;height:44px}
}
/* L'équipe sur téléphone : deux portraits par rangée (un par écran faisait 2,4 écrans pour quatre coachs). */
@media(max-width:560px){
  .v2c.c-fluo .v-coaches-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .v2c.c-fluo .v-coach .photo-slot,.v2c.c-fluo .v-coach:nth-child(n) .photo-slot{height:210px}
  .v2c.c-fluo .v-coach>div:last-child{min-height:0;padding:14px 14px 16px}
  .v2c.c-fluo .v-coach h3{font-size:20px}
  .v2c.c-fluo .c-coach-role{white-space:normal}
}
@media(max-width:1023px){.v2c.c-fluo .c-phone-thread time{font-size:12px}}   /* jusqu'à 1 023 px depuis le 23/10 */
/* Les deux cartes d'une rangée de coachs finissent à la même hauteur. */
@media(max-width:560px){.v2c.c-fluo .v-coach{display:flex;flex-direction:column}.v2c.c-fluo .v-coach>div:last-child{flex:1}}
/* Sur téléphone, aucune étiquette ne passe sur une photo (règle des sites TDB) : « Ensemble, ça change tout » descend
   sous le collage ; le numéro du niveau de squat se pose sur une bande sombre au-dessus de la photo ; « Pornic », que
   la vidéo du haut de page recouvrait à moitié, n'est plus affiché. */
@media(max-width:560px){
  .v2c.c-fluo .c-trial-p5-visual{margin-bottom:64px}
  .v2c.c-fluo .c-trial-p5-label{bottom:-58px;right:8px}
  .v2c.c-fluo .c-level-visual{aspect-ratio:auto;padding-top:58px}
  .v2c.c-fluo .c-level-visual img{height:auto;aspect-ratio:4/3}
}
/* Très petits téléphones (22/10) : la vidéo est plus petite (147 px de large à 320 px), le gris raccourcit avec elle et HYBRID remonte. */
@media(max-width:359px){.v2c.c-fluo .c-hero-board{height:360px}.v2c.c-fluo .c-hero-edge-selected{top:110px}}
/* Tablette en portrait aussi : le numéro du niveau de squat sur sa bande sombre, hors de la photo. */
@media(max-width:1023px){.v2c.c-fluo .c-level-visual{aspect-ratio:auto;padding-top:58px}.v2c.c-fluo .c-level-visual img{height:auto;aspect-ratio:4/3}}

/* Téléphone et tablette, retouches du 22/10 (Virginie, récapitulatif validé « ok ») — l'ordinateur ne bouge pas.
   Accueil : tous les titres de section centrés, FAQ comprise (planche titres-centres-telephone/, proposition B + FAQ),
   avec la courte intro du pôle santé et des avis, la note Google, les onglets des activités, les boutons, le lien des
   avis et ses flèches, et la fin de page. */
@media(max-width:1023px){
  #accueil .v-section .v-title,#accueil .c-health-chooser h2,#accueil .v-health h2,
  #accueil .v-health h2+p,#accueil .v-reviews .v-title+p,#accueil .v-closing-content{text-align:center!important}
  #accueil .v-activity-tabs{justify-content:center!important}
  #accueil .c-google-score{justify-content:center;justify-items:center;text-align:center}
  #accueil .c-review-nav{justify-content:center}
  #accueil .c-google-link{display:table;margin-inline:auto}
  #accueil .c-trial-p5-copy>.v-cta,#accueil .v-closing-content .v-cta{align-self:center;margin-inline:auto}
  #accueil .cta-tel{justify-content:center}
  /* Pôle santé (planche sante-ouvrir/, choix C1 de Virginie) : plus de « Voir plus » écrit ; l'icône du soin passe à gauche,
     à la place du numéro 01 / 02, et une pastille « + » à droite dit qu'on peut ouvrir (« − » quand la carte est ouverte). */
  .v2c.c-fluo .c-health-card summary>span:first-child{display:none}
  .v2c.c-fluo .c-health-card summary>div{grid-column:2;grid-row:1}
  .v2c.c-fluo .c-health-card .c-health-more{display:contents}
  .v2c.c-fluo .c-health-card .c-health-more small{display:none}
  .v2c.c-fluo .c-health-card .c-health-more svg{grid-column:1;grid-row:1;justify-self:center;width:38px;height:38px;color:var(--night)}
  .v2c.c-fluo .c-health-card summary::after{content:'';grid-column:3;grid-row:1;justify-self:center;width:32px;height:32px;border-radius:50%;box-shadow:0 0 0 2px var(--night);
    background:linear-gradient(var(--night),var(--night)) center/13px 2.5px no-repeat,linear-gradient(var(--night),var(--night)) center/2.5px 13px no-repeat,var(--fluo)}
  .v2c.c-fluo .c-health-card[open] summary::after{background:linear-gradient(var(--night),var(--night)) center/13px 2.5px no-repeat,var(--fluo)}
  /* Pas de trou entre « Prendre rendez-vous » et « Qu'est-ce qui vous empêche de commencer ? » : les deux sections ont
     le même fond, 55 + 60 px se lisaient comme un vide (115 px mesurés à 375 px). */
  .v2c.c-fluo .c-health-chooser{padding-bottom:0}
  /* La salle : le bouton à 34 px de la dernière carte, comme ailleurs (80 px mesurés : marge de la carte + écart de la grille). */
  #accueil .v-room-grid>.cta-tel{margin-top:-12px}
  /* Titres : de l'air au-dessus et au-dessous d'une ligne qui porte un encadré fluo, quand une autre ligne la précède ou la
     suit (classes posées par le script des insécables, liens_site.py). Réglé à l'encre sur les 16 pages
     (revue-telephone/interligne.py, planche interligne-titres/) : plus aucune ligne ne touche un encadré. */
  main .c-title-block.deco-suivie::after{content:'';display:inline-block;width:0;height:0;vertical-align:-.55em}
  main .c-title-block.deco-precedee::before{content:'';display:inline-block;width:0;height:0;vertical-align:1.15em}
  /* Pied de page centré, sur toutes les pages. */
  .v2c.c-fluo .c-footer-grid{text-align:center}
  .v2c.c-fluo .c-footer-grid .c-footer-logo-final{margin-inline:auto}
  .v2c.c-fluo .c-footer-brand>.c-footer-slogan,.v2c.c-fluo .c-footer-brand>.c-footer-intro{margin-inline:auto}
  .v2c.c-fluo .c-footer-grid a:not(.c-footer-logo-final){justify-content:center}
  .v2c.c-fluo .c-footer-bottom{align-items:center;text-align:center}
  /* Pages intérieures, comme l'accueil (Virginie, 23/10 : l'accueil fixe le design de tout le site) : tous les titres de
     section centrés, avec leur courte intro et la fin de page ; les boutons qui concluent une section centrés aussi. Les
     longs paragraphes restent à gauche. La page Réserver garde ses étapes numérotées à gauche. */
  body:not(.re-page) #contenu h2,#contenu .hx-section-top .hx-ui,#contenu .co-form-intro,#contenu .v-closing-content{text-align:center!important}
  #contenu .cta-tel{justify-content:center}
  #contenu .v-closing-content .v-cta{align-self:center;margin-inline:auto}
  #contenu .mc-merry-text>.v-cta,#contenu .dl-merry-text>.v-cta{display:flex;width:fit-content;margin-inline:auto}
  /* Un bouton à 34 px du bloc qu'il conclut (règle du 22/10) : la marge de l'intro (64 et 56 px) l'emportait sur la sienne,
     et dans la grille de Renforcement musculaire (choix de Virginie : après la tour) l'écart de 40 px s'y ajoutait. */
  #contenu .pl-intro:has(+.cta-tel),#contenu .mc-intro:has(+.cta-tel){margin-bottom:34px}
  #contenu .rm-benefits-grid>.cta-tel{margin-top:-6px}
  /* Renforcement musculaire : les deux cartes de texte se suivent, puis la tour et son bouton ferment la section (Virginie,
     23/10 : la carte bleue arrivait seule après le bouton). */
  #contenu .rm-benefits-grid>.rm-card-sky{order:1}
  #contenu .rm-benefits-grid>.rm-tower{order:2}
  #contenu .rm-benefits-grid>.cta-tel{order:3}
  /* Même règle, mesurée sur le bas VISIBLE du bloc (revue-telephone/mesurer.py, 23/10) : la dernière ligne d'accordéon de
     Hyrox finit 22 px au-dessus de sa boîte, les disques de la barre de Renforcement 45 px, et la carte de Drainage gardait
     60 px de marge prévus pour l'ordinateur. */
  #contenu .hx-coach-grid+.cta-tel{margin-top:12px}
  #contenu .rm-activities .cta-tel{margin-top:-11px}
  #contenu .dl-flow-grid{padding-bottom:10px}
  #accueil .v-goals-grid:has(+.cta-tel){padding-bottom:0}   /* 46 px sur tablette, sous les objectifs */
  /* ATHX (Virginie, 23/10) : les onglets de la compétition centrés, comme ceux de l'accueil ; la pastille « Les 6 zones
     d'une compétition » sur une ligne (elle passait sur deux), en 14 à 16 px selon la largeur de l'écran. */
  #contenu .at-tab-list{justify-content:center}
  /* Coaching perso, fin de page centrée : l'icône et « Appelez-nous au … » restent ensemble, le groupe au milieu, le
     texte calé contre l'icône (Virginie, 23/10 : l'icône restait à gauche, le texte centré loin d'elle). */
  #contenu .v-closing-content .cp-phone-line{flex-direction:column;justify-content:center;gap:10px}
  #contenu .v-closing-content .cp-phone-line>span{text-align:center}
  /* Première section sous la bande : 56 px au-dessus du titre, comme les autres pages (Coaching perso et Remise en forme
     gardaient les 96 px de l'accueil — Virginie, 23/10). */
  #contenu .v-section.cp-further,#contenu .v-section.rf-start{padding-top:56px}
  /* Remise en forme : le chapô sous « Quelles activités… » centré avec son titre (Virginie, 23/10 : « justifie ou centre »). */
  #contenu .rf-lead p{text-align:center}
  /* ATHX (« Pourquoi intégrer l'ATHX… ») et Coaching perso (« Un accompagnement sur mesure… ») : les paragraphes centrés
     avec leur titre (Virginie, 23/10). */
  #contenu .at-why-text p,#contenu .cp-further-copy p{text-align:center}
  /* La salle : les onglets de marques et les étiquettes posées sur la photo centrés (Virginie, 23/10). */
  #contenu .ls-brands,#contenu .ls-panel ul{justify-content:center}
  /* La fin de page remonte de 70 px sur la section qui la précède (son coin arrondi passe sur le fond du dessus) ; sur
     téléphone, cette section n'avait plus que 56 px en bas, et sa dernière carte touchait la fin de page (Virginie, 23/10,
     Planning, Médecine chinoise, Drainage). 56 px d'air visibles comme ailleurs : 56 + 70. */
  #contenu .pl-courses,#contenu .mc-access,#contenu .dl-access,#contenu .ls-access,#contenu .rf-noneed{padding-bottom:126px}
  /* Médecine chinoise et Drainage : le texte de Merry centré (Virginie, 23/10). */
  #contenu .mc-merry-text p,#contenu .dl-merry-text p{text-align:center}
  /* Drainage : 40 px de moins entre « …avec Merry » et le panneau « Pôle santé à l'étage » (Virginie, 23/10). Le haut du
     bloc est vide (l'escalier est posé en bas) : le remonter ne fait rien chevaucher. */
  #contenu .dl-floor{margin-top:-40px}
  /* Haut des pages intérieures (hors Contact et Réserver) : 20 px d'air de plus sous le visuel, avant la bande
     (Virginie, 23/10 : « que ça respire un peu »). */
  body:not(.co-page):not(.re-page) #contenu .hy-hero-grid{padding-bottom:64px}
  /* Renforcement musculaire : un peu moins d'air sous « Renforcement » souligné (Virginie, 23/10 : 58 px entre les deux
     lignes, 53 maintenant ; les autres lignes du titre en ont 48). */
  .rm-page .hy-hero-copy .he-highlight:has(+ .sans-coupure)::after{vertical-align:-.375em}
  /* Coaching perso : la carte des tarifs porte une ombre fluo de 12 px à droite ; décalée de 6 px vers la gauche, carte et
     ombre ont autant d'air de chaque côté (Virginie, 23/10 : « plus de marge à gauche qu'à droite »). */
  #contenu .cp-ticket{transform:translateX(-6px)}
  /* Même règle pour toutes les cartes pleine largeur à ombre décalée (Virginie, 23/10, trouvé sur Coaching perso, La salle
     et Drop-in) : l'ombre prend 6 à 12 px à droite, la carte se décale de la moitié pour que carte + ombre aient autant d'air
     de chaque côté. `translate` s'ajoute aux inclinaisons existantes sans les remplacer. Liste tirée de la mesure des 16
     pages (bord gauche de la carte contre bord droit de son ombre). */
  #accueil .v-goal{translate:-4px 0}
  #accueil .c-health-card,#accueil .c-phone-shell{translate:-5px 0}
  #accueil .c-health-drawer{translate:-5.5px 0}
  #accueil .c-results-chapters>article{translate:-6px 0}
  #contenu .hy-intro-photo,#contenu .hx-coach-photo,#contenu .at-panel,#contenu .ff-what-card,#contenu .cp-duo,
  #contenu .rf-tuner,#contenu .rm-card,#contenu .pl-note,#contenu .co-form-carte,#contenu .re-card{translate:-5px 0}
  #contenu .at-zone,#contenu .rf-strike-yes{translate:-4px 0}
  #contenu .ff-board{translate:-3.5px 0}
  #contenu .co-carte-infos,#contenu .co-map,#contenu .re-window{translate:-3px 0}
  #contenu .di-card{translate:-6px 0}
  /* Tablette de 900 à 1 023 px : l'étiquette « PORNIC / 44 » mordait de 1 à 3 px sur le bas de la vidéo du haut de page
     (règle des sites : un mot décoratif ne passe jamais sur une photo) ; 4 px plus bas. */
  @media(min-width:900px){#contenu .hx-hero-art .hx-stamp{bottom:-17px}}
  /* Accueil, tablette de 851 à ~910 px : « Quels résultats attendre avec nos entraînements ? » restait sur une ligne
     (insécable au-dessus de 850 px) et sortait de l'écran, la page défilait sur le côté. Il revient à la ligne s'il ne
     tient pas ; de 910 à 1 023 px il tient, rien ne change. */
  #accueil .v-results .v-title{white-space:normal}
  /* Première visite : la carte suit la frise, son ombre touchait presque le bord ; 10 px de moins pour garder la marge de
     la page à droite. */
  #contenu .pv-moment-card{margin-right:10px}
  /* La salle : trois cartes plus larges que leur colonne (un nom de commune insécable les poussait), l'ombre sortait de
     l'écran ; elles reprennent la largeur de la colonne, et le tableau des trajets un peu moins de marge intérieure. */
  #contenu .ls-row>*,#contenu .ls-access-grid>*{min-width:0}
  #contenu .ls-board{padding-left:20px;padding-right:20px}
  #contenu .ls-departure{padding-left:0;padding-right:0}
  #contenu .ls-departure-name{flex-wrap:wrap;gap:8px}   /* à 320 px, « Saint-Michel-Chef-Chef » et « 11 min » ne tiennent plus côte à côte : la durée passe dessous */
  #contenu .hx-section .at-bridge-pill{white-space:nowrap;gap:10px;padding:13px 20px;letter-spacing:.01em;font-size:clamp(14px,4.3vw,16px)}
}
/* Planning sur téléphone, comme un autre site TDB (Virginie, 22/10 : « j'aime pas le scroll sur la droite ») : les jours les uns
   sous les autres, et dans chaque jour les créneaux par moment de la journée (titres posés par le script du planning,
   liens_site.py), en tuiles sur deux colonnes, l'heure au-dessus du cours. */
.v2c.c-fluo .c-plan-moment{display:none}
@media(max-width:560px){
  .v2c.c-fluo .c-planning-days{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:minmax(0,1fr);gap:14px;overflow:visible;scroll-snap-type:none;padding:0}
  .v2c.c-fluo .c-plan-day>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .v2c.c-fluo .c-plan-slot{grid-template-columns:minmax(0,1fr);gap:3px;align-content:center;min-height:62px;padding:9px 10px 9px 12px}
  .v2c.c-fluo .c-plan-slot strong{font-size:13.5px}
  .v2c.c-fluo .c-plan-moment{display:block;grid-column:1/-1;margin:6px 0 0;color:var(--night);font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
  .v2c.c-fluo .c-plan-moment:first-child{margin-top:0}
  .v2c.c-fluo .c-plan-moment[hidden]{display:none}
  /* Un filtre actif : les jours sans créneau retenu disparaissent (comme un autre site TDB) — sauf si aucun jour n'en a, pour garder le message. */
  .v2c.c-fluo .c-planning-days:has(.c-plan-day:not(.is-empty)) .c-plan-day.is-empty{display:none}
}
