@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--blue:#3844ef;--ink:#172052;--coral:#f46b4f;--cream:#f8f8f3;--pale:#eef0ff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--coral);outline-offset:5px}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}header{width:min(1360px,calc(100% - 48px));margin:20px auto 0;background:white;border:1px solid #e8e9ee;border-radius:20px;display:flex;justify-content:space-between;align-items:center;padding:18px 26px;gap:20px}.brand{display:flex;align-items:center;gap:11px;font-size:14px;line-height:1.2}.brand-icon{font-family:Manrope,sans-serif;font-size:32px;font-weight:800;color:white;background:var(--blue);width:49px;height:49px;border-radius:50%;text-align:center;line-height:44px}.brand b{font-size:18px}nav{display:flex;gap:32px;font-size:14px}nav a:hover{color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:17px 23px;border-radius:12px;font-size:14px;font-weight:600;transition:transform .25s,box-shadow .25s}.button:hover{transform:translateY(-3px);box-shadow:0 8px 24px #17205218}.button span{font-size:22px}.coral{background:var(--coral);color:#18204c}.white{background:white;color:var(--blue)}.small{padding:12px 18px}.hero{padding-top:54px}.eyebrow{font-size:11px;letter-spacing:1.5px;font-weight:700}.dot{display:inline-block;width:7px;height:7px;background:var(--coral);border-radius:50%;margin-right:8px}.hero-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin:21px 0 35px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:-2px}h1{font-size:clamp(48px,5.8vw,80px);line-height:1.07;font-weight:800;color:var(--blue)}em{font-weight:500}h1 em{white-space:nowrap}.hero-aside{width:265px;padding-bottom:8px}.hero-aside p{font-size:14px;line-height:1.7}.spark{font-size:65px;display:block;color:var(--coral);line-height:1;margin-bottom:18px;animation:spin 24s linear infinite;width:65px}.bento{display:grid;grid-template-columns:1.25fr .72fr .72fr;gap:16px}.tile{border-radius:23px;position:relative;overflow:hidden;padding:28px;transition:transform .3s}.tile:hover{transform:translateY(-4px)}.tile-top{display:flex;justify-content:space-between;align-items:center;font-size:9px;font-weight:600;letter-spacing:1px;position:relative;z-index:2}.pill{padding:8px 12px;border:1px solid #ffffff50;border-radius:30px;letter-spacing:0;font-size:11px}.main-tile{grid-column:1 / 3;background:var(--blue);color:white;min-height:400px;padding:30px 34px}.main-tile h2{font-size:37px;line-height:1.18;margin:33px 0 18px;max-width:410px;position:relative;z-index:2}.main-tile h2 em{color:#c9d1ff}.main-tile p{max-width:310px;line-height:1.65;font-size:14px;position:relative;z-index:2}.main-tile .button{margin-top:25px;position:relative;z-index:2}.browser-art{position:absolute;right:-55px;bottom:-45px;width:330px;height:265px;background:#fff;border:6px solid #7581fa;border-radius:15px;transform:rotate(-9deg);color:var(--ink);box-shadow:0 0 60px #1b258e55;animation:float 7s ease-in-out infinite}.browser-bar{height:31px;border-bottom:1px solid #e9e9ef;display:flex;align-items:center;gap:4px;padding:0 10px}.browser-bar i{width:5px;height:5px;background:#aeb4cd;border-radius:50%}.browser-bar span{font-size:8px;background:#f2f2f9;border-radius:5px;padding:4px 25px;margin-left:12px}.browser-content{padding:18px}.mini-nav{font-size:8px;font-weight:800}.mini-nav span{float:right}.mini-heading{font-family:Manrope;font-size:29px;letter-spacing:-1px;line-height:1.12;margin:22px 0 15px}.mini-heading em{color:var(--blue)}.mini-line{height:7px;width:125px;background:#eceefa;border-radius:6px}.mini-blocks{display:flex;gap:8px;margin-top:18px}.mini-blocks b{width:80px;height:60px;border-radius:7px;background:#efbbaf}.mini-blocks b:nth-child(2){background:#c1c8fb}.mini-blocks b:nth-child(3){background:#e1e9be}.cursor-art{position:absolute;right:25px;top:148px;font-size:50px;color:var(--coral);transform:rotate(9deg)}.cursor-art small{display:block;background:var(--coral);color:white;padding:7px 10px;font-size:10px;border-radius:6px;white-space:nowrap}.wp-sticker{position:absolute;right:230px;top:86px;font-family:Georgia;font-size:48px;width:83px;height:83px;line-height:73px;text-align:center;border:3px solid var(--ink);border-radius:50%;background:#c9edb6;color:var(--ink);transform:rotate(10deg);box-shadow:5px 5px 0 #1c277255}.method-tile{background:#e8ecd9;display:flex;flex-direction:column;justify-content:space-between}.method-tile .pill{border-color:#17205230}.method-tile h2{font-size:26px;letter-spacing:-1px;line-height:1.2;margin:12px 0}.method-tile p{font-size:13px;line-height:1.6;max-width:215px}.orbit{height:160px;position:relative;margin:15px 0}.orbit b{font-size:102px;color:var(--blue);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-weight:400}.orbit span{position:absolute;background:white;border:1px solid #17205210;padding:9px 15px;border-radius:30px;font-size:11px;z-index:2}.orbit span:first-child{top:5px;left:10px;transform:rotate(-12deg)}.orbit span:nth-child(3){top:70px;right:-6px;transform:rotate(10deg)}.orbit span:nth-child(4){bottom:0;left:10px;transform:rotate(-6deg)}.school-tile{background:#f7bbac;min-height:183px}.school-tile h2{font-size:29px;line-height:1.1;margin:14px 0;letter-spacing:-1px}.school-tile p{font-size:11px;line-height:1.5}.school-deco{font-size:118px;position:absolute;right:-28px;bottom:-28px;color:var(--coral)}.location-tile{grid-column:2 / 4;background:#e7e9ff;display:flex;align-items:center;gap:28px;min-height:183px}.location-symbol{font-size:90px;color:var(--blue);line-height:1}.location-tile h2{font-size:27px;line-height:1.17;margin-top:12px;letter-spacing:-1px}.location-end{font-size:10px;position:absolute;right:25px;bottom:25px}.hero-bottom{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;margin-top:22px;align-items:center}.hero-bottom a{font-size:11px;letter-spacing:0}.section{padding-top:100px;padding-bottom:10px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:36px}.section h2{font-size:48px;line-height:1.13;margin-top:18px}.section h2 em{color:var(--blue)}.section-heading p{font-size:13px;line-height:1.75;max-width:350px}.expert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.expert{background:white;border:1px solid #e7e8e9;border-radius:22px;padding:28px}.expert-icon{display:block;background:var(--pale);border-radius:14px;width:64px;height:64px;text-align:center;line-height:64px;font-size:34px;color:var(--blue);margin-bottom:30px}.expert h3{font-size:25px;letter-spacing:-1px;margin:12px 0}.expert p{font-size:13px;line-height:1.7;min-height:68px}.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:25px}.tags span{border:1px solid #dfe2ee;padding:6px 10px;border-radius:25px;font-size:10px}.parcours{background:#eff0e9;margin-top:90px;padding:65px 0}.schools{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.school{background:white;border-radius:15px;padding:25px 15px;min-height:110px;display:flex;flex-direction:column;justify-content:center;text-align:center}.school b{font-family:Manrope;font-size:19px;letter-spacing:-1px}.school span{font-size:10px;color:#646b85;margin-top:10px}.jury{display:grid;grid-template-columns:1fr 1fr 100px;align-items:center;gap:40px;border-top:1px solid #cfd3c8;margin-top:34px;padding-top:32px}.jury h3{font-size:29px;letter-spacing:-1px;margin-top:13px}.jury p{font-size:13px;line-height:1.7}.jury-icon{font-size:90px;color:var(--blue)}.editor-note{font-size:10px;color:#5d6376;margin-top:25px;line-height:1.6}.catalogue-tabs{display:flex;gap:9px;margin-bottom:25px}.catalogue-tabs button{border:1px solid #d8dbe7;background:white;border-radius:11px;padding:12px 18px;font-size:12px}.catalogue-tabs button.active{background:var(--ink);color:white;border-color:var(--ink)}.catalogue-tools{display:flex;justify-content:space-between;align-items:center;gap:20px}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button{border:1px solid #d8dbe7;border-radius:40px;background:transparent;padding:9px 15px;font-size:11px}.filters button.active{background:var(--blue);color:white;border-color:var(--blue)}.search{display:flex;align-items:center;gap:12px;border-bottom:1px solid #abb1c5;padding:10px 0;width:230px}.search span{font-size:23px}.search input{width:100%;border:0;background:transparent;font-size:12px;outline-offset:5px}.catalogue-note{font-size:11px;color:#60677f;line-height:1.6;margin:20px 0}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.course{background:white;border:1px solid #e2e4eb;border-radius:20px;overflow:hidden;display:flex;flex-direction:column}.course-visual{height:145px;background:#e7e9ff;display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden}.course-visual:after{content:'';width:160px;height:160px;border-radius:50%;border:1px solid currentColor;position:absolute;opacity:.18}.course-visual>span{font-family:Manrope;font-size:60px;color:var(--blue);transform:rotate(-10deg);transition:transform .35s;z-index:1}.course:hover .course-visual>span{transform:rotate(5deg) scale(1.12)}.course:nth-child(3n+2) .course-visual{background:#e8ecd9}.course:nth-child(3n+3) .course-visual{background:#f7bbac}.course-body{padding:24px;display:flex;flex-direction:column;flex:1}.course-meta{display:flex;justify-content:space-between;gap:8px;font-size:9px;letter-spacing:.6px;text-transform:uppercase;color:#626985}.course h3{font-size:24px;letter-spacing:-1px;line-height:1.2;margin:15px 0}.course p{font-size:12px;line-height:1.7;margin-bottom:25px}.course button{margin-top:auto;background:transparent;border:0;border-top:1px solid #e4e6ef;padding:15px 0 0;text-align:left;color:var(--blue);font-size:12px;display:flex;justify-content:space-between}.course button span{font-size:19px}.result-count{margin-top:16px;color:#626985;font-size:11px}.empty{grid-column:1/-1;padding:45px;text-align:center;border:1px dashed #bbc0d8;border-radius:18px}.approach{padding-bottom:90px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:40px}.steps article{border-top:1px solid #cbd0df;padding-top:25px}.steps article>span{color:var(--blue);font-family:Manrope;font-size:32px}.steps h3{font-size:22px;letter-spacing:-.8px;margin:20px 0 12px}.steps p{font-size:13px;line-height:1.7;max-width:300px}.contact{background:var(--blue);color:white;padding:50px;border-radius:27px}.contact h2{font-size:64px;line-height:1.1;margin:22px 0 35px}.contact h2 em{color:#d7deb7}.contact h2>span{float:right;font-size:125px;color:#cad4ff;font-weight:400}.contact-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px}.contact p{font-size:13px;line-height:1.75}footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:40px 0;font-size:11px}footer button{border:0;background:transparent;color:inherit;font-size:11px;text-decoration:underline}dialog{border:0;border-radius:23px;max-width:650px;width:calc(100% - 36px);padding:45px;color:var(--ink);box-shadow:0 20px 100px #17205240}dialog::backdrop{background:#17205280;backdrop-filter:blur(5px)}dialog h2{font-size:35px;line-height:1.15;margin:18px 0;letter-spacing:-1.5px}dialog p,dialog li{font-size:13px;line-height:1.8;margin:15px 0}dialog a:not(.button){color:var(--blue);text-decoration:underline}.close{position:absolute;right:18px;top:15px;background:var(--pale);border:0;border-radius:50%;width:32px;height:32px;font-size:23px;color:var(--ink)}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;padding:15px;z-index:5}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{50%{transform:translateY(-10px) rotate(-6deg)}}
@media(min-width:1500px){.hero{padding-top:65px}.main-tile{min-height:440px}.browser-art{width:370px;height:285px}}@media(max-width:1050px){.wrap{width:calc(100% - 48px)}h1{font-size:58px}.hero-aside{width:200px}.bento{grid-template-columns:1.2fr 1fr}.main-tile{grid-column:1;min-height:460px}.browser-art{right:-80px;bottom:-85px;width:270px}.wp-sticker{right:35px;top:125px;width:60px;height:60px;font-size:35px;line-height:51px}.main-tile h2{font-size:30px}.main-tile p{max-width:260px}.main-tile .button{margin-top:18px}.method-tile{grid-column:2}.school-tile{grid-column:1}.location-tile{grid-column:2;gap:10px}.location-symbol{font-size:55px}.location-tile h2{font-size:22px}.schools{grid-template-columns:repeat(3,1fr)}.course-grid{grid-template-columns:repeat(2,1fr)}.section h2{font-size:40px}.contact h2{font-size:50px}}@media(max-width:700px){header{width:calc(100% - 24px);padding:14px;border-radius:15px;margin-top:12px}header nav{display:none}.brand b{font-size:15px}.brand{font-size:11px}.brand-icon{width:39px;height:39px;font-size:26px;line-height:36px}.small{font-size:11px;padding:10px;gap:12px}.wrap{width:calc(100% - 32px)}.hero{padding-top:35px}.hero-heading{display:block;margin-bottom:25px}h1{font-size:clamp(38px,8vw,55px);letter-spacing:-2px}h1 em{white-space:normal}.hero-aside{width:auto;margin-top:22px;display:flex;gap:18px;align-items:center}.spark{font-size:35px;width:35px;margin:0}.hero-aside p{font-size:12px}.eyebrow{font-size:9px;letter-spacing:1.1px}.bento{grid-template-columns:1fr 1fr;gap:12px}.main-tile{grid-column:1/-1;min-height:400px;padding:25px}.main-tile h2{font-size:31px;margin-top:28px}.main-tile p{max-width:235px;font-size:12px}.browser-art{right:-90px;bottom:-45px;width:260px}.wp-sticker{right:25px;top:102px}.tile-top{font-size:8px}.main-tile .button{font-size:11px;gap:15px}.method-tile{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;padding:23px}.method-tile .tile-top{grid-column:1/-1}.method-tile .orbit{grid-column:2;grid-row:2/4;height:160px}.method-tile h2{font-size:24px;margin-top:30px}.method-tile p{font-size:11px}.school-tile{grid-column:1;padding:21px;min-height:190px}.school-tile h2{font-size:24px}.school-tile p{font-size:9px}.location-tile{grid-column:2;padding:21px;display:block}.location-symbol{display:none}.location-tile h2{font-size:23px}.location-end{font-size:9px;left:21px;right:auto;bottom:20px}.hero-bottom>span{max-width:180px;font-size:7px;line-height:1.6}.hero-bottom a{font-size:10px}.section{padding-top:65px}.section-heading{display:block;margin-bottom:25px}.section h2{font-size:35px}.section-heading p{margin-top:20px;font-size:12px}.expert-grid{grid-template-columns:1fr}.expert{padding:25px}.expert-icon{float:right;margin-left:15px}.expert p{min-height:0}.tags{margin-top:20px}.parcours{margin-top:60px;padding:50px 0}.schools{grid-template-columns:repeat(2,1fr)}.jury{grid-template-columns:1fr;gap:20px}.jury h3{font-size:27px}.jury-icon{display:none}.catalogue-tabs button{padding:11px;font-size:11px}.catalogue-tools{display:block}.filters button{font-size:10px;padding:8px 12px}.search{margin-top:18px;width:100%}.course-grid{grid-template-columns:1fr}.course-visual{height:130px}.steps{grid-template-columns:1fr;gap:25px}.steps h3{margin-top:12px}.approach{padding-bottom:55px}.contact{padding:28px}.contact h2{font-size:37px}.contact h2>span{font-size:55px;float:none;display:block;margin-top:20px}.contact-bottom{display:block}.contact .button{margin-top:25px}footer{flex-wrap:wrap;font-size:10px}footer p{margin-left:auto}dialog{padding:35px 25px}.reveal{transform:translateY(12px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

@media(max-width:700px){.main-tile .wp-sticker{display:none}.main-tile .browser-art{width:170px;height:200px;right:-70px;bottom:-55px}.main-tile .mini-heading{font-size:20px}.main-tile .browser-bar span{padding:4px;font-size:6px}.main-tile .browser-content{padding:12px}.main-tile .cursor-art{display:none}}

.pilot-banner{display:flex;justify-content:space-between;align-items:center;gap:20px;background:var(--pale);border:1px solid #d7dcff;padding:24px;border-radius:16px;margin-bottom:28px;font-size:12px;line-height:1.8}.pilot-banner b{font-size:17px}.pilot-banner>span:last-child{color:var(--blue);font-weight:700}.rncp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:35px}.rncp-grid article{padding:25px;border-radius:18px;background:#fff}.rncp-grid h3{font-size:24px;letter-spacing:-1px;margin:15px 0}.rncp-grid p{font-size:12px;line-height:1.8}.rncp-grid a{display:block;font-size:11px;color:var(--blue);margin-top:20px}.course p strong{display:inline-block;font-size:10px;color:var(--blue);margin-top:9px}@media(max-width:700px){.rncp-grid{grid-template-columns:1fr}.pilot-banner{display:block}.pilot-banner>span:last-child{display:block;margin-top:12px}}

/* Navigation persistante, y compris sur mobile. */
.site-header{position:sticky;top:12px;z-index:50;box-shadow:0 8px 30px #1720520c;background:#fff}.site-header .menu-toggle{display:none}.course-link{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding:12px 0;color:var(--blue);font-size:12px;border-top:1px solid #e4e6ef}.course button{margin-top:0}.skip:focus{position:fixed;z-index:100}html{scroll-padding-top:130px}
@media(max-width:700px){.site-header{top:8px;flex-wrap:wrap;gap:12px}.site-header .menu-toggle{display:inline-flex;align-items:center;gap:8px;border:1px solid #d8dbe7;background:white;border-radius:10px;padding:9px 12px;color:var(--ink);font-size:12px}.site-header>.button{margin-left:auto}.site-header nav{display:none;order:4;width:100%;padding-top:12px;border-top:1px solid #e7e8ee;justify-content:space-between;gap:10px;font-size:12px}.site-header:has(.menu-toggle[aria-expanded="true"]) nav{display:flex}html{scroll-padding-top:180px}.site-header .brand-icon{width:34px;height:34px;line-height:31px}.site-header .brand{gap:7px}.site-header .small{gap:8px;padding:9px;font-size:10px}}@media(max-width:360px){.site-header .brand span:last-child{display:none}}

.financing{padding-bottom:70px}.financing .expert p{min-height:0}@media(max-width:700px){.site-header nav{flex-wrap:wrap;row-gap:16px}.financing{padding-bottom:50px}}

.cookie-banner[hidden]{display:none}.cookie-banner{position:fixed;left:24px;right:24px;bottom:20px;z-index:200;background:white;border:1px solid #d8dbe7;border-radius:18px;box-shadow:0 12px 50px #17205230;padding:24px;display:flex;align-items:center;gap:30px;max-width:1200px;margin:auto}.cookie-banner h2{font-size:20px;letter-spacing:-.6px}.cookie-banner p{font-size:12px;line-height:1.7;margin:10px 0;max-width:700px}.cookie-banner a{font-size:11px;color:var(--blue);text-decoration:underline}.cookie-actions{display:flex;gap:10px;flex-shrink:0}.cookie-actions button{border:1px solid var(--blue);color:var(--blue);background:white;padding:13px 16px;border-radius:10px;font-size:12px;font-weight:600}.legal-content{max-width:850px;padding-bottom:70px}.legal-content h1{font-size:52px}.legal-content h2{font-size:25px;letter-spacing:-.7px;margin:35px 0 15px}.legal-content p,.legal-content li{font-size:14px;line-height:1.85;margin-bottom:12px}.legal-content a{color:var(--blue);text-decoration:underline}.legal-content .notice{padding:20px;border-radius:12px;background:var(--pale)}footer{flex-wrap:wrap}@media(max-width:700px){.cookie-banner{left:12px;right:12px;bottom:12px;padding:20px;display:block}.cookie-actions{margin-top:16px;flex-wrap:wrap}.cookie-actions button{flex:1}.legal-content h1{font-size:37px}.legal-content h2{font-size:22px}}
