:root{--color-comprendre:#e53e3e;--color-concevoir:#d69e2e;--color-exprimer:#dd6b20;--color-developper:#38a169;--color-entreprendre:#3182ce;--color-comprendre-light:#fed7d7;--color-concevoir-light:#fefcbf;--color-exprimer-light:#feebc8;--color-developper-light:#c6f6d5;--color-entreprendre-light:#bee3f8;--pole-comprendre:var(--color-comprendre);--pole-concevoir:var(--color-concevoir);--pole-exprimer:var(--color-exprimer);--pole-developper:var(--color-developper);--pole-entreprendre:var(--color-entreprendre);--pole-comprendre-ink:#fff;--pole-concevoir-ink:#1a1a1a;--pole-exprimer-ink:#fff;--pole-developper-ink:#fff;--pole-entreprendre-ink:#fff;--ink:#1a1a1a;--ink-soft:#2c2c2c;--paper:#fafaf7;--paper-2:#f2f2ee;--line:#e4e2dc;--hairline:#d6d0c0;--muted:#6b6b66;--surface-warm:#fff8f2;--color-bg:#f7f8fa;--color-surface:#fff;--color-border:#e2e8f0;--color-text:#1a202c;--color-text-muted:#718096;--danger:#b93a3a;--dot-grid:#cbd5e0;--input-placeholder:#b5b2aa;--bg:var(--color-bg);--color-but1:#f5a675;--color-but2:#e1816e;--color-but3:#bd8694;--color-but1-soft:#f9dcc2;--color-but2-soft:#f5c1b8;--color-but3-soft:#e7c6d2;--color-but1-text:color-mix(in srgb, var(--color-but1) 55%, var(--ink) 45%);--color-but2-text:color-mix(in srgb, var(--color-but2) 65%, var(--ink) 35%);--color-but3-text:color-mix(in srgb, var(--color-but3) 65%, var(--ink) 35%);--but1-accent-dark:#c97b3a;--but1-accent-light:#fddec8;--but2-accent-dark:#a8402e;--but2-accent-light:#f5c9c1;--but3-accent-dark:#8a4d5e;--but3-accent-light:#e8d0d6;--color-nav-home:#9cc4dc;--color-year-pill-active:#5c82a0;--strip-but1:var(--color-but1);--strip-but2:var(--color-but2);--strip-but3:var(--color-but3);--but1:var(--color-but1);--but2:var(--color-but2);--but3:var(--color-but3);--but1-soft:var(--color-but1-soft);--but2-soft:var(--color-but2-soft);--but3-soft:var(--color-but3-soft);--strip-orange:#f4a24a;--strip-yellow:#d9de8a;--strip-pink:#efb8c2;--admin-primary:#534ab7;--admin-primary-dark:#3f37a0;--admin-primary-light:#eeedfe;--delta-pos:#2d8653;--delta-neg:#c0392b;--color-live:#67d27a;--feedback-success-bg:#f0fff4;--feedback-success-text:#1f5c3a;--feedback-error-bg:#fff5f5;--feedback-error-text:#742a2a;--feedback-error-border:#c53030;--badge:#7b9eb8;--circle-back:#a8b8cc99;--marquee-1:#bad2e6;--marquee-2:#8fb2ce;--marquee-3:#6e99bc;--marquee-4:#a7c5dd;--marquee-5:#7fa6c6;--hero-gap:88px;--hero-gap-desktop:160px;--hero-gap-mobile:36px;--hero-padding-bottom:96px;--hero-padding-bottom-mobile:64px;--hero-bio-bg:color-mix(in srgb, var(--color-bg) 88%, transparent);--parcours-title-mb:28px;--parcours-title-mb-mobile:20px;--parcours-title-pb:var(--space-xs);--campus-pt:12px;--stage-building-h:clamp(280px, 40vw, 420px);--color-linkedin:#0a66c2;--color-youtube:red;--color-instagram:#e1306c;--color-twitter:#000;--overlay-scrim:#0000008c;--overlay-scrim-strong:#000000bf;--accent-instagram:#a05cbf;--display:"Bebas Neue", "Oswald", Impact, sans-serif;--font-display:var(--display);--body:Inter, system-ui, -apple-system, sans-serif;--font-body:var(--body);--font-sans:Inter, system-ui, -apple-system, sans-serif;--font-mono:JetBrains Mono, ui-monospace, Menlo, monospace;--fs-display-xl:clamp(3rem, 5vw + 1.5rem, 8rem);--fs-display-lg:clamp(2.25rem, 3.2vw + 1rem, 5rem);--fs-display-md:clamp(1.75rem, 2vw + .9rem, 3.25rem);--fs-display-sm:clamp(1.25rem, .8vw + .9rem, 1.75rem);--fs-display-xs:clamp(1rem, .4vw + .85rem, 1.25rem);--fs-body-lg:clamp(1rem, .4vw + .9rem, 1.15rem);--fs-body:clamp(.95rem, .25vw + .85rem, 1.0625rem);--fs-body-sm:clamp(.825rem, .15vw + .78rem, .9375rem);--fs-mono:clamp(.625rem, .12vw + .6rem, .75rem);--fs-mono-sm:clamp(.5625rem, .08vw + .55rem, .6875rem);--spacing-sm:16px;--spacing-md:24px;--spacing-lg:40px;--space-2xs:clamp(.25rem, .3vw, .5rem);--space-xs:clamp(.5rem, .6vw, .875rem);--space-sm:clamp(.75rem, 1vw, 1.25rem);--space-md:clamp(1rem, 1.5vw, 1.75rem);--space-lg:clamp(1.5rem, 2.4vw, 2.75rem);--space-xl:clamp(2rem, 4vw, 4.5rem);--space-2xl:clamp(3rem, 6vw, 7rem);--space-3xl:clamp(4rem, 8vw, 10rem);--gutter:clamp(1.125rem, 4vw, 4rem);--max-width:1440px;--content-max:1560px;--media-max-width:720px;--media-thumb-min:180px;--header-height:96px;--footer-height:68px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--r-sm:6px;--r-md:12px;--r-lg:20px;--r-xl:28px;--r-pill:999px;--ease-out:cubic-bezier(.2, .7, .2, 1);--ease:var(--ease-out);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-details:cubic-bezier(.16, 1, .3, 1);--d-fast:.18s;--d-mid:.32s;--d-slow:.55s;--d-details:.45s}[data-theme=dark]{--ink:#eef1f5;--ink-soft:#cdd2da;--paper:#14161a;--paper-2:#1c1f25;--line:#2c313a;--hairline:#363b44;--muted:#929aa6;--surface-warm:#1f2229;--color-bg:#0f1115;--color-surface:#181b21;--color-border:#31363f;--color-text:#e9eaec;--color-text-muted:#9aa1ab;--dot-grid:#262c35;--input-placeholder:#6f6c64;--danger:#d96a6a;--color-comprendre-light:#3e2222;--color-concevoir-light:#3a331a;--color-exprimer-light:#3d2a18;--color-developper-light:#1d3527;--color-entreprendre-light:#1c2e42;--color-but1-soft:#3a2a1d;--color-but2-soft:#38221e;--color-but3-soft:#322229;--marquee-1:#2c3e52;--marquee-2:#253449;--marquee-3:#1e2c3c;--marquee-4:#273c52;--marquee-5:#1f2f45;--pro-accent:#4a90d9;--pro-accent-soft:#4a90d924}@media (width<=1024px){:root{--header-height:82px}}@media (width<=768px){:root{--header-height:60px}}@media (width<=640px){:root{--footer-height:150px}}body{color:var(--ink);background:var(--bg);background-image:radial-gradient(circle, var(--dot-grid) 1px, transparent 1px);background-size:var(--dot-grid-size,24px) var(--dot-grid-size,24px);text-rendering:optimizelegibility;background-position:50%}a{text-decoration:none}a:focus-visible{outline:3px solid var(--badge);outline-offset:4px;border-radius:var(--r-sm)}main{max-width:var(--max-width);margin:0 auto;padding:64px clamp(0rem,4.8vw - 1rem,3.5rem) 0}.hero{gap:var(--hero-gap);padding:48px 0 var(--hero-padding-bottom);grid-template-columns:1fr 1fr;align-items:center;display:grid;position:relative}.hero__marquee{z-index:0;pointer-events:none;flex-direction:column;justify-content:center;gap:.02em;width:82%;display:flex;position:absolute;top:-10%;bottom:-10%;left:-14%;overflow:hidden;-webkit-mask:linear-gradient(90deg,#0000 0,#000 9% 60%,#0000 75%);mask:linear-gradient(90deg,#0000 0,#000 9% 60%,#0000 75%)}.hero__marquee-row{white-space:nowrap;width:max-content;font-family:var(--display);letter-spacing:.03em;text-transform:uppercase;will-change:transform;font-size:clamp(2.2rem,4.6vw,3.5rem);font-style:italic;line-height:1.16;display:flex}.hero__marquee-row--1{color:var(--marquee-1);animation:30s linear infinite heroMarqueeL}.hero__marquee-row--2{color:var(--marquee-2);animation:21s linear infinite heroMarqueeL}.hero__marquee-row--3{color:var(--marquee-3);animation:38s linear infinite heroMarqueeL}.hero__marquee-row--4{color:var(--marquee-4);animation:26s linear infinite heroMarqueeL}.hero__marquee-row--5{color:var(--marquee-5);animation:44s linear infinite heroMarqueeL}@keyframes heroMarqueeL{0%{transform:translate(0)}to{transform:translate(-50%)}}.hero__portrait{aspect-ratio:1;isolation:isolate;cursor:pointer;z-index:1;width:100%;max-width:440px;animation:heroIn .9s var(--ease) both;justify-self:center;position:relative}.hero__portrait:after{content:"";filter:blur(7px);z-index:0;height:8%;transition:transform .55s var(--ease), opacity .55s var(--ease);background:radial-gradient(#1a202c47,#0000 72%);border-radius:50%;position:absolute;bottom:-3%;left:16%;right:16%}.hero__portrait:hover .hero__photo{animation-play-state:paused;transform:translateY(-12px)scale(1.035)}.hero__portrait:hover .hero__disc{transform:scale(1.02);box-shadow:0 36px 80px -26px #5c82a0d9,inset 0 2px 16px #ffffff52}.hero__portrait:hover:after{opacity:.75;transform:scaleX(1.12)}.hero__portrait:hover .hero__ring{border-color:#ffffffd9;animation-duration:9s}.hero__disc{z-index:1;transition:transform .55s var(--ease), box-shadow .55s var(--ease);background:radial-gradient(circle at 32% 26%,#aec9dd 0%,#7b9eb8 56%,#5c82a0 100%);border-radius:50%;position:absolute;inset:0;box-shadow:0 26px 60px -26px #5c82a0b3,inset 0 2px 16px #ffffff47}.hero__disc:before{content:"";background:var(--circle-back);z-index:-1;border-radius:50%;position:absolute;inset:0;transform:translate(7%,9%)}.hero__ring{z-index:2;pointer-events:none;transition:border-color .55s var(--ease);border:2px dashed #fff9;border-radius:50%;animation:28s linear infinite heroSpin;position:absolute;inset:4%}.hero__photo{aspect-ratio:1;z-index:3;transition:transform .55s var(--ease);will-change:transform;background:url(/assets/img/ethan.png) bottom/cover no-repeat;animation:6.5s ease-in-out infinite heroFloat;position:absolute;bottom:2%;left:-10%;right:-10%;-webkit-mask-image:radial-gradient(40% 40% at 50% 60%,#000 99%,#0000 100%),radial-gradient(35% 39% at 50% 20%,#000 66%,#0000 100%);mask-image:radial-gradient(40% 40% at 50% 60%,#000 99%,#0000 100%),radial-gradient(35% 39% at 50% 20%,#000 66%,#0000 100%);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:border-box,border-box;mask-clip:border-box,border-box;-webkit-mask-origin:border-box,border-box;mask-origin:border-box,border-box;-webkit-mask-composite:source-over;mask-composite:add;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.hero__content{z-index:1;animation:heroIn .9s var(--ease) .12s both;position:relative}.hero__name{font-family:var(--display);letter-spacing:.01em;color:var(--ink);margin:0 0 1.25rem;font-size:clamp(3.5rem,7vw,5.5rem);font-style:italic;line-height:.95}.hero__name span{display:block}.hero__badge{background:var(--badge);color:#fff;border-radius:var(--r-sm);letter-spacing:.01em;margin-bottom:1.5rem;padding:.35rem .95rem;font-size:.85rem;font-style:italic;font-weight:600;transition:opacity .2s;display:inline-block}.hero__badge:hover{opacity:.85}.hero__bio{color:var(--ink-soft);text-align:justify;background:var(--hero-bio-bg);max-width:460px;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:.95rem;line-height:1.7}.hero__bio p{margin:0 0 .9rem}.hero__bio p:last-child{margin-bottom:0}@keyframes heroSpin{to{transform:rotate(360deg)}}@keyframes heroFloat{0%,to{translate:0}50%{translate:0 -11px}}@keyframes heroIn{0%{opacity:0;transform:translateY(20px)scale(.96)}to{opacity:1;transform:none}}.parcours-title{font-family:var(--display);margin:0 0 var(--parcours-title-mb);letter-spacing:.005em;color:var(--ink);padding-bottom:var(--parcours-title-pb);font-size:clamp(3rem,6.5vw,4.5rem);font-style:italic;line-height:.95}.parcours-title span{display:block}.parcours-title--pro,:root[data-theme=dark] .parcours-title--academic{display:none}:root[data-theme=dark] .parcours-title--pro{display:block}.campus{width:100%;max-width:980px;padding:var(--campus-pt) 0 35px;margin:0 auto;position:relative}.campus__stage{aspect-ratio:1000/660;width:100%;position:relative}.campus__stage>img{max-height:100%}.campus__base{object-fit:contain;object-position:center;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.building-link{cursor:pointer;text-decoration:none;transition:filter .25s;display:block;position:absolute}.building-link:focus-visible{outline:3px solid var(--ink);outline-offset:6px;border-radius:var(--radius-sm)}.building-link--but1{width:49.7%;top:13.3%;left:4.4%}.building-link--but2{width:29%;top:42.4%;left:40%}.building-link--but3{width:29%;top:42.4%;left:65.5%}.building-silhouette{mix-blend-mode:multiply;width:100%;height:auto;transition:transform .25s}.building-link--but1 .building-silhouette{transform-origin:100% 100%;height:472px}.building-link--but2 .building-silhouette{transform-origin:bottom;height:270px}.building-link--but3 .building-silhouette{transform-origin:0 100%;height:276px}.building-link--but1 .building-label{transform-origin:100% 100%;top:-4%;left:-32%}.building-link--but2 .building-label{transform-origin:bottom;top:-15%;left:5%}.building-link--but3 .building-label{transform-origin:0 100%;top:-10%;left:7%}.building-link:hover .building-silhouette,.building-link:focus-visible .building-silhouette,.building-link--hint .building-silhouette{transform:scale(1.1)}.building-link--hint .building-silhouette,.building-link--hint .building-label,.building-link--hint .building-pill{transition-duration:.5s;transition-timing-function:ease-in-out}.building-pill{font-family:var(--display);letter-spacing:.06em;color:#fff;border-radius:var(--r-sm);pointer-events:none;z-index:3;white-space:nowrap;text-align:center;transform-origin:bottom;padding:.25rem .75rem;font-size:1.05rem;transition:scale .25s,font-size .25s;position:absolute;top:8%;left:28%;box-shadow:0 2px 6px #00000026}.building-link--but1 .building-pill{background:var(--but1);top:3%;left:41%}.building-link--but2 .building-pill{background:var(--but2);top:-25%;left:45%}.building-link--but3 .building-pill{background:var(--but3);top:-20%;left:35%}.building-label{opacity:0;pointer-events:none;z-index:4;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;transition:opacity .25s,transform .25s;display:flex;position:absolute;inset:0;transform:translate(0)}.building-link:hover .building-label,.building-link:focus-visible .building-label{opacity:1}.building-link--but1:hover .building-label,.building-link--but1.building-link--hint .building-label{opacity:1;transform-origin:100% 100%;transform:translate(-5px,-5px)}.building-link--but1:hover .building-pill,.building-link--but1.building-link--hint .building-pill{transform-origin:100% 100%;font-size:1.2rem;transform:scale(1.1)}.building-link--but2:hover .building-label,.building-link--but2.building-link--hint .building-label{opacity:1;transform-origin:bottom;transform:translateY(-5px)}.building-link--but2:hover .building-pill,.building-link--but2.building-link--hint .building-pill{transform-origin:bottom;font-size:1.2rem;transform:scale(1.1)}.building-link--but3:hover .building-label,.building-link--but3.building-link--hint .building-label{opacity:1;transform-origin:0 100%;transform:translate(5px,-5px)}.building-link--but3:hover .building-pill,.building-link--but3.building-link--hint .building-pill{transform-origin:0 100%;font-size:1.2rem;transform:scale(1.1)}.building-year{font-family:var(--display);letter-spacing:.04em;color:#fff;text-shadow:0 2px 8px #0000008c;font-size:1.6rem}.building-cta{font-family:var(--body);color:#fff;text-shadow:0 2px 8px #0000008c;letter-spacing:.02em;font-size:.95rem;font-weight:600}.campus__mobile{display:none}.campus[data-theme-item=academic]{display:block}.campus--stage[data-theme-item=professional],[data-theme=dark] .campus[data-theme-item=academic]{display:none}[data-theme=dark] .campus--stage[data-theme-item=professional]{display:block}.campus--stage{width:100%;padding:var(--campus-pt) 0 35px;position:relative}.stage-buildings{justify-content:center;align-items:flex-end;gap:var(--space-md);width:100%;max-width:var(--max-width);margin-inline:auto;display:flex}.campus--stage .building-link{border-radius:var(--r-md);isolation:isolate;flex:0;min-width:0;position:relative;inset:auto;overflow:hidden}.campus--stage .building-link--but1{aspect-ratio:612/408;flex-grow:1.5}.campus--stage .building-link--but2{aspect-ratio:1536/1024;flex-grow:1.5}.campus--stage .building-link--but3{aspect-ratio:1104/1425;flex-grow:.775}.stage-building__bg{object-fit:cover;z-index:1;width:100%;height:100%;display:block;position:relative}.campus--stage .building-link{background:#fff}.campus--stage .building-silhouette{z-index:2;object-fit:cover;mix-blend-mode:multiply;transform-origin:50%;transition:opacity .55s ease-in-out,transform .5s;position:absolute;inset:0}.campus--stage .building-link--but1 .building-silhouette{width:44%;height:70%;top:10%;left:26%}.campus--stage .building-link--but2 .building-silhouette{width:77%;height:73%;top:8%;left:11%}.campus--stage .building-link--but3 .building-silhouette{width:39%;height:79%;top:12%;left:30%}.campus--stage .building-pill{transform-origin:100% 0;transition:transform .25s,font-size .25s;top:12px;left:auto;right:12px;transform:none}.campus--stage .building-link--but1 .building-label,.campus--stage .building-link--but2 .building-label,.campus--stage .building-link--but3 .building-label{top:auto;left:auto;inset:0}.stage-building__logo{object-fit:contain;mix-blend-mode:multiply;transform-origin:50%;pointer-events:none;-webkit-user-select:none;user-select:none;width:auto;max-width:140px;height:110px;display:block}.campus--stage .building-link:hover .building-silhouette,.campus--stage .building-link:focus-visible .building-silhouette,.campus--stage .building-link--hint .building-silhouette{opacity:.7;transform-origin:50%;transform:scale(4)}.campus--stage .building-link:hover .building-pill,.campus--stage .building-link:focus-visible .building-pill{font-size:1.2rem;transform:scale(1.1)}.campus--stage .building-link--but1:hover .building-label,.campus--stage .building-link--but1:focus-visible .building-label,.campus--stage .building-link--but2:hover .building-label,.campus--stage .building-link--but2:focus-visible .building-label,.campus--stage .building-link--but3:hover .building-label,.campus--stage .building-link--but3:focus-visible .building-label{transform-origin:50%;transform:none}@media (prefers-reduced-motion:reduce){.hero__portrait,.hero__ring,.hero__photo,.hero__marquee-row,.hero__content{animation:none!important}.building-link,.building-silhouette,.building-pill,.building-label{transition-property:opacity!important;transition-duration:.15s!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.building-link:hover .building-silhouette,.building-link:focus-visible .building-silhouette,.building-link--but1:hover .building-label,.building-link--but2:hover .building-label,.building-link--but3:hover .building-label,.building-link--but1:hover .building-pill,.building-link--but2:hover .building-pill,.building-link--but3:hover .building-pill{transform:none!important}.stage-building__bg,.campus--stage .building-silhouette,.campus--stage .building-pill,.campus--stage .building-label{transition-property:opacity!important;transition-duration:.15s!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.campus--stage .building-link:hover .building-silhouette,.campus--stage .building-link:focus-visible .building-silhouette{opacity:1!important;transform:none!important}.campus--stage .building-link:hover .building-pill,.campus--stage .building-link:focus-visible .building-pill{transform:none!important}}@media (width<=900px){main{padding:32px 0 0}.hero{gap:var(--hero-gap-mobile);padding:32px 0 var(--hero-padding-bottom-mobile);text-align:center;grid-template-columns:1fr}.hero__marquee{justify-content:flex-start;width:112%;height:58%;top:56px;bottom:auto;left:-6%;-webkit-mask:linear-gradient(90deg,#0000 0,#000 5% 95%,#0000 100%);mask:linear-gradient(90deg,#0000 0,#000 5% 95%,#0000 100%)}.hero__portrait{max-width:300px}.hero__bio{text-align:left;max-width:100%}.hero__name{font-size:clamp(2.5rem,12vw,4rem)}.parcours-title{margin-bottom:var(--parcours-title-mb-mobile);font-size:clamp(2rem,7.5vw,2.6rem)}.campus__stage,.stage-buildings{display:none}.campus__mobile{gap:14px;padding-bottom:32px;display:grid}.campus__mobile a{border-radius:var(--radius-lg);color:#fff;font-family:var(--display);letter-spacing:.05em;text-align:left;padding:1.4rem 1.6rem;font-size:1.6rem;line-height:1.6rem;display:block;position:relative}.campus__mobile a:after{content:"→";font-family:var(--body);font-size:1.2rem;font-weight:600;position:absolute;top:50%;right:1.4rem;transform:translateY(-50%)}.campus__mobile .m-but1{background:var(--but1)}.campus__mobile .m-but2{background:var(--but2)}.campus__mobile .m-but3{background:var(--but3)}}@media (width>=1440px){.hero{gap:var(--hero-gap-desktop)}}
