/* The site's exact wordmark, fonts, copy and components, with the approved 3D scene. */
:root{color-scheme:light;--scene-opacity:1}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{background:#f9fbff}
.fixed-scene{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;opacity:var(--scene-opacity)}
.fixed-scene canvas{display:block;width:100%;height:100%;max-width:none}
#fallback{position:absolute;inset:20% 5% 15% 45%;width:50%;height:65%;object-fit:contain}
#fallback[hidden]{display:none}
.scene-shade{position:absolute;inset:0;background:linear-gradient(90deg,#f9fbff52,transparent 58%),linear-gradient(0deg,#f9fbff88,transparent 18%);pointer-events:none}
.right-shade{position:absolute;inset:0;background:linear-gradient(270deg,#f9fbffde,transparent 66%);opacity:var(--right-shade,0)}
.header{position:fixed;z-index:20;top:0;left:4.3%;right:4.3%;width:91.4%;max-width:none;margin:0;height:100px;padding:28px 0;border-bottom:1px solid #d6deeb8a;background:linear-gradient(#f9fbfff2,#f9fbffcc 70%,#f9fbff00);isolation:isolate}
.header .wordmark{white-space:nowrap;flex-shrink:0}
#site-main,.footer{position:relative;z-index:2}
.wrap{max-width:1440px;padding-left:6vw;padding-right:6vw}
.header.wrap{padding-left:0;padding-right:0}
.hero{min-height:max(900px,112svh);padding-top:clamp(175px,21svh,250px);padding-bottom:130px}
.hero .h1{font-size:clamp(42px,4.15vw,65px);line-height:1.07;max-width:47%;font-weight:500;letter-spacing:-.04em;text-wrap:initial}
.hero .eyebrow{font-size:11px;letter-spacing:.13em;max-width:47%;margin-bottom:26px}
.hero .intro{font-size:17px;line-height:1.65;max-width:42%;margin-top:30px}
.hero__actions{max-width:47%;margin-top:34px;gap:22px}
.hero__actions .btn{font-size:14px;padding:14px 25px}
.hero__actions .link-underline{font-size:14px}
#site-main>.section{background:#f9fbffed;border-top-color:#d6deeb99}
#site-main>.section--alt{background:#f5f8fdeb}
#site-main>.section--dark{background:#10151ef5}
.card,.panel,.map-card,.form,.sent{background:#ffffffed;border-color:#dbe3ef}
#site-main>.club-intro{background:transparent;min-height:94svh;display:flex;align-items:center;border:0}
.club-intro>.split{width:100%;grid-template-columns:1fr 1fr;gap:8vw}
.club-intro .split>div:first-child{align-self:start}
.club-intro .split>div:last-child{padding:38px;border:1px solid #ffffffa6;border-radius:24px;background:#f9fbffd9;backdrop-filter:blur(16px)}
.club-intro .eyebrow{color:#5b708c}
.footer{background:#f7f9fdf5;padding-bottom:50px}
.motion-controls{position:fixed;right:26px;bottom:22px;z-index:30;pointer-events:none}
.motion-controls button{pointer-events:auto;display:flex;align-items:center;gap:8px;border:1px solid #b7c5d980;border-radius:30px;background:#f9fbfddd;padding:11px 16px;color:#44536c;font:11px var(--sans);backdrop-filter:blur(12px);cursor:pointer}
.motion-controls svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round}
.progress[hidden]{display:none}
body:not([data-page="home"]) #site-main{padding-top:100px}
body:not([data-page="home"]) .fixed-scene{opacity:.18}
body[data-page="contact"] #site-main>.wrap{min-height:calc(100svh - 160px)}
body[data-page="legal"] #site-main>.wrap{background:#f9fbffdf}
.form-preview-note{font-size:12px;line-height:1.6;color:#6b7280;margin:0}
.form-preview-note a{text-decoration:underline;text-underline-offset:3px}
@media(min-width:1500px){.wrap{max-width:1600px}.hero .h1{max-width:600px}.hero .intro{max-width:530px}}
@media(max-width:1000px) and (min-width:701px){.nav{gap:22px}.header{left:5%;right:5%;width:90%}.hero .h1{font-size:4.8vw;max-width:48%}.hero .intro{font-size:16px}.hero__actions{gap:15px}.club-intro>.split{gap:4vw}.club-intro .split>div:last-child{padding:25px}.wrap{padding-left:5vw;padding-right:5vw}}
@media(max-width:700px){
 .header{height:auto;min-height:98px;padding:17px 0 13px;left:24px;right:24px;width:auto;flex-wrap:wrap;gap:12px;background:linear-gradient(#f9fbfff7 80%,#f9fbffdd);border-bottom:1px solid #d6deeb8a}
 .header .wordmark{font-size:19px}.header .nav{display:flex!important;gap:19px;flex-wrap:wrap;width:100%;font-size:12px}
 .header .nav>a{display:inline-flex!important}.header .nav .btn{font-size:11px;padding:8px 12px;margin-left:auto}
 .wrap{padding-left:25px;padding-right:25px}
 .hero{padding-top:140px;padding-bottom:340px;min-height:112svh}
 .hero .eyebrow{max-width:none;font-size:10px;letter-spacing:.11em;margin-bottom:20px}
 .hero .h1{font-size:clamp(32px,8.7vw,42px);line-height:1.08;max-width:100%;letter-spacing:-.035em}
 .hero .intro{max-width:100%;font-size:14px;line-height:1.55;margin-top:22px}
 .hero__actions{max-width:none;margin-top:23px;gap:15px}.hero__actions .btn{font-size:12px;padding:12px 18px}.hero__actions .link-underline{font-size:12px}
 #site-main>.club-intro{min-height:0;background:#f9fbfff0}.club-intro>.split{display:block}.club-intro .split>div:first-child>div{display:none}.club-intro .split>div:last-child{padding:0;background:none;border:0;backdrop-filter:none}
 .pad{padding-top:65px;padding-bottom:65px}.pad-lg{padding-top:65px;padding-bottom:65px}
 .right-shade{display:none}.scene-shade{background:linear-gradient(0deg,#f9fbff99,transparent 15%,transparent 90%,#f9fbff55)}
 .motion-controls{right:16px;bottom:14px}.motion-controls button{font-size:10px;padding:10px 13px}
 body:not([data-page="home"]) #site-main{padding-top:108px}body[data-page="contact"] #site-main>.wrap{padding-top:50px!important;padding-bottom:75px!important}
 .footer{padding-bottom:65px}.form{padding:30px 23px}
}
@media(max-width:370px){.header{left:20px;right:20px}.header .nav{gap:12px;font-size:11px}.header .nav .btn{padding:7px 9px;font-size:10px}.hero__actions{gap:14px}.hero__actions .btn{padding:11px 14px}.hero__actions .link-underline{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{.fixed-scene,.motion-controls{display:none}.header{position:static}#site-main{padding-top:0!important}body,#site-main>.section{background:white}}

/* Human-led support: a shared catalogue across Home and Services. */
.support-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:70px;margin-bottom:46px}
.support-heading .h2{margin:0;font-size:clamp(32px,3vw,46px);line-height:1.14;letter-spacing:-.035em;font-weight:500}
.support-heading>p{max-width:400px;margin:0;color:#667183;font-size:16px;line-height:1.7}
.support-home .eyebrow,.support-catalogue .eyebrow{font-size:11px;letter-spacing:.15em}
.mission-selector{display:grid;grid-template-columns:minmax(280px,.88fr) minmax(0,1.3fr);gap:30px;align-items:stretch}
.mission-tabs{display:flex;flex-direction:column;border-top:1px solid #d8e0ec}
.mission-tabs button{display:grid;grid-template-columns:26px 1fr 18px;align-items:center;gap:18px;text-align:left;flex:1;min-height:76px;padding:19px 18px;border:0;border-bottom:1px solid #d8e0ec;background:transparent;font:500 17px var(--sans);color:#596779;cursor:pointer;transition:background .2s,color .2s}
.mission-tabs button:hover{background:#edf2f9;color:#131417}
.mission-tabs button[aria-selected="true"]{background:#172335;color:#fff;border-radius:12px;border-bottom-color:transparent}
.mission-number{font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:.06em;color:#5f6b7d}
.mission-tabs button>span:last-child{font-size:17px;text-align:right;opacity:.7}
.mission-panel{position:relative;overflow:hidden;background:linear-gradient(145deg,#fff 25%,#f1f6fe);border:1px solid #dce5f0;border-radius:24px;padding:clamp(30px,3.4vw,55px);display:flex;flex-direction:column}
.mission-panel::before{content:'';position:absolute;width:230px;height:230px;border:1px solid #afc5e340;border-radius:50%;top:-140px;right:-60px;box-shadow:0 0 0 20px #adc6e90b,0 0 0 40px #adc6e90b,0 0 0 60px #adc6e908;pointer-events:none}
.mission-eyebrow{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:#667f9f;margin:0 0 32px}
.mission-panel h3{font-size:clamp(26px,2.5vw,38px);line-height:1.14;letter-spacing:-.035em;font-weight:500;margin:0 0 20px;max-width:480px}
.mission-description{font-size:16px;line-height:1.7;color:#667183;margin:0;max-width:500px}
.mission-panel ul{list-style:none;padding:0;margin:28px 0 34px;display:grid;gap:11px}
.mission-panel li{position:relative;padding-left:21px;font-size:14px;color:#465368;line-height:1.5}
.mission-panel li::before{content:'✓';position:absolute;left:0;top:0;color:#6682a8;font-size:12px}
.mission-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:auto}
.mission-actions .btn{font-size:13px;padding:13px 21px}.mission-more{font-size:13px;color:#51677f}.mission-more span{margin-left:6px}
.support-commitments{display:flex;flex-wrap:wrap;justify-content:center;gap:45px;margin-top:35px;font-size:12px;letter-spacing:.01em;color:#5f6b7d}
.support-commitments span::before{content:'·';padding-right:12px;color:#6381a8}
.service-jumps{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.service-jumps a{padding:11px 20px;border:1px solid #ccd7e7;border-radius:99px;background:#ffffffb8;font-size:13px;color:#4a617f}
.service-jumps a:hover{background:#172335;color:#fff}
.support-catalogue h2,.support-process h2{font-size:clamp(30px,3vw,44px);font-weight:500;line-height:1.16;letter-spacing:-.03em;max-width:800px;margin-bottom:23px}
.support-catalogue .prose{margin-top:0;margin-bottom:40px;max-width:770px}
.support-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.support-card{display:flex;flex-direction:column;border:1px solid #d8e2ee;border-radius:18px;padding:32px;background:#ffffffee;scroll-margin-top:125px}
.support-index{font-size:11px;color:#8a9bb4;letter-spacing:.1em;margin-bottom:26px}
.support-card h3{font-size:23px;letter-spacing:-.025em;font-weight:500;line-height:1.25;margin:0 0 15px}
.support-card>p{font-size:14px;line-height:1.65;color:#67758a;margin:0 0 22px}
.support-card ul{padding-left:17px;margin:0 0 30px;display:grid;gap:9px;font-size:13px;line-height:1.5;color:#46566f}
.support-card ul li::marker{color:#8fa8c8}
.support-card footer{margin-top:auto;border-top:1px solid #e3e9f2;padding-top:20px}
.support-link{font-size:12px;color:#496386}
.support-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:40px}
.support-step{border-top:1px solid #c9d7e8;padding-top:22px}
.support-step h3{font-weight:500;font-size:21px;line-height:1.3;letter-spacing:-.015em;margin:0 0 13px}
.support-step p{font-size:15px;line-height:1.7;color:#6b788b;margin:0}
.support-faq{margin-top:55px;max-width:900px}.support-faq details{border-bottom:1px solid #dce3ee;padding:20px 0}.support-faq summary{font-size:17px;cursor:pointer;line-height:1.5}.support-faq details p{font-size:15px;line-height:1.7;color:#64738a;max-width:750px;margin:17px 0 5px}
.field select{display:block;width:100%;appearance:auto;border:1px solid #dfe3e8;border-radius:10px;padding:13px 14px;background:#fff;color:#343f51;font:15px var(--sans)}
@media(max-width:1000px){.support-heading{gap:35px}.support-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mission-selector{grid-template-columns:minmax(250px,1fr) minmax(0,1.25fr);gap:20px}.mission-tabs button{font-size:15px;gap:12px;padding:18px 13px}.mission-panel{padding:30px}}
@media(max-width:700px){.support-heading{display:block;margin-bottom:30px}.support-heading>p{margin-top:24px;font-size:14px}.support-heading .h2{font-size:32px}.mission-selector{grid-template-columns:1fr;gap:25px}.mission-tabs button{min-height:57px;font-size:14px;padding:15px 13px}.mission-panel{padding:28px 24px;border-radius:18px;min-height:445px}.mission-panel h3{font-size:29px}.mission-eyebrow{margin-bottom:24px}.mission-description{font-size:14px}.mission-panel li{font-size:13px}.mission-actions{gap:18px}.mission-more{font-size:12px}.support-commitments{gap:12px 25px;font-size:11px;justify-content:flex-start}.support-grid,.support-process-grid{grid-template-columns:1fr}.support-card{padding:28px}.support-card h3{font-size:22px}.support-process-grid{gap:28px}.service-jumps{gap:8px}.service-jumps a{font-size:12px;padding:9px 13px}.support-faq summary{font-size:16px}}

/* Editorial introduction: shorter copy and a softer hierarchy. */

.club-intro .split>.club-intro__copy{padding:clamp(30px,3.5vw,54px);border:1px solid #ffffffb3;border-radius:28px;background:linear-gradient(135deg,#f9fbfff0,#f9fbffe0);box-shadow:0 16px 60px #334b7305;backdrop-filter:blur(20px)}
.club-intro__copy .eyebrow{font-size:10px;font-weight:500;letter-spacing:.18em;color:#55697f;margin:0 0 27px}
.club-intro__title{font-family:var(--sans);font-size:clamp(30px,2.65vw,42px);font-weight:400;line-height:1.13;letter-spacing:-.035em;margin:0 0 29px;color:#252c37}
.club-intro__title em{display:inline-block;font-family:var(--sans);font-style:normal;font-size:1em;font-weight:400;line-height:1.1;letter-spacing:-.025em;color:#526b8a}
.club-intro__lead{font-size:17px;line-height:1.65;font-weight:400;letter-spacing:-.01em;color:#424f61;max-width:38ch;margin:0}
.club-intro__detail{font-size:15px;line-height:1.75;color:#657184;max-width:44ch;margin:20px 0 0}
@media(max-width:1000px) and (min-width:701px){.club-intro .split>.club-intro__copy{padding:28px}.club-intro__title{font-size:30px}.club-intro__lead{font-size:16px}.club-intro__detail{font-size:15px}}
@media(max-width:700px){.club-intro__visual{display:none}.club-intro .split>.club-intro__copy{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}.club-intro__copy .eyebrow{margin-bottom:23px}.club-intro__title{font-size:clamp(30px,8.2vw,39px);margin-bottom:26px}.club-intro__lead,.club-intro__detail{font-size:16px;line-height:1.7}.club-intro__detail{margin-top:18px}}

/* Keep the glossy logo in a clear visual lane beside the lower chapters. */
.club-reveal{display:none}
@media(min-width:1001px){
 body[data-page="home"] #site-main>.club-chapter{background:linear-gradient(90deg,transparent 33%,#f9fbffeb 46%,#f9fbfff5 100%);border-top-color:#d6deeb66}
 .club-chapter>.wrap{width:56%;max-width:1020px;margin:0 0 0 44%;padding:86px 5vw 86px 2.2vw;min-height:75svh}
 .club-chapter>.split{display:block}
 .club-chapter .support-heading{display:block;margin-bottom:32px}
 .club-chapter .support-heading>p{margin-top:24px;max-width:550px}
 .club-chapter .support-heading .h2{font-size:clamp(30px,2.7vw,42px)}
 .club-chapter .mission-selector{display:flex;flex-direction:column;gap:24px}
 .club-chapter .mission-tabs{display:grid;grid-template-columns:1fr 1fr;border-top:0;gap:7px}
 .club-chapter .mission-tabs button{min-height:65px;font-size:14px;gap:10px;padding:14px 12px;border:1px solid #d8e0ec;border-radius:10px;background:#f9fbfff2}
 .club-chapter .mission-tabs button[aria-selected="true"]{background:#172335;color:white;border-color:#172335}
 .club-chapter .mission-panel{padding:32px}
 .club-chapter .mission-panel h3{font-size:32px}
 .club-chapter .support-commitments{gap:14px 25px;justify-content:flex-start;font-size:11px}
 .club-chapter .grid-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 .club-chapter .card{padding:28px 24px}
 .club-chapter .h2{font-size:32px;margin-bottom:32px}
 .club-chapter .steps{padding:8px 28px;background:#ffffffed;border:1px solid #dbe3ef;border-radius:22px}
 .club-chapter .step{display:grid;grid-template-columns:25px 1fr;gap:5px 18px;padding:18px 0}
 .club-chapter .step:last-child{border-bottom:0}
 .club-chapter .step__name{width:auto;font-size:18px}
 .club-chapter .step__text{grid-column:2;font-size:14px;padding:0;width:auto}
 .club-chapter .stats{gap:22px}
 .club-chapter .panel{margin-top:40px}
 body[data-page="home"] #site-main>.club-chapter.section--dark{background:linear-gradient(90deg,transparent 33%,#f9fbffeb 46%,#f9fbfff5 100%);color:#fff}
 .club-chapter.section--dark>.wrap{width:51%;margin:50px 5% 50px 44%;padding:44px 34px;background:#151e2bed;border:1px solid #283448;border-radius:26px;min-height:0}
 .club-chapter .reasons{grid-template-columns:1fr 1fr;gap:26px}
 .club-chapter #rendez-vous{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left}
 .club-chapter .statement{font-weight:400;font-size:clamp(26px,2.3vw,36px);line-height:1.4;margin:0}
}
@media(max-width:1000px){
 body[data-page="home"] #site-main>.club-chapter{background:transparent;border:0}
 .club-chapter>.club-reveal{display:block;height:min(78vw,400px);pointer-events:none}
 .club-chapter>.wrap{background:#f9fbfff5;border-top:1px solid #d6deeb99;border-bottom:1px solid #d6deeb99}
 .club-chapter.section--dark>.wrap{background:#151e2bf5}
}
@media print{.club-reveal{display:none!important}.club-chapter>.wrap{width:100%;margin:0;min-height:0}}
/* Phones: the scene keeps the large-viewport height, so the URL bar showing or hiding
   no longer resizes (and rebuilds) the 3D scene mid-scroll; no live blur above the animation. */
@supports(height:100lvh){.fixed-scene{bottom:auto;height:100lvh}}
@media(max-width:759px){.motion-controls button{backdrop-filter:none;background:#f9fbfdf2}}

/* Avoid recompositing a live blur over the WebGL scene on touch-sized layouts. */
@media(max-width:1000px){
 .club-intro .split>.club-intro__copy{backdrop-filter:none}
 .motion-controls button{backdrop-filter:none;background:#f9fbfdf2}
}

/* On phones, the signature opens and closes the page. The content stays compact. */
@media(max-width:700px){
 body[data-page="home"] .club-chapter>.club-reveal:not(.club-reveal--closing){display:none}
}
.motion-controls[hidden]{display:none}
/* Contrastes (23/10/2026) : textes secondaires lisibles, au moins 4,5:1 (alignés sur les pages de contenu) */
.eyebrow--faint{color:#5f6b7d}.panel__label{color:#5f6b7d}.footer__mark{color:#5f6b7d}.footer__links a{color:#5f6b7d}
.mission-tabs button[aria-selected="true"] .mission-number{color:#c6d0dc}
.form__note{color:#5f6b7d}
