@font-face{font-family:Clash Display;src:url(/fonts/ClashDisplay-Semibold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Clash Display;src:url(/fonts/ClashDisplay-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(/fonts/Satoshi-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(/fonts/Satoshi-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{--font-display: "Clash Display", Georgia, serif;--font-body: "Satoshi", system-ui, sans-serif;--bg-base: #0a0a0a;--text-primary: #f0f0f0;--text-secondary: #888888;--text-dim: #444444;--plume-accent: #C9A84C;--plume-bg: #0A0E27;--moto-accent: #4ADE80;--moto-bg: #0D0D0D;--mingle-accent: #60A5FA;--mingle-bg: #0F1419;--teachee-accent: #F59E0B;--teachee-bg: #1A1A1A;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-quart: cubic-bezier(.25, 1, .5, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:auto}body{font-family:var(--font-body);font-weight:400;color:var(--text-primary);background:var(--bg-base);overflow-x:hidden;line-height:1.6}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.cursor-light{position:fixed;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.06) 0%,transparent 70%);pointer-events:none;z-index:9999;transform:translate(-50%,-50%);opacity:0;transition:opacity .3s ease;mix-blend-mode:soft-light}@media (hover: hover){body:hover .cursor-light{opacity:1}}@media (hover: none){.cursor-light{display:none}}.grain{position:fixed;top:-50%;left:-50%;width:200%;height:200%;z-index:9998;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:200px 200px;animation:grain-shift .5s steps(1) infinite}@media (hover: none){.grain{display:none}}@keyframes grain-shift{0%,to{transform:translate(0)}10%{transform:translate(-2%,-4%)}20%{transform:translate(-6%,2%)}30%{transform:translate(3%,-6%)}40%{transform:translate(-2%,6%)}50%{transform:translate(-6%,4%)}60%{transform:translate(6%)}70%{transform:translateY(4%)}80%{transform:translate(1%,6%)}90%{transform:translate(-4%,4%)}}.bg-gradient{position:fixed;top:0;left:0;width:100%;height:100lvh;z-index:-1;background:radial-gradient(ellipse at 50% 50%,#111 0%,var(--bg-base) 100%);transition:background .8s ease}.hero{position:relative;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;overflow:hidden}.hero__content{text-align:center;z-index:1}.hero__name{font-family:var(--font-display);font-weight:600;font-size:clamp(64px,14vw,200px);line-height:.9;letter-spacing:-.04em;color:var(--text-primary)}.hero__line{display:block;opacity:0;transform:translateY(60px);animation:hero-in 1s var(--ease-out-expo) forwards}.hero__line:nth-child(2){animation-delay:.15s}@keyframes hero-in{to{opacity:1;transform:translateY(0)}}.hero__tagline{font-family:var(--font-body);font-size:clamp(16px,2vw,22px);color:var(--text-secondary);margin-top:2rem;letter-spacing:.02em;opacity:0;animation:fade-in 1s var(--ease-out-expo) .5s forwards}@keyframes fade-in{to{opacity:1}}.scroll-indicator{position:absolute;bottom:3rem;display:flex;flex-direction:column;align-items:center;gap:.75rem;opacity:0;animation:fade-in 1s var(--ease-out-expo) 1s forwards}.scroll-indicator span{font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--text-dim)}.scroll-indicator__line{width:1px;height:48px;background:linear-gradient(to bottom,var(--text-dim),transparent);animation:scroll-line 2s ease-in-out infinite}@keyframes scroll-line{0%,to{opacity:0;transform:scaleY(0);transform-origin:top}50%{opacity:1;transform:scaleY(1);transform-origin:top}}.philosophy{min-height:80vh;display:flex;align-items:center;justify-content:center;padding:6rem 2rem}.philosophy__text{font-family:var(--font-display);font-weight:500;font-size:clamp(28px,4.5vw,64px);line-height:1.2;letter-spacing:-.02em;text-align:center;max-width:900px;color:var(--text-primary)}.philosophy__text .word{display:inline-block;opacity:.1;transition:opacity .5s var(--ease-out-expo)}.philosophy__text .word.visible{opacity:1}.project{position:relative;min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:8rem 2rem;overflow:hidden}.project__glow{position:absolute;width:60%;height:60%;border-radius:50%;filter:blur(120px);opacity:.07;top:50%;left:50%;transform:translate(-50%,-50%);transition:opacity .5s ease;pointer-events:none}[data-accent=plume] .project__glow{background:var(--plume-accent)}[data-accent=moto] .project__glow{background:var(--moto-accent)}[data-accent=mingle] .project__glow{background:var(--mingle-accent)}[data-accent=teachee] .project__glow{background:var(--teachee-accent)}.project:hover .project__glow{opacity:.12}.project__inner{display:grid;grid-template-columns:1fr 1fr;gap:4rem;max-width:1200px;width:100%;align-items:center}.project__number{font-family:var(--font-body);font-size:13px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);margin-bottom:1.5rem;display:block}[data-accent=plume] .project__number{color:var(--plume-accent)}[data-accent=moto] .project__number{color:var(--moto-accent)}[data-accent=mingle] .project__number{color:var(--mingle-accent)}[data-accent=teachee] .project__number{color:var(--teachee-accent)}.project__heading{display:flex;align-items:center;gap:1.2rem}.project__icon{width:clamp(48px,5vw,72px);height:clamp(48px,5vw,72px);border-radius:22%;object-fit:cover;flex-shrink:0}.project__icon--teachee{background:#fff url(/images/icon-teachee.svg) center / 65% auto no-repeat}.project__title{font-family:var(--font-display);font-weight:600;font-size:clamp(48px,6vw,96px);line-height:1;letter-spacing:-.03em;white-space:nowrap}.project__desc{font-size:clamp(16px,1.2vw,19px);color:var(--text-secondary);line-height:1.7;margin-top:1.5rem;max-width:480px}.project__tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}.tag{font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;padding:.4em 1em;border-radius:100px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:var(--text-secondary);transition:border-color .3s ease,color .3s ease}[data-accent=plume] .tag:hover{border-color:var(--plume-accent);color:var(--plume-accent)}[data-accent=moto] .tag:hover{border-color:var(--moto-accent);color:var(--moto-accent)}[data-accent=mingle] .tag:hover{border-color:var(--mingle-accent);color:var(--mingle-accent)}[data-accent=teachee] .tag:hover{border-color:var(--teachee-accent);color:var(--teachee-accent)}.project__platforms{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.2rem}.platform{display:inline-flex;align-items:center;gap:.4rem;font-size:12px;font-weight:500;letter-spacing:.04em;color:var(--text-secondary)}.platform svg{flex-shrink:0}[data-accent=plume] .platform svg{color:var(--plume-accent)}[data-accent=moto] .platform svg{color:var(--moto-accent)}[data-accent=mingle] .platform svg{color:var(--mingle-accent)}[data-accent=teachee] .platform svg{color:var(--teachee-accent)}.project__cta{display:inline-flex;align-items:center;gap:.6rem;margin-top:2.5rem;font-family:var(--font-body);font-size:15px;font-weight:500;letter-spacing:.02em;padding:.8em 1.6em;border:1px solid rgba(255,255,255,.15);border-radius:100px;transition:all .4s var(--ease-out-expo);position:relative;overflow:hidden}.project__cta:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;opacity:0;transition:opacity .4s ease}[data-accent=plume] .project__cta:before{background:var(--plume-accent)}[data-accent=moto] .project__cta:before{background:var(--moto-accent)}[data-accent=mingle] .project__cta:before{background:var(--mingle-accent)}[data-accent=teachee] .project__cta:before{background:var(--teachee-accent)}.project__cta:hover:before{opacity:.1}.project__cta:hover{border-color:#ffffff4d;transform:translateY(-2px)}.project__cta span,.project__cta svg{position:relative;z-index:1}.project__cta svg{transition:transform .3s var(--ease-out-expo)}.project__cta:hover svg{transform:translate(3px,-3px)}.mockup-phone{position:relative;width:280px;height:580px;border-radius:40px;background:#111;border:2px solid rgba(255,255,255,.08);padding:12px;margin:0 auto;box-shadow:0 0 0 1px #ffffff08,0 25px 50px -12px #00000080,0 0 80px #0000004d;transition:transform .6s var(--ease-out-expo)}.mockup-phone__screen{width:100%;height:100%;border-radius:30px;overflow:hidden;position:relative}.mockup-phone:before{content:"";position:absolute;top:12px;left:50%;transform:translate(-50%);width:100px;height:28px;background:#111;border-radius:0 0 18px 18px;z-index:2}.carousel{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;border-radius:inherit;touch-action:pan-y;cursor:grab;-webkit-mask-image:-webkit-radial-gradient(white,black)}.carousel:active{cursor:grabbing}.carousel__track{display:flex;height:100%;gap:0;transition:transform .5s cubic-bezier(.16,1,.3,1);will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.carousel__track.dragging{transition:none}.carousel__slide{flex:0 0 100%;width:100%;height:100%;object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;display:block}.carousel__dots{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:2}.carousel__dot{width:6px;height:6px;border-radius:50%;border:none;background:#ffffff4d;padding:0;cursor:pointer;transition:all .3s ease}.carousel__dot.active{background:#ffffffe6;transform:scale(1.3)}.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s var(--ease-out-expo),transform .8s var(--ease-out-expo)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal:nth-child(1){transition-delay:0ms}.reveal:nth-child(2){transition-delay:.1s}.reveal:nth-child(3){transition-delay:.2s}.reveal:nth-child(4){transition-delay:.3s}.reveal:nth-child(5){transition-delay:.4s}.footer{min-height:60vh;display:flex;align-items:center;justify-content:center;padding:6rem 2rem;border-top:1px solid rgba(255,255,255,.05)}.footer__content{text-align:center}.footer__title{font-family:var(--font-display);font-weight:600;font-size:clamp(36px,5vw,72px);line-height:1.1;letter-spacing:-.03em}.footer__links{display:flex;gap:2.5rem;justify-content:center;margin-top:3rem}.footer__link{font-size:16px;font-weight:500;color:var(--text-secondary);position:relative;padding:.3em 0;transition:color .3s ease}.footer__link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--text-primary);transition:width .4s var(--ease-out-expo)}.footer__link:hover{color:var(--text-primary)}.footer__link:hover:after{width:100%}.footer__portrait{margin-top:2rem;display:flex;justify-content:center}.footer__portrait-img{width:80px;height:80px;border-radius:50%;object-fit:cover;opacity:.7;transition:opacity .4s ease}.footer__portrait-img:hover{opacity:1}.footer__oss{display:inline-flex;align-items:center;gap:.4rem;margin-top:2.5rem;font-size:13px;letter-spacing:.02em;color:var(--text-dim);border-bottom:1px solid transparent;padding-bottom:3px;transition:color .4s ease,border-color .4s ease}.footer__oss:hover{color:var(--text-secondary);border-bottom-color:#ffffff26}.footer__oss svg{transition:transform .3s var(--ease-out-expo)}.footer__oss:hover svg{transform:translate(3px)}.footer__copy{margin-top:1.5rem;font-size:13px;color:var(--text-dim)}@media (max-width: 768px){.project__inner{grid-template-columns:1fr;gap:3rem;text-align:center}.project__desc{max-width:100%}.project__heading,.project__tags,.project__cta,.project__platforms{justify-content:center}.mockup-phone{width:220px;height:460px;border-radius:32px}.mockup-phone__screen{border-radius:24px}.mockup-phone:before{width:80px;height:22px;border-radius:0 0 14px 14px}.footer__links{flex-direction:column;gap:1.5rem}.hero__name{font-size:clamp(48px,14vw,120px)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal,.hero__line{opacity:1;transform:none}.hero__tagline,.scroll-indicator{opacity:1}.cursor-light{display:none}.grain{animation:none}.philosophy__text .word{opacity:1}}:root{--font-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--murmur-accent: #E3C579;--riffle-accent: #5B8CFF;--focus-accent: #FBAF2A}.oss-page .bg-gradient{background:radial-gradient(ellipse at 50% 0%,#14141c 0%,var(--bg-base) 70%)}.oss-back{position:fixed;top:2rem;left:2rem;z-index:20;display:inline-flex;align-items:center;gap:.5rem;font-size:13px;font-weight:500;letter-spacing:.02em;color:var(--text-dim);padding:.5rem .9rem .5rem .6rem;border-radius:100px;border:1px solid transparent;background:#0a0a0a99;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:color .3s ease,border-color .3s ease}.oss-back:hover{color:var(--text-primary);border-color:#ffffff1f}.oss-back svg{transition:transform .3s var(--ease-out-expo)}.oss-back:hover svg{transform:translate(-3px)}.oss-hero{max-width:1240px;margin:0 auto;padding:9rem 2rem 3.5rem}.oss-hero__eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--text-dim);opacity:0;animation:fade-in 1s var(--ease-out-expo) .1s forwards}.oss-hero__title{font-family:var(--font-display);font-weight:600;font-size:clamp(44px,7vw,92px);line-height:.95;letter-spacing:-.04em;margin-top:1rem;opacity:0;transform:translateY(40px);animation:hero-in 1s var(--ease-out-expo) .15s forwards}.oss-hero__lead{max-width:62ch;margin-top:1.6rem;font-size:clamp(15px,1.15vw,17px);line-height:1.75;color:var(--text-secondary);opacity:0;animation:fade-in 1s var(--ease-out-expo) .45s forwards}.oss-hero__strap{display:flex;align-items:center;gap:.9rem;margin-top:2.2rem;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim);opacity:0;animation:fade-in 1s var(--ease-out-expo) .65s forwards}.oss-hero__strap i{font-style:normal;opacity:.5}.oss-hero__strap span:nth-of-type(1){color:var(--murmur-accent)}.oss-hero__strap span:nth-of-type(2){color:var(--riffle-accent)}.oss-hero__strap span:nth-of-type(3){color:var(--focus-accent)}.tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;max-width:1240px;margin:0 auto;padding:1rem 2rem 6rem}.tool{position:relative;display:flex;flex-direction:column;padding:1.5rem 1.5rem 1.4rem;border-radius:18px;border:1px solid rgba(255,255,255,.07);background:linear-gradient(180deg,#ffffff09,#ffffff03);overflow:hidden;color:inherit;cursor:pointer;transition:transform .5s var(--ease-out-expo),border-color .5s ease}.tool:focus-visible{outline:2px solid rgba(255,255,255,.5);outline-offset:3px}.tool:hover{transform:translateY(-4px);border-color:#ffffff24}.tool__glow{position:absolute;top:-30%;left:50%;width:120%;height:60%;border-radius:50%;filter:blur(80px);opacity:.09;transform:translate(-50%);transition:opacity .5s ease;pointer-events:none}[data-oss=murmur] .tool__glow{background:var(--murmur-accent)}[data-oss=riffle] .tool__glow{background:var(--riffle-accent)}[data-oss=focus] .tool__glow{background:var(--focus-accent)}.tool:hover .tool__glow{opacity:.16}.term{position:relative;border-radius:10px;border:1px solid rgba(255,255,255,.07);background:#00000059;overflow:hidden;margin-bottom:1.5rem}.term__bar{display:flex;align-items:center;gap:6px;padding:.55rem .75rem;border-bottom:1px solid rgba(255,255,255,.06);background:#ffffff05}.term__bar i{width:7px;height:7px;border-radius:50%;background:#ffffff1f}[data-oss=murmur] .term__bar i:first-child{background:var(--murmur-accent)}[data-oss=riffle] .term__bar i:first-child{background:var(--riffle-accent)}[data-oss=focus] .term__bar i:first-child{background:var(--focus-accent)}.term__bar em,.term__bar span{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-style:normal;color:var(--text-dim)}.term__bar em{margin-left:.35rem}.term__bar span{margin-left:auto;text-transform:none;letter-spacing:.1em}[data-oss=murmur] .term__bar em{color:color-mix(in srgb,var(--murmur-accent) 70%,transparent)}[data-oss=riffle] .term__bar em{color:color-mix(in srgb,var(--riffle-accent) 70%,transparent)}[data-oss=focus] .term__bar em{color:color-mix(in srgb,var(--focus-accent) 70%,transparent)}.term__shot{display:block;width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover;transition:transform .7s var(--ease-out-expo)}.tool:hover .term__shot{transform:scale(1.035)}.tool__head{display:flex;align-items:flex-start;gap:.9rem;position:relative;min-height:76px}.tool__icon{width:46px;height:46px;border-radius:22%;object-fit:cover;flex-shrink:0}.tool__name{font-family:var(--font-display);font-weight:600;font-size:28px;line-height:1.05;letter-spacing:-.025em}.tool__tagline{margin-top:.35rem;font-size:14px;line-height:1.45;font-weight:500;color:var(--text-primary)}.tool__why{position:relative;margin-top:1.2rem;padding:.85rem 1rem .85rem .9rem;border-radius:10px;border-left:2px solid currentColor;font-size:15px;line-height:1.5;font-weight:500;letter-spacing:-.005em}.tool__why span{display:block;margin-bottom:.3rem;font-family:var(--font-mono);font-size:10px;font-weight:400;letter-spacing:.18em;text-transform:uppercase;opacity:.65}[data-oss=murmur] .tool__why{color:var(--murmur-accent);background:color-mix(in srgb,var(--murmur-accent) 9%,transparent)}[data-oss=riffle] .tool__why{color:var(--riffle-accent);background:color-mix(in srgb,var(--riffle-accent) 11%,transparent)}[data-oss=focus] .tool__why{color:var(--focus-accent);background:color-mix(in srgb,var(--focus-accent) 9%,transparent)}.tool__desc{position:relative;margin-top:1.1rem;font-size:14px;line-height:1.7;color:var(--text-secondary)}.tool__desc mark{color:var(--text-primary);font-weight:500;background:#ffffff12;border-radius:3px;padding:.08em .25em;margin:0 -.05em;box-decoration-break:clone;-webkit-box-decoration-break:clone}[data-oss=murmur] .tool__desc mark{background:color-mix(in srgb,var(--murmur-accent) 15%,transparent)}[data-oss=riffle] .tool__desc mark{background:color-mix(in srgb,var(--riffle-accent) 20%,transparent)}[data-oss=focus] .tool__desc mark{background:color-mix(in srgb,var(--focus-accent) 16%,transparent)}.tool__points{position:relative;list-style:none;margin-top:1.2rem;display:flex;flex-direction:column;gap:.55rem}.tool__points li{position:relative;padding-left:1.15rem;font-size:13.5px;line-height:1.5;color:var(--text-secondary)}.tool__points b{font-weight:500;color:var(--text-primary)}.tool__points li:before{content:"";position:absolute;left:0;top:.6em;width:6px;height:1px;background:currentColor;opacity:.6}[data-oss=murmur] .tool__points li:before{background:var(--murmur-accent)}[data-oss=riffle] .tool__points li:before{background:var(--riffle-accent)}[data-oss=focus] .tool__points li:before{background:var(--focus-accent)}.tool__foot{position:relative;margin-top:auto;padding-top:1.6rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.tool__meta{display:flex;flex-wrap:wrap;gap:.35rem}.tool__chip{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;padding:.4em .65em;border-radius:5px;background:#ffffff08;border:1px solid rgba(255,255,255,.07);color:var(--text-dim)}.tool__cta{display:inline-flex;align-items:center;gap:.45rem;font-size:13px;font-weight:500;padding:.55em 1em;border-radius:100px;border:1px solid rgba(255,255,255,.14);color:var(--text-secondary);transition:color .35s ease,border-color .35s ease,background-color .35s ease}[data-oss=murmur]:hover .tool__cta{color:var(--murmur-accent);border-color:color-mix(in srgb,var(--murmur-accent) 45%,transparent);background:color-mix(in srgb,var(--murmur-accent) 9%,transparent)}[data-oss=riffle]:hover .tool__cta{color:var(--riffle-accent);border-color:color-mix(in srgb,var(--riffle-accent) 45%,transparent);background:color-mix(in srgb,var(--riffle-accent) 9%,transparent)}[data-oss=focus]:hover .tool__cta{color:var(--focus-accent);border-color:color-mix(in srgb,var(--focus-accent) 45%,transparent);background:color-mix(in srgb,var(--focus-accent) 9%,transparent)}.oss-footer{border-top:1px solid rgba(255,255,255,.05);padding:5rem 2rem 4rem;text-align:center}.oss-footer__note{font-family:var(--font-display);font-weight:500;font-size:clamp(20px,2.4vw,30px);line-height:1.3;letter-spacing:-.02em;max-width:560px;margin:0 auto}.oss-footer__links{display:flex;justify-content:center;gap:2.5rem;margin-top:2rem}.oss-footer__back{display:inline-block;margin-top:3rem;font-size:13px;color:var(--text-dim);transition:color .3s ease}.oss-footer__back:hover{color:var(--text-primary)}@media (max-width: 1080px){.tools{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.oss-back{top:1rem;left:1rem}.oss-hero{padding:7rem 1.5rem 2.5rem}.tools{grid-template-columns:1fr;padding:1rem 1.5rem 4rem}.term__body{font-size:9.5px}.oss-footer__links{flex-direction:column;gap:1.25rem}}
