:root{color-scheme:dark;--bg:#090b0f;--text:#f6f7fa;--muted:#a9afb9;--line:#ffffff24;--blue:#c0d7ff;--pad:clamp(24px,5vw,96px);font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);height:100svh;display:grid;grid-template-rows:76px minmax(0,1fr) 38px;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{color:inherit;border:0;cursor:pointer}button:disabled{opacity:.4;cursor:default}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #82baff;outline-offset:4px}img{display:block;max-width:100%}main{min-height:0;outline:none}button{background:none}.sr{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.skip{position:fixed;top:-60px;left:20px;padding:12px;background:white;color:black;z-index:80}.skip:focus{top:10px}.header{padding:0 var(--pad);display:flex;align-items:center;gap:56px;border-bottom:1px solid #ffffff12;background:#090b0ff2;z-index:5}.brand{font-size:30px;font-weight:800;letter-spacing:-1.6px;display:flex;align-items:baseline;gap:10px}.brand span{font-size:8px;font-weight:500;letter-spacing:1.5px;color:#cbd0d9}.header nav{display:flex;gap:30px;font-size:13px;color:#c3c8d0}.header nav a[aria-current=page]{color:white}.account{margin-left:auto;border:1px solid #ffffff28;border-radius:40px;background:linear-gradient(150deg,#ffffff15,#ffffff06);padding:10px 18px;font-size:12px}.account span{margin-left:10px}.footer{padding:0 var(--pad);display:flex;align-items:center;gap:20px;font-size:10px;color:#7f8795;border-top:1px solid #ffffff0e}.footer .prototype{margin-left:auto;letter-spacing:1.5px;font-size:8px}.footer button{color:#a5adba;font-size:10px}.footer button span{padding-left:4px}.eyebrow{font-size:10px;letter-spacing:.2em;font-weight:650;text-transform:uppercase;color:#b8c7da}.muted{color:var(--muted)}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:14px 24px;min-height:48px;border-radius:50px;font-size:14px;font-weight:650;white-space:nowrap}.primary{color:#111722;background:linear-gradient(140deg,#fff,#e6eaf1);box-shadow:0 2px 0 #ffffff50 inset,0 4px 24px #0002}.primary:hover{background:#fff}.secondary{border:1px solid #ffffff30;background:#ffffff0b}.secondary:hover{background:#ffffff17}.text-button{color:#bbd6ff;padding:6px 0;font-size:13px}.actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.home{position:relative;height:100%;isolation:isolate;overflow:hidden}.home picture{position:absolute;inset:0;z-index:-2}.home img{width:100%;height:100%;object-fit:cover;object-position:70% 0%}.home:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#06090fe6 0%,#070a1085 42%,#080b1000 75%),linear-gradient(0deg,#090b0ff2 0%,#090b0f00 40%)}.home-content{height:100%;padding:clamp(28px,5vh,58px) var(--pad);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:800px}.home h1{font-size:clamp(46px,5.4vw,92px);line-height:1.02;font-weight:650;letter-spacing:-.065em;margin:18px 0 16px}.home h1 span{color:#e0e8f5}.home-intro{font-size:clamp(15px,1.25vw,19px);line-height:1.5;max-width:460px;color:#d9e0eb}.week-label{display:flex;align-items:center;gap:9px;color:#cdd9e9;font-size:11px;margin-top:26px}.week-label:before{content:"";width:5px;height:5px;border-radius:50%;background:#d0e4ff;box-shadow:0 0 12px #9cc3ff}.home .actions{margin:26px 0 22px}.home small{font-size:10px;color:#b6becb;max-width:430px;line-height:1.5}.home-bottom{margin-top:24px;border-top:1px solid #ffffff24;padding-top:16px;display:flex;gap:25px;font-size:11px;color:#bec5d1}.home-bottom button{padding:0;font-size:11px;color:#d4dfef}.home-payment{color:#d3e2fa;font-size:13px}.home-payment strong{color:white}.home-proof{position:absolute;right:var(--pad);bottom:36px;text-align:right;color:#d2d6de;font-size:11px;line-height:1.6}.home-proof strong{display:block;color:#fff;font-size:14px;font-weight:500}.flow{height:100%;display:grid;grid-template-rows:60px minmax(0,1fr) 86px}.progress{margin:0 var(--pad);display:flex;align-items:center;gap:23px;border-bottom:1px solid var(--line)}.progress a{display:flex;gap:8px;align-items:center;color:#6e7889;font-size:11px}.progress a .dot{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;border:1px solid #ffffff20;font-size:10px}.progress a.active{color:#eef4ff}.progress a.active .dot{background:#d4e4ff;color:#142339;border-color:#d4e4ff}.progress a.done{color:#a3b6d1}.progress a.done .dot{color:#afcaff;border-color:#afcaff60}.progress .step-count{display:none}.stage{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,6vw,96px);padding:clamp(22px,4vh,46px) var(--pad);min-height:0;align-items:center}.intro{align-self:stretch;min-height:0;display:flex;flex-direction:column;justify-content:center}.intro h1{font-size:clamp(32px,3.5vw,59px);line-height:1.045;letter-spacing:-.05em;margin:15px 0}.intro>p{font-size:14px;line-height:1.6;max-width:390px;color:#aab5c6}.intro-photo{margin-top:24px;position:relative;max-height:42%;aspect-ratio:16/9;width:100%;max-width:510px;overflow:hidden;border-radius:14px;flex-shrink:1;min-height:100px;background:#202631}.intro-photo img{width:100%;height:100%;object-fit:cover;object-position:100% 0%}.intro-photo.team img{object-position:68% 0%}.intro-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#080d1450,transparent 45%)}.intro-photo small{position:absolute;z-index:1;bottom:14px;left:18px;font-size:10px;text-shadow:0 1px 8px #000}.choice-area{max-width:650px;width:100%;min-width:0}.section-label{display:block;font-size:11px;color:#b5bfd0;margin-bottom:12px}.segmented{display:flex;gap:3px;background:#ffffff07;border:1px solid #ffffff16;padding:4px;border-radius:11px;margin-bottom:20px;width:max-content;max-width:100%}.segmented button{padding:10px 17px;font-size:12px;border-radius:8px;color:#9ca8bb}.segmented button[aria-pressed=true]{background:linear-gradient(140deg,#44556e,#2d384c);color:white;box-shadow:0 1px 0 #ffffff18 inset}.choices{display:grid;gap:10px}.choice{border:1px solid #ffffff20;background:linear-gradient(145deg,#ffffff07,#ffffff01);padding:17px 19px;display:flex;align-items:center;gap:14px;text-align:left;border-radius:12px;transition:border-color .16s,background .16s}.choice:hover{background:#ffffff0d;border-color:#a7bbd05c}.choice[aria-pressed=true]{background:linear-gradient(135deg,#a0c4ff14,#a0c4ff05);border-color:#a8cbff}.choice .radio{width:18px;height:18px;border-radius:50%;border:1px solid #707c8f;margin-left:auto;flex-shrink:0}.choice[aria-pressed=true] .radio{background:#c1d9ff;border:5px solid #304970;box-shadow:0 0 0 1px #b5d5ff}.choice strong{display:block;font-size:14px;font-weight:550}.choice small{display:block;font-size:10px;color:#929fb4;margin-top:4px;line-height:1.4}.choice .num{font-size:27px;line-height:1;color:#bdcbe0;font-weight:400;letter-spacing:-1px}.help-line{font-size:11px;line-height:1.5;color:#8d9aad;margin-top:16px}.help-line button{color:#bdd7ff;font-size:11px;padding:0;text-decoration:underline;text-underline-offset:3px}.flow-bottom{padding:0 var(--pad);display:flex;align-items:center;gap:24px;border-top:1px solid var(--line);background:#10141a}.flow-bottom .back{padding:10px 0;color:#aeb8c8;font-size:12px}.flow-bottom .summary{font-size:11px;line-height:1.6;color:#b9c3d1;max-width:500px}.flow-bottom .summary strong{color:white;font-weight:500}.flow-bottom .primary{margin-left:auto}.month-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.month-row label{color:#aeb9ca;font-size:11px}.month-row select{background:#161c25;border:1px solid #ffffff25;border-radius:8px;padding:10px 14px;color:white;font-size:13px;min-width:180px}.week-grid{grid-template-columns:1fr 1fr}.week-grid .choice{min-height:100px}.volume-grid{display:flex;gap:9px;margin-bottom:18px}.volume-grid button{border:1px solid #ffffff25;border-radius:10px;padding:17px 0;flex:1;background:#ffffff06;font-size:25px;letter-spacing:-1px}.volume-grid button span{font-size:12px;letter-spacing:0;padding-left:4px}.volume-grid button[aria-pressed=true]{background:linear-gradient(140deg,#dfebff,#a8c4ed);color:#142843;border-color:#cde0ff}.offering{padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:14px}.offering h2{font-size:19px;letter-spacing:-.03em;margin-bottom:6px}.offering p{font-size:12px;color:#a6b1c1;line-height:1.6;max-width:350px}.price{font-size:27px;white-space:nowrap;letter-spacing:-1px}.price small{font-size:9px;display:block;color:#8d9aad;letter-spacing:0;text-align:right;margin-top:5px}.benefits{list-style:none;padding:0;margin:17px 0 0;display:grid;gap:10px;font-size:12px;color:#c1cad8}.benefits li:before{content:"✓";padding-right:11px;color:#b1cfff}.programme-list{padding:0;margin:0;list-style:none;display:grid;gap:0}.programme-list li{display:grid;grid-template-columns:35px 1fr 35px;gap:10px;padding:16px 0;border-top:1px solid var(--line)}.programme-list li>span{font-size:11px;color:#8293ac}.programme-list strong{font-size:13px;font-weight:500;display:block}.programme-list p{font-size:11px;color:#96a5bc;margin-top:5px;line-height:1.5}.programme-list b{font-size:11px;font-weight:400;color:#b8cbe6;text-align:right}.pager{display:flex;align-items:center;gap:14px;margin-top:12px;color:#8b9ab0;font-size:11px}.pager button{border:1px solid #ffffff20;border-radius:50%;width:32px;height:32px}.pager .push{margin-left:auto}.meeting{display:flex;gap:11px;align-items:start;border-top:1px solid var(--line);padding:14px 0 0;margin-top:14px}.meeting>span{color:#afcfff;font-size:19px}.meeting strong{font-size:12px;font-weight:550}.meeting p{font-size:11px;color:#9caabe;line-height:1.5;margin-top:4px}.lesson{display:grid;grid-template-columns:64px 1fr auto;gap:16px;align-items:center;border-bottom:1px solid var(--line);padding:16px 0}.lesson .day{font-size:22px;letter-spacing:-.6px}.lesson .day span{font-size:9px;color:#8293ac;display:block;text-transform:uppercase;letter-spacing:.7px}.lesson strong{font-size:12px;font-weight:500;display:block}.lesson p{font-size:11px;color:#8b9db7;margin-top:5px}.lesson button{border:1px solid #ffffff20;padding:8px 10px;border-radius:7px;font-size:10px;color:#b9d4ff}.availability{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.availability p{font-size:11px;color:#b8c5d7}.availability button{color:#bdd8ff;font-size:11px}.recap-list{margin:0}.recap-list>div{padding:16px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}.recap-list dt{color:#93a1b6;font-size:12px}.recap-list dd{margin:0;text-align:right;font-size:13px;max-width:67%}.recap-list dd small{display:block;color:#8b9aad;font-size:10px;margin-top:5px}.recap-total{margin:20px 0 12px;display:flex;justify-content:space-between;align-items:center;font-size:13px}.recap-total strong{font-size:36px;letter-spacing:-1px;font-weight:500}.recap-total small{color:#95a5bc;font-size:9px;margin-left:6px}.trust{font-size:11px;line-height:1.6;color:#9fadc0}.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.role-grid .choice{min-height:110px;display:block}.role-grid .choice small{margin-top:10px;line-height:1.5}.role-benefit{border-top:1px solid var(--line);padding:16px 0}.role-benefit strong{font-size:14px;display:block;font-weight:500}.role-benefit p{font-size:12px;color:#9eacc1;margin-top:6px;line-height:1.6}.code-number{font-size:clamp(72px,8vw,128px);letter-spacing:-7px;line-height:1;color:#d3e2fa}.code-number span{display:block;font-size:14px;letter-spacing:0;color:#adbed4;margin-top:15px}.code-stats{display:flex;gap:28px;margin:28px 0 18px}.code-stats div{font-size:24px}.code-stats small{display:block;font-size:10px;color:#899cb8;margin-top:5px}.payment-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.payment-options .choice{min-height:80px}.checkout-note{font-size:10px;line-height:1.5;color:#96a5ba;margin-top:15px}.end-title{font-size:45px!important}dialog{width:min(620px,calc(100% - 32px));max-height:85svh;overflow:auto;border:1px solid #ffffff2b;border-radius:22px;background:#171d27;color:white;padding:38px;box-shadow:0 30px 150px #000a}dialog::backdrop{background:#02050bbf;backdrop-filter:blur(10px)}.close{position:absolute;right:15px;top:13px;border-radius:50%;background:#ffffff0c;font-size:24px;width:32px;height:32px;color:#c1cad7}dialog h2{font-size:30px;letter-spacing:-1px;margin:12px 0 18px}dialog p{color:#b6c1d3;font-size:14px;line-height:1.65;margin:12px 0}dialog .primary{margin-top:20px}dialog ul{color:#b6c1d3;padding-left:19px;font-size:13px;line-height:1.8}dialog label{display:block;color:#aebed2;font-size:12px;margin:16px 0 6px}dialog select{padding:12px;width:100%;color:white;background:#222c3a;border:1px solid #ffffff30;border-radius:8px}.modal-days{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.modal-days button{padding:12px 0;border:1px solid #ffffff30;border-radius:9px;font-size:11px}.modal-days button[aria-pressed=true]{background:#bcd6fc;color:#10223c}.quiz-choice{display:block;width:100%;padding:14px;text-align:left;border:1px solid #ffffff2a;border-radius:10px;margin-top:10px}.quiz-choice.correct{background:#1d503f;border-color:#6cbe98}.quiz-result{font-size:13px;color:#b7dacb}.fader{animation:appear .28s ease both}@keyframes appear{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.fader{animation:none}*{transition:none!important}}
@media(min-width:761px) and (max-height:780px){body{grid-template-rows:64px minmax(0,1fr) 28px}.flow{grid-template-rows:47px minmax(0,1fr) 74px}.stage{padding-top:18px;padding-bottom:18px;gap:5vw}.intro h1{font-size:42px}.intro-photo{margin-top:15px;max-height:38%}.intro>p{font-size:12px}.choice{padding:13px 16px}.segmented{margin-bottom:14px}.week-grid .choice{min-height:82px}.home-content{padding-top:20px;padding-bottom:20px}.home h1{font-size:clamp(45px,5.4vw,74px);margin:13px 0}.home .actions{margin:20px 0 16px}.home-bottom{margin-top:18px;padding-top:12px}.home-intro{font-size:15px}.week-label{margin-top:18px}.programme-list li{padding:12px 0}.meeting{padding-top:10px;margin-top:10px}.recap-list>div{padding:12px 0}.lesson{padding:12px 0}.volume-grid button{padding:13px 0}.offering{padding:14px 0}.benefits{gap:8px;margin-top:12px}.home-proof{bottom:22px}.role-benefit{padding:12px 0}}
@media(max-width:900px){.header{gap:25px}.header nav{gap:20px}.brand span{display:none}.stage{gap:35px;grid-template-columns:.8fr 1.2fr}.progress{gap:15px}.progress a{font-size:10px;gap:6px}.intro h1{font-size:38px}.home-proof{display:none}}
@media(max-width:760px){:root{--pad:22px}body{grid-template-rows:58px minmax(0,1fr) 28px}.header{gap:18px}.brand{font-size:26px}.header nav{margin-left:auto;gap:16px;font-size:11px}.header nav a:first-child{display:none}.account{padding:8px 11px;font-size:10px;margin-left:0}.account span{display:none}.footer{font-size:8px}.footer .prototype{font-size:7px;letter-spacing:.7px}.footer button{font-size:9px}.home img{object-position:center 0%;height:66%;object-fit:cover}.home:after{background:linear-gradient(0deg,#090b0f 33%,#090b0fbb 52%,#090b0f00 80%)}.home-content{padding:18px var(--pad) 20px;justify-content:flex-end;max-width:none}.home-content>.eyebrow{font-size:8px;letter-spacing:.15em}.home h1{font-size:clamp(36px,10vw,48px);margin:13px 0 10px}.home-intro{font-size:13px;line-height:1.45;max-width:330px}.week-label{font-size:9px;margin-top:15px}.home .actions{gap:11px;margin:17px 0 15px;flex-wrap:nowrap;width:100%}.primary,.secondary{padding:12px 17px;font-size:12px;gap:10px;min-height:44px}.home .actions .primary{flex:1}.home .actions .text-button{font-size:11px}.home-payment{font-size:11px}.home small{font-size:9px;max-width:310px}.home-bottom{gap:20px;margin-top:16px;padding-top:12px;font-size:10px}.home-bottom button{font-size:10px}.flow{grid-template-rows:44px minmax(0,1fr) 79px}.progress{gap:6px;justify-content:space-between}.progress a{font-size:0;gap:0}.progress a .dot{width:22px;height:22px;font-size:9px}.progress a.active{font-size:10px;gap:6px}.progress .step-count{display:block;margin-left:auto;font-size:10px;color:#9dabc0}.stage{display:flex;flex-direction:column;justify-content:center;gap:20px;padding:20px var(--pad);align-items:stretch}.intro{flex:none;display:block;align-self:auto}.intro .eyebrow{font-size:8px}.intro h1{font-size:32px;line-height:1.08;margin:9px 0}.intro h1 br{display:none}.intro>p{font-size:12px;line-height:1.5;max-width:100%}.intro-photo{display:none}.choice-area{max-width:none}.section-label{font-size:10px;margin-bottom:8px}.segmented{margin-bottom:14px;width:100%}.segmented button{flex:1;padding:9px 10px;font-size:11px}.choices{gap:8px}.choice{padding:13px 14px;border-radius:10px}.choice strong{font-size:12px}.choice small{font-size:9px;margin-top:3px}.choice .radio{width:16px;height:16px}.help-line{font-size:10px;margin-top:12px}.help-line button{font-size:10px}.flow-bottom{padding:10px var(--pad);gap:16px;flex-wrap:wrap;position:relative}.flow-bottom .summary{font-size:9px;max-width:42%;line-height:1.4;order:1}.flow-bottom .back{padding:6px 0;font-size:11px;order:0}.flow-bottom .primary{order:2;padding:12px 16px;font-size:12px;min-height:42px;max-width:65%;white-space:normal}.flow-bottom .summary{display:none}.week-grid .choice{min-height:84px}.choice .num{font-size:22px}.month-row{margin-bottom:14px}.month-row select{font-size:12px;padding:10px;min-width:160px}.volume-grid{gap:7px;margin-bottom:14px}.volume-grid button{font-size:23px;padding:12px 0}.volume-grid button span{font-size:10px}.offering{padding:14px 0}.offering h2{font-size:17px}.offering p{font-size:11px}.price{font-size:22px}.benefits{font-size:11px;gap:8px;margin-top:12px}.programme-list li{padding:13px 0;grid-template-columns:24px 1fr 24px;gap:8px}.programme-list strong{font-size:12px}.programme-list p{font-size:10px}.meeting{padding-top:12px;margin-top:12px}.meeting strong{font-size:11px}.meeting p{font-size:10px}.lesson{padding:13px 0;grid-template-columns:50px 1fr auto;gap:9px}.lesson .day{font-size:20px}.lesson strong{font-size:11px}.lesson p{font-size:10px}.lesson button{font-size:9px;padding:8px}.recap-list>div{padding:13px 0}.recap-list dt{font-size:11px}.recap-list dd{font-size:12px}.recap-total{margin:17px 0 10px}.recap-total strong{font-size:30px}.trust{font-size:10px}.role-grid{gap:9px}.role-grid .choice{min-height:96px;padding:13px}.role-benefit{padding:12px 0}.role-benefit p{font-size:11px}.role-benefit strong{font-size:13px}.code-number{font-size:90px}.code-stats{gap:28px;margin:20px 0 14px}.code-stats div{font-size:23px}.payment-options .choice{padding:12px;min-height:73px}.checkout-note{font-size:9px}.end-title{font-size:32px!important}dialog{padding:28px 23px;border-radius:18px}dialog h2{font-size:26px}dialog p{font-size:12px}}
@media(max-width:760px) and (max-height:740px){.stage{gap:14px;padding-top:14px;padding-bottom:14px}.intro h1{font-size:28px}.intro>p{font-size:11px}.choice{padding:10px 13px}.choice strong{font-size:11px}.choice small{font-size:9px}.home h1{font-size:36px}.home .home-intro{font-size:12px}.home-bottom{margin-top:12px;padding-top:10px}.home .actions{margin:14px 0 12px}.home .eyebrow{font-size:7px}.home .week-label{margin-top:12px}.help-line{margin-top:10px}.lesson{padding:10px 0}.programme-list li{padding:10px 0}.role-benefit{padding:10px 0}.role-benefit p{font-size:10px}.flow{grid-template-rows:38px minmax(0,1fr) 68px}.benefits{font-size:10px;gap:7px}.offering{padding:10px 0}.recap-list>div{padding:10px 0}.recap-total{margin:12px 0 8px}.code-stats{margin:15px 0}.meeting{margin-top:10px;padding-top:10px}.meeting p{font-size:9px}}
/* Keep all controls reachable when text is enlarged or a window is unusually short. */
@media(max-height:570px){body{height:auto;min-height:100svh;grid-template-rows:58px minmax(0,1fr) 28px}.home{min-height:570px}.flow{min-height:660px}.stage{min-height:490px}}

@media(max-width:760px) and (max-height:740px){[data-screen="preparation"] .stage{gap:10px;padding-top:10px;padding-bottom:10px}[data-screen="preparation"] .segmented{margin-bottom:10px}[data-screen="preparation"] .section-label{margin-bottom:6px}[data-screen="preparation"] .volume-grid{margin-bottom:10px}[data-screen="preparation"] .benefits{margin-top:8px;gap:5px}[data-screen="preparation"] .benefits li:last-child{display:none}[data-screen="preparation"] .help-line{margin-top:7px}}

/* Les avantages : une page, cinq profils, les preuves visibles. */
.advantage-nav{margin:0 var(--pad);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:8px}
.advantage-nav a{padding:10px 19px;border:1px solid transparent;border-radius:30px;font-size:12px;color:#a4b1c4;white-space:nowrap}
.advantage-nav a[aria-current=page]{color:#f4f8ff;border-color:#c0d7ff42;background:linear-gradient(140deg,#b3cefc20,#8299ba0a);box-shadow:0 1px 0 #ffffff10 inset}
.advantage-nav a:hover{color:white;background:#ffffff09}
.advantage-page .stage{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,5vw,80px)}
.advantage-page .intro h1{font-size:clamp(35px,3.5vw,57px)}
.advantage-page[data-profile=moniteur] .intro h1{font-size:clamp(72px,7vw,112px);letter-spacing:-.065em;margin:12px 0 6px;line-height:1}
.rate-unit{font-size:.36em;letter-spacing:-.04em;color:#afc3de;font-weight:400}
.advantage-page .intro .rate-caption{font-size:12px;color:#99aac1;line-height:1.8;margin-bottom:16px}
.rate-caption strong{font-size:17px;color:#e5edfa;font-weight:500;letter-spacing:-.02em}
.advantage-page .intro-photo{max-height:36%;margin-top:22px}
.advantage-page .choice-area{max-width:720px}
.earnings-heading h2,.advantage-highlight h2{font-size:22px;font-weight:550;letter-spacing:-.035em;line-height:1.18}
.earnings-heading p,.advantage-highlight p{font-size:11px;color:#b1c0d5;line-height:1.5;margin-top:7px}
.earnings-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;margin:20px 0 10px;padding:0}
.earnings-list li{padding:0 12px;border-left:1px solid #ffffff22}
.earnings-list li:first-child{border-left:0;padding-left:0}
.earnings-list li:last-child{padding-right:0}
.earnings-list span{font-size:10px;color:#90a4c0;display:block;white-space:nowrap}
.earnings-list strong{display:block;font-size:23px;font-weight:500;letter-spacing:-.04em;margin:8px 0 5px;white-space:nowrap}
.earnings-list strong small{display:block;font-size:10px;font-weight:400;letter-spacing:0;color:#b6c7df;margin-top:2px}
.earnings-list b{display:block;font-size:18px;font-weight:600;letter-spacing:-.02em;color:#b9d4ff;white-space:nowrap}
.earnings-note{font-size:9px;line-height:1.5;color:#8496b0}
.advantage-list{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;margin-top:24px}
.advantage-item{position:relative;display:flex;gap:9px;align-items:start;text-align:left;border-top:1px solid #ffffff24;padding:16px 16px 16px 0;min-width:0}
.advantage-item strong{font-size:13px;line-height:1.35;display:block;color:#ecf2fc;font-weight:500}
.advantage-item small{display:block;font-size:10px;line-height:1.5;color:#94a6c0;margin-top:5px}
.benefit-check{color:#b9d4ff;font-size:12px;margin-top:2px;flex-shrink:0}
.benefit-more{position:absolute;right:0;top:16px;color:#8096b5;font-size:13px}
.advantage-item:hover strong{color:#b9d4ff}
.advantage-item:hover .benefit-more{color:white}
.advantage-page .flow-bottom .summary{font-size:10px}
.advantage-page .flow-bottom .primary{font-size:13px}
@media(min-width:761px) and (max-height:780px){
 .advantage-page .intro h1{font-size:38px}.advantage-page[data-profile=moniteur] .intro h1{font-size:78px}
 .advantage-page .intro .rate-caption{margin-bottom:10px;font-size:10px}.rate-caption strong{font-size:15px}
 .advantage-page .intro-photo{margin-top:14px;max-height:34%}
 .earnings-heading h2,.advantage-highlight h2{font-size:19px}.earnings-list{margin:15px 0 8px}
 .earnings-list strong{font-size:21px;margin:5px 0}.earnings-list b{font-size:17px}
 .advantage-list{margin-top:16px;column-gap:20px}.advantage-item{padding-top:12px;padding-bottom:12px}
 .advantage-item strong{font-size:12px}.advantage-item small{font-size:10px;margin-top:4px}.benefit-more{top:12px}
}
@media(max-width:760px){
 .advantage-page{grid-template-rows:48px minmax(0,1fr) 70px}
 .advantage-nav{gap:0;justify-content:space-between;margin:0 16px}.advantage-nav a{padding:8px 6px;font-size:9px}
 .advantage-page .stage{gap:18px;padding:18px var(--pad)}
 .advantage-page .intro h1{font-size:30px;margin:8px 0}
 .advantage-page .intro>p{font-size:11px;line-height:1.5}
 .advantage-page[data-profile=moniteur] .intro h1{font-size:60px;margin:7px 0 4px}
 .advantage-page .intro .rate-caption{font-size:9px;margin:0;line-height:1.45}
 .rate-caption br{display:none}.rate-caption strong{font-size:11px;margin-left:5px}
 .advantage-page[data-profile=moniteur] .intro>p:not(.rate-caption){display:none}
 .earnings-heading h2,.advantage-highlight h2{font-size:18px}.earnings-heading p,.advantage-highlight p{font-size:10px;margin-top:5px}
 .earnings-list{margin:14px 0 8px}.earnings-list li{padding:0 7px}.earnings-list span{font-size:9px}
 .earnings-list strong{font-size:19px;margin:6px 0 5px}.earnings-list strong small{font-size:9px}.earnings-list b{font-size:16px}
 .earnings-note{font-size:8px}.advantage-list{column-gap:15px;margin-top:17px}
 .advantage-item{gap:7px;padding:12px 12px 12px 0}.advantage-item strong{font-size:11px;line-height:1.35}
 .advantage-item small{font-size:9px;line-height:1.45;margin-top:4px}.benefit-check{font-size:10px}.benefit-more{font-size:11px;top:12px}
 .advantage-page .flow-bottom .primary{font-size:11px;max-width:80%}.advantage-page .flow-bottom{gap:12px}
}
@media(max-width:760px) and (max-height:740px){
 .advantage-page{grid-template-rows:42px minmax(0,1fr) 65px}
 .advantage-page .stage{gap:12px;padding-top:12px;padding-bottom:12px}
 .advantage-page .intro h1{font-size:25px}.advantage-page .intro>p{font-size:10px}
 .advantage-page[data-profile=moniteur] .intro h1{font-size:50px;margin:6px 0 3px}
 .earnings-heading h2,.advantage-highlight h2{font-size:16px}.earnings-heading p,.advantage-highlight p{font-size:9px}
 .earnings-list{margin:11px 0 7px}.earnings-list strong{font-size:17px;margin:4px 0}.earnings-list b{font-size:15px}
 .advantage-list{margin-top:12px;column-gap:13px}.advantage-item{padding-top:9px;padding-bottom:9px}
 .advantage-item strong{font-size:10px}.advantage-item small{font-size:9px;margin-top:3px}.benefit-more{top:9px}
}
@media(max-width:760px) and (max-height:740px){
 .advantage-page[data-profile=moniteur] .stage{gap:10px}
 .advantage-page[data-profile=moniteur] .advantage-item{padding-top:7px;padding-bottom:7px}
 .advantage-page[data-profile=moniteur] .benefit-more{top:7px}
}

/* Real service states remain readable without changing the one-screen journey. */
.service-message{font-size:12px;line-height:1.45;color:#c5d5eb;margin:8px 0}.service-message:empty{display:none}.service-message.error,[role=alert]{color:#ffb6b6}.footer nav{margin-left:auto;display:flex;gap:14px}.footer a{color:#a5adba}.network-status[hidden]{display:none}.network-status:not([hidden]){position:fixed;top:0;inset-inline:0;z-index:90;background:#7d2424;text-align:center;font-size:12px;padding:8px}dialog input{padding:12px;width:100%;color:white;background:#222c3a;border:1px solid #ffffff30;border-radius:8px}.school-row{margin-bottom:12px}.planning-options{margin-bottom:12px}.planning-options button{font-size:11px}.choice-area .exam-map{max-width:100%}
@media(max-width:760px){.footer nav{gap:10px;font-size:8px}.footer>span{display:none}.footer{gap:10px}.service-message{font-size:10px}.planning-options button{padding:8px 6px;font-size:10px}.school-row{margin-bottom:8px}.school-row select{max-width:65%;min-width:0}.school-row label{font-size:10px}.lesson{padding:9px 0}.planning-options{margin-bottom:8px}}
/* At extreme zoom or a short landscape viewport, retain access to all controls. */
@media(max-height:560px){body{height:auto;min-height:100svh;grid-template-rows:58px minmax(0,1fr) auto}.flow,.home{height:auto;min-height:calc(100svh - 100px)}.stage{min-height:480px}.home-content{min-height:620px}.footer{min-height:38px;flex-wrap:wrap}}

@media(min-width:761px) and (max-height:780px){main[data-screen=centre] .choice{padding:10px 14px}main[data-screen=centre] .choices{gap:6px}main[data-screen=centre] .segmented{margin-bottom:9px}main[data-screen=centre] .help-line{margin-top:10px}}
@media(max-width:760px) and (max-height:740px){main[data-screen=centre] .stage,main[data-screen=planning] .stage{gap:12px;padding-block:12px}main[data-screen=centre] .choice{padding:10px 12px}main[data-screen=planning] .intro>p{font-size:11px}main[data-screen=planning] .help-line{font-size:9px;margin-top:8px}main[data-screen=planning] .meeting{padding-top:8px;margin-top:8px}main[data-screen=planning] .meeting p{font-size:9px}main[data-screen=planning] .lesson{padding:8px 0}}

@media(max-width:760px) and (max-height:740px){main[data-screen=centre] .stage,main[data-screen=planning] .stage{gap:8px;padding-block:8px}}

/* Available dates and desired weeks are separate journeys, sharing the same cinema shell. */
.home-dates .home-content{max-width:900px}.home-dates h1{font-size:clamp(40px,4.8vw,78px)}
.home-dates .actions{gap:12px;flex-wrap:nowrap}.home-dates .actions .primary{padding-inline:22px}.home-dates .actions .secondary{padding-inline:20px}
.available-dates .stage{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.dates-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:10px;font-size:12px;color:#b1c4df}
.dates-toolbar .text-button{font-size:11px;flex-shrink:0}.available-date-list{display:grid}
.available-date{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 0;border-top:1px solid var(--line)}
.available-date:hover .available-date-copy strong,.available-date:hover .available-date-next{color:#d6e6ff}.available-date[aria-disabled=true]{opacity:.6;pointer-events:none}
.available-date-day{font-size:29px;line-height:1;text-align:center;letter-spacing:-.04em;color:#d7e6fc}
.available-date-day small{display:block;font-size:11px;letter-spacing:0;margin-top:6px;color:#9eb2cc}
.available-date-copy strong{display:block;font-size:15px;font-weight:550;line-height:1.3}
.available-date-copy small{display:block;font-size:11px;line-height:1.4;color:#b0bdd1;margin-top:5px}
.available-date-copy>span{display:block;font-size:10px;line-height:1.4;color:#8fa4c1;margin-top:4px}
.available-date-next{font-size:12px;color:#b9d4ff;white-space:nowrap}.available-date-next b{font-size:21px;font-weight:400;margin-left:10px}
.dates-empty{color:#b4c3d8;font-size:14px;line-height:1.65;padding:20px 0}.available-dates .flow-bottom .summary{font-size:10px}
@media(min-width:761px) and (max-height:780px){.available-date{padding:12px 0;gap:12px}.available-date-day{font-size:25px}.available-date-copy strong{font-size:13px}.home-dates h1{font-size:clamp(40px,4.8vw,68px)}}
@media(max-width:760px){
 .home-dates .actions{display:grid;grid-template-columns:1fr;gap:8px;margin-block:14px 12px;max-width:360px}.home-dates .actions .primary,.home-dates .actions .secondary{width:100%;min-height:42px;padding:10px 16px;font-size:12px}
 .home-dates h1{font-size:clamp(32px,9vw,44px);margin-block:11px 9px}.home-dates .home-intro{font-size:12px}
 .available-dates .stage{display:flex;gap:20px}.available-dates .intro h1{font-size:31px}.available-dates .intro>p{font-size:11px}
 .dates-toolbar{font-size:10px;margin-bottom:7px}.dates-toolbar .text-button{font-size:10px}.available-date{grid-template-columns:42px minmax(0,1fr) auto;gap:10px;padding:14px 0}
 .available-date-day{font-size:24px}.available-date-day small{font-size:10px;margin-top:5px}.available-date-copy strong{font-size:12px}.available-date-copy small{font-size:10px}.available-date-copy>span{font-size:9px;margin-top:3px}
 .available-date-next{font-size:10px}.available-date-next b{font-size:18px;margin-left:5px}.dates-empty{font-size:12px;padding:12px 0}.available-dates .flow-bottom .secondary{margin-left:auto;font-size:11px;padding:11px 16px}
}
@media(max-width:760px) and (max-height:740px){
 .home-dates .home-content{padding-top:14px;padding-bottom:15px}.home-dates h1{font-size:32px}.home-dates .week-label{margin-top:10px}.home-dates .home-bottom{margin-top:10px;padding-top:9px}.home-dates .actions{margin-block:12px 10px}
 .available-dates .stage{gap:13px;padding-block:14px}.available-dates .intro h1{font-size:27px}.available-date{padding:12px 0}.available-dates .help-line{margin-top:8px}
}
