@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;700&family=Inter:wght@400;500;600&family=Caveat:wght@600&display=swap";:root{--ink:#171512;--paper:#fff;--coral:#ff5a36;--cyan:#6ee7e0;--violet:#7c6fc4;--butter:#f4c94c;--mint:#8fe38a;--line:3px;--dieline:6px;--radius:22px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;width:100%;margin:0;font-family:Inter,sans-serif;overflow-x:hidden}h1,h2,h3,.display{letter-spacing:-.02em;margin:0;font-family:Space Grotesk,sans-serif;font-weight:700}.script{font-family:Caveat,cursive;font-weight:600}a{color:inherit}img,svg{display:block}section{position:relative}.wrap{max-width:1080px;margin:0 auto;padding:0 32px}.flower-bullets{margin:0;padding:0;list-style:none}.flower-bullets li{padding-left:22px;position:relative}.flower-bullets li:before{content:"";background-image:url(https://cdn.simpleicons.org/heliumbrowser/000000);background-position:50%;background-repeat:no-repeat;background-size:contain;width:9px;height:9px;position:absolute;top:.42em;left:4px}.badge{border:var(--line) solid var(--ink);border-radius:100px;align-items:center;gap:10px;margin-bottom:28px;padding:9px 20px 9px 16px;font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700;display:inline-flex}.badge .dot{background:var(--ink);border-radius:50%;width:9px;height:9px}.section-pad{padding:110px 0}.btn{border:var(--line) solid var(--ink);background:var(--ink);color:var(--paper);cursor:pointer;border-radius:100px;padding:13px 26px;font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700;text-decoration:none;transition:transform .18s cubic-bezier(.2,1.4,.4,1);display:inline-block}.btn.ghost{color:var(--ink);background:0 0}.btn:hover{transform:translateY(-3px)rotate(-1deg)}.tech-row{flex-wrap:wrap;gap:8px;display:flex}.tech-chip{border:2px solid var(--ink);border-radius:100px;padding:6px 12px;font-size:12.5px;font-weight:600}@media (prefers-reduced-motion:reduce){:not(.sticker-face):not(.sticker-label):not(.skill-group-title){transition:none!important;animation:none!important}}#loader.svelte-v1tg6x{background:var(--paper);z-index:100;flex-direction:column;justify-content:center;align-items:center;gap:22px;transition:opacity .5s;display:flex;position:fixed;inset:0}#loader.hide.svelte-v1tg6x{opacity:0;pointer-events:none}.mark.svelte-v1tg6x{width:76px;height:76px}.mark.svelte-v1tg6x svg:where(.svelte-v1tg6x){display:block}.flower.svelte-v1tg6x{transform-origin:100px 100px;animation:2.4s cubic-bezier(.65,0,.35,1) infinite svelte-v1tg6x-m3-flower-spin,16.8s step-start infinite svelte-v1tg6x-m3-flower-color}.flower.svelte-v1tg6x path:where(.svelte-v1tg6x){fill:currentColor}@keyframes svelte-v1tg6x-m3-flower-spin{0%{transform:rotate(0)scale(.9)}50%{transform:rotate(180deg)scale(1.05)}to{transform:rotate(360deg)scale(.9)}}@keyframes svelte-v1tg6x-m3-flower-color{0%{color:#ff6b1a}14.2857%{color:#2e6fe3}28.5714%{color:#f5d33b}42.8571%{color:#3ecfcb}57.1428%{color:#e0182f}71.4285%{color:#7c4dff}85.7142%{color:#6fc8a0}to{color:#ff6b1a}}@media (prefers-reduced-motion:reduce){.flower.svelte-v1tg6x{color:#ff6b1a;animation:none}}.loader-label.svelte-v1tg6x{color:#8a8580;font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:700}.loader-label.svelte-v1tg6x .n:where(.svelte-v1tg6x){color:var(--ink)}.desktop-note.svelte-v1tg6x{box-sizing:border-box;left:0;right:0;bottom:calc(16px + env(safe-area-inset-bottom,0px));border:2px solid var(--ink);width:min(480px,100% - 32px);color:var(--ink);opacity:0;background:#fff;border-radius:999px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin:0 auto;padding:12px 12px 12px 20px;font-family:Space Grotesk,sans-serif;animation:.5s cubic-bezier(.2,.8,.2,1) .2s forwards svelte-v1tg6x-note-in;display:none;position:absolute}.note-text.svelte-v1tg6x{flex:180px;margin:0;font-size:14px;font-weight:500;line-height:1.4}.copy-btn.svelte-v1tg6x{background:var(--ink);min-height:44px;color:var(--paper);border:2px solid var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:8px;padding:0 18px;font:700 13px/1 Space Grotesk,sans-serif;transition:background .2s,color .2s,transform .15s;display:inline-flex}.copy-btn.svelte-v1tg6x:active{transform:scale(.97)}.copy-btn.svelte-v1tg6x:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.copy-btn.copied.svelte-v1tg6x{color:var(--ink);background:#8fe39b}@keyframes svelte-v1tg6x-note-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.desktop-note.svelte-v1tg6x{display:flex}}@media (width<=380px){.desktop-note.svelte-v1tg6x{border-radius:24px;padding:14px}.copy-btn.svelte-v1tg6x{width:100%}}@media (prefers-reduced-motion:reduce){.desktop-note.svelte-v1tg6x{opacity:1;animation:none}.copy-btn.svelte-v1tg6x{transition:none}}.sr-only.svelte-v1tg6x{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.rain-layer.svelte-18eo925{pointer-events:none;z-index:5;opacity:0;width:100vw;height:100vh;transition:opacity .5s;position:fixed;inset:0;overflow:hidden}.rain-layer.on.svelte-18eo925{opacity:1}@media (hover:none),(pointer:coarse){.rain-layer.svelte-18eo925{display:none!important}}.trail-sticker{pointer-events:none;z-index:5;will-change:transform, opacity;width:128px;height:128px;position:fixed;top:0;left:0}.cursor-dot.svelte-1g4pblu{background:var(--ink);pointer-events:none;z-index:6;opacity:0;border-radius:50%;width:10px;height:10px;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}@media (hover:none),(pointer:coarse){.cursor-dot.svelte-1g4pblu{display:none!important}}.mode-toggle.svelte-1g4pblu{z-index:50;border:2px solid var(--ink);background:var(--blue,#5b8cff);border-radius:100px;align-items:center;gap:2px;padding:3px;transition:opacity .25s,transform .25s,visibility linear;display:flex;position:fixed;top:16px;right:20px}.mode-toggle.hidden.svelte-1g4pblu{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s,transform .25s,visibility 0s linear .25s;transform:translateY(-8px)}.mode-btn.svelte-1g4pblu{width:26px;height:26px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;transition:transform .18s cubic-bezier(.2,1.4,.4,1),background .18s,color .18s;display:grid}.mode-btn.svelte-1g4pblu svg:where(.svelte-1g4pblu){width:14px;height:14px}.mode-btn.svelte-1g4pblu:hover{transform:translateY(-1px)rotate(-6deg)}.mode-btn.svelte-1g4pblu:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.mode-btn.active.svelte-1g4pblu{background:var(--ink);color:#fff}body.rain-mode #hero,body.rain-mode #about{cursor:auto!important}@media (hover:none),(pointer:coarse){.mode-toggle.svelte-1g4pblu{display:none!important}}.ft.svelte-1a3j47j{width:100%;max-width:100%;font-size:1.6em;line-height:1;display:block;position:relative;overflow:visible}@media (width<=768px){.ft.svelte-1a3j47j{font-size:2em}}.label.svelte-1a3j47j{white-space:normal;display:block}canvas.svelte-1a3j47j{pointer-events:none;width:100%;height:100%;display:block;position:absolute;top:0;left:0}.ft.ready.svelte-1a3j47j .label:where(.svelte-1a3j47j){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hero.svelte-1q37ri0{text-align:center;cursor:none;flex-direction:column;justify-content:center;align-items:center;height:100dvh;min-height:640px;display:flex;overflow:hidden}.hero.svelte-1q37ri0 h1:where(.svelte-1q37ri0){font-size:clamp(30px,9vw,84px);line-height:.98}.hero.svelte-1q37ri0 h1:where(.svelte-1q37ri0)>span:where(.svelte-1q37ri0){white-space:nowrap;display:block;overflow:hidden}.hero.svelte-1q37ri0 h1:where(.svelte-1q37ri0)>.line-word:where(.svelte-1q37ri0){margin:-.16em 0;padding:.16em .1em}.word-slot.svelte-1q37ri0{text-align:left;white-space:nowrap;display:inline-block}.word-inner.svelte-1q37ri0{white-space:nowrap;transition:color .5s;display:inline-block}.ch.svelte-1q37ri0{will-change:filter, opacity, transform;transition:opacity .3s ease calc(var(--k) * 14ms), filter .3s ease calc(var(--k) * 14ms), transform .3s ease calc(var(--k) * 14ms);display:inline-block}.ch.out.svelte-1q37ri0{opacity:0;filter:blur(10px);transform:translateY(-.06em)}.ch.in.svelte-1q37ri0{animation:.65s cubic-bezier(.2,.7,.2,1) both svelte-1q37ri0-chIn;animation-delay:calc(var(--k) * 38ms);transition:none}@keyframes svelte-1q37ri0-chIn{0%{opacity:0;filter:blur(14px);transform:translateY(.1em)}to{opacity:1;filter:blur();transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.ch.svelte-1q37ri0,.ch.in.svelte-1q37ri0{transition:none;animation:none}}.hero-tagline.svelte-1q37ri0{color:#54504a;max-width:480px;margin-top:22px;font-size:18px}.hero-cta.svelte-1q37ri0{gap:14px;margin-top:34px;display:flex}@media (hover:none),(pointer:coarse){.hero.svelte-1q37ri0{cursor:auto!important}}@media (width<=860px){.hero.svelte-1q37ri0{cursor:auto}.hero.svelte-1q37ri0 h1:where(.svelte-1q37ri0){width:calc(100% - 42px);max-width:100%;font-size:clamp(34px,10.5vw,72px)}.hero.svelte-1q37ri0 h1:where(.svelte-1q37ri0)>span:where(.svelte-1q37ri0){max-width:100%}.hero-tagline.svelte-1q37ri0{max-width:calc(100% - 56px);margin-left:28px;margin-right:28px}}@media (height<=560px){.hero.svelte-1q37ri0{min-height:460px}}@media (width<=480px){.hero.svelte-1q37ri0 h1:where(.svelte-1q37ri0){width:calc(100% - 40px);font-size:clamp(32px,10vw,52px)}.hero-tagline.svelte-1q37ri0{max-width:calc(100% - 64px);margin-left:32px;margin-right:32px}}.about-grid.svelte-7hpc9t{grid-template-columns:1.3fr 1fr;align-items:center;gap:64px;display:grid}.about-copy.svelte-7hpc9t p{color:#2c2a26;margin:0 0 18px;font-size:19px;line-height:1.6}.about-copy.svelte-7hpc9t p:last-child{margin-bottom:0}.about-mascot.svelte-7hpc9t{justify-self:center;padding:24px 24px 32px;position:relative}.about-mascot.svelte-7hpc9t img:where(.svelte-7hpc9t){aspect-ratio:auto 762/1165;object-fit:contain;filter:drop-shadow(0 18px 22px #1e181229);width:clamp(178px,22.68vw,275px);max-width:100%;height:auto;display:block}.float.svelte-7hpc9t{will-change:transform;animation:6.5s ease-in-out infinite svelte-7hpc9t-floatBob}.drift.svelte-7hpc9t{transform-origin:50% 55%;will-change:transform;animation:11s ease-in-out infinite svelte-7hpc9t-floatDrift}@keyframes svelte-7hpc9t-floatBob{0%,to{transform:translateY(6px)}50%{transform:translateY(-14px)}}@keyframes svelte-7hpc9t-floatDrift{0%{transform:translate(-5px)rotate(-2.5deg)}33%{transform:translate(4px)rotate(1.5deg)}66%{transform:translate(-2px)rotate(3deg)}to{transform:translate(-5px)rotate(-2.5deg)}}.float-shadow.svelte-7hpc9t{background:radial-gradient(#1e181238,#1e181200 70%);border-radius:50%;width:55%;height:16px;margin-left:-27.5%;animation:6.5s ease-in-out infinite svelte-7hpc9t-floatShadow;position:absolute;bottom:4px;left:50%}@keyframes svelte-7hpc9t-floatShadow{0%,to{opacity:.9;transform:scale(1)}50%{opacity:.45;transform:scale(.7)}}@media (prefers-reduced-motion:reduce){.float.svelte-7hpc9t,.drift.svelte-7hpc9t,.float-shadow.svelte-7hpc9t{animation:none}}@media (width<=860px){.about-grid.svelte-7hpc9t{grid-template-columns:1fr}.about-mascot.svelte-7hpc9t{order:-1}}.skills-heading.svelte-1f1pl16{margin-bottom:8px;font-size:38px}.skills-subtext.svelte-1f1pl16{color:#8a8580;margin-bottom:28px;font-size:15px}.tabs-row.svelte-1f1pl16{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:40px;display:flex}.play-btn.svelte-1f1pl16{color:#14110f;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#fff;border:2px solid #14110f;border-radius:999px;justify-content:center;align-items:center;gap:9px;padding:12px 22px;font:600 15px Inter,sans-serif;transition:background .2s,color .2s,transform .12s;display:inline-flex}.play-icon.svelte-1f1pl16{color:currentColor;flex:none}@media (width<=640px){.play-btn.svelte-1f1pl16{display:none}}@media (hover:hover) and (pointer:fine){.play-btn.svelte-1f1pl16:hover:not(.on){color:#fff;background:#14110f}.play-btn.on.svelte-1f1pl16:hover{color:#14110f;background:#fff}}.play-btn.svelte-1f1pl16:active{transform:scale(.95)}.play-btn.on.svelte-1f1pl16{color:#fff;background:#14110f}.play-btn.svelte-1f1pl16:focus-visible{outline-offset:3px;outline:3px solid #14110f}.view-tabs.svelte-1f1pl16{background:#fff;border:2px solid #14110f;border-radius:999px;gap:4px;padding:4px;display:inline-flex}.view-tab.svelte-1f1pl16{color:#14110f;cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:9px;padding:8px 18px;font:600 15px Inter,sans-serif;transition:background .2s,color .2s;display:inline-flex}.view-tab.svelte-1f1pl16:hover:not(.active){background:#f0eee9}.view-tab.active.svelte-1f1pl16{color:#fff;background:#14110f}.tab-dot.svelte-1f1pl16{background:#d9d6d0;border-radius:50%;width:10px;height:10px;transition:background .2s}.view-tab.active.svelte-1f1pl16 .tab-dot:where(.svelte-1f1pl16){background:#ff7a00}.view-tab.svelte-1f1pl16:focus-visible{outline-offset:2px;outline:3px solid #ff7a00}.skill-group.svelte-1f1pl16{margin-bottom:56px}.skill-group.svelte-1f1pl16:last-child{margin-bottom:0}.skill-group-title.svelte-1f1pl16{color:#8a8580;opacity:0;transition:opacity .45s ease var(--d,0s), transform .45s ease var(--d,0s);margin-bottom:18px;font-family:Inter,sans-serif;font-size:13px;font-weight:600;transform:translateY(8px)}.skill-group-title.svelte-1f1pl16.in{opacity:1;transform:none}.sticker-grid.svelte-1f1pl16{grid-template-columns:repeat(6,1fr);gap:22px 18px;display:grid}.sticker.svelte-1f1pl16{text-align:center;opacity:0;min-width:0;transition:opacity .4s ease var(--d,0s), transform .55s cubic-bezier(.2, 1.3, .4, 1) var(--d,0s);will-change:opacity, transform;flex-direction:column;align-items:center;gap:10px;display:flex;transform:translateY(22px)scale(.85)}.sticker.svelte-1f1pl16.in{opacity:1;will-change:auto;transform:none}.sticker-face.svelte-1f1pl16{justify-content:center;align-items:center;width:clamp(56px,20vw,88px);max-width:100%;height:clamp(56px,20vw,88px);transition:transform .22s cubic-bezier(.2,1.6,.4,1);display:flex;position:relative}@media (hover:hover) and (pointer:fine){.sticker.svelte-1f1pl16:hover .sticker-face:where(.svelte-1f1pl16){transform:translateY(-6px)rotate(-4deg)}}.sticker-face.svelte-1f1pl16 img:where(.svelte-1f1pl16){object-fit:contain;width:82%;height:82%}.sticker-label.svelte-1f1pl16{color:#3d3a35;font-size:12.5px;font-weight:500}.periodic-legend.svelte-1f1pl16{letter-spacing:.04em;color:#8a8580;flex-wrap:wrap;gap:8px 18px;margin-bottom:26px;font:600 11px Inter,sans-serif;display:flex}.legend-item.svelte-1f1pl16{align-items:center;gap:7px;display:inline-flex}.legend-swatch.svelte-1f1pl16{border-radius:3px;width:12px;height:12px}.periodic-grid.svelte-1f1pl16{grid-template-columns:repeat(8,1fr);gap:8px;display:grid}.element.svelte-1f1pl16{aspect-ratio:1;opacity:0;min-width:0;transition:opacity .4s ease var(--d,0s), transform .5s cubic-bezier(.2, 1.3, .4, 1) var(--d,0s);position:relative;transform:translateY(16px)scale(.9)}.element.svelte-1f1pl16.in{opacity:1;transform:none}.element-inner.svelte-1f1pl16{border:2px solid var(--c);color:#14110f;text-align:center;cursor:default;background:#fff;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:14px 4px 6px;transition:transform .3s cubic-bezier(.2,1.6,.4,1),box-shadow .3s;display:flex;position:absolute;inset:0;overflow:hidden}.element-num.svelte-1f1pl16{opacity:.75;font:600 10px Inter,sans-serif;position:absolute;top:6px;left:8px}.element-count.svelte-1f1pl16{opacity:.75;font:600 10px Inter,sans-serif;position:absolute;bottom:6px;right:8px}.element-symbol.svelte-1f1pl16{font:700 clamp(18px,3.2vw,28px)/1 Inter,sans-serif;transition:opacity .2s,transform .3s}.element-name.svelte-1f1pl16{overflow-wrap:anywhere;max-width:100%;margin-top:2px;font:600 clamp(8.5px,1.1vw,11px)/1.15 Inter,sans-serif}.element-logo.svelte-1f1pl16{object-fit:contain;opacity:0;pointer-events:none;width:42%;height:42%;transition:opacity .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-62%)scale(.4)rotate(-20deg)}@keyframes svelte-1f1pl16-logo-pop{0%{transform:translate(-50%,-62%)scale(.4)rotate(-20deg)}55%{transform:translate(-50%,-62%)scale(1.2)rotate(8deg)}to{transform:translate(-50%,-62%)scale(1)rotate(0)}}@keyframes svelte-1f1pl16-cube-wobble{0%{rotate:0deg}30%{rotate:-4deg}60%{rotate:3deg}to{rotate:0deg}}.element-num.svelte-1f1pl16,.element-count.svelte-1f1pl16{opacity:.5}.element.active.svelte-1f1pl16 .element-inner:where(.svelte-1f1pl16){box-shadow:0 14px 30px color-mix(in srgb, var(--c) 40%, transparent)}@media (hover:hover) and (pointer:fine){.element.svelte-1f1pl16:hover .element-inner:where(.svelte-1f1pl16){box-shadow:0 14px 30px color-mix(in srgb, var(--c) 40%, transparent)}}.element.svelte-1f1pl16{-webkit-tap-highlight-color:transparent;outline:none}.element-inner.svelte-1f1pl16{transform-origin:var(--origin,center)}.element.svelte-1f1pl16:focus-visible .element-inner:where(.svelte-1f1pl16){outline-offset:2px;outline:3px solid #ff7a00}.element.active.svelte-1f1pl16{z-index:20}.element.active.svelte-1f1pl16 .element-inner:where(.svelte-1f1pl16){animation:.5s svelte-1f1pl16-cube-wobble;transform:scale(1.7);box-shadow:0 14px 30px #00000038}.element.active.svelte-1f1pl16 .element-symbol:where(.svelte-1f1pl16){opacity:0;transform:scale(.6)}.element.active.svelte-1f1pl16 .element-logo:where(.svelte-1f1pl16){opacity:1;animation:.5s cubic-bezier(.2,1.4,.4,1) svelte-1f1pl16-logo-pop;transform:translate(-50%,-62%)scale(1)}@media (hover:hover) and (pointer:fine){.element.svelte-1f1pl16:hover{z-index:20}.element.svelte-1f1pl16:hover .element-inner:where(.svelte-1f1pl16){animation:.5s svelte-1f1pl16-cube-wobble;transform:scale(1.7);box-shadow:0 14px 30px #00000038}.element.svelte-1f1pl16:hover .element-symbol:where(.svelte-1f1pl16){opacity:0;transform:scale(.6)}.element.svelte-1f1pl16:hover .element-logo:where(.svelte-1f1pl16){opacity:1;animation:.5s cubic-bezier(.2,1.4,.4,1) svelte-1f1pl16-logo-pop;transform:translate(-50%,-62%)scale(1)}}@media (width<=860px){.sticker-grid.svelte-1f1pl16{grid-template-columns:repeat(4,1fr)}.periodic-grid.svelte-1f1pl16{grid-template-columns:repeat(6,1fr)}}@media (width<=520px){.sticker-grid.svelte-1f1pl16{grid-template-columns:repeat(3,1fr)}.periodic-grid.svelte-1f1pl16{grid-template-columns:repeat(4,1fr);gap:6px}}@media (prefers-reduced-motion:reduce){.sticker.svelte-1f1pl16,.skill-group-title.svelte-1f1pl16,.element.svelte-1f1pl16{opacity:1;transition:none;transform:none}.element.svelte-1f1pl16:hover .element-inner:where(.svelte-1f1pl16),.element.svelte-1f1pl16:hover .element-logo:where(.svelte-1f1pl16),.element.active.svelte-1f1pl16 .element-inner:where(.svelte-1f1pl16),.element.active.svelte-1f1pl16 .element-logo:where(.svelte-1f1pl16){animation:none}}.game-wrap.svelte-1f1pl16{width:100%}.game-card.svelte-1f1pl16{background:#fff;border:2px solid #14110f;border-radius:8px;width:100%;padding:32px}.menu-grid.svelte-1f1pl16{grid-template-columns:1.1fr 1fr;align-items:start;gap:40px 56px;display:grid}.game-kicker.svelte-1f1pl16{color:#8a8580;font:600 13px Inter,sans-serif}.game-title.svelte-1f1pl16{margin:6px 0 8px;font-size:38px}.game-intro.svelte-1f1pl16{color:#8a8580;margin:0 0 22px;font-size:15px}.how-list.svelte-1f1pl16{color:#3d3a35;margin:0;padding-left:20px;font-size:15px;line-height:1.8}.opt-label.svelte-1f1pl16{letter-spacing:.04em;color:#8a8580;text-transform:uppercase;margin:0 0 10px;font:600 11px Inter,sans-serif}.opt-group.svelte-1f1pl16{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:22px;display:grid}.opt-group.two.svelte-1f1pl16{grid-template-columns:repeat(2,1fr);margin-bottom:10px}.opt.svelte-1f1pl16{color:#14110f;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#fff;border:2px solid #14110f;border-radius:999px;flex-direction:column;align-items:center;gap:2px;padding:10px 12px;font:600 15px Inter,sans-serif;transition:background .2s,color .2s,transform .12s;display:flex}.opt.svelte-1f1pl16:active{transform:scale(.97)}.opt.active.svelte-1f1pl16{color:#fff;background:#14110f}.opt.svelte-1f1pl16:focus-visible{outline-offset:2px;outline:3px solid #ff2d78}@media (hover:hover) and (pointer:fine){.opt.svelte-1f1pl16:hover:not(.active){background:#f0eee9}}.range-box.svelte-1f1pl16{margin-bottom:26px}.range-readout.svelte-1f1pl16{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.range-name.svelte-1f1pl16{color:#14110f;font:700 20px Inter,sans-serif}.range-sub.svelte-1f1pl16{color:#8a8580;font:500 13px Inter,sans-serif}.range.svelte-1f1pl16{appearance:none;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;width:100%;height:26px;margin:0;display:block}.range.svelte-1f1pl16::-webkit-slider-runnable-track{background:linear-gradient(to right, #ff2d78 var(--fill), #fff var(--fill));border-radius:999px;height:10px;box-shadow:0 0 0 2px #14110f}.range.svelte-1f1pl16::-moz-range-track{background:#fff;border-radius:999px;height:10px;box-shadow:0 0 0 2px #14110f}.range.svelte-1f1pl16::-moz-range-progress{background:#ff2d78;border-radius:999px;height:10px}.range.svelte-1f1pl16::-webkit-slider-thumb{appearance:none;box-sizing:border-box;background:#14110f;border:4px solid #fff;border-radius:50%;width:26px;height:26px;margin-top:-8px;transition:transform .15s,background .15s;box-shadow:0 0 0 2px #14110f}.range.svelte-1f1pl16::-moz-range-thumb{box-sizing:border-box;background:#14110f;border:4px solid #fff;border-radius:50%;width:26px;height:26px;transition:transform .15s,background .15s;box-shadow:0 0 0 2px #14110f}.range.svelte-1f1pl16:active::-webkit-slider-thumb{background:#ff2d78;transform:scale(1.12)}.range.svelte-1f1pl16:active::-moz-range-thumb{background:#ff2d78;transform:scale(1.12)}.range.svelte-1f1pl16:focus-visible{outline:none}.range.svelte-1f1pl16:focus-visible::-webkit-slider-thumb{background:#ff2d78}.range.svelte-1f1pl16:focus-visible::-moz-range-thumb{background:#ff2d78}.range-scale.svelte-1f1pl16,.range-names.svelte-1f1pl16{margin:0 13px;position:relative}.range-scale.svelte-1f1pl16{height:38px;margin-top:8px}.range-names.svelte-1f1pl16{height:22px;margin-top:2px}.tick.svelte-1f1pl16{cursor:pointer;color:#8a8580;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;width:22px;padding:0;font:500 10.5px Inter,sans-serif;display:flex;position:absolute;top:0;transform:translate(-50%)}.tick-line.svelte-1f1pl16{background:#cfcbc4;border-radius:2px;width:2px;height:6px;transition:background .2s,height .2s}.tick.major.svelte-1f1pl16 .tick-line:where(.svelte-1f1pl16){background:#14110f;height:11px}.tick.major.svelte-1f1pl16 .tick-num:where(.svelte-1f1pl16){color:#14110f;font-weight:700}.tick.on.svelte-1f1pl16 .tick-line:where(.svelte-1f1pl16){background:#ff2d78;height:11px}.tick.on.svelte-1f1pl16 .tick-num:where(.svelte-1f1pl16){color:#ff2d78;font-weight:700}.tick-name.svelte-1f1pl16{cursor:pointer;white-space:nowrap;color:#8a8580;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:2px 0;font:600 12.5px Inter,sans-serif;transition:color .2s;position:absolute;top:0;transform:translate(-50%)}.tick-name.first.svelte-1f1pl16{transform:translate(-13px)}.tick-name.last.svelte-1f1pl16{transform:translate(calc(13px - 100%))}.tick-name.on.svelte-1f1pl16{color:#14110f}@media (hover:hover) and (pointer:fine){.tick.svelte-1f1pl16:hover .tick-num:where(.svelte-1f1pl16),.tick-name.svelte-1f1pl16:hover{color:#14110f}}@media (width>=861px) and (width<=1100px){.tick.minor.svelte-1f1pl16:not(.on) .tick-num:where(.svelte-1f1pl16){visibility:hidden}}.opt-hint.svelte-1f1pl16{color:#8a8580;min-height:18px;margin:0 0 28px;font-size:13px}.game-actions.svelte-1f1pl16{flex-wrap:wrap;gap:10px;display:flex}.btn-solid.svelte-1f1pl16,.btn-outline.svelte-1f1pl16{cursor:pointer;-webkit-tap-highlight-color:transparent;border:2px solid #14110f;border-radius:999px;padding:12px 28px;font:600 15px Inter,sans-serif;transition:background .2s,color .2s,transform .12s}.btn-solid.svelte-1f1pl16{color:#fff;background:#14110f}.btn-outline.svelte-1f1pl16{color:#14110f;background:#fff}.btn-outline.small.svelte-1f1pl16{margin-left:auto;padding:8px 18px;font-size:13px}.btn-solid.svelte-1f1pl16:active,.btn-outline.svelte-1f1pl16:active{transform:scale(.95)}.btn-solid.svelte-1f1pl16:focus-visible,.btn-outline.svelte-1f1pl16:focus-visible{outline-offset:3px;outline:3px solid #ff2d78}@media (hover:hover) and (pointer:fine){.btn-solid.svelte-1f1pl16:hover{color:#fff;background:#ff2d78;border-color:#14110f}.btn-outline.svelte-1f1pl16:hover{color:#fff;background:#14110f}}.score-row.svelte-1f1pl16{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:24px;display:flex}.final-scores.svelte-1f1pl16{justify-content:center;gap:10px;margin:20px 0 26px;display:flex}.result-card.svelte-1f1pl16{text-align:center}.result-card.svelte-1f1pl16 .game-actions:where(.svelte-1f1pl16){justify-content:center}.score-chip.svelte-1f1pl16{--pc:#ff2d78;--pf:#fff;color:#14110f;background:#fff;border:2px solid #14110f;border-radius:999px;align-items:center;gap:10px;padding:5px 6px 5px 16px;font:600 14px Inter,sans-serif;transition:background .2s,color .2s;display:inline-flex}.score-chip.turn.svelte-1f1pl16{background:var(--pc);color:var(--pf)}.score-num.svelte-1f1pl16{color:#fff;background:#14110f;border-radius:999px;justify-content:center;align-items:center;min-width:26px;height:26px;padding:0 7px;font-size:13px;display:inline-flex}.score-input.svelte-1f1pl16{box-sizing:content-box;min-width:0;color:inherit;background:0 0;border:0;border-bottom:2px solid;border-radius:0;outline:none;margin:0;padding:0 0 1px;font:600 14px Inter,sans-serif}.name-tools.svelte-1f1pl16{align-items:center;gap:8px;display:inline-flex}.icon-btn.svelte-1f1pl16{cursor:pointer;color:#14110f;-webkit-tap-highlight-color:transparent;background:#fff;border:2px solid #14110f;border-radius:999px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;padding:0;transition:background .2s,color .2s,transform .12s;display:inline-flex}.icon-btn.svelte-1f1pl16 svg:where(.svelte-1f1pl16){fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.icon-btn.solid.svelte-1f1pl16{color:#fff;background:#14110f}.icon-btn.svelte-1f1pl16:active{transform:scale(.92)}.icon-btn.svelte-1f1pl16:focus-visible{outline-offset:3px;outline:3px solid #ff2d78}@media (hover:hover) and (pointer:fine){.icon-btn.svelte-1f1pl16:hover{color:#fff;background:#14110f}.icon-btn.solid.svelte-1f1pl16:hover{background:#ff2d78}}.turn-msg.svelte-1f1pl16{color:#14110f;font:600 14px Inter,sans-serif}.pairs-msg.svelte-1f1pl16{color:#8a8580;font:500 13px Inter,sans-serif}.board.svelte-1f1pl16{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));gap:10px;display:grid}.mcard.svelte-1f1pl16{aspect-ratio:1;perspective:800px;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;min-width:0;padding:0;animation:.45s cubic-bezier(.2,1.3,.4,1) backwards svelte-1f1pl16-card-deal;position:relative}.mcard.locked.svelte-1f1pl16,.mcard.flipped.svelte-1f1pl16,.mcard.matched.svelte-1f1pl16{cursor:default}.mcard.svelte-1f1pl16:focus-visible{outline-offset:2px;border-radius:8px;outline:3px solid #ff2d78}.mcard-inner.svelte-1f1pl16{transform-style:preserve-3d;transition:transform .45s cubic-bezier(.3,1.2,.5,1);display:block;position:absolute;inset:0}.mcard.flipped.svelte-1f1pl16 .mcard-inner:where(.svelte-1f1pl16){transform:rotateY(180deg)}.mface.svelte-1f1pl16{backface-visibility:hidden;border:1px solid #14110f;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:absolute;inset:0;overflow:hidden}.mback.svelte-1f1pl16{background:var(--bk);color:var(--bf)}.mnum.svelte-1f1pl16{opacity:.75;font:600 10px Inter,sans-serif;position:absolute;top:6px;left:8px}.msym.svelte-1f1pl16{font:700 clamp(20px,3.2vw,34px)/1 Inter,sans-serif}.mfront.svelte-1f1pl16{background:#fff;padding:8px 4px 6px;transform:rotateY(180deg)}.mfront.svelte-1f1pl16 img:where(.svelte-1f1pl16){object-fit:contain;width:60%;height:60%}.mlabel.svelte-1f1pl16{color:#3d3a35;text-align:center;overflow-wrap:anywhere;max-width:100%;font:500 clamp(9px,1.1vw,12.5px)/1.1 Inter,sans-serif}.mcard.matched.svelte-1f1pl16 .mfront:where(.svelte-1f1pl16){border:3px solid var(--mc,#1fd6b0);background:color-mix(in srgb, var(--mc,#1fd6b0) 12%, #fff)}.mcard.matched.svelte-1f1pl16 .mcard-inner:where(.svelte-1f1pl16){animation:.5s svelte-1f1pl16-card-matched}@media (hover:hover) and (pointer:fine){.mcard.svelte-1f1pl16:not(.flipped):not(.locked):hover .mcard-inner:where(.svelte-1f1pl16){transform:translateY(-4px)rotate(-2deg)}}@keyframes svelte-1f1pl16-card-deal{0%{opacity:0;transform:translateY(-40px)rotate(-14deg)scale(.6)}to{opacity:1;transform:none}}@keyframes svelte-1f1pl16-card-matched{0%{transform:rotateY(180deg)scale(1)}50%{transform:rotateY(180deg)scale(1.1)}to{transform:rotateY(180deg)scale(1)}}@media (width<=860px){.menu-grid.svelte-1f1pl16{grid-template-columns:1fr;gap:28px}.board.svelte-1f1pl16{grid-template-columns:repeat(var(--cols-md), minmax(0, 1fr))}}@media (width<=520px){.game-card.svelte-1f1pl16{padding:20px 16px}.game-title.svelte-1f1pl16{font-size:30px}.board.svelte-1f1pl16{grid-template-columns:repeat(var(--cols-sm), minmax(0, 1fr));gap:6px}}@media (prefers-reduced-motion:reduce){.mcard.svelte-1f1pl16{animation:none}.mcard-inner.svelte-1f1pl16{transition:none}.mcard.matched.svelte-1f1pl16 .mcard-inner:where(.svelte-1f1pl16){animation:none}}.car-card.svelte-7fyu68{background-position:50%;background-size:cover;width:100%;height:100%;position:relative}.car-sheen.svelte-7fyu68{pointer-events:none;display:block;position:absolute;inset:0}.sr-only.svelte-7fyu68{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.car.svelte-8ojyxu{font-family:var(--font-ui);--bg:#fff;--font-ui:"Inter", sans-serif;--ink-rgb:17, 17, 17;--shadow-rgb:44, 42, 38;position:relative}.car-track.svelte-8ojyxu{touch-action:pan-y;cursor:grab;-webkit-user-select:none;user-select:none;position:absolute;inset:0}.car-track[data-ready=false].svelte-8ojyxu{visibility:hidden}.car-track[data-held=true].svelte-8ojyxu{cursor:grabbing}.car-track.svelte-8ojyxu:focus-visible{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px rgba(var(--ink-rgb), .4);outline:none}.car-slot.svelte-8ojyxu{transform-origin:50%;position:absolute;top:50%;left:50%}.car-float.svelte-8ojyxu{perspective:760px;width:100%;height:100%;animation:5s ease-in-out infinite svelte-8ojyxu-car-bob}.car-live.svelte-8ojyxu{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.car-float.svelte-8ojyxu{animation:none}}@keyframes svelte-8ojyxu-car-bob{0%,to{transform:translateY(calc(var(--lift,4px) * -1)) rotate(calc(var(--sway,1deg) * -1))}50%{transform:translateY(var(--lift,4px)) rotate(var(--sway,1deg))}}.roles-heading.svelte-1m3qog9{margin-bottom:8px;font-size:38px}.roles-subtext.svelte-1m3qog9{color:#8a8580;margin-bottom:36px;font-size:15px}.role-tabs.svelte-1m3qog9{flex-wrap:wrap;gap:10px;display:flex}.role-tab.svelte-1m3qog9{color:#111;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:2px solid #111;border-radius:999px;align-items:center;gap:8px;padding:9px 18px;font-family:Inter,sans-serif;font-size:14px;font-weight:600;transition:transform .22s cubic-bezier(.2,1.6,.4,1),background-color .15s,color .15s;display:inline-flex}.role-tab[aria-selected=true].svelte-1m3qog9{color:#fff;background:#111}.role-tab.svelte-1m3qog9:focus-visible{outline-offset:3px;outline:3px solid #3d3a35}@media (hover:hover) and (pointer:fine){.role-tab.svelte-1m3qog9:hover{transform:translateY(-2px)}}.tab-dot.svelte-1m3qog9{border-radius:50%;flex:none;width:8px;height:8px;transition:background-color .15s}.roles-panel-contents.svelte-1m3qog9{display:contents}.roles-grid.svelte-1m3qog9{flex-direction:column;gap:28px;display:flex}.role-copy.svelte-1m3qog9{max-width:640px;animation:.4s both svelte-1m3qog9-roleIn}@keyframes svelte-1m3qog9-roleIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.role-title.svelte-1m3qog9{letter-spacing:-.01em;color:#111;margin:0 0 14px;font-family:Space Grotesk,Inter,sans-serif;font-size:30px;font-weight:700;line-height:1.15}.role-summary.svelte-1m3qog9{color:#2c2a26;margin:0;font-size:19px;line-height:1.6}.roles-stage.svelte-1m3qog9{width:100%}.stage-fit.svelte-1m3qog9{width:100%;max-width:476px;margin:0 auto;position:relative}.stage-scale.svelte-1m3qog9{transform-origin:0 0;transition:none;position:absolute;top:0;left:0}@media (width>=861px){.roles-grid.svelte-1m3qog9{grid-template-columns:minmax(0,1fr) minmax(0,476px);grid-template-areas:"tabs stage""copy stage";align-items:start;gap:24px 56px;display:grid}.role-tabs.svelte-1m3qog9{grid-area:tabs}.role-copy.svelte-1m3qog9{grid-area:copy}.roles-stage.svelte-1m3qog9{grid-area:stage;justify-self:center}}@media (width<=860px){.role-title.svelte-1m3qog9{font-size:26px}.role-summary.svelte-1m3qog9{font-size:17px}}@media (width<=480px){.roles-heading.svelte-1m3qog9{font-size:28px}.roles-subtext.svelte-1m3qog9{margin-bottom:28px;font-size:14px}.role-tabs.svelte-1m3qog9{gap:8px;margin-bottom:32px}.role-tab.svelte-1m3qog9{padding:8px 14px;font-size:13px}.role-title.svelte-1m3qog9{margin-bottom:10px;font-size:22px}.role-summary.svelte-1m3qog9{font-size:15.5px}}.fly-layer.svelte-1m3qog9{z-index:2147483000;cursor:default;position:fixed;inset:0;overflow:hidden}.fly-scrim.svelte-1m3qog9{opacity:0;position:absolute;inset:0}.fly.svelte-1m3qog9{transform-origin:50%;will-change:transform;position:absolute;top:0;left:0}.fly-flip.svelte-1m3qog9{transform-style:preserve-3d;position:absolute;inset:0}.fly-face.svelte-1m3qog9{backface-visibility:hidden;background-position:50%;background-size:cover;position:absolute;inset:0;box-shadow:0 12px 28px -10px #2c2a2647}.fly-back.svelte-1m3qog9{transform:rotateY(180deg)}.fly.svelte-1m3qog9,.fly-flip.svelte-1m3qog9,.fly-face.svelte-1m3qog9{transition:none!important}@media (prefers-reduced-motion:reduce){.role-copy.svelte-1m3qog9{animation:none}.role-tab.svelte-1m3qog9{transition:none}}.project.svelte-kmgdky{grid-template-columns:90px 1.1fr 1.4fr;align-items:start;gap:0 28px;padding:32px 0;display:grid}.project-num.svelte-kmgdky{color:#c7c3bb;padding-top:4px;font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700}.project-main.svelte-kmgdky{min-width:0}.project.svelte-kmgdky h3:where(.svelte-kmgdky){margin-bottom:8px;font-size:23px}.project-desc.svelte-kmgdky{color:#54504a;font-size:15.5px;line-height:1.6}.tech-row.svelte-kmgdky{flex-wrap:wrap;gap:8px;display:flex}.project-bottom.svelte-kmgdky{grid-column:2/4;width:100%;margin-top:18px}.project-actions.svelte-kmgdky{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.project-actions.svelte-kmgdky a.live-url:where(.svelte-kmgdky){color:var(--ink);border-bottom:2px solid var(--ink);font-size:14px;font-weight:600;text-decoration:none}.project-toggle.svelte-kmgdky{cursor:pointer;color:var(--ink);background:0 0;border:none;align-items:center;gap:6px;padding:0;font-family:Inter,sans-serif;font-size:14px;font-weight:600;display:inline-flex}.project-toggle.svelte-kmgdky .chev:where(.svelte-kmgdky){transition:transform .25s cubic-bezier(.2,1,.3,1)}.project-toggle.open.svelte-kmgdky .chev:where(.svelte-kmgdky){transform:rotate(180deg)}.project-detail.svelte-kmgdky{opacity:0;max-height:0;transition:max-height .45s cubic-bezier(.3,.85,.35,1),opacity .35s,margin-top .45s;overflow:hidden}.project-detail.open.svelte-kmgdky{opacity:1;margin-top:16px}.proj-bullets.svelte-kmgdky{flex-direction:column;gap:10px;margin:0 0 16px;padding:0;display:flex}.proj-bullets.svelte-kmgdky li{color:#2c2a26;font-size:15px;line-height:1.55}.sr-only.svelte-kmgdky{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=860px){.project.svelte-kmgdky{grid-template-columns:1fr}.project-num.svelte-kmgdky{display:none}.project-bottom.svelte-kmgdky{grid-column:1}}.projects-section.svelte-1tes396{isolation:isolate;position:relative}.heading-row.svelte-1tes396{justify-content:space-between;align-items:center;gap:16px;margin-bottom:36px;display:flex}.projects-heading.svelte-1tes396{margin:0;font-size:38px}.play-group.svelte-1tes396{align-items:center;gap:18px;display:flex}.play-btn.svelte-1tes396{z-index:3;font:inherit;color:var(--ink,#1a1613);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;gap:8px;margin:-3px 0;padding:0;font-size:13px;font-weight:700;line-height:1;display:inline-flex;position:relative}.play-btn.svelte-1tes396:focus-visible{outline:2px solid var(--ink,#1a1613);outline-offset:4px;border-radius:8px}.play-btn.off.svelte-1tes396{display:none}.play-arc.svelte-1tes396{transform-origin:50% 100%;pointer-events:none;width:64px;height:17px;transition:transform .12s;position:absolute;bottom:calc(100% - 6px);left:20px;overflow:visible;rotate:9deg}.play-arc-text.svelte-1tes396{letter-spacing:.06em;fill:var(--ink,#1a1613);font-size:13px;font-weight:700}.play-btn.svelte-1tes396:hover .play-arc:where(.svelte-1tes396){transform:translateY(-1px)}.play-btn.svelte-1tes396:active .play-arc:where(.svelte-1tes396){transform:translateY(2px)}.cannon.svelte-1tes396{width:75px;height:42px;transition:transform .12s;display:block;overflow:visible}.play-btn.svelte-1tes396:hover .cannon:where(.svelte-1tes396){transform:translateY(-1px)}.play-btn.svelte-1tes396:active .cannon:where(.svelte-1tes396){transform:translateY(2px)}.cannon-ground.svelte-1tes396{fill:#00000024;filter:blur(1.5px)}.cannon-carriage.svelte-1tes396,.cannon-wheel.svelte-1tes396,.cannon-barrel.svelte-1tes396,.cannon-knob.svelte-1tes396,.cannon-band.svelte-1tes396,.cannon-muzzle.svelte-1tes396{stroke:var(--ink,#1a1613);stroke-width:2.5px;stroke-linejoin:round}.cannon-carriage.svelte-1tes396,.cannon-wheel.svelte-1tes396,.cannon-barrel.svelte-1tes396,.cannon-knob.svelte-1tes396{fill:var(--cannon-color,#f59e0b);transition:fill .35s}.cannon-band.svelte-1tes396,.cannon-muzzle.svelte-1tes396{fill:var(--ink,#1a1613)}.cannon-spokes.svelte-1tes396{fill:none;stroke:#fff;stroke-width:2px;stroke-linecap:round;opacity:.9}.cannon-hub.svelte-1tes396{fill:var(--ink,#1a1613)}.cannon-shine.svelte-1tes396{fill:none;stroke:#fff;stroke-width:3px;stroke-linecap:round;opacity:.55}.scroll-hint.svelte-1tes396{white-space:nowrap;color:#1a16138c;align-items:center;gap:6px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.scroll-hint.svelte-1tes396 svg:where(.svelte-1tes396){fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:14px;height:14px}.scroll-dot.svelte-1tes396{animation:1.5s ease-in-out infinite svelte-1tes396-scroll-bob}@keyframes svelte-1tes396-scroll-bob{0%,to{opacity:1;transform:translateY(0)}60%{opacity:.25;transform:translateY(3px)}}.project-list.svelte-1tes396{flex-direction:column;gap:2px;display:flex}.view-all-projects.svelte-1tes396{justify-content:flex-end;margin-top:24px;display:flex}.view-all-projects.svelte-1tes396 a:where(.svelte-1tes396){border-bottom:2px solid var(--ink);font-size:14px;font-weight:600;text-decoration:none}.sr-only.svelte-1tes396{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ship-layer.svelte-1tes396{pointer-events:none;z-index:2;width:0;height:0;position:absolute;top:0;left:0;overflow:visible}.ship-layer.svelte-1tes396 .ship-ball{box-sizing:border-box;border:2px solid var(--ink,#1a1613);will-change:transform, opacity;background-image:radial-gradient(circle at 32% 28%,#ffffff8c,#fff0 45%);border-radius:50%;transition:background-color .3s;position:absolute;top:0;left:0;box-shadow:inset -2px -3px #00000029,0 3px 6px #00000029}.ship-layer.svelte-1tes396 .ship-ring{box-sizing:border-box;border:2px solid;border-radius:50%;position:absolute;top:0;left:0}.ship-layer.svelte-1tes396 .ship-spark{border-radius:50%;position:absolute;top:0;left:0}.ship-layer.svelte-1tes396 .ship-flash{background:radial-gradient(circle,#fff8d6 0%,#fbbf24 42%,#fbbf2400 70%);border-radius:50%;width:34px;height:34px;position:absolute;top:0;left:0}.ship-layer.svelte-1tes396 .ship-missed{white-space:nowrap;color:#fff;text-shadow:0 1px 1px #00000059;border:2px solid var(--ink,#1a1613);pointer-events:none;opacity:0;background:#ef4444;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:800;line-height:1.3;position:absolute;top:0;left:0;box-shadow:0 3px 6px #00000029}.ship-layer.svelte-1tes396 .ship-smoke{box-sizing:border-box;background:#f1ede4;border:1.5px solid #1a161359;border-radius:50%;position:absolute;top:0;left:0}.basket-rail.svelte-1tes396{--b-ink:var(--ink,#1a1613);--b-line:#1a161333;pointer-events:none;z-index:3;height:46px;margin-top:28px;position:relative}.basket-rail.off.svelte-1tes396{display:none}.basket-track.svelte-1tes396{background:repeating-linear-gradient(90deg, var(--b-line) 0 3px, transparent 3px 7px);border-radius:2px;height:1.5px;position:absolute;bottom:-7px;left:0;right:0}.basket.svelte-1tes396{pointer-events:auto;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;transform-origin:50% 100%;width:64px;height:40px;transition:translate .18s;position:absolute;bottom:0;left:calc(50% - 32px)}.basket-rail.svelte-1tes396:not(.off) .basket:where(.svelte-1tes396){animation:.4s cubic-bezier(.2,1.4,.4,1) svelte-1tes396-basket-in}@keyframes svelte-1tes396-basket-in{0%{opacity:0;transform:scale(.6)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.basket.svelte-1tes396:after{content:"";filter:blur(4px);z-index:-1;background:#00000029;border-radius:50%;height:6px;transition:transform .18s,opacity .18s;position:absolute;bottom:-5px;left:12%;right:12%}.basket-art.svelte-1tes396{width:64px;height:40px;display:block;overflow:visible}.basket-body.svelte-1tes396{fill:url(#basketFill);stroke:var(--b-ink);stroke-width:2px;stroke-linejoin:round}.basket-shine.svelte-1tes396{fill:none;stroke:#fff;stroke-width:3px;stroke-linecap:round;opacity:.9}.basket-rim.svelte-1tes396{fill:var(--catch);stroke:var(--b-ink);stroke-width:2px;transition:fill .3s}.basket-count.svelte-1tes396{text-align:center;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--b-ink);pointer-events:none;font-size:14px;font-weight:800;line-height:1;position:absolute;top:11px;left:0;right:0}.basket-hint.svelte-1tes396{white-space:nowrap;color:var(--b-ink);opacity:.6;pointer-events:none;align-items:center;gap:5px;font-size:12px;font-weight:600;line-height:1.3;animation:2.4s ease-in-out infinite svelte-1tes396-basket-nudge;display:inline-flex;position:absolute;bottom:calc(100% + 8px);left:50%;translate:-50%}.hint-icon.svelte-1tes396{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:14px;height:14px}.basket-over.svelte-1tes396{white-space:nowrap;color:#fff;text-shadow:0 1px 1px #00000059;border:2px solid var(--b-ink);pointer-events:none;background:#ef4444;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:800;line-height:1.3;animation:.4s cubic-bezier(.2,1.4,.4,1) svelte-1tes396-over-pop;position:absolute;bottom:calc(100% + 8px);left:50%;translate:-50%;box-shadow:0 3px 6px #00000029}@keyframes svelte-1tes396-over-pop{0%{opacity:0;transform:scale(.5)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes svelte-1tes396-basket-nudge{0%,to{transform:translate(-5px)}50%{transform:translate(5px)}}.basket.svelte-1tes396 .basket-plus{color:#fff;text-shadow:0 1px 1px #00000059;border:2px solid var(--b-ink,#1a1613);pointer-events:none;opacity:0;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:800;line-height:1.3;position:absolute;top:-4px;left:50%}@media (width<=860px){.ship-layer.svelte-1tes396,.basket-rail.svelte-1tes396{display:none}}.exp-card.svelte-1eg1njl{grid-template-columns:230px 1fr;gap:36px;padding:36px 0;display:grid}.exp-meta.svelte-1eg1njl{padding-top:2px}.exp-role.svelte-1eg1njl{font-size:22px;font-weight:inherit;margin:0 0 4px}.exp-company.svelte-1eg1njl{color:#54504a;margin-bottom:8px;font-size:14.5px;font-weight:600}.exp-dates.svelte-1eg1njl{border:2px solid var(--ink);color:#3d3a35;border-radius:100px;padding:5px 12px;font-size:12.5px;font-weight:600;display:inline-block}.exp-bullets.svelte-1eg1njl{flex-direction:column;gap:11px;margin:0 0 18px;padding:0;list-style:none;display:flex}.exp-bullets.svelte-1eg1njl li{color:#2c2a26;font-size:15.5px;line-height:1.55}.exp-bullets.svelte-1eg1njl li b{background:linear-gradient(to top, var(--butter) 38%, transparent 38%);padding:0 1px;font-weight:600}@media (width<=860px){.exp-card.svelte-1eg1njl{grid-template-columns:1fr;gap:14px}}.experience-heading.svelte-1ar0d6w{margin-bottom:36px;font-size:38px}.exp-list.svelte-1ar0d6w{flex-direction:column;gap:2px;display:flex}.cert-card.svelte-18anigo{border:var(--line) solid var(--ink);cursor:pointer;perspective:1400px;min-height:168px;color:var(--ink);background:#fff;border-radius:20px;transition:transform .28s cubic-bezier(.2,1,.3,1),border-color .28s,box-shadow .28s,opacity .45s;position:relative;overflow:hidden}@media (hover:hover) and (pointer:fine){.cert-card.svelte-18anigo:hover{box-shadow:0 18px 34px -18px color-mix(in srgb, var(--accent) 60%, transparent);z-index:1;transform:translateY(-4px)rotate(-1.5deg)}.cert-card.svelte-18anigo:hover .cert-flip-inner:where(.svelte-18anigo){transform:rotateY(180deg)}}.cert-card.svelte-18anigo:focus-visible{box-shadow:inset 0 0 0 3px var(--ink), inset 0 0 0 6px #fff}.cert-watermark.svelte-18anigo{object-fit:contain;opacity:.07;filter:grayscale();pointer-events:none;z-index:0;width:128px;height:128px;transition:opacity .35s,transform .35s;position:absolute;top:-20px;right:-22px;transform:rotate(-10deg)}.cert-watermark-letter.svelte-18anigo{color:var(--ink);background:0 0;justify-content:center;align-items:center;font-family:Space Grotesk,sans-serif;font-size:108px;font-weight:800;line-height:1;display:flex;top:-30px;right:-18px}@media (hover:hover) and (pointer:fine){.cert-card.svelte-18anigo:hover .cert-watermark:where(.svelte-18anigo){opacity:.12;transform:rotate(-5deg)scale(1.05)}}.cert-flip-inner.svelte-18anigo{width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.3,.9,.3,1);position:relative}.cert-face.svelte-18anigo{backface-visibility:hidden}.cert-face-front.svelte-18anigo{height:100%;min-height:168px;padding:22px 20px;position:relative}.cert-content.svelte-18anigo{z-index:1;flex-direction:column;justify-content:space-between;height:100%;display:flex;position:relative}.cert-face-back.svelte-18anigo{justify-content:center;align-items:center;padding:22px 20px;display:flex;position:absolute;inset:0;transform:rotateY(180deg)}.cert-back-content.svelte-18anigo{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:7px;display:flex;position:relative}.back-dot.svelte-18anigo{background:var(--accent);border-radius:50%;width:9px;height:9px}.cert-back-title.svelte-18anigo{font-family:Space Grotesk,sans-serif;font-size:21px;font-weight:700;line-height:1.28}.back-arrow-btn.svelte-18anigo{border:2px solid var(--ink);width:22px;height:22px;color:var(--ink);background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:6px;transition:transform .3s cubic-bezier(.2,1.4,.4,1),background .3s,color .3s,border-color .3s;display:flex}@media (hover:hover) and (pointer:fine){.cert-card.svelte-18anigo:hover .back-arrow-btn:where(.svelte-18anigo){background:var(--accent);border-color:var(--accent);color:#fff;transform:translate(3px)}}.cert-card.enter.svelte-18anigo{opacity:0}.cert-card.enter.in-view.svelte-18anigo{animation:.6s cubic-bezier(.2,1,.3,1) forwards svelte-18anigo-certRise}@keyframes svelte-18anigo-certRise{0%{opacity:0;transform:translateY(28px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.cert-top.svelte-18anigo{align-items:center;display:flex}.cert-type-tag.svelte-18anigo{text-transform:uppercase;letter-spacing:.04em;border:2px solid var(--ink);color:var(--ink);background:#fff;border-radius:100px;align-items:center;gap:6px;padding:5px 11px 5px 8px;font-size:10.5px;font-weight:700;display:inline-flex}.cert-dot.svelte-18anigo{background:var(--accent);border-radius:50%;flex-shrink:0;width:7px;height:7px}.cert-card.svelte-18anigo h4:where(.svelte-18anigo){margin:16px 0 4px;font-family:Space Grotesk,sans-serif;font-size:16.5px;font-weight:700;line-height:1.25}.cert-card.svelte-18anigo .issuer:where(.svelte-18anigo){color:color-mix(in srgb, var(--ink) 65%, transparent);font-size:12.5px}.cert-foot.svelte-18anigo{justify-content:space-between;align-items:center;margin-top:16px;display:flex}.cert-year.svelte-18anigo{color:color-mix(in srgb, var(--ink) 85%, transparent);font-family:Caveat,cursive;font-size:22px}.accent-ribbon.svelte-18anigo{background:var(--accent);z-index:1;border-top-left-radius:10px;width:16px;height:45%;transition:height .3s cubic-bezier(.2,1,.3,1),width .3s;position:absolute;bottom:0;right:0}@media (hover:hover) and (pointer:fine){.cert-card.svelte-18anigo:hover .accent-ribbon:where(.svelte-18anigo){width:18px;height:60%}}@media (prefers-reduced-motion:reduce){.cert-card.enter.svelte-18anigo,.cert-card.enter.in-view.svelte-18anigo{opacity:1;transform:none}.cert-card.svelte-18anigo,.cert-watermark.svelte-18anigo,.accent-ribbon.svelte-18anigo,.back-arrow-btn.svelte-18anigo{transition:none}}img.svelte-ynw6dt{object-fit:contain;width:60%;height:60%;display:block}.cert-logo-fallback.svelte-ynw6dt{color:var(--ink);font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:700;line-height:1}.cert-detail-inner.svelte-10kh0gp{border:var(--line) solid var(--ink);background:#fff;border-radius:26px;padding:34px 34px 30px}.cert-modal-head.svelte-10kh0gp{align-items:flex-start;gap:16px;margin-bottom:22px;display:flex;position:relative}.cert-modal-logo.svelte-10kh0gp{border:3px solid var(--ink);background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:700;display:flex;overflow:hidden}.cert-modal-tags.svelte-10kh0gp{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.cert-modal-text.svelte-10kh0gp h3:where(.svelte-10kh0gp){margin-bottom:4px;font-size:23px;line-height:1.22}.issuer-line.svelte-10kh0gp{color:#54504a;font-size:13.5px}.cert-close.svelte-10kh0gp{border:2.5px solid var(--ink);cursor:pointer;color:inherit;background:#fff;border-radius:100px;flex-shrink:0;align-items:center;gap:6px;margin-left:auto;padding:8px 14px 8px 10px;font-family:inherit;font-size:13px;font-weight:600;transition:transform .18s cubic-bezier(.2,1.4,.4,1),background .18s,color .18s;display:flex}.cert-close.svelte-10kh0gp:hover{background:var(--ink);color:#fff;transform:translateY(-2px)rotate(-4deg)}.cert-close-icon.svelte-10kh0gp{justify-content:center;align-items:center;line-height:1;display:flex}.cert-close-label.svelte-10kh0gp{white-space:nowrap}.cert-section.svelte-10kh0gp{margin-bottom:24px}.cert-section.svelte-10kh0gp:last-child{margin-bottom:0}.cert-section-title.svelte-10kh0gp{text-transform:uppercase;letter-spacing:.04em;color:#9a958c;margin-bottom:10px;font-size:12px;font-weight:700}.cert-section.svelte-10kh0gp p:where(.svelte-10kh0gp){color:#2c2a26;margin:0;font-size:15px;line-height:1.6}.chip-row.svelte-10kh0gp{flex-wrap:wrap;gap:7px;display:flex}.chip.svelte-10kh0gp{border:2px solid var(--ink);border-radius:100px;padding:5px 11px;font-size:12px;font-weight:600}.chip.alt.svelte-10kh0gp{color:#fff;background:#171512}.module.svelte-10kh0gp{margin-bottom:14px}.module.svelte-10kh0gp:last-child{margin-bottom:0}.module-title.svelte-10kh0gp{margin-bottom:6px;font-size:14.5px;font-weight:700}.module.svelte-10kh0gp ul{flex-direction:column;gap:6px;margin:0;padding:0;display:flex}.module.svelte-10kh0gp li{color:#2c2a26;font-size:14px;line-height:1.55}.cert-link-row.svelte-10kh0gp{flex-wrap:wrap;gap:12px;margin-top:4px;display:flex}.cert-link-btn.svelte-10kh0gp{border:2px solid var(--ink);background:var(--ink);color:#fff;border-radius:100px;align-items:center;gap:6px;padding:9px 16px;font-size:13.5px;font-weight:700;text-decoration:none;display:inline-flex}.cert-link-btn.outline.svelte-10kh0gp{color:var(--ink);background:0 0}.sr-only.svelte-10kh0gp{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=860px){.cert-modal-head.svelte-10kh0gp{flex-wrap:wrap;padding-right:44px}}@media (width<=520px){.cert-modal-head.svelte-10kh0gp{padding-right:0}.cert-close.svelte-10kh0gp{border-radius:50%;justify-content:center;width:36px;height:36px;margin-left:0;padding:0;position:absolute;top:0;right:0}.cert-close-label.svelte-10kh0gp{display:none}.cert-modal-text.svelte-10kh0gp{padding-right:44px}}.certs-heading.svelte-12sumyw{margin-bottom:8px;font-size:38px}.certs-subtext.svelte-12sumyw{color:#8a8580;margin-bottom:34px;font-size:15px}.defs.svelte-12sumyw{width:0;height:0;position:absolute;overflow:hidden}.cert-grid.svelte-12sumyw{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.cert-grid.grid-hidden.svelte-12sumyw{display:none}body.cert-detail-open #page>:not(#proof){display:none!important}.detail-open.svelte-12sumyw{box-sizing:border-box;min-height:100dvh}.cert-detail.svelte-12sumyw{display:none}.cert-detail.open.svelte-12sumyw{margin-bottom:28px;animation:.4s cubic-bezier(.3,.85,.35,1) both svelte-12sumyw-certDetailIn;display:block}@keyframes svelte-12sumyw-certDetailIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.cert-detail.open.svelte-12sumyw{animation:none}}.cert-pagination.svelte-12sumyw{justify-content:center;align-items:center;gap:16px;margin-top:38px;display:flex}.page-btn.svelte-12sumyw{border:var(--line) solid var(--ink);cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700;transition:transform .18s cubic-bezier(.2,1.4,.4,1),background .18s,color .18s;display:flex}.page-btn.svelte-12sumyw:hover:not(:disabled){transform:translateY(-2px)rotate(-6deg)}.page-btn.svelte-12sumyw:disabled{opacity:.3;cursor:default}.page-dots.svelte-12sumyw{align-items:center;gap:9px;display:flex}.page-dot.svelte-12sumyw{border:2px solid var(--ink);cursor:pointer;background:0 0;border-radius:50%;width:10px;height:10px;padding:0;transition:background .18s,transform .18s}.page-dot.active.svelte-12sumyw{background:var(--ink);transform:scale(1.2)}@media (width<=860px){.cert-grid.svelte-12sumyw{grid-template-columns:1fr 1fr}}@media (width<=520px){.cert-grid.svelte-12sumyw{grid-template-columns:1fr}}.wire.svelte-1mcn7c3{text-align:center;width:100%;max-width:560px;margin:30px auto 0}.wire-head.svelte-1mcn7c3{letter-spacing:.09em;text-transform:uppercase;color:#9c9691;margin:0 0 6px;font-size:13px;font-weight:600}.wire-field.svelte-1mcn7c3{cursor:text;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;width:100%;height:158px;position:relative}.wire-hidden.svelte-1mcn7c3{opacity:0;pointer-events:none;background:0 0;border:0;width:100%;height:54px;margin:0;padding:0;font-size:16px;position:absolute;top:13px;left:0}.wire-svg.svelte-1mcn7c3{width:100%;display:block;position:absolute;top:0;left:0;overflow:visible}.wire-svg.svelte-1mcn7c3 .wire-ribbon{fill:#fff;stroke:#161616;stroke-width:1.75px;stroke-linejoin:round;transition:stroke .2s,stroke-width .2s}.wire-svg.svelte-1mcn7c3 .wire-ribbon[data-focus=true]{stroke:#000}.wire-svg.svelte-1mcn7c3 .wire-ribbon[data-error=true]{stroke:#c0342b;stroke-width:2.1px}.wire-svg.svelte-1mcn7c3 .wire-chip{cursor:pointer}.wire-svg.svelte-1mcn7c3 .wire-chip-bg{fill:#f1efeb;stroke:#161616;stroke-width:1.4px;transition:fill .15s}.wire-svg.svelte-1mcn7c3 .wire-chip:hover .wire-chip-bg{fill:#e5e2dc}.wire-svg.svelte-1mcn7c3 .wire-chip[data-editing=true] .wire-chip-bg{fill:#fff;stroke-dasharray:4 3}.wire-svg.svelte-1mcn7c3 .wire-chip[data-error=true] .wire-chip-bg{stroke:#c0342b}.wire-svg.svelte-1mcn7c3 .wire-chip-label{fill:#111;font-size:13px;font-weight:600}.wire-svg.svelte-1mcn7c3 .wire-count{fill:#9c9c9c;font-size:12px;font-weight:600}.wire-svg.svelte-1mcn7c3 .wire-count[data-over=true]{fill:#c0342b}.wire-svg.svelte-1mcn7c3 .wire-send{cursor:pointer;outline:none}.wire-svg.svelte-1mcn7c3 .wire-body{fill:#161616;transition:fill .15s}.wire-svg.svelte-1mcn7c3 .wire-send:hover .wire-body{fill:#000}.wire-svg.svelte-1mcn7c3 .wire-send:focus-visible .wire-body{stroke:#fff;stroke-width:2px}.wire-svg.svelte-1mcn7c3 .wire-btn-label{pointer-events:none;font-size:14px;font-weight:600}.wire-svg.svelte-1mcn7c3 .wire-streak{stroke:#5a5a5ab3;stroke-width:1.6px;stroke-linecap:round;stroke-dasharray:10 16;animation:.45s linear infinite svelte-1mcn7c3-wire-flow}@keyframes svelte-1mcn7c3-wire-flow{to{stroke-dashoffset:-26px}}.wire-hint-wrap.svelte-1mcn7c3{max-height:0;margin-top:0;transition:max-height .18s,margin-top .18s;overflow:hidden}.wire-hint-wrap.open.svelte-1mcn7c3{max-height:22px;margin-top:6px}.wire-hint.svelte-1mcn7c3{color:#6b6b6f;margin:0;padding:0;font-size:13px;font-weight:500;line-height:1.4;transition:color .2s}.wire-hint[data-tone=error].svelte-1mcn7c3{color:#c0342b}.wire-hint[data-tone=ok].svelte-1mcn7c3{color:#1a7f37}@media (prefers-reduced-motion:reduce){.wire-svg.svelte-1mcn7c3 .wire-streak{animation-duration:2s}}.contact.svelte-wt4tt0{text-align:center}.contact.section-pad.svelte-wt4tt0{padding-bottom:40px}.contact.svelte-wt4tt0 h2:where(.svelte-wt4tt0){margin-bottom:20px;font-size:clamp(38px,6vw,64px)}.contact.svelte-wt4tt0 p:where(.svelte-wt4tt0){color:#54504a;max-width:460px;margin:0 auto 34px;font-size:18px}.contact-links.svelte-wt4tt0{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.wire-slot.svelte-wt4tt0{margin-top:10px;margin-bottom:0}.wire-slot.svelte-wt4tt0>:last-child{margin-bottom:0}.sr-only.svelte-wt4tt0{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}footer.svelte-jz8lnl{text-align:center;color:#a19c93;padding:34px 0 46px;font-size:13px}#page.svelte-1n46o8q{opacity:0}#page.ready.svelte-1n46o8q{opacity:1;transition:opacity .5s}
