/* Offre Novembre: comparison, action, guidance and proof. */
.pricing-rounding-note { margin:10px 0 0; color:#5e7188; font-size:12px; line-height:1.65; }
#packs .compact .result-top { flex-wrap:wrap; gap:8px; }
#packs .compact .result-top > span:last-child { letter-spacing:0; }
.promotion-terms { max-width:470px; margin-top:8px; font-size:12px; line-height:1.65; color:#566b85; }
#contenu .hero-credit { max-width:480px; padding:15px 17px; border-left:3px solid #ceaa4d; border-radius:0 12px 12px 0; background:#fff8e6; }
#contenu .hero-credit strong { font-size:16px; color:#664d1b; }
#contenu .hero-credit > span { margin-top:5px; color:#59677a; font-size:12px; }
#contenu .hero-actions > .text-link { font-size:13px; max-width:170px; }
.lesson-proof-caption { display:flex; flex-direction:column; gap:4px; padding:17px 20px; border-top:1px solid #e3eaf4; background:#f4f7fc; }
.lesson-proof-caption strong { font-size:14px; }
.lesson-proof-caption span { font-size:12px; color:#536780; }
#packs { padding-block:48px; }
#packs .sim-heading { margin-bottom:20px; }
#packs .sim-heading h2 { font-size:clamp(29px,3vw,38px); }
#packs .pack-level { margin-bottom:16px; }
#packs .pack-comparison { overflow:hidden; border:1px solid #dce4ef; border-radius:17px; background:#fff; }
#packs table.pack-offer-grid { display:table; width:100%; table-layout:fixed; border-collapse:collapse; margin:0; padding:0; }
#packs .pack-offer-grid thead { background:#102f52; color:#fff; }
#packs .pack-offer-grid th, #packs .pack-offer-grid td { padding:15px 24px; text-align:left; vertical-align:middle; }
#packs .pack-offer-grid thead th { font-size:14px; font-weight:550; }
#packs .pack-offer-grid tr.pack-offer-card { display:table-row; border:0; border-radius:0; background:#fff; box-shadow:none; }
#packs .pack-offer-grid tbody tr + tr { border-top:1px solid #e5eaf1; }
#packs .pack-offer-grid tbody tr:nth-child(2) { background:#eef4ff; }
#packs .pack-offer-grid tbody th > strong { font-size:27px; white-space:nowrap; }
#packs .pack-offer-grid tbody th small { display:block; margin-top:3px; color:#245edb; font-size:12px; font-weight:650; }
#packs .pack-offer-grid td > strong { font-size:25px; font-weight:750; white-space:nowrap; }
#packs .pack-offer-grid td > span:not([hidden]) { font-size:13px; color:#566b85; }
#packs .pack-offer-grid td del { display:block; margin-bottom:2px; color:#65758b; font-size:13px; }
.pack-shared-benefits { margin:0; padding:13px 24px; border-top:1px solid #e5eaf1; color:#536780; font-size:13px; line-height:1.7; }
#packs .account-credit { display:flex; align-items:center; gap:15px; margin:15px 0 0; padding:17px 20px; border:1px solid #e8d7a8; border-radius:13px; background:#fff8e6; }
#packs .account-credit-mark { display:grid; place-items:center; flex:0 0 58px; width:58px; height:58px; border:0; border-radius:14px; background:#f2e2af; color:#664d1b; font-size:24px; font-weight:750; }
#packs .account-credit h3 { margin:0 0 4px; font-size:17px; line-height:1.4; }
#packs .account-credit p { margin:0; color:#59677a; font-size:13px; line-height:1.65; }
#packs .offers-action { display:flex; flex-direction:column; align-items:center; gap:9px; margin:19px 0 12px; }
#packs .offers-action > .button { min-height:53px; padding:14px 24px; border-radius:10px; background:#245edb; border-color:#245edb; font-size:16px; }
#packs .offers-action > .button:hover { background:#174cb8; }
#packs .offers-action > p { color:#536780; font-size:13px; text-align:center; line-height:1.7; }
#packs .returning-customer { margin:0 0 20px; }
#packs .returning-customer p { font-size:13px; }
#packs .purchase-journey { padding:18px 0; margin:0 0 18px; border-block:1px solid #dfe6ee; }
.purchase-journey ol { display:grid; grid-template-columns:1fr 1fr 1fr; gap:18px; padding:0; margin:0; list-style:none; }
.purchase-journey li { display:flex; align-items:center; gap:10px; }
.purchase-journey li > span { display:grid; place-items:center; flex:0 0 28px; height:28px; border-radius:50%; background:#e5edfc; color:#245edb; font-size:13px; font-weight:750; }
.purchase-journey strong { color:#435b79; font-size:13px; line-height:1.5; font-weight:550; }
.purchase-journey > a { display:inline-block; margin-top:14px; color:#245edb; font-size:13px; text-decoration:underline; text-underline-offset:4px; }
.direct-help { display:flex; justify-content:space-between; align-items:center; gap:24px; margin:22px 0; padding:22px; border:1px solid #d4e4dd; border-radius:15px; background:#eff6f3; }
.direct-help h3 { margin:0 0 7px; font-size:18px; }
.direct-help p { font-size:14px; line-height:1.7; }
.direct-help-links { display:flex; flex-direction:column; align-items:center; gap:12px; flex-shrink:0; font-size:13px; }
.direct-help-links .whatsapp-contact { padding:13px 17px; border-radius:9px; background:#176b50; color:#fff; font-weight:650; }
.team-intro > strong { display:block; margin-bottom:8px; color:#102f52; font-size:16px; }
.team-section .team-intro { max-width:850px; font-size:14px; }
.team-section .teacher-card { min-height:240px; padding:21px; grid-template-columns:104px minmax(0,1fr); column-gap:16px; }
.team-section .teacher-portrait { width:104px; height:112px; }
.team-section .teacher-portrait img { width:100%; height:100%; object-fit:cover; }
.team-section .teacher-portrait .portrait-atlas { transform:scale(.86); }
.team-section .teacher-card h3 { font-size:16px; }
.team-section .teacher-card .qualification { font-size:13px; line-height:1.55; }
.team-section .teacher-card > p:not(.qualification) { font-size:12px; line-height:1.65; }
.teacher-profile-note { margin-top:10px; color:#627287; font-size:12px; }
#comment #parent-capture.space-diagram { margin:0; padding:0; overflow:hidden; border:1px solid #dce4ef; border-radius:16px; background:#fff; box-shadow:0 12px 28px #102f5206; }
.diagram-top { display:flex; align-items:center; gap:10px; padding:16px 18px; border-bottom:1px solid #e1e7ef; }
.diagram-mark { display:grid; place-items:center; flex:0 0 30px; height:30px; border-radius:9px; background:#102f52; color:#fff; font-weight:750; }
.diagram-top > strong { font-size:14px; }
.diagram-label { margin-left:auto; font-size:9px; letter-spacing:.08em; color:#65758b; }
.diagram-body { display:grid; grid-template-columns:1fr 1.25fr; }
.diagram-menu { display:flex; flex-direction:column; gap:12px; padding:22px 14px; background:#102f52; color:#fff; }
.diagram-menu p { color:#e8c56a; font-size:9px; letter-spacing:.06em; }
.diagram-menu > span { color:#d0dced; font-size:12px; padding:7px; }
.diagram-menu > strong { padding:10px 8px; border:1px solid #b9d0ff; border-radius:8px; background:#244b7b; font-size:12px; line-height:1.6; }
.diagram-menu > strong span { display:inline-grid; place-items:center; width:20px; height:20px; margin-right:4px; border-radius:50%; background:#e9f1ff; color:#17375e; }
.diagram-offer { padding:22px 18px; }
.diagram-eyebrow { font-size:8px; letter-spacing:.07em; color:#536780; }
.diagram-offer h3 { margin:9px 0; font-size:21px; }
.diagram-offer p { font-size:13px; line-height:1.65; }
.diagram-action { display:flex; align-items:center; gap:9px; padding:11px; margin-top:18px; border-radius:8px; background:#e8f0fe; color:#194a98; font-size:14px; font-weight:750; }
.diagram-action > span:first-child { display:grid; place-items:center; width:23px; height:23px; border-radius:50%; background:#245edb; color:white; }
.diagram-action > span:last-child { margin-left:auto; }
.diagram-offer small { display:block; margin-top:13px; color:#536780; font-size:11px; line-height:1.65; }
#comment .space-diagram figcaption { margin:0; padding:14px 18px; font-size:12px; line-height:1.65; }
#comment .steps p, .faq-list p { font-size:14px; }
.hero-reassurance { font-size:12px; }
@media(max-width:760px) {
 #packs .offers-wrap { width:calc(100% - 32px); }
 #packs .sim-heading { gap:12px; }
 #packs .sim-heading h2 { font-size:30px; }
 #packs .sim-heading > p { font-size:14px; }
 #packs .pack-offer-grid th, #packs .pack-offer-grid td { padding:13px 10px; }
 #packs .pack-offer-grid thead th { font-size:12px; }
 #packs .pack-offer-grid tbody th > strong { font-size:24px; }
 #packs .pack-offer-grid tbody th small { font-size:10px; }
 #packs .pack-offer-grid td > strong { font-size:20px; }
 #packs .pack-offer-grid td > span:not([hidden]) { font-size:11px; }
 #packs .pack-offer-grid td del { font-size:12px; }
 .pack-shared-benefits { padding:12px 13px; font-size:12px; }
 #packs .account-credit { gap:11px; padding:15px 13px; }
 #packs .account-credit-mark { flex-basis:44px; width:44px; height:48px; font-size:20px; border-radius:11px; }
 #packs .account-credit h3 { font-size:16px; }
 #packs .account-credit p { font-size:12px; }
 #packs .offers-action { align-items:stretch; }
 #packs .offers-action > .button { justify-content:space-between; gap:8px; padding:13px 16px; font-size:14px; }
 #packs .offers-action > p { font-size:12px; }
 .purchase-journey ol { grid-template-columns:1fr; gap:12px; }
 .direct-help { flex-direction:column; align-items:stretch; padding:19px; gap:17px; }
 .direct-help-links { align-items:stretch; text-align:center; }
 .team-section .teacher-card { grid-template-columns:92px minmax(0,1fr); padding:17px; }
 .team-section .teacher-portrait { width:92px; height:104px; }
 .team-section .teacher-portrait .portrait-atlas { transform:scale(.8); }
 .team-section .teacher-card .qualification { font-size:12px; }
 #contenu .hero-actions { align-items:stretch; }
 #contenu .hero-actions > .text-link { max-width:none; }
 .diagram-body { grid-template-columns:1fr; }
 .diagram-menu { padding:18px; gap:7px; }
 .diagram-menu > span { display:none; }
 .diagram-menu > strong { font-size:13px; }
 .diagram-offer { padding:20px; }
 .diagram-label { display:none; }
 .diagram-offer p { font-size:14px; }
 .mobile-dock strong { font-size:12px; }
 .mobile-dock > div > span { font-size:10px; }
}
@media(max-width:360px) {
 #packs .pack-offer-grid th, #packs .pack-offer-grid td { padding-inline:8px; }
 #packs .pack-offer-grid td > strong { font-size:18px; }
 #packs .pack-offer-grid tbody th > strong { font-size:22px; }
 #contenu .hero-promo > strong { font-size:25px; }
}

/* All five teachers remain visible without a carousel. */
.team-section .team-track { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); grid-auto-flow:row; grid-auto-columns:auto; gap:14px; max-height:none; overflow:visible; scroll-snap-type:none; padding:0; }
.team-section .teacher-card { display:flex; flex-direction:column; align-items:flex-start; padding:17px 14px; min-height:0; gap:0; }
.team-section .teacher-portrait { width:100%; height:137px; margin-bottom:16px; display:flex; align-items:center; justify-content:center; }
.team-section .teacher-portrait img { width:100%; height:100%; object-fit:cover; }
.team-section .teacher-portrait .portrait-atlas { transform:scale(1.04); }
.team-section .teacher-card h3 { font-size:15px; min-height:42px; }
.team-section .teacher-card .qualification { margin-top:7px; font-size:12px; min-height:78px; }
.team-section .teacher-card > p:not(.qualification) { font-size:12px; }
.team-section .teacher-card .teacher-level { font-size:11px; margin-top:auto; padding-top:8px; background:transparent; }
.team-section .teacher-profile-note { display:none; }
@media(max-width:1000px) and (min-width:761px) { .team-section .team-track { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:760px) { .team-section .team-track { grid-template-columns:1fr; max-height:none; overflow:visible; gap:12px; } .team-section .teacher-card { display:grid; grid-template-columns:92px minmax(0,1fr); padding:17px; } .team-section .teacher-portrait { width:92px; height:108px; grid-row:1 / 6; margin:0; } .team-section .teacher-portrait .portrait-atlas { transform:scale(.83); } .team-section .teacher-card h3 { min-height:0; font-size:16px; } .team-section .teacher-card .qualification { min-height:0; font-size:13px; } .team-section .teacher-card .teacher-level { margin-top:10px; } }

/* Generated account illustration: two readable zooms, as requested. */
#comment .how-layout { grid-template-columns:minmax(0,1fr)!important; gap:30px; }
#comment .how-instructions .steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
#comment .steps li::after { display:none; }
#comment .how-support, #comment .how-register { display:none; }
#comment #parent-capture.generated-procedure { width:min(950px,100%); margin:0 auto; padding:24px; background:#f6f9fc; border:1px solid #dce4ef; border-radius:20px; }
#comment .generated-procedure .capture-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:22px; }
#comment .generated-procedure .capture-heading > span { font-size:13px; font-weight:700; letter-spacing:.05em; color:#5d7185; }
#comment .generated-procedure .capture-heading a { font-size:14px; color:#536b84; }
#comment .generated-procedure .procedure-focus { display:grid; grid-template-columns:420fr 566fr; gap:20px; }
#comment .generated-procedure .procedure-part { min-width:0; }
#comment .generated-procedure .procedure-part h3 { min-height:28px; margin:0 0 16px; font-size:19px; font-weight:550; line-height:1.5; }
#comment .generated-procedure .procedure-window { position:relative; width:100%; overflow:hidden; border:1px solid #cddbe7; border-radius:16px; background:#fff; }
#comment .generated-procedure .procedure-window img { position:absolute; max-width:none; height:auto; display:block; margin:0; }
#comment .generated-procedure .procedure-window--menu { aspect-ratio:420 / 600; }
#comment .generated-procedure .procedure-window--menu img { width:394.047619%; top:-37.5%; left:0; }
#comment .generated-procedure .procedure-window--offer { aspect-ratio:566 / 600; }
#comment .generated-procedure .procedure-window--offer img { width:292.402827%; top:-58.333333%; left:-80.212014%; }
#comment .generated-procedure figcaption { margin:16px 0 0; padding:0; color:#62768d; font-size:12px; line-height:1.7; }
@media(max-width:760px) {
 #comment .how-instructions .steps { grid-template-columns:1fr; gap:0; }
 #comment #parent-capture.generated-procedure { padding:17px; border-radius:16px; }
 #comment .generated-procedure .capture-heading > span { font-size:10px; }
 #comment .generated-procedure .capture-heading a { font-size:12px; }
 #comment .generated-procedure .procedure-part h3 { font-size:15px; }
}
@media(max-width:559px) {
 #comment .generated-procedure .procedure-focus { grid-template-columns:minmax(0,1fr); gap:24px; }
 #comment .generated-procedure .procedure-part h3 { min-height:0; margin-bottom:12px; }
}

/* Verified hourly prices: no unverified checkout totals. */
#packs .compact-prices { grid-template-columns:1fr; }
#packs .checkout-total-note { margin-top:12px; color:#c0d0e6; font-size:12px; line-height:1.6; }
#packs .pack-offer-grid th:first-child { width:52%; }
