:root{color-scheme:dark;--night:#170a2e;--plum:#2a1155;--lilac:#cdb8ff;--haze:#f4eeff;--haze-soft:#f4eeffc2;--dusk:#ffa07a;--glass:#16092c8c;--display:"Bricolage Grotesque","Arial Narrow","Helvetica Neue",Arial,sans-serif;--body:"Instrument Sans","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--pad:clamp(1rem,4vw,2.5rem);--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);box-sizing:border-box;padding-top:var(--sat);padding-bottom:var(--sab)}*,:before,:after{box-sizing:inherit}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--sat) + 5rem)}body{background:linear-gradient(180deg,#3a1872 0%,var(--plum) 45%,var(--night) 100%) fixed;min-height:100%;color:var(--haze);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.6;overflow-x:hidden}body:before{content:"";height:var(--sat);z-index:60;backdrop-filter:blur(10px);background:#170a2e99;position:fixed;inset:0 0 auto}img,svg{max-width:100%;display:block}a{color:inherit}button{font:inherit;color:inherit}:focus-visible{outline:2px dashed var(--dusk);outline-offset:4px;border-radius:8px}#sky{z-index:0;position:fixed;inset:0}#veil{z-index:0;pointer-events:none;opacity:0;background:linear-gradient(#170a2e33,#170a2eeb);position:fixed;inset:0}main{z-index:1;position:relative}.wrap{max-width:1240px;padding:0 var(--pad);margin:0 auto}.sec-title{font-family:var(--display);font-variation-settings:"wdth" 80;letter-spacing:-.03em;margin:0 0 .75rem;font-size:clamp(2.6rem,7vw,5.2rem);font-weight:800;line-height:.95}.sec-lead{color:var(--haze-soft);max-width:34rem;margin:0}.actions{flex-wrap:wrap;gap:.75rem;display:flex}.btn{-webkit-backdrop-filter:blur(8px);cursor:pointer;min-height:44px;color:var(--haze);background:#170a2e4d;border:1px solid #f4eeff73;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;padding:.7rem 1.3rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--haze);background:#170a2e73}.btn.solid{background:var(--dusk);color:#2a0e1c;border-color:var(--dusk)}.btn.solid:hover{background:#ffb592}.btn svg{flex:none;width:1.15em;height:1.15em}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=860px){.actions .btn{flex:auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.top{z-index:50;padding-top:var(--sat);transition:background .3s;position:fixed;top:0;left:0;right:0}.top.solid{-webkit-backdrop-filter:blur(14px);background:#170a2e8c}.top-in{max-width:1240px;padding:.85rem var(--pad);align-items:center;gap:1.25rem;margin:0 auto;display:flex}.mark{font-family:var(--display);letter-spacing:-.02em;font-variation-settings:"wdth" 80;margin-right:auto;font-size:1.35rem;font-weight:800;text-decoration:none}.top nav{gap:1.4rem;display:flex}.top nav a{color:var(--haze-soft);font-size:.98rem;font-weight:500;text-decoration:none}.top nav a:hover{color:var(--haze)}.lang{border:1px solid #cdb8ff59;border-radius:999px;padding:2px;display:flex}.lang a{color:var(--haze-soft);border-radius:999px;padding:.3rem .7rem;font-size:.85rem;font-weight:600;text-decoration:none}.lang a[aria-current=true]{background:var(--haze);color:var(--plum)}.cv{background:var(--haze);color:var(--plum);border-radius:999px;padding:.5rem 1.05rem;font-size:.95rem;font-weight:600;text-decoration:none}.menu-btn{cursor:pointer;background:#170a2e59;border:1px solid #f4eeff59;border-radius:50%;place-items:center;width:44px;height:44px;display:none}.menu-btn svg{width:22px;height:22px}.sheet{z-index:80;-webkit-backdrop-filter:blur(16px);padding:calc(var(--sat) + 1rem) var(--pad) calc(var(--sab) + 2rem);background:#120724f0;flex-direction:column;display:flex;position:fixed;inset:0}.sheet[hidden]{display:none}.sheet .close{cursor:pointer;background:0 0;border:1px solid #f4eeff59;border-radius:50%;align-self:flex-end;place-items:center;width:44px;height:44px;display:grid}.sheet nav{gap:.25rem;margin-top:2rem;display:grid}.sheet nav a{font-family:var(--display);letter-spacing:-.03em;font-variation-settings:"wdth" 80;padding:.3rem 0;font-size:2.6rem;font-weight:800;text-decoration:none}.sheet .cv{text-align:center;margin-top:auto;padding:1rem;font-size:1.05rem}@media (width<=860px){.top nav,.top .cv{display:none}.menu-btn{display:grid}}.hero{max-width:1240px;min-height:100svh;padding:7rem var(--pad) 4.5rem;align-content:end;margin:0 auto;display:grid}.name{font-family:var(--display);font-variation-settings:"wdth" 75,"opsz" 96;letter-spacing:-.035em;text-shadow:0 6px 40px #2a11558c;margin:0;font-size:clamp(4.2rem,15.5vw,13.5rem);font-weight:800;line-height:.82}.name span{display:block}.name span:last-child{padding-left:.42em}.hero-foot{grid-template-columns:minmax(0,34rem) auto;justify-content:space-between;align-items:end;gap:2rem;margin-top:3rem;display:grid}.role{font-family:var(--display);font-variation-settings:"wdth" 90;margin:0 0 .5rem;font-size:1.35rem;font-weight:600}.lead{color:var(--haze-soft);text-shadow:0 1px 18px #170a2e99;max-width:34rem;margin:0}@media (width<=860px){.hero{padding-bottom:3rem}.hero-foot{grid-template-columns:1fr;margin-top:2rem}.name span:last-child{padding-left:.2em}}.archi-sec{padding:6rem 0 2rem}.archi{height:clamp(820px,88vw,1100px);margin-top:1rem;position:relative}.isle{all:unset;box-sizing:border-box;cursor:pointer;text-align:center;-webkit-tap-highlight-color:transparent;display:block;position:absolute}.isle .art{animation:bob var(--bob,7s) ease-in-out infinite;transition:transform .5s cubic-bezier(.2,.8,.2,1),filter .4s}.isle .art img,.isle .art svg{filter:drop-shadow(0 30px 40px #0e042066);width:100%;height:auto}.isle:hover .art{filter:brightness(1.08)drop-shadow(0 0 30px #cdb8ff66)}.isle:focus-visible{outline:2px dashed var(--dusk);outline-offset:8px;border-radius:24px}.isle.diving .art{filter:brightness(1.3);transform:scale(1.6)}.isle .tag{flex-direction:column;align-items:center;gap:.15rem;margin-top:-1.5rem;display:inline-flex}.isle .tag b{font-family:var(--display);letter-spacing:-.02em;font-variation-settings:"wdth" 85;font-size:clamp(1.5rem,2.6vw,2.2rem);font-weight:800;line-height:1.1}.isle .tag i{color:var(--haze-soft);font-size:.98rem;font-style:normal}.isle .go{background:#f4eeff24;border:1px solid #f4eeff59;border-radius:999px;align-items:center;gap:.4rem;margin-top:.6rem;padding:.45rem .95rem;font-size:.9rem;font-weight:600;transition:background .2s;display:inline-flex}.isle:hover .go{background:var(--dusk);color:#2a0e1c;border-color:var(--dusk)}.isle .go .st{opacity:.8;font-weight:500}.isle[data-id=biblios]{--bob:7.5s;width:38%;top:2%;left:0}.isle[data-id=booklovers]{--bob:8.5s;width:42%;top:0;left:54%}.isle[data-id=booklovers] .art{animation-delay:-4s}.isle[data-id=bitcoin]{--bob:6.5s;width:34%;top:48%;left:30%}.isle[data-id=bitcoin] .art{animation-delay:-2s}.archi-dots,.swipe-hint{display:none}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-16px)}}@media (width<=860px){.archi-sec{padding-top:4rem}.archi{scroll-snap-type:x mandatory;height:auto;margin:2rem calc(var(--pad) * -1) 0;padding:0 var(--pad) 1rem;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:1rem;display:flex;overflow-x:auto}.archi::-webkit-scrollbar{display:none}.isle,.isle[data-id]{scroll-snap-align:center;background:#16092c59;border:1px solid #f4eeff1f;border-radius:28px;flex:0 0 84%;width:auto;padding:1rem 1rem 1.4rem;position:relative;top:auto;left:auto}.isle .art{animation:none}.isle .go{background:var(--dusk);color:#2a0e1c;border-color:var(--dusk);padding:.6rem 1.2rem}.archi-dots{justify-content:center;display:flex}.swipe-hint{color:var(--haze-soft);margin:.75rem 0 0;font-size:.9rem;display:block}}@media (prefers-reduced-motion:reduce){.isle .art{animation:none}}.path-sec,.tools-sec,.contact-sec{padding:7rem 0}.timeline{max-width:58rem;margin:3rem 0 0;padding:0;list-style:none;position:relative}.timeline:before{content:"";background:linear-gradient(var(--lilac),#cdb8ff1a);width:2px;position:absolute;top:.6rem;bottom:.6rem;left:9.5rem}.timeline li{grid-template-columns:8.5rem 1fr;gap:2.5rem;padding:0 0 2.75rem;display:grid;position:relative}.timeline li:after{content:"";background:var(--night);border:2px solid var(--lilac);border-radius:50%;width:14px;height:14px;position:absolute;top:.45rem;left:calc(9.5rem - 6px)}.timeline li.now:after{background:var(--dusk);border-color:var(--dusk);box-shadow:0 0 0 6px #ffa07a33}.when{font-family:var(--display);color:var(--lilac);text-align:right;padding-top:.15rem;font-size:.98rem;font-weight:600;line-height:1.4}.timeline h3{font-family:var(--display);letter-spacing:-.01em;margin:0;font-size:1.55rem;font-weight:700;line-height:1.15}.timeline .org{color:var(--lilac);margin:.15rem 0 .6rem;font-weight:500}.timeline p.what{color:var(--haze-soft);max-width:38rem;margin:0}@media (width<=860px){.path-sec,.tools-sec,.contact-sec{padding:5rem 0}.timeline:before{left:.45rem}.timeline li{grid-template-columns:1fr;gap:.35rem;padding-left:2.2rem}.timeline li:after{left:0}.when{text-align:left}}.chips{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.chips li{background:#f4eeff17;border:1px solid #f4eeff2e;border-radius:999px;align-items:center;gap:.5rem;padding:.3rem .85rem .3rem .3rem;font-size:.95rem;line-height:1.3;display:inline-flex}.chips li.has-link{padding:0;transition:background .2s,border-color .2s,transform .2s}.chips li.has-link a{color:inherit;border-radius:999px;align-items:center;gap:.5rem;padding:.3rem .75rem .3rem .3rem;text-decoration:none;display:inline-flex}.chips li.has-link:hover{background:#f4eeff2e;border-color:#f4eeff73;transform:translateY(-1px)}.chips .ext{opacity:.45;width:.8rem;height:.8rem;transition:opacity .2s}.chips li.has-link:hover .ext{opacity:1}.ic{background:#fff;border-radius:50%;flex:none;place-items:center;width:1.75rem;height:1.75rem;display:grid;box-shadow:0 2px 8px #0a031840}.ic img{width:1.1rem;height:1.1rem;display:block}.learn{color:#2a0e1c;background:var(--lilac);border-radius:999px;padding:.05rem .45rem;font-size:.75rem;font-style:normal;font-weight:600}.tools{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:2.5rem 3rem;margin-top:3rem;display:grid}.tools h3{font-family:var(--display);color:var(--lilac);margin:0 0 .85rem;font-size:1.25rem;font-weight:700}.langs{border-top:1px solid #cdb8ff33;flex-wrap:wrap;gap:1rem 3rem;margin-top:3.5rem;padding-top:2rem;display:flex}.langs div{align-items:baseline;gap:.6rem;display:flex}.langs b{font-family:var(--display);font-size:1.35rem;font-weight:700}.langs span{color:var(--lilac);font-weight:600}@media (width<=860px){.tools{gap:2rem}}.mailbox{-webkit-backdrop-filter:blur(10px);background:#16092c73;border:1px solid #f4eeff33;border-radius:999px;flex-wrap:wrap;align-items:center;gap:.5rem;max-width:100%;margin:2.25rem 0 1.5rem;padding:.45rem .45rem .45rem 1.25rem;display:inline-flex}.mail{color:var(--haze);overflow-wrap:anywhere;align-items:center;gap:.65rem;min-width:0;font-size:1.12rem;font-weight:500;text-decoration:none;display:inline-flex}.mail svg{width:1.25rem;height:1.25rem;color:var(--lilac);flex:none}.mail:hover{color:#fff;text-underline-offset:4px;text-decoration:underline;text-decoration-color:var(--dusk)}.copy{background:var(--dusk);color:#2a0e1c;cursor:pointer;white-space:nowrap;border:0;border-radius:999px;min-height:40px;padding:.45rem 1.05rem;font-weight:600}.copy:hover{background:#ffb592}footer{z-index:1;color:var(--haze-soft);padding:2rem var(--pad) calc(var(--sab) + 3rem);max-width:1240px;margin:0 auto;font-size:.9rem;position:relative}@media (width<=860px){.mailbox{border-radius:22px;flex-direction:column;align-items:stretch;gap:.85rem;padding:1rem;display:flex}.mail{justify-content:center;font-size:1.02rem}.copy{min-height:46px}}.stage{z-index:40;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;position:fixed;inset:0;overflow-y:auto}.stage[hidden]{display:none}.stage:focus{outline:none}body.in-island main,body.in-island footer,body.in-island .top,body.in-island #veil{visibility:hidden}body.in-island{overflow:hidden}.st-art{z-index:0;touch-action:pan-y;position:fixed;inset:0}.st-art canvas{cursor:grab;display:block;width:100%!important;height:100%!important}.st-art canvas:active{cursor:grabbing}.st-art .svg-fallback{width:min(52vw,640px);position:absolute;top:50%;left:8%;transform:translateY(-50%)}.drag-hint{left:30%;bottom:calc(var(--sab) + 6.2rem);color:var(--haze-soft);pointer-events:none;text-shadow:0 1px 10px #100622cc;align-items:center;gap:.4rem;margin:0;font-size:.85rem;display:flex;position:absolute;transform:translate(-50%)}.drag-hint svg{width:1.1rem;height:1.1rem}.st-info{z-index:1;width:min(31rem,100% - 2rem);margin:calc(var(--sat) + 5.5rem) clamp(1rem,5vw,4.5rem) calc(var(--sab) + 7rem) auto;background:var(--glass);-webkit-backdrop-filter:blur(18px)saturate(1.2);border:1px solid #f4eeff24;border-radius:28px;padding:2rem 2rem 2.25rem;position:relative}.st-handle{display:none}.st-place{color:var(--lilac);margin:0 0 .3rem;font-weight:600}.st-info h2{font-family:var(--display);font-variation-settings:"wdth" 78;letter-spacing:-.035em;margin:0 0 1rem;font-size:clamp(2.8rem,6vw,5rem);font-weight:800;line-height:.92}.st-status{border:1px solid #f4eeff73;border-radius:999px;margin:0 0 1.1rem;padding:.2rem .75rem;font-size:.85rem;font-weight:600;display:inline-block}.st-desc{margin:0 0 1.4rem}.st-hl{gap:.45rem;margin:0 0 1.6rem;padding:0;list-style:none;display:grid}.st-hl li{color:var(--haze-soft);align-items:baseline;gap:.7rem;display:flex}.st-hl li:before{content:"";background:var(--accent,var(--dusk));border-radius:50%;flex:none;width:.55rem;height:.55rem;transform:translateY(-.1rem)}.st-info h3{color:var(--lilac);margin:0 0 .7rem;font-size:.95rem;font-weight:600}.st-info .chips{margin-bottom:1.8rem}.st-info .chips li{background:#10062259}.back{top:calc(var(--sat) + 1rem);left:var(--pad);z-index:55;position:fixed}.st-bar{z-index:55;left:var(--pad);bottom:calc(var(--sab) + 1.25rem);justify-content:space-between;align-items:center;gap:1rem;width:min(54vw,760px);display:flex;position:fixed}.st-bar .btn{padding:.55rem 1.1rem .55rem .8rem}.st-bar #next{padding:.55rem .8rem .55rem 1.1rem}.st-bar .lbl{text-align:left;flex-direction:column;line-height:1.15;display:flex}.st-bar #next .lbl{text-align:right}.st-bar small{color:var(--haze-soft);font-size:.75rem;font-weight:400}.dots{gap:.35rem;display:flex}.dots button{all:unset;cursor:pointer;place-items:center;width:28px;height:28px;display:grid}.dots button:before{content:"";background:#f4eeff66;border-radius:50%;width:9px;height:9px;transition:width .3s,background .3s}.dots button[aria-current=true]:before{background:var(--haze);border-radius:999px;width:26px}.dots button:focus-visible{outline:2px dashed var(--dusk);border-radius:8px}.stage.arrive .st-info{animation:.7s cubic-bezier(.2,.85,.25,1) .25s both rise}@keyframes rise{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}@media (width<=860px){.st-art{top:0;height:54vh;position:sticky;inset:auto}.st-art .svg-fallback{width:min(80vw,380px);left:50%;transform:translate(-50%,-45%)}.drag-hint{bottom:3.4rem;left:50%}.st-info{width:auto;padding:.75rem 1.25rem calc(var(--sab) + 7rem);background:#16092cd1;border-width:1px 0 0;border-radius:28px 28px 0 0;min-height:60svh;margin:-2.5rem 0 0}.st-handle{background:#f4eeff59;border-radius:9px;width:44px;height:5px;margin:0 auto 1.1rem;display:block}.back{left:.75rem;top:calc(var(--sat) + .75rem);padding:.5rem .9rem}.st-bar{width:auto;padding:.65rem .75rem calc(var(--sab) + .65rem);-webkit-backdrop-filter:blur(16px);background:#120724e0;border-top:1px solid #f4eeff1f;bottom:0;left:0;right:0}.st-bar .lbl small{display:none}.st-bar .btn{padding:.5rem .9rem .5rem .6rem;font-size:.92rem}.st-bar #next{padding:.5rem .6rem .5rem .9rem}}@media (width<=420px){.st-bar .lbl{text-overflow:ellipsis;white-space:nowrap;max-width:6.5rem;display:block;overflow:hidden}}@media (prefers-reduced-motion:reduce){.stage.arrive .st-info{animation-duration:10ms}}#warp{z-index:70;pointer-events:none;position:fixed;inset:0;overflow:hidden}#warp .flash{opacity:0;background:radial-gradient(circle at 50% 50%,#fff 0%,var(--puff) 40%,color-mix(in srgb,var(--puff) 55%,#2a1155) 100%);position:absolute;inset:0}#warp .streaks{opacity:0;background:repeating-conic-gradient(#fff0 0deg 2.6deg,#ffffffb3 2.6deg 2.9deg);width:260vmax;height:260vmax;margin:-130vmax 0 0 -130vmax;position:absolute;top:50%;left:50%;-webkit-mask:radial-gradient(circle,#0000 6%,#000 22%,#0000 55%);mask:radial-gradient(circle,#0000 6%,#000 22%,#0000 55%)}.puff{width:var(--s);height:var(--s);margin:calc(var(--s) / -2) 0 0 calc(var(--s) / -2);opacity:0;background:radial-gradient(circle,var(--puff) 0%,#e9ddffb3 35%,#e9ddff00 68%);border-radius:50%;position:absolute;top:50%;left:50%}#warp.go .flash{animation:.95s both flash}#warp.go .streaks{animation:.95s cubic-bezier(.4,0,.2,1) both streak}#warp.go .puff{animation:out .95s cubic-bezier(.35,.05,.25,1) var(--d) both}#warp.go.reverse .puff{animation-name:in}#warp.go.reverse .streaks{animation-direction:reverse}@keyframes flash{0%{opacity:0}35%,50%{opacity:1}to{opacity:0}}@keyframes streak{0%{opacity:0;transform:scale(.4)rotate(0)}30%{opacity:.9}to{opacity:0;transform:scale(1.6)rotate(8deg)}}@keyframes out{0%{opacity:0;transform:translate(var(--x0),var(--y0)) scale(.25)}35%{opacity:1}to{opacity:0;transform:translate(var(--x),var(--y)) scale(3.4)}}@keyframes in{0%{opacity:0;transform:translate(var(--x),var(--y)) scale(3.4)}45%{opacity:1}to{opacity:0;transform:translate(var(--x0),var(--y0)) scale(.25)}}@media (prefers-reduced-motion:reduce){#warp.go .puff,#warp.go .streaks{display:none}#warp.go .flash{animation-duration:.45s}}
