:root{
  --encre:#0E1C47;--nuit:#16296A;--bleu:#1D43B0;--orange:#FF6A13;--brume:#B9C6E6;
  --papier:#F2F4F8;--blanc:#FFFFFF;--texte:#16203F;--gris:#4A5577;--ligne:#D9DFEC;
  --display:"Bricolage Grotesque","Arial Narrow",system-ui,sans-serif;
  --serif:"Source Serif 4",Georgia,"Times New Roman",serif;
}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}body{font-family:var(--serif);font-size:1.09rem;line-height:1.65;color:var(--texte);background:var(--papier);-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%}a{color:inherit}:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.cadre{max-width:1200px;margin:auto;padding-inline:clamp(20px,5vw,56px)}h1,h2,h3,h4{font-family:var(--display);font-stretch:85%;letter-spacing:-.015em;line-height:1.05;font-weight:700}h1{font-size:clamp(2.7rem,6.5vw,5.5rem);max-width:14ch}h2{font-size:clamp(2rem,4vw,3.45rem);max-width:18ch}h3{font-size:clamp(1.3rem,2.1vw,1.7rem);line-height:1.15}.eyebrow{font-family:var(--display);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:.82rem;color:var(--orange);margin-bottom:15px}.lede{font-size:clamp(1.12rem,1.6vw,1.3rem);max-width:55ch}.muted{color:var(--gris)}section{padding-block:clamp(70px,10vw,128px)}.btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:650;font-size:1rem;font-stretch:90%;line-height:1.1;padding:.82em 1.25em;border-radius:999px;text-decoration:none;border:2px solid transparent;cursor:pointer}.btn-orange{background:var(--orange);color:var(--encre)}.btn-orange:hover{background:#FF8440}.btn-ligne{border-color:currentColor;background:transparent}.btn-ligne:hover{background:rgba(255,255,255,.09)}.lien{font-family:var(--display);font-weight:650;color:var(--bleu);text-underline-offset:.22em;text-decoration-thickness:2px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
/* header */
.entete{background:var(--encre);color:#fff;border-bottom:1px solid rgba(185,198,230,.18);position:sticky;top:0;z-index:30}.entete .cadre{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:22px}.marque{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}.marque img{height:40px;width:auto;max-width:90px;object-fit:contain}.marque-nom{display:block;font-family:var(--display);font-weight:700;font-size:1.06rem;line-height:1.02}.marque-lieu{display:block;font-size:.8rem;color:var(--brume);font-style:italic;margin-top:4px;line-height:1}.menu{display:flex;align-items:center;gap:14px}.menu-liens{display:flex;align-items:center;gap:clamp(12px,1.5vw,22px);font-family:var(--display);font-size:.95rem}.menu-liens a{text-decoration:none;color:var(--brume)}.menu-liens a:hover,.menu-liens a[aria-current="page"]{color:#fff}.menu .btn{padding:.54em 1em;font-size:.93rem}.menu-bouton{display:none;color:#fff}
/* hero */
.pagehero{background:var(--encre);color:#fff;padding-block:clamp(70px,9vw,118px);position:relative;overflow:hidden}.pagehero:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(185,198,230,.16);border-radius:50%;right:-220px;top:-245px;box-shadow:0 0 0 70px rgba(29,67,176,.12),0 0 0 140px rgba(29,67,176,.07)}.pagehero .cadre{position:relative;z-index:1}.fil{font-family:var(--display);font-size:.9rem;color:var(--brume);margin-bottom:22px}.fil a{text-underline-offset:.2em}.pagehero h1{color:#fff}.pagehero .lede{color:var(--brume);margin-top:24px}.pagehero .actions{margin-top:32px}
/* shared sections */
.intro{margin-top:18px;max-width:62ch;color:var(--gris)}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,5vw,72px);align-items:start}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,34px)}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(18px,2.5vw,30px)}.cards{margin-top:clamp(38px,6vw,64px)}.card{background:#fff;border:1px solid var(--ligne);border-radius:10px;padding:clamp(24px,3vw,34px);display:flex;flex-direction:column;min-height:100%}.card .n{font-family:var(--display);font-weight:800;font-stretch:75%;font-size:2.8rem;color:var(--bleu);line-height:1;margin-bottom:18px}.card h3{margin-bottom:12px}.card p{color:var(--gris)}.card .lien{margin-top:auto;padding-top:18px;align-self:flex-start}.dark{background:var(--encre);color:#fff}.dark h2,.dark h3{color:#fff}.dark .intro,.dark p{color:var(--brume)}.blue{background:var(--bleu);color:#fff}.blue h2,.blue h3{color:#fff}.blue p,.blue .intro{color:#DCE4F7}.white{background:#fff}.split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,88px);align-items:start}.prose p{margin-top:16px}.prose ul{padding-left:1.25em;margin-top:18px}.prose li{margin-bottom:10px;color:var(--gris)}.quote{font-family:var(--display);font-size:clamp(1.55rem,2.9vw,2.4rem);line-height:1.12;font-weight:700;font-stretch:84%;padding-left:24px;border-left:5px solid var(--orange);max-width:25ch}.rule{padding-top:26px;border-top:2px solid currentColor}.rule .num{display:block;font-family:var(--display);font-size:4.2rem;font-weight:800;font-stretch:75%;line-height:.85;color:var(--orange);margin-bottom:18px}.rule p{margin-top:10px}.steps{margin-top:clamp(38px,5vw,60px);counter-reset:step}.step{position:relative;padding-top:22px;border-top:2px solid var(--texte)}.step:before{counter-increment:step;content:counter(step,decimal-leading-zero);font-family:var(--display);font-weight:800;color:var(--bleu);font-size:2rem;display:block;margin-bottom:12px}.step p{color:var(--gris);margin-top:8px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px}.stat{padding:20px 0;border-top:1px solid rgba(255,255,255,.4)}.stat b{display:block;font-family:var(--display);font-size:clamp(2rem,4vw,3.5rem);line-height:1;color:#fff}.stat span{display:block;color:#DCE4F7;margin-top:4px}.badge-row{display:flex;flex-wrap:wrap;gap:16px;margin-top:32px}.badge{border:1px solid var(--ligne);background:#fff;border-radius:999px;padding:10px 16px;font-family:var(--display);font-weight:650;font-size:.9rem}.notice{background:#FFF4EC;border-left:5px solid var(--orange);padding:22px 24px;margin-top:30px}.notice strong{font-family:var(--display)}
/* logo/proof band */
.proof{padding-block:36px;background:#fff;border-bottom:1px solid var(--ligne)}.proof .cadre{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}.proof p{max-width:68ch;color:var(--gris)}.proof-logos{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.proof-logos img{max-height:48px;width:auto;max-width:155px;object-fit:contain}
/* lists */
.levels{margin-top:42px;display:grid;gap:0}.level{display:grid;grid-template-columns:120px minmax(0,1fr);gap:24px;padding:28px 0;border-top:2px solid var(--texte)}.level:last-child{border-bottom:2px solid var(--texte)}.level-code{font-family:var(--display);font-size:1.6rem;font-weight:800;color:var(--bleu)}.level p{color:var(--gris);margin-top:7px}.requirements{margin-top:38px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.req{background:#fff;border:1px solid var(--ligne);border-radius:8px;padding:18px 20px;display:flex;gap:12px;align-items:flex-start}.req:before{content:"✓";font-family:var(--display);font-weight:800;color:var(--orange)}
/* games */
.game-grid{margin-top:42px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.game{background:var(--nuit);border:1px solid rgba(185,198,230,.25);border-radius:9px;padding:24px}.game h3{font-size:1.25rem}.game p{font-size:1rem;margin-top:8px;color:#D5DDF1}.game .meta{font-family:var(--display);font-size:.86rem;color:var(--brume);margin-top:12px}.filterbar{display:flex;gap:8px;flex-wrap:wrap;margin-top:30px}.filter{font-family:var(--display);border:1.5px solid rgba(185,198,230,.45);background:transparent;color:var(--brume);border-radius:999px;padding:.46em .9em;cursor:pointer}.filter[aria-pressed="true"],.filter:hover{background:#fff;color:var(--encre);border-color:#fff}.game[hidden]{display:none}
/* CTA */
.cta-band{background:var(--orange);color:var(--encre)}.cta-band .cadre{display:grid;grid-template-columns:minmax(0,1.4fr) auto;gap:30px;align-items:end}.cta-band h2{color:var(--encre);max-width:18ch}.cta-band p{margin-top:14px;max-width:58ch}.cta-band .btn{border-color:var(--encre);color:var(--encre)}
/* footer */
.pied{background:var(--encre);color:var(--brume);padding-block:58px 34px;font-size:.98rem}.pied-grille{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}.pied h3{color:#fff;font-size:1.02rem;margin-bottom:12px}.pied ul{list-style:none;padding:0;display:grid;gap:7px}.pied a{text-decoration:none}.pied a:hover{color:#fff;text-decoration:underline}.pied .marque{margin-bottom:16px}.pied-bas{margin-top:40px;padding-top:20px;border-top:1px solid rgba(185,198,230,.18);font-size:.88rem;color:#7F8DB8}.pied-bas a{text-decoration:underline;text-underline-offset:.2em}
@media(max-width:980px){.menu-liens{display:none}.menu-bouton{display:inline-flex}.entete.ouvert .menu-liens{display:flex;position:absolute;top:82px;left:16px;right:16px;flex-direction:column;align-items:flex-start;background:var(--nuit);padding:22px 24px;gap:16px;border-radius:8px;box-shadow:0 20px 50px rgba(5,10,30,.45)}.grid-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.grid-2,.grid-3,.split,.pied-grille,.cta-band .cadre{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr 1fr}.game-grid{grid-template-columns:1fr}.requirements{grid-template-columns:1fr}}
@media(max-width:560px){body{font-size:1.03rem}.entete .cadre{min-height:74px}.marque img{height:34px}.menu .btn-orange{display:none}.grid-4,.stats{grid-template-columns:1fr}.level{grid-template-columns:1fr;gap:8px}.pagehero:after{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
