:root{--ink:#153c47;--green:#116c59;--cream:#faf8f1;--line:#dce5df}*{box-sizing:border-box}body{margin:0;font:16px/1.65 system-ui,sans-serif;color:var(--ink);background:var(--cream)}header,main,footer{max-width:1150px;margin:auto;padding:24px 32px}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:25px}.brand{font-size:30px;font-weight:850;text-decoration:none}.brand span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.13em}nav{display:flex;align-items:center;gap:20px;font-size:14px}nav form{margin:0}a{color:var(--green);text-underline-offset:4px}.link{background:none;border:0;font:inherit;color:var(--green);cursor:pointer}.button{background:var(--green);border:0;border-radius:8px;color:white;text-decoration:none;padding:13px 20px;font:700 15px system-ui;display:inline-block;cursor:pointer}.small{padding:10px 14px;font-size:13px}h1{font:46px/1.12 Georgia,serif;letter-spacing:-.03em;margin:18px 0 24px}h2{font:27px/1.25 Georgia,serif}.hero{padding:45px 0;max-width:850px}.hero p{max-width:680px}.eyebrow{color:var(--green);font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:25px 0}.platforms{grid-template-columns:repeat(3,1fr)}.card{background:white;border:1px solid var(--line);border-radius:14px;padding:27px;margin-bottom:20px}.narrow{max-width:560px;margin:35px auto}.stack{display:flex;flex-direction:column;gap:16px}label{display:block;font-size:14px;font-weight:650}input,select{display:block;width:100%;padding:12px;margin-top:6px;border:1px solid #a6bcb1;border-radius:6px;font:inherit;background:white}.check{display:flex;align-items:start;gap:10px}.check input{width:auto;margin-top:6px}fieldset{border:1px solid var(--line);border-radius:8px;padding:16px}fieldset label{margin-bottom:12px}.test-banner{background:#ffe7a6;color:#60451b;padding:9px 20px;text-align:center;font-size:12px;font-weight:750}.notice{border-top:1px solid var(--line);padding-top:25px;font-size:13px;color:#61757b;margin-top:45px}.error{background:#fff0ed;border:1px solid #d89b90;border-radius:8px;padding:15px}footer{font-size:12px;color:#61757b}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #447ac7;outline-offset:4px}@media(max-width:760px){header,main,footer{padding:20px}header{align-items:start;flex-direction:column}nav{flex-wrap:wrap;gap:12px}h1{font-size:37px}.grid,.platforms{grid-template-columns:1fr}.hero{padding:25px 0}}

/* Identité GLV v1 : logo vectoriel et logos des plateformes. */
.brand{display:flex;align-items:center;gap:13px;flex-shrink:0;color:var(--ink)}.brand .glv-mark{display:block;width:58px;height:58px;flex-shrink:0}.brand .brand-wordmark{border:0;padding:0;letter-spacing:normal;text-transform:none;font-size:inherit}.brand strong{display:flex;align-items:baseline;gap:9px;line-height:1.1;font-size:31px;letter-spacing:-.04em}.brand .brand-education{display:inline;font-size:17px;letter-spacing:0;text-transform:none;font-weight:500;color:var(--green)}.brand .brand-full{font-size:9px;letter-spacing:.12em;text-transform:uppercase;margin-top:5px;font-weight:650}.platform-card{display:flex;flex-direction:column;align-items:start}.platform-heading{display:flex;align-items:center;gap:15px;margin-bottom:22px;min-height:70px}.platform-heading h2{font:600 22px/1.22 system-ui,sans-serif;margin:0;overflow-wrap:anywhere}.platform-logo{width:66px;height:66px;object-fit:contain;flex-shrink:0;border-radius:10px;background:#faf8f1}.platform-initials{width:66px;height:66px;border-radius:15px;background:#eef2ec;border:1px solid var(--line);color:var(--green);font:700 22px system-ui;display:flex;align-items:center;justify-content:center;flex-shrink:0}.platform-card>a{margin-top:auto;font-size:14px}@media(max-width:1000px){header{align-items:start;flex-direction:column}.platforms{grid-template-columns:1fr}.platform-card{min-height:160px}}@media(max-width:400px){.brand strong{font-size:27px}.brand .brand-education{font-size:15px}.brand .glv-mark{width:50px;height:50px}.brand .brand-full{font-size:8px}}

/* Logo GLV fourni : cadrage CSS, fichier original inchangé. */
.brand .glv-full-logo{display:block;width:230px;height:150px;object-fit:cover;object-position:center;border-radius:8px}header{padding-top:8px;padding-bottom:8px}@media(max-width:700px){.brand .glv-full-logo{width:200px;height:130px}}

/* Accueil compact : réduction des espaces avant le titre et les plateformes. */
main{padding-top:12px}.hero{padding:18px 0 22px}.hero .eyebrow{margin:0 0 12px}.hero h1{margin:12px 0 18px}.hero>p:not(.eyebrow){margin:0 0 18px}.platforms{margin-top:16px}@media(max-width:760px){main{padding-top:10px}.hero{padding:14px 0 18px}.hero h1{margin-top:10px}.platforms{margin-top:12px}}

.selected-platform{display:flex;align-items:center;gap:14px;background:#f1f5ee;border-radius:10px;padding:14px;margin:18px 0}.selected-platform strong,.selected-platform span{display:block}.selected-platform span{font-size:11px;color:#61757b;text-transform:uppercase;letter-spacing:.08em}.selected-platform .platform-logo,.selected-platform .platform-initials{width:54px;height:54px}.site-picker{display:flex;gap:14px;align-items:end;max-width:650px}.site-picker label{flex:1}.account-grid{grid-template-columns:minmax(230px,.7fr) minmax(0,1.3fr);align-items:start}.fine{font-size:12px;color:#61757b}.children-list{padding-left:20px}summary{cursor:pointer;font-weight:700}summary span{font-size:12px;font-weight:400}.child-form{margin-top:18px}.pricing{display:grid;grid-template-columns:1fr 1fr;gap:16px;font-size:13px}.pricing p{background:#f1f5ee;border-radius:8px;padding:13px;margin:0 0 20px}.learner-levels{border:1px solid var(--line);border-radius:10px;padding:15px}.level-option{margin-top:13px}.level-check{font-size:17px}.level-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cart-total{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;background:var(--ink);color:white;border-radius:10px;padding:17px}.cart-total span{font-size:13px}.payment-choice label{font-size:13px;margin:9px 0}.payment-choice .unavailable{color:#61757b}.platform-subscribe{display:block;margin-top:14px!important;font-weight:700}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:800px){.account-grid{grid-template-columns:1fr}.site-picker{flex-wrap:wrap}}@media(max-width:480px){.pricing,.level-fields{grid-template-columns:1fr}.pricing{gap:0}}
