@font-face{font-family:'JDL Display';src:url('/assets/display.woff2') format('woff2');font-display:swap;font-weight:800}
:root{color-scheme:dark;--night:#071255;--ink:#040a2b;--paper:#def6ff;--blue:#597aff;--cyan:#5bd4ff;--pink:#f10989;--muted:#a6b6d9;--line:#ffffff25;--display:'JDL Display',Impact,'Arial Narrow',sans-serif;--body:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--ink);color:var(--paper);font:1rem/1.65 var(--body)}body.scroll-locked{overflow:hidden}a{color:inherit;text-decoration:none}a:hover{color:var(--cyan)}button,input{font:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--cyan);outline-offset:6px}img{max-width:100%;display:block}p{margin:0 0 1.3rem}h1,h2,h3{font-family:var(--display);font-weight:800;text-transform:uppercase;line-height:.98;margin:0 0 1.3rem;letter-spacing:.005em}h1,h2,h3{overflow-wrap:anywhere}h1{font-size:clamp(3.6rem,8vw,8rem)}h2{font-size:clamp(2.6rem,5vw,5rem)}h3{font-size:2rem}.wrap{width:min(1280px,90%);margin:auto}.kicker{font-size:.85rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--cyan);display:block;margin-bottom:1.2rem}.muted{color:var(--muted)}.small{font-size:.875rem}.skip{position:absolute;top:0;transform:translateY(-150%);max-width:90%;left:1rem;background:var(--paper);color:var(--night);padding:1rem;z-index:99}.skip:focus{top:0;transform:none}
.topbar{background:var(--cyan);color:var(--night);text-align:center;padding:7px 10px;font-size:.8rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.header{position:sticky;top:0;z-index:20;background:#040a2bf5;backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;gap:2rem;min-height:86px}.brand{display:flex;align-items:center;gap:12px;margin-right:auto;font-family:var(--display);font-size:1.7rem;white-space:nowrap;transition:color .2s}.brand img{transition:transform .2s}.brand:hover img{transform:scale(1.05)}.brand img{width:55px;height:58px;object-fit:contain}.navlinks{display:flex;align-items:center;gap:1.5rem;font-size:.88rem;font-weight:700}.navlinks a[aria-current=page]{color:var(--cyan)}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;background:var(--pink);color:white!important;min-height:50px;padding:13px 24px;border:1px solid transparent;border-radius:3px;font-weight:800;font-size:.94rem;cursor:pointer;transition:transform .2s,background .2s}.button:hover{background:#ca0875;transform:translateY(-2px)}.button.secondary{background:transparent;border-color:#ffffff70}.button.secondary:hover{background:#ffffff13}.button.cyan{background:var(--cyan);color:var(--night)!important}.menu{display:none;background:transparent;border:1px solid var(--line);color:var(--paper);padding:8px 12px;border-radius:3px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:2rem}
.hero{position:relative;min-height:750px;display:grid;align-items:center;overflow:hidden;background:var(--night)}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 50%;opacity:.6}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#040a2bf5 0%,#071255bb 40%,#07125518 100%),linear-gradient(0deg,#040a2b,transparent 35%);pointer-events:none}.hero-content{position:relative;z-index:1;padding:85px 0 110px;display:grid;grid-template-columns:1fr 230px;align-items:end;gap:3rem}.hero h1{font-size:clamp(5rem,11.4vw,11rem);max-width:850px;line-height:.88;margin-bottom:2rem}.hero h1 span{color:var(--cyan)}.hero-copy{max-width:540px;font-size:1.1rem;color:#d1ddf3}
.ribbon{padding:18px 0;background:var(--blue);overflow:hidden;color:white}.ribbon .wrap{display:flex;gap:2rem;align-items:center;justify-content:space-between;font-family:var(--display);font-size:1.6rem;text-transform:uppercase}.ribbon b{color:var(--cyan)}section.section{padding:100px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:40px}.section-head h2{margin:0;max-width:680px}.section-head p{max-width:320px;color:var(--muted);margin:0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.card{position:relative;border:1px solid var(--line);background:#0d1640;padding:34px;overflow:hidden;border-radius:4px}.card p{color:var(--muted)}.card .number{font-family:var(--display);font-size:3.5rem;color:var(--cyan);opacity:.65;line-height:1;margin-bottom:36px}.card a.text-link{display:inline-block;border-bottom:1px solid var(--cyan);padding-bottom:5px;font-weight:bold}.experience-card{min-height:400px;display:flex;flex-direction:column}.experience-card p{flex:1}.experience-card:nth-child(2){background:var(--night)}.experience-card:nth-child(3){background:#221140}.experience-card:before{content:'';position:absolute;top:0;right:0;width:70px;height:4px;background:var(--pink)}
.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:70px;align-items:center}.photo-panel{position:relative}.photo-panel img{aspect-ratio:1.12;object-fit:cover;border-radius:4px}.photo-note{position:absolute;bottom:-18px;left:24px;background:var(--pink);font-family:var(--display);font-size:1.7rem;padding:12px 24px;transform:rotate(-3deg);text-transform:uppercase;color:white}.impact{background:linear-gradient(135deg,#071255,#101454);border-block:1px solid var(--line)}.big-stat{font-family:var(--display);font-size:clamp(4rem,8vw,7rem);line-height:1;color:var(--cyan)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;border-top:1px solid var(--line);margin-top:30px;padding-top:24px}.stats strong{font-family:var(--display);font-size:2.8rem;display:block;line-height:1.3}.stats span{color:var(--muted);font-size:.875rem}.plain-link{text-decoration:underline;text-underline-offset:5px}.details-list{list-style:none;padding:0;margin:25px 0}.details-list li{padding:14px 0;border-bottom:1px solid var(--line)}.details-list strong{display:block;color:var(--cyan);font-size:.82rem;letter-spacing:.09em;text-transform:uppercase;margin-bottom:4px}.join{background:var(--cyan);color:var(--night);position:relative}.join h2{max-width:840px}.join .kicker{color:var(--night)}.join .button.secondary{color:var(--night)!important;border-color:var(--night)}.footer{padding:65px 0 25px;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:35px}.footer .brand{margin-bottom:20px}.footer h3{font-family:var(--body);font-size:.9rem;line-height:1.5;text-transform:none;color:var(--cyan)}.footer a:not(.brand){display:block;margin-bottom:9px;font-size:.9rem}.footer-bottom{margin-top:50px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.8rem}
.page-hero{padding:85px 0 65px;background:radial-gradient(ellipse at top right,#597aff35,transparent 60%),var(--night);border-bottom:1px solid var(--line)}.page-hero h1{max-width:1000px}.page-hero p{max-width:690px;color:#c4d3ed;font-size:1.1rem}.breadcrumb{font-size:.85rem;color:var(--muted);margin-bottom:30px}.page-layout{padding:65px 0 95px}.prose{max-width:800px}.prose h2{font-size:2.7rem;margin-top:45px}.prose h3{font-size:1.6rem;line-height:1.2;margin-top:30px}.prose a{color:var(--cyan);text-decoration:underline}.prose ul{padding-left:22px}.notice{padding:24px;border-left:4px solid var(--cyan);background:#597aff16;margin:25px 0}.notice p:last-child{margin-bottom:0}.faq{max-width:900px}.faq details{border-bottom:1px solid var(--line);padding:0}.faq summary{cursor:pointer;padding:24px 36px 24px 0;font-size:1.1rem;font-weight:bold;list-style:none;position:relative}.faq summary:after{content:'+';position:absolute;right:5px;font-size:1.4rem;color:var(--cyan)}.faq details[open] summary:after{content:'−'}.faq details p{color:#c4d3ed;padding-right:35px;margin-bottom:25px}.faq-category{color:var(--cyan);font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;display:block;margin-bottom:5px}.two-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.pill-list{display:flex;flex-wrap:wrap;gap:12px}.pill-list a{padding:12px 18px;border:1px solid var(--line);background:#ffffff06;border-radius:3px}.table{width:100%;border-collapse:collapse}.table td,.table th{padding:17px 12px;border-bottom:1px solid var(--line);text-align:left}.table th{color:var(--cyan)}.table-wrap{overflow-x:auto}.hidden{display:none!important}.mobile-cta{display:none}.archive-list a{display:block;padding:18px 0;border-bottom:1px solid var(--line)}.checklist li{margin-bottom:12px}.ticket{border-top:4px solid var(--pink)}.ticket h2{font-size:3rem}.date-block{font-family:var(--display);font-size:2.5rem;color:var(--cyan)}
@media(min-width:1000px){.hero-content>div:first-child{animation:enter .7s ease-out both}@keyframes enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}}
@media(max-width:1000px){.nav{gap:1rem}.navlinks{gap:1rem}.navlinks a{font-size:.8rem}.nav .button{padding:10px 15px}.hero-content{grid-template-columns:1fr 170px;gap:1rem}.split{gap:35px}.grid{gap:16px}.card{padding:25px}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}}
@media(max-width:760px){.wrap{width:90%}.topbar{font-size:.7rem;letter-spacing:.06em}.nav{min-height:74px;flex-wrap:wrap;padding:10px 0}.brand{font-size:1.5rem}.brand img{width:42px;height:46px}.menu{display:block}.nav>.button{display:none}.navlinks{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:0;order:5}.navlinks a{font-size:1rem;padding:12px 0;border-top:1px solid var(--line)}.js .navlinks{display:none}.js .navlinks.open{display:flex}.hero{min-height:700px}.hero-content{display:block;padding:65px 0 90px}.hero h1{font-size:clamp(4.8rem,16vw,8rem)}.hero-photo{object-position:65% center}.hero:after{background:linear-gradient(90deg,#040a2be8,#07125565),linear-gradient(0deg,#040a2b,transparent)}.hero-copy{font-size:1rem;max-width:90%}.ribbon .wrap{font-size:1.15rem;gap:15px;flex-wrap:wrap;justify-content:center}.ribbon .wrap span:last-child{display:none}section.section{padding:65px 0}.section-head,.split{display:block}.section-head p{margin-top:20px;max-width:none}.grid,.two-cols{grid-template-columns:1fr}.experience-card{min-height:300px}.card .number{margin-bottom:24px}.photo-panel{margin-bottom:60px}.photo-panel img{max-height:420px;width:100%}.split>.photo-panel:last-child{margin:40px 0 0}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid>div:first-child{grid-column:1/3}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{display:block;padding-bottom:70px}.footer-bottom span{display:block;margin-bottom:7px}.mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;background:#040a2bf5;border-top:1px solid var(--line);z-index:25;padding:10px 5%;align-items:center;gap:15px;justify-content:space-between}.mobile-cta span{font-size:.82rem;line-height:1.3}.mobile-cta .button{min-height:44px;padding:9px 18px}.page-hero{padding:45px 0}.page-hero h1{font-size:3.8rem}.page-layout{padding:40px 0 70px}.actions .button{flex-grow:1}.stats{gap:10px}.stats strong{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.portrait-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem;margin-top:2rem}.portrait-card{border:1px solid #5bd4ff38;border-radius:1rem;overflow:hidden;background:#0b194b}.portrait-card img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;display:block}.portrait-card>div{padding:1.3rem}.portrait-card h3{margin:0 0 .65rem}.legend-card{overflow:hidden}.legend-card>img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:.7rem;margin-bottom:1.4rem}.partner-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:2rem}.partner-grid figure{margin:0;padding:1.2rem;background:#0b194b;border:1px solid #5bd4ff38;border-radius:1rem;text-align:center}.partner-grid img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;display:block}.partner-grid figcaption{font-size:.85rem;margin-top:.8rem;color:#def6ff}.story-image{width:100%;height:auto;max-height:560px;object-fit:cover;border-radius:1rem}.anthem{margin-top:2rem;align-items:center}.anthem-art{min-height:280px;border-radius:1rem;background:radial-gradient(ellipse at 15% 10%,#5bd4ff 0,transparent 65%),linear-gradient(130deg,#597aff,#071255 65%,#f10989);display:flex;flex-direction:column;justify-content:center;padding:2.5rem;overflow:hidden}.anthem-art span{font-family:var(--display);font-size:clamp(5rem,12vw,10rem);line-height:.9;font-weight:800;color:#def6ff}.anthem-art b{font-size:.9rem;letter-spacing:.15em;margin-top:1rem;color:#def6ff}@media(max-width:760px){.portrait-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.portrait-card>div{padding:1rem}.portrait-card h3{font-size:1.5rem}.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-grid figure{padding:.8rem}}@media(max-width:390px){.portrait-grid{grid-template-columns:1fr}}

.hero-photo{transform:scale(1.03);animation:hero-breathe 12s ease-in-out infinite alternate}.countdown{margin-top:2rem;padding-left:1rem;border-left:3px solid var(--cyan);display:flex;flex-direction:column}.countdown span{color:var(--muted);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}.countdown strong{font-family:var(--display);font-size:1.8rem;color:var(--cyan)}.search-trigger,.text-button{border:0;background:transparent;color:var(--paper);cursor:pointer;font-weight:700}.search-trigger{display:inline-flex;align-items:center;gap:.45rem}.search-trigger:hover{color:var(--cyan)}.search-trigger-icon{flex-shrink:0}.button-icon{flex-shrink:0}.text-button{padding:0 0 5px;border-bottom:1px solid var(--cyan);color:var(--cyan)}.search-dialog{position:relative;width:min(720px,92vw);max-height:80vh;border:1px solid #5bd4ff66;border-radius:8px;background:#071255;color:var(--paper);padding:0;box-shadow:0 30px 100px #000}dialog.search-dialog{padding:0}.search-dialog[open]{display:flex;flex-direction:column}.search-dialog::backdrop{background:#02061ddd;backdrop-filter:blur(5px)}.search-dialog-scroll{overflow-y:auto;min-height:0;overscroll-behavior-y:contain;padding:2rem}.search-dialog-scroll::-webkit-scrollbar{width:12px}.search-dialog-scroll::-webkit-scrollbar-track,.search-dialog-scroll::-webkit-scrollbar-corner,.search-dialog-scroll::-webkit-scrollbar-thumb{background:transparent}.search-scrollbar{position:absolute;right:2px;width:8px;border-radius:999px;background:linear-gradient(var(--blue),var(--cyan));opacity:1;transition:opacity 1s ease;pointer-events:none}.search-scrollbar.is-hidden{opacity:0}.search-close{position:absolute;right:1rem;top:1rem;border:0;background:transparent;color:var(--paper);font-size:2rem;cursor:pointer}.search-dialog label{display:block;margin-bottom:.4rem}.search-dialog input{width:100%;padding:1rem;border:2px solid var(--blue);border-radius:4px;background:#040a2b;color:var(--paper);font-size:1.1rem;margin-bottom:1.5rem;outline-offset:2px}.search-dialog input:focus-visible{outline:2px solid var(--cyan)}.search-dialog [data-search-results] a{display:flex;flex-direction:column;padding:1rem 0;border-bottom:1px solid var(--line)}.search-dialog [data-search-results] span{font-size:.9rem;color:var(--muted)}
.mission-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:2rem;align-items:start}.game-shell,.narrative-fallback{border:1px solid var(--line);background:#0d1640;padding:2rem;border-radius:6px}.game-head{display:flex;justify-content:space-between;align-items:end;gap:1rem}.game-head h2{font-size:clamp(2.5rem,5vw,4.5rem);margin-bottom:.5rem}.game-status{display:flex;gap:1rem;font-family:var(--display);font-size:1.5rem}.game-status strong{color:var(--cyan)}[data-mission]{display:block;width:100%;height:auto;aspect-ratio:16/9;border:2px solid var(--blue);background:var(--night)}.game-controls{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1rem}.narrative-fallback{border-top:4px solid var(--pink)}.narrative-fallback li{margin-bottom:1.4rem}@keyframes hero-breathe{to{transform:scale(1.08)}}
@media(max-width:1000px){.mission-layout{grid-template-columns:1fr}}
@media(max-width:760px){.search-trigger{padding:12px 0;text-align:left;border-top:1px solid var(--line)}.mission-layout{width:100%;padding-top:0}.game-shell,.narrative-fallback{border-inline:0;border-radius:0;padding:1rem}.game-head{display:block}.game-status{margin-bottom:1rem}}
@media(prefers-reduced-motion:reduce){.hero-photo{transform:none}}

.game-stage{position:relative;overflow:hidden;border:2px solid var(--blue);background:var(--night);box-shadow:inset 0 0 45px #5bd4ff18}.game-stage [data-mission]{border:0;aspect-ratio:16/7}.game-loading{position:absolute;inset:0;display:grid;place-items:center;background:var(--night);color:var(--cyan);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.game-loading[hidden]{display:none}.game-status span{display:flex;min-width:76px;flex-direction:column}.game-status small{font-family:var(--body);font-size:.65rem;line-height:1.2;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.game-status strong{font-size:1.45rem;line-height:1.25}.jump-button{min-width:118px;min-height:52px;padding:10px 20px;border:2px solid var(--cyan);border-radius:3px;background:var(--cyan);color:var(--night);font-weight:900;text-transform:uppercase;cursor:pointer}.jump-button:disabled{opacity:.45;cursor:not-allowed}.jump-button:not(:disabled):active{transform:translateY(3px)}
@media(max-width:760px){.game-stage{margin-inline:-1rem;border-inline:0}.game-status{display:grid;grid-template-columns:repeat(3,1fr);width:100%;gap:.5rem}.game-status span{padding:.55rem;border:1px solid var(--line)}.game-controls .button,.jump-button{flex:1;min-width:135px}.game-controls label{width:100%}}



:root{--line:#afccff2e}body{overflow-x:clip}button:disabled{cursor:not-allowed}button:focus-visible,input:focus-visible{outline:3px solid var(--cyan);outline-offset:5px}[hidden]{display:none!important}
.topbar{background:#050c30;color:#c5d6f5;border-bottom:1px solid var(--line);font-size:.8125rem;letter-spacing:.09em;padding:8px 12px}.header{background:#040a2be8}.nav{gap:1.35rem;min-height:82px}.brand{letter-spacing:.025em}.brand img{width:52px;height:43px}.navlinks{gap:1.2rem;font-size:.875rem}.nav>.button{padding-inline:18px}.search-trigger{font-size:.875rem;white-space:nowrap}.button{border-radius:0;min-height:52px;padding:14px 24px;box-shadow:0 0 0 transparent;transition:transform .2s,background .2s,box-shadow .2s}.button:hover{box-shadow:0 8px 28px #f1098930}.button.cyan:hover{background:#a5eaff;box-shadow:0 8px 28px #5bd4ff30}.button span{font-size:1.1rem}.kicker{font-size:.875rem;letter-spacing:.13em}.outline-word{color:transparent;-webkit-text-stroke:1px var(--cyan)}
.festival-hero{min-height:740px;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate;background:#050c30;overflow:hidden}.hero-scenes,.hero-scene{position:absolute;inset:0}.festival-hero .hero-photo{opacity:.64;object-position:60% 55%;transform:none;animation:none}.hero-scene.is-selected{animation:scene-arrive .7s ease both}.festival-hero:after{z-index:1;background:linear-gradient(90deg,#040a2bf2 0%,#040a2bc4 37%,#07125522 80%),linear-gradient(0deg,#040a2b 0%,#040a2b05 60%,#07125550);pointer-events:none}.hero-energy{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none;opacity:.85}.festival-hero .hero-content{z-index:3;width:min(1280px,90%);padding:72px 0 64px;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:30px;align-items:center}.festival-hero .hero-message{animation:none}.festival-hero h1{font-size:clamp(3.5rem,7.3vw,7.2rem);line-height:.96;letter-spacing:-.015em;margin:0 0 26px;max-width:none;text-shadow:0 4px 48px #03082175}.festival-hero h1 span{color:var(--cyan)}.festival-hero .hero-copy{font-size:1.125rem;line-height:1.65;color:#e2eafd;max-width:490px}.festival-hero .kicker{margin-bottom:28px}.hero-message .actions{margin-top:32px}.hero-emblem{position:relative;display:grid;place-items:center;aspect-ratio:1;transform:translateY(-12px);perspective:800px}.hero-emblem img{width:78%;height:auto;filter:drop-shadow(0 12px 28px #030925c0);animation:emblem-float 7s ease-in-out infinite}.hero-emblem>span{position:absolute;bottom:0;text-transform:uppercase;letter-spacing:.17em;font-size:.8125rem;font-weight:700;color:#d7e6ff}.emblem-ring{position:absolute;inset:0;border:1px solid #5bd4ff75;border-radius:50%;transform:rotateX(62deg) rotate(-25deg);box-shadow:0 0 32px #5bd4ff30,inset 0 0 30px #5bd4ff20}.emblem-ring.second{inset:9%;border-color:#f10989aa;transform:rotateY(62deg) rotate(32deg);box-shadow:0 0 32px #f1098930}.hero-scene-bar{position:relative;z-index:3;display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center;padding:20px 0 30px;border-top:1px solid #def6ff45}.hero-scene-bar p{font-size:1rem;margin:3px 0}.scene-tag{font-size:.8125rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);font-weight:bold}.scene-credit{font-size:.75rem;color:#b9c7e3}.scene-switcher{display:flex;gap:5px}.scene-switcher button{display:flex;align-items:center;gap:9px;padding:13px 15px;min-height:48px;border:1px solid #c3dcff38;color:#d9e8fc;background:#040a2b9c;font-size:.875rem;cursor:pointer;transition:border-color .2s,background .2s}.scene-switcher button>span{font-family:var(--display);font-size:1.25rem;color:#b7caff}.scene-switcher button[aria-pressed=true]{border-color:var(--cyan);background:#102f5f}.scene-switcher button:hover{background:#1a2860}.motion-toggle{grid-column:2;justify-self:end;border:0;background:none;color:#d4e0f4;font-size:.8125rem;min-height:34px;padding:2px 0;cursor:pointer;text-decoration:underline;text-underline-offset:4px;margin-top:-14px}.motion-toggle span{color:var(--cyan)}
.event-dock{position:relative;background:#08123a;border-block:1px solid #597aff50}.event-dock-grid{display:grid;grid-template-columns:1fr 1.45fr 1.25fr auto;gap:26px;align-items:center;padding-block:30px}.dock-date{display:flex;flex-direction:column}.dock-date strong{font-family:var(--display);font-size:3.75rem;line-height:1;white-space:nowrap}.dock-date strong span{color:var(--pink);padding-inline:5px}.dock-date>span{text-transform:uppercase;letter-spacing:.1em;font-size:.875rem;color:var(--cyan)}.dock-place{border-left:1px solid var(--line);padding-left:26px;display:flex;flex-direction:column}.dock-place .kicker{font-size:.75rem;margin:0 0 6px;color:#b6c6e3}.dock-place strong{font-size:1.125rem}.dock-place>span:last-child{font-size:.8125rem;color:#b6c6e3;max-width:240px}.event-dock .countdown{margin:0;border-left:1px solid var(--line);padding-left:26px;gap:7px}.event-dock .countdown>span{font-size:.75rem}.event-dock .countdown>strong{font-family:var(--display);font-size:2.1rem;line-height:1.1;color:var(--paper);font-variant-numeric:tabular-nums}.dock-link{font-size:.875rem;text-decoration:underline;text-underline-offset:5px}.dock-link span{color:var(--cyan)}.festival-ribbon{padding:20px 0;background:var(--blue)}.festival-ribbon .wrap{font-size:1.65rem;letter-spacing:.025em}
.experience-section{background:radial-gradient(ellipse at 70% 80%,#14225c80,transparent 65%)}.experience-section .section-head{margin-bottom:50px}.experience-section h2{font-size:clamp(2.8rem,5.3vw,5rem)}.experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.experience-tile{background:#0b1439;border:1px solid var(--line);display:flex;flex-direction:column;min-width:0;transition:border-color .25s,transform .25s}.experience-tile:hover{border-color:#5bd4ff95;transform:translateY(-7px)}.experience-image{position:relative;overflow:hidden;aspect-ratio:4/3;background:var(--night)}.experience-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0b1439,transparent 65%);pointer-events:none}.experience-image img{width:100%;height:100%;object-fit:cover;transition:transform .65s;opacity:.85}.experience-tile:hover img{transform:scale(1.06)}.experience-number{position:absolute;z-index:1;left:24px;bottom:-3px;font-family:var(--display);font-size:5rem;line-height:1;color:var(--cyan)}.experience-body{padding:25px 28px 30px;display:flex;flex-direction:column;flex:1}.experience-body .kicker{font-size:.75rem;margin-bottom:12px;color:#b7c9e8}.experience-body h3{font-size:2.75rem}.experience-body p{color:#b7c9e8;flex:1}.experience-body .text-link{border-top:1px solid var(--line);padding-top:16px;display:flex;align-items:center;justify-content:space-between;font-weight:bold;font-size:.9375rem}.experience-body .text-link span{color:var(--cyan);font-size:1.25rem}.experience-tile:nth-child(2){margin-top:32px;margin-bottom:-32px}.experience-tile:nth-child(2) .experience-number{color:#ff6abd}
.mission-teaser{border-block:1px solid var(--line);background:radial-gradient(ellipse at 90% 20%,#40115388,transparent 65%),#080f32;margin-top:32px}.mission-teaser-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:center;gap:70px}.mission-teaser h2{font-size:clamp(3.5rem,6.8vw,6rem);line-height:1;margin-bottom:30px}.mission-teaser h2 span{color:var(--pink)}.mission-teaser p{color:#cedafa}.mission-teaser .small{margin-top:18px}.arcade-preview{display:block;min-width:0;border:1px solid #597aff80;box-shadow:12px 12px 0 #597aff16,0 0 55px #f1098918;transform:rotate(-2deg);color:var(--paper)!important;transition:transform .3s,border-color .3s}.arcade-preview:hover{transform:rotate(0);border-color:var(--cyan)}.arcade-top,.arcade-bottom{display:flex;justify-content:space-between;gap:16px;padding:15px 20px;background:#0e1946;font-size:.75rem;letter-spacing:.09em}.arcade-top>span:first-child{color:var(--cyan);font-weight:bold}.arcade-bottom{border-top:1px solid var(--line);color:var(--cyan)}.arcade-bottom b{font-weight:normal;color:#bdccea;margin-left:7px}.arcade-screen{position:relative;isolation:isolate;width:100%;min-width:0;aspect-ratio:1.6;min-height:0;overflow:hidden;background:radial-gradient(ellipse at 50% 35%,#4c1c79,transparent 65%),#080f32;display:grid;place-items:center}.arcade-grid{position:absolute;z-index:-1;width:160%;height:110%;top:45%;left:-30%;background:repeating-linear-gradient(90deg,transparent 0 59px,#5bd4ff60 60px 61px),repeating-linear-gradient(0deg,transparent 0 39px,#f1098980 40px 41px);transform:perspective(800px) rotateX(52deg);transform-origin:50% 0;mask-image:linear-gradient(transparent,#000 30%);animation:grid-flow 2s linear infinite}.arcade-title{position:relative;z-index:0;font-family:var(--display);font-size:clamp(3rem,6vw,6rem);line-height:.88;text-align:center;transform:translateY(-26px);text-shadow:3px 3px 0 #597aff,0 0 24px #597aff80}.arcade-title span{color:var(--cyan);font-size:1.35em}.arcade-runner{position:absolute;bottom:25px;left:18px;width:100px;height:100px;background:url('/assets/game/runner-sprite.svg') 0 0/400px 100px;image-rendering:pixelated;animation:runner-frames .65s steps(4) infinite}.arcade-play{position:absolute;bottom:27px;right:25px;display:flex;gap:20px;padding:12px 18px;background:var(--pink);font-weight:bold;font-size:.9375rem;color:white}.festival-impact{background:radial-gradient(ellipse at 0 60%,#24125c,transparent 65%),#070e30;border-top:0}.festival-impact .big-stat{font-size:clamp(3.6rem,7vw,6.4rem);margin-block:22px 8px}.impact-photo{padding:14px;border:1px solid var(--line);transform:rotate(-3deg)}.impact-photo img{border-radius:0;aspect-ratio:.92;object-position:center}.impact-photo .photo-note{left:35px;bottom:-20px;transform:rotate(3deg)}.festival-impact .small{margin-top:22px}.rendezvous .photo-panel img{aspect-ratio:.94;border-radius:0}.rendezvous .photo-note{max-width:90%;font-size:1.375rem}.rendezvous h2{font-size:clamp(2.8rem,4.5vw,4.4rem)}.festival-join{background:var(--cyan);overflow:hidden}.festival-join h2{font-size:clamp(3.5rem,7.5vw,7.25rem);max-width:1100px}.festival-join h2 span{-webkit-text-stroke:1.4px var(--night);color:transparent}.festival-join p{font-size:1.125rem}.page-hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 90% 0,#f1098925,transparent 55%),radial-gradient(ellipse at 40% 100%,#597aff35,transparent 70%),#08123e}.page-hero:after{content:'';position:absolute;right:-5rem;top:-12rem;width:42rem;height:42rem;border:1px solid #5bd4ff20;border-radius:50%;pointer-events:none}.page-hero h1{position:relative;z-index:1;line-height:1}.footer{background:#030822}.footer .brand img{height:43px}.faq summary{transition:color .2s}.faq summary:hover{color:var(--cyan)}.faq details[open]{background:#597aff0b}.faq details[open] summary{color:var(--cyan)}
[data-reveal].will-reveal{opacity:.18;transform:translateY(24px);transition:opacity .7s,transform .7s}[data-reveal].is-revealed{opacity:1;transform:none}.experience-tile.is-revealed:hover{transform:translateY(-7px)}.search-dialog{border-radius:0;padding:2.25rem}.search-dialog h2{font-size:3rem;padding-right:30px}.search-close{min-width:44px;min-height:44px}.search-dialog [data-search-results] a:hover{background:#597aff20}.search-error a{color:var(--cyan);text-decoration:underline}
@keyframes scene-arrive{from{opacity:.5;transform:scale(1.015)}to{opacity:1;transform:none}}@keyframes emblem-float{50%{transform:translateY(-12px) rotate(2deg)}}@keyframes grid-flow{to{background-position:0 0,0 41px}}@keyframes runner-frames{to{background-position:-400px 0}}
@media(max-width:1200px){.nav{gap:1rem}.navlinks{gap:.8rem}.navlinks a{font-size:.875rem}.event-dock-grid{grid-template-columns:1fr 1.3fr 1.1fr}.dock-link{grid-column:2/4}.hero-scene-bar{gap:18px}.scene-switcher button{padding:12px 10px}.mission-teaser-grid{gap:40px}.festival-hero .hero-content{padding-block:90px}.hero-emblem>span{letter-spacing:.07em;font-size:.75rem}}
@media(max-width:1080px){.nav{flex-wrap:wrap;min-height:72px;padding-block:10px}.nav>.button{margin-left:0}.menu{display:block;order:3}.navlinks{order:5;width:100%;flex-direction:column;align-items:stretch;gap:0}.navlinks a{padding:12px 0;font-size:1rem;border-top:1px solid var(--line)}.js .navlinks{display:none}.js .navlinks.open{display:flex}.search-trigger{padding:12px 0;text-align:left;border-top:1px solid var(--line)}.hero-scene-bar{grid-template-columns:1fr}.scene-switcher{justify-self:start}.motion-toggle{grid-column:1;justify-self:start;margin:0}.hero-emblem{align-self:center}.event-dock-grid{gap:20px}.dock-place,.event-dock .countdown{padding-left:20px}}
@media(max-width:800px){.festival-hero{min-height:0}.festival-hero .hero-content{display:block;padding:65px 0 50px}.festival-hero h1{font-size:clamp(3.7rem,13.5vw,6.75rem);max-width:690px}.festival-hero .hero-copy{font-size:1.0625rem;max-width:100%}.festival-hero .hero-emblem{display:none}.festival-hero:after{background:linear-gradient(90deg,#040a2bed,#07125575),linear-gradient(0deg,#040a2b,transparent)}.hero-energy{opacity:.55}.hero-scene-bar{padding-bottom:24px}.scene-switcher{width:100%;gap:6px}.scene-switcher button{flex:1;justify-content:center;font-size:.875rem;padding-inline:6px;gap:6px}.scene-switcher button>span{display:none}.event-dock-grid{grid-template-columns:1fr 1.25fr;padding-block:25px;gap:24px 16px}.dock-date strong{font-size:3.5rem}.dock-place{padding-left:16px}.dock-place strong{font-size:1rem}.event-dock .countdown{padding:0;border:0}.event-dock .countdown>strong{font-size:1.9rem}.dock-link{grid-column:2;font-size:.875rem;border-left:1px solid var(--line);padding-left:16px}.festival-ribbon .wrap{font-size:1.25rem;gap:10px}.experience-grid{grid-template-columns:1fr}.experience-tile{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}.experience-tile:nth-child(2){margin:0}.experience-image{height:100%;aspect-ratio:auto;min-height:250px}.experience-body{padding:25px}.experience-body h3{font-size:2.5rem}.experience-body p{font-size:1rem}.mission-teaser{margin-top:0}.mission-teaser-grid{grid-template-columns:1fr;gap:45px}.mission-teaser h2{font-size:clamp(3rem,12vw,6rem)}.arcade-preview{transform:none;margin-right:0}.arcade-title{font-size:5rem}.arcade-screen{min-height:0}.festival-impact .split{display:block}.impact-photo{max-width:550px;margin-inline:auto}.impact-photo img{aspect-ratio:1.2}.festival-impact h2{margin-top:60px}.festival-impact .big-stat{font-size:clamp(2.25rem,12.5vw,4rem)}.rendezvous .photo-panel img{aspect-ratio:1.15}.photo-note{font-size:1.375rem}.outline-word{-webkit-text-stroke:1px var(--cyan)}}
@media(max-width:480px){.topbar{font-size:.75rem;letter-spacing:.025em}.nav>.button{display:none}.nav .brand{font-size:1.5rem}.festival-hero .hero-content{padding-top:48px}.festival-hero h1{font-size:clamp(2.5rem,13.7vw,4.1rem)}.festival-hero .kicker{font-size:.75rem;letter-spacing:.075em;max-width:290px;margin-bottom:22px}.hero-message .actions{display:grid;gap:10px}.hero-message .button{padding-inline:14px}.hero-scene-bar p{font-size:.9375rem}.scene-switcher button{font-size:.8125rem}.experience-tile{display:flex}.experience-image{width:100%;min-height:0;aspect-ratio:1.65}.experience-body{padding:24px}.experience-number{font-size:4.5rem}.dock-date strong{font-size:3rem}.dock-date>span{font-size:.8125rem}.event-dock .countdown>strong{font-size:1.65rem}.dock-place>span:last-child{font-size:.75rem}.arcade-top,.arcade-bottom{font-size:.75rem;padding:13px;letter-spacing:0}.arcade-runner{left:5px;bottom:22px;width:80px;height:80px;background-size:320px 80px;animation-name:runner-frames-small}.arcade-title{font-size:clamp(2.7rem,11vw,4.4rem)}.arcade-play{right:14px;padding:12px;font-size:.875rem;gap:12px}.search-dialog{padding:25px 18px}.search-dialog h2{font-size:2.5rem}.festival-join h2{font-size:3.5rem}.festival-join .actions{display:grid}.mobile-cta{padding-bottom:max(10px,env(safe-area-inset-bottom))}.rendezvous .photo-note{font-size:1.125rem;left:10px;bottom:-20px}}
@keyframes runner-frames-small{to{background-position:-320px 0}}
@media(prefers-reduced-motion:reduce){.will-reveal{opacity:1!important;transform:none!important}.hero-energy{display:none}.outline-word{color:var(--cyan);-webkit-text-stroke:0}}
html[data-motion=off]{scroll-behavior:auto}html[data-motion=off] *,html[data-motion=off] *:before,html[data-motion=off] *:after{animation:none!important;transition:none!important}html[data-motion=off] .will-reveal{opacity:1;transform:none}html[data-motion=off] .hero-energy{display:none}
@media(forced-colors:active){.outline-word,.festival-join h2 span{color:CanvasText;-webkit-text-stroke:0}.hero-emblem,.hero-energy,.arcade-grid{display:none}.button,.scene-switcher button,.arcade-play{border:2px solid ButtonText}.scene-switcher button[aria-pressed=true]{outline:2px solid Highlight}.hero-photo{opacity:.15}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mission-page{background:radial-gradient(ellipse at 30% 20%,#14255980,transparent 65%),#050b29}.mission-intro{display:flex;align-items:end;justify-content:space-between;gap:24px;padding-block:35px 25px}.mission-intro .breadcrumb{margin-bottom:18px}.mission-intro h1{font-size:clamp(3rem,5vw,5rem);margin:0}.mission-intro h1 span{color:var(--cyan)}.mission-intro p{color:var(--muted);margin:0}.mission-layout{grid-template-columns:minmax(0,2.8fr) minmax(270px,1fr);gap:25px;padding-top:0}.game-shell{border:1px solid #597aff65;padding:22px;border-radius:0;background:#0b1338;box-shadow:0 0 60px #597aff10}.game-head{align-items:center;flex-wrap:wrap}.game-head .kicker{font-size:.75rem;margin-bottom:6px}.game-head h2{font-size:clamp(1.8rem,2.7vw,2.5rem);line-height:1.05}.game-head .button{padding:12px 18px;min-height:48px;font-size:.875rem}.game-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-block:1px solid var(--line);padding:15px 0;margin:18px 0}.game-status span{padding-left:18px;border-left:1px solid var(--line);min-width:0}.game-status span:first-child{padding-left:0;border-left:0}.game-status small{font-size:.75rem;letter-spacing:.09em}.game-status strong{font-size:2rem;line-height:1.3}.game-stage{border:1px solid #5bd4ff70;box-shadow:0 0 30px #597aff18}.game-stage [data-mission]{aspect-ratio:24/11;touch-action:manipulation}.game-loading{font-size:.875rem;padding:30px;text-align:center;letter-spacing:0}.game-key-hint{font-size:.8125rem;color:var(--muted);margin-left:auto}.game-key-hint span{padding:0 6px}.game-key-hint kbd{color:var(--paper);font-family:var(--body)}.game-tip{margin:18px 0 0}.game-controls{gap:12px}.game-controls .button,.jump-button{font-size:.9375rem;min-height:48px;min-width:110px}.narrative-fallback{border-radius:0;padding:25px;background:#09112f}.narrative-fallback h2{font-size:2.4rem;line-height:1}.narrative-fallback p{color:var(--muted)}.narrative-fallback ol{padding-left:20px}.narrative-fallback li{padding-left:6px;font-size:.9375rem}.narrative-fallback li::marker{color:var(--cyan);font-weight:bold}.narrative-fallback li strong,.narrative-fallback li span{display:block}.narrative-fallback li span{color:var(--muted);margin-top:5px}.narrative-fallback .button{font-size:.875rem;padding-inline:15px;width:100%}.mission-cause{display:block;margin-top:16px;text-align:center;font-size:.875rem}.game-options{margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}.game-options label{display:flex;gap:10px;align-items:center;font-size:.875rem}.game-options input{width:18px;height:18px;accent-color:var(--cyan)}.game-options .motion-toggle{display:block;text-align:left;margin-top:10px;min-height:44px}.game-options p{margin:12px 0 0}
@media(max-width:1050px){.mission-layout{grid-template-columns:1fr}.narrative-fallback ol{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.narrative-fallback .button{width:auto}.mission-cause{text-align:left}.game-options{max-width:540px}.game-head h2{font-size:2rem}}
@media(max-width:760px){.mission-intro{display:block;padding-top:28px}.mission-intro p{margin-top:14px}.mission-layout{width:90%}.game-shell{padding:16px}.game-head{display:flex}.game-head .button{width:100%;margin-top:10px}.game-status{display:grid}.game-status span{border-block:0;border-right:0;padding:0 10px}.game-status strong{font-size:1.8rem}.game-stage{margin-inline:-16px;border-inline:0}.game-controls{display:grid;grid-template-columns:1fr 1fr}.game-key-hint{grid-column:1/3;margin-left:0}.narrative-fallback{padding:22px}.narrative-fallback ol{display:block}.narrative-fallback li{font-size:1rem}.game-options p{font-size:.875rem}.game-tip{font-size:.8125rem}}


.grid>*,.two-cols>*,.split>*,.footer-grid>*,.stats>*,.event-dock-grid>*{min-width:0;overflow-wrap:anywhere}.header:has(.navlinks.open){max-height:100svh;overflow-y:auto}.big-stat{overflow-wrap:anywhere}.photo-note{max-width:calc(100% - 2rem)}.arcade-top,.arcade-bottom{flex-wrap:wrap}.arcade-play{max-width:calc(100% - 90px);text-align:center}.arcade-screen{contain:paint}.arcade-title{max-width:100%}body[data-page="/mission-lan/"] .mobile-cta{display:none}
@media(max-width:480px){.mobile-cta>span{display:none}.mobile-cta .button{width:100%}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:auto}.arcade-runner{bottom:12px}.arcade-play{bottom:14px;padding:8px}.arcade-title{transform:translateY(-20px)}.photo-note{position:relative;display:block;left:auto!important;bottom:auto!important;max-width:100%;transform:none!important;margin-top:10px}.impact-photo{transform:none}.scene-switcher{flex-wrap:wrap}.scene-switcher button{flex:1 1 80px}.dock-place{overflow-wrap:normal}.event-dock-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.countdown>strong{overflow-wrap:anywhere}.mission-intro{padding-top:20px}.mission-intro p{margin-top:8px}.game-head .button{margin-top:0}.game-status{margin:12px 0;padding:10px 0}}

/* Navigation et lecture des informations pratiques. */
.nav-community{position:relative}.nav-community summary{cursor:pointer;padding:12px 0}.nav-community summary:hover{color:var(--cyan)}.nav-community>div{position:absolute;min-width:260px;padding:12px 20px;background:var(--ink);border:1px solid var(--line)}.nav-community a{display:block;padding:10px 0}.visit-paths{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding-block:28px}.visit-paths a{min-width:0;border:1px solid var(--line);border-top:3px solid var(--cyan);padding:20px;background:#0d1640;overflow-wrap:anywhere}.visit-paths strong,.visit-paths span{display:block}.visit-paths span{color:var(--muted);font-size:.875rem;margin-top:6px}.page-jumps{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:40px}.page-jumps a{padding:10px 16px;border:1px solid var(--line);min-height:44px}.page-layout h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.1}.page-layout h3{line-height:1.15}.page-layout .section{padding-block:56px}.step-list{padding-left:28px}.step-list li{padding:12px;border-bottom:1px solid var(--line)}.step-list li::marker{color:var(--cyan);font-weight:bold}.step-list h3{font-size:1.5rem;margin-bottom:10px}.faq-group{margin-bottom:48px}.faq details:target{border-left:3px solid var(--cyan);padding-left:16px}.table caption{text-align:left;padding-block:24px}.menu{min-height:44px}input:focus-visible{outline:3px solid var(--cyan)}
@media(max-width:1080px){.nav-community>div{position:static;min-width:0;border:0}}
@media(max-width:800px){.visit-paths{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.visit-paths{grid-template-columns:1fr}.page-jumps a{flex:1 1 auto;text-align:center}.navlinks.open{padding-bottom:65px}}
