:root{--p: 0}html,body{margin:0;background:var(--bg)}body{color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}:where(a,button,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.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}.skip-link{position:fixed;top:10px;left:10px;z-index:300;transform:translateY(-160%);opacity:0;pointer-events:none;background:var(--accent);color:#fff;font-family:var(--mono);font-size:13px;padding:10px 16px;border-radius:4px;transition:transform .2s ease,opacity .2s ease}.skip-link:focus-visible{transform:none;opacity:1;pointer-events:auto}.nav-fixed{position:fixed;top:12px;left:16px;z-index:50;pointer-events:none}.nav-sig{height:160px;width:auto;filter:var(--sig-tint);opacity:0;user-select:none;-webkit-user-drag:none;animation:navSigIn 1.4s ease 1.5s forwards}@keyframes navSigIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.hp-burger{position:fixed;top:18px;right:18px;z-index:210;width:46px;height:46px;border:0;background:transparent;cursor:pointer;border-radius:8px}.hp-line{position:absolute;left:12px;width:22px;height:2px;background:var(--ink);transition:transform .32s cubic-bezier(.32,.72,0,1),opacity .2s}.hp-line:nth-child(1){top:17px}.hp-line:nth-child(2){top:23px}.hp-line:nth-child(3){top:29px}body.hp-open .hp-line:nth-child(1){transform:translateY(6px) rotate(45deg)}body.hp-open .hp-line:nth-child(2){opacity:0}body.hp-open .hp-line:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.hp-menu{position:fixed;inset:0 0 auto;z-index:205;padding:92px 28px 44px;background:#050a1ae6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);transform:translateY(-102%);transition:transform .5s cubic-bezier(.32,.72,0,1)}body.hp-open .hp-menu{transform:translateY(0)}.hp-menu ul{list-style:none;margin:0;padding:0}.hp-menu li a{display:block;font-family:var(--sans);font-weight:300;font-size:clamp(28px,5vw,44px);line-height:1.5;color:var(--ink);transition:color .2s}.hp-menu li a:hover{color:var(--accent)}.hp-menu li.hpm-temp{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.hpm-temp-tag{display:inline-flex;align-items:center;gap:8px;margin-left:12px;vertical-align:middle;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.hp-menu-meta{margin-top:26px;display:flex;gap:24px;font-family:var(--mono);font-size:13px;color:var(--ink-dim)}.hp-menu-meta a{transition:color .2s}.hp-menu-meta a:hover{color:var(--accent)}.intro-track{height:260svh}.hero{position:fixed;inset:0;height:100vh;height:100svh;width:100%;overflow:hidden;background:var(--bg);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;z-index:1}.hero,.hero *{-webkit-touch-callout:none}.hero canvas{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:crosshair;transform-origin:50% 50%;will-change:transform,opacity}#vertigine{z-index:0;transform:scale(calc(1 + var(--p)*var(--p)*var(--p)*var(--p)*var(--p)*var(--p) * 2600));opacity:clamp(0,calc(1 - (max(var(--p) - .33,0)*13)),1)}#vertigine.vx-hidden{display:none}.vortex-flash{position:fixed;inset:0;z-index:2;pointer-events:none;mix-blend-mode:screen;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.95) 0%,rgba(200,230,255,.75) 16%,rgba(120,180,240,.42) 34%,rgba(74,147,230,.16) 55%,transparent 74%);opacity:clamp(0,calc(1 - (max(var(--p) - .365,.365 - var(--p))*13)),1)}.is-static .vortex-flash{display:none}.holo-fallback{position:absolute;inset:0;z-index:0;opacity:clamp(0,calc((var(--p) - .34) * 4.2),1);pointer-events:none;background:radial-gradient(ellipse at 50% 40%,rgba(74,147,230,.16) 0%,rgba(74,147,230,.05) 34%,transparent 66%),radial-gradient(ellipse at 50% 50%,#0a1430,#050a1a 74%)}.is-static .holo-fallback{display:none}.hint-pointer{position:fixed;bottom:5vh;left:50%;transform:translate(-50%);color:#f0f4ffeb;text-decoration:none;font-family:var(--sans);font-size:11px;letter-spacing:.4em;text-transform:uppercase;opacity:calc(1 - var(--p) * 4);pointer-events:auto;z-index:5}.hint-inner{display:flex;flex-direction:column;align-items:center;gap:10px;opacity:0;animation:hintFadeIn 1.2s ease 2.6s forwards}.hint-pointer:hover{color:#4a93e6}.hint-label{font-weight:500;text-shadow:0 2px 12px rgba(0,0,0,.6)}.hint-pointer svg{width:18px;height:28px;filter:drop-shadow(0 2px 8px rgba(0,0,0,.7));animation:hintBob 2.4s ease-in-out infinite}@keyframes hintFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes hintBob{0%,to{transform:translateY(0);opacity:.85}50%{transform:translateY(6px);opacity:1}}.hero-mark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:clamp(360px,56vw,720px);height:auto;display:grid;place-items:center;pointer-events:none;z-index:3}.fly-shift{display:grid;place-items:center;transform:translateY(calc(var(--p) * -12svh)) scale(calc(1 - var(--p) * .1));opacity:calc(1 - var(--p) * 1.5);transition:transform .4s cubic-bezier(.22,1,.36,1);will-change:transform,opacity}.butterfly-wrap{position:relative;display:grid;place-items:center;opacity:0;transform:scale(.55);animation:butterflyEnter 2.4s cubic-bezier(.22,1,.36,1) .4s forwards;will-change:opacity,transform}.butterfly-bloom{position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(74,147,230,.45) 0%,rgba(74,147,230,.18) 35%,transparent 70%);pointer-events:none;opacity:0;animation:bloomBurst 1.2s cubic-bezier(.22,1,.36,1) .4s forwards;will-change:opacity,transform}@keyframes bloomBurst{0%{opacity:0;transform:scale(.4)}35%{opacity:.85;transform:scale(1)}to{opacity:0;transform:scale(1.4)}}@keyframes butterflyEnter{0%{opacity:0;transform:scale(.55) rotate(-4deg)}20%{opacity:.55;transform:scale(.94) rotate(2deg)}38%{opacity:1;transform:scale(1.05) rotate(-1deg)}60%{transform:scale(.99) rotate(.3deg)}to{opacity:1;transform:scale(1) rotate(0)}}.butterfly-glass{position:relative;display:block;flex:0 0 auto;width:360px;height:280px;filter:drop-shadow(0 16px 36px rgba(5,10,30,.65))}.wing-slot{position:absolute;inset:0;transition:transform .4s cubic-bezier(.22,1,.36,1);will-change:transform}.wing-slot.left{transform:translate(calc(var(--p) * -13vw)) rotate(calc(var(--p) * -9deg))}.wing-slot.right{transform:translate(calc(var(--p) * 13vw)) rotate(calc(var(--p) * 9deg))}.g-wing{position:absolute;top:0;width:50%;height:100%;transform-origin:100% 50%;animation:flapL 7s ease-in-out infinite}.g-wing-l{left:0}.g-wing-r{left:50%;transform-origin:0% 50%;animation-name:flapR}.g-wing-r>.shard{transform:scaleX(-1);transform-origin:50% 50%}@keyframes flapL{0%,to{transform:scaleX(1) skewY(0)}50%{transform:scaleX(.18) skewY(-3deg)}}@keyframes flapR{0%,to{transform:scaleX(1) skewY(0)}50%{transform:scaleX(.18) skewY(3deg)}}.shard{position:absolute;inset:0;backdrop-filter:blur(6px) saturate(1.2);-webkit-backdrop-filter:blur(6px) saturate(1.2);border:1px solid rgba(220,240,248,.6);background:linear-gradient(135deg,#c3e6f066,#ffffff38,#b4dce866);box-shadow:inset 0 0 30px #dcf0f840;overflow:hidden}.shard:before,.shard:after{content:"";position:absolute;inset:-12% -22%;background:linear-gradient(180deg,transparent 30%,rgba(220,235,255,0) 42%,rgba(240,248,255,1) 50%,rgba(220,235,255,0) 58%,transparent 70%);mix-blend-mode:screen;pointer-events:none;will-change:transform,opacity;filter:brightness(var(--gi, 1))}.shard:before{animation:shardGlintDown 7s linear var(--gd1, 0s) infinite}.shard:after{animation:shardGlintUp 7s linear var(--gd2, 0s) infinite}.shard.s-d:before{--gd1: 0s;--gi: 1}.shard.s-a:before{--gd1: .18s;--gi: .7}.shard.s-c:before{--gd1: .54s;--gi: .22}.shard.s-e:before{--gd1: .72s;--gi: .08}.shard.s-e:after{--gd2: 0s}.shard.s-c:after{--gd2: .18s}.shard.s-a:after{--gd2: .54s}.shard.s-d:after{--gd2: .72s}@keyframes shardGlintDown{0%{transform:translateY(-80%);opacity:0}12%{transform:translateY(-80%);opacity:0}14%{transform:translateY(-70%);opacity:1}38%{transform:translateY(70%);opacity:1}40%{transform:translateY(80%);opacity:0}to{transform:translateY(80%);opacity:0}}@keyframes shardGlintUp{0%{transform:translateY(80%);opacity:0}62%{transform:translateY(80%);opacity:0}64%{transform:translateY(70%);opacity:1}86%{transform:translateY(-70%);opacity:1}88%{transform:translateY(-80%);opacity:0}to{transform:translateY(-80%);opacity:0}}.shard.s-d{clip-path:polygon(100% 45%,55% 12%,22% 0,14% 22%);backdrop-filter:blur(2px);background:linear-gradient(160deg,#ffffff8c,#c3e6f047);opacity:.92;z-index:2}.shard.s-a{clip-path:polygon(100% 45%,14% 22%,0% 30%,14% 48%,22% 60%,100% 52%);backdrop-filter:blur(3px) saturate(1.4);background:linear-gradient(120deg,#c3e6f08c,#ffffff2e);opacity:.95;z-index:2}.shard.s-c{clip-path:polygon(100% 52%,22% 60%,8% 72%,30% 86%);backdrop-filter:blur(4px) saturate(1.3);background:linear-gradient(110deg,#cdebee80,#b4dee866);opacity:.95;z-index:1}.shard.s-e{clip-path:polygon(100% 52%,30% 86%,50% 92%,65% 76%);backdrop-filter:blur(8px) saturate(1.2);background:linear-gradient(140deg,#b4dce88c,#fff3);opacity:.95;z-index:1}@media(max-width:820px),(hover:none)and (pointer:coarse){.butterfly-glass{filter:none}.shard{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:inset 0 0 22px #dcf0f838;background:linear-gradient(135deg,#c8e8f28c,#ffffff57,#bae0ec8c)}.shard.s-d{background:linear-gradient(160deg,#ffffff9e,#c8e8f26b)}.shard.s-a{background:linear-gradient(120deg,#c8e8f29e,#ffffff4d)}.shard.s-c{background:linear-gradient(110deg,#d2eef294,#bae2ec80)}.shard.s-e{background:linear-gradient(140deg,#bae0ec9e,#ffffff52)}.shard:before,.shard:after{display:none}}.hub{position:fixed;left:50%;top:50%;z-index:4;display:flex;flex-direction:column;align-items:center;gap:clamp(10px,2.4vh,26px);opacity:clamp(0,calc((var(--p) - .42) * 3.6),1);transform:translate(-50%,calc(-50% + (1 - clamp(0,calc((var(--p) - .42) * 3),1))*18px));pointer-events:none}.hub.live{pointer-events:auto}.hub-item{position:relative;font-family:var(--sans);font-weight:300;font-size:clamp(19px,2.8vw,32px);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim);text-decoration:none;padding:4px 2px;transition:color .35s ease,letter-spacing .5s cubic-bezier(.22,1,.36,1)}.hub-item:after{content:"";position:absolute;left:50%;bottom:-3px;width:0;height:1px;background:var(--accent);transform:translate(-50%);transition:width .4s cubic-bezier(.22,1,.36,1)}.hub.live .hub-item:hover,.hub.live .hub-item:focus-visible{color:var(--ink);letter-spacing:.22em;outline:none}.hub.live .hub-item:hover:after,.hub.live .hub-item:focus-visible:after{width:100%}.hub-item.hub-temp{margin-top:clamp(8px,1.8vh,20px);display:flex;flex-direction:column;align-items:center;gap:8px}.hub-item.hub-temp:before{content:"";width:26px;height:1px;background:var(--line-strong);margin-bottom:clamp(4px,1vh,10px)}.hub-temp-tag,.hpm-temp-tag{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.nav-dot{flex:none;width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 #4a93e699;animation:navPulse 2.2s ease-out infinite}@keyframes navPulse{0%{box-shadow:0 0 #4a93e680}70%{box-shadow:0 0 0 7px #4a93e600}to{box-shadow:0 0 #4a93e600}}@media(prefers-reduced-motion:reduce){.nav-dot{animation:none}}.hub-foot{position:fixed;bottom:26px;left:0;right:0;z-index:4;display:flex;gap:28px;justify-content:center;font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--ink-mute);opacity:calc((var(--p) - .62) * 3.4);pointer-events:none}.hub.live~.hub-foot{pointer-events:auto}.hub-foot a{transition:color .25s}.hub-foot a:hover{color:var(--accent)}.is-static .intro-track{height:auto}.is-static .hero{position:relative}.is-static .hero canvas{transform:none;opacity:1}.is-static .fly-shift{transform:none;opacity:1}.is-static .wing-slot{transform:none}.is-static .hub{position:relative;left:auto;top:auto;transform:none;margin:40px auto;opacity:1;pointer-events:auto}.is-static .hub-foot{position:relative;opacity:1;pointer-events:auto;margin-bottom:28px}.is-static .hint-pointer{display:none}@media(max-width:640px){.butterfly-glass{transform:scale(.82)}.wing-slot.left{transform:translate(calc(var(--p) * -20vw)) rotate(calc(var(--p) * -9deg))}.wing-slot.right{transform:translate(calc(var(--p) * 20vw)) rotate(calc(var(--p) * 9deg))}.nav-fixed{left:50%;right:auto;transform:translate(-50%)}.nav-sig{height:clamp(78px,23vw,104px)}}
