:root{--bg:#060506;--bg-2:#0c0a0b;--bg-3:#121011;--ink:#f6f2ec;--ink-2:#c6bfb6;--ink-3:#8a8078;--ink-4:#5c554f;--surface:#121011;--surface-2:#171415;--surface-3:#1e1a1a;--stroke:#f6f2ec17;--stroke-strong:#f6f2ec33;--c-amber:#f0a13c;--c-amber-hi:#ffc46b;--c-copper:#c9714a;--c-clay:#a8532f;--c-sand:#d8b98c;--c-moss:#8a9a5b;--grad-text:linear-gradient(110deg, #fffaf2 0%, #f4e3c9 38%, #f0a13c 78%, #c9714a 100%);--grad-accent:linear-gradient(135deg, #ffc46b 0%, #f0a13c 45%, #c9714a 100%);--grad-line:linear-gradient(90deg, transparent, #f0a13c8c, #c9714a8c, transparent);--r-xs:8px;--r-sm:14px;--r-md:20px;--r-lg:28px;--r-xl:36px;--r-full:999px;--shadow-glass:0 24px 60px -20px #000c, inset 0 1px 0 #f6f2ec0f;--shadow-lift:0 40px 90px -30px #000000e6, 0 0 0 1px #f6f2ec0f;--glow-amber:0 0 60px -12px #f0a13c80;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-io:cubic-bezier(.65, 0, .35, 1);--font-display:"Inter Tight", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-body:"Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-serif:"Instrument Serif", ui-serif, Georgia, serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, monospace;--nav-h:74px}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;scroll-behavior:smooth;margin:0;padding:0;font-size:16px;line-height:1.5;overflow-x:clip}::selection{color:#fffaf2;background:#f0a13c52}.bg-stage{z-index:-3;background:radial-gradient(1300px 900px at 78% -12%, rgba(var(--amb-a,240, 161, 60), calc(.05 * var(--amb-i,1))), transparent 62%), radial-gradient(1000px 700px at -12% 108%, rgba(var(--amb-b,201, 113, 74), calc(.04 * var(--amb-i,1))), transparent 62%), radial-gradient(820px 620px at 50% 46%, rgba(var(--amb-a,240, 161, 60), calc(.022 * var(--amb-i,1))), transparent 70%), linear-gradient(180deg, #060506 0%, #0b0809 55%, #060506 100%);position:fixed;inset:0;overflow:hidden}.aurora{pointer-events:none;opacity:.18;mix-blend-mode:screen;will-change:transform;position:absolute;inset:-25%}.aurora.a1{filter:blur(90px);animation:aurora-drift-a 34s var(--ease-io) infinite;background:conic-gradient(from 210deg at 30% 30%,#0000 0deg,#f0a13c3d 70deg,#0000 150deg,#d8b98c24 240deg,#0000 330deg)}.aurora.a2{filter:blur(110px);animation:aurora-drift-b 46s var(--ease-io) infinite;opacity:.2;background:conic-gradient(from 40deg at 72% 68%,#0000 0deg,#c9714a33 90deg,#0000 190deg,#a8532f38 280deg,#0000 360deg)}@keyframes aurora-drift-a{0%,to{transform:translate(0,0)rotate(0)scale(1)}50%{transform:translate(3%,-4%)rotate(22deg)scale(1.12)}}@keyframes aurora-drift-b{0%,to{transform:translate(0,0)rotate(0)scale(1.05)}50%{transform:translate(-4%,3%)rotate(-18deg)scale(.95)}}.blob{filter:blur(70px);opacity:.2;will-change:transform;border-radius:50%;position:absolute}.blob.b1{background:#8a5220;width:520px;height:520px;animation:22s ease-in-out infinite float1;top:-120px;left:-120px}.blob.b2{background:#6d3a22;width:480px;height:480px;animation:26s ease-in-out infinite float2;bottom:-160px;right:-100px}.blob.b3{opacity:.16;background:#5c4a2a;width:380px;height:380px;animation:30s ease-in-out infinite float3;top:40%;right:25%}@keyframes float1{0%,to{transform:translate(0)scale(1)}50%{transform:translate(60px,40px)scale(1.1)}}@keyframes float2{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-50px,-30px)scale(1.08)}}@keyframes float3{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-40px,50px)scale(.92)}}.bg-grid{z-index:-2;pointer-events:none;will-change:transform;background-image:linear-gradient(#ffffff07 1px,#0000 1px),linear-gradient(90deg,#ffffff07 1px,#0000 1px);background-size:68px 68px;animation:40s linear infinite grid-crawl;position:fixed;inset:-60px;-webkit-mask-image:radial-gradient(90% 70% at 50% 40%,#000 20%,#0000 78%);mask-image:radial-gradient(90% 70% at 50% 40%,#000 20%,#0000 78%)}@keyframes grid-crawl{0%{transform:translate(0,0)}to{transform:translateY(68px)}}.bg-noise{z-index:-1;pointer-events:none;opacity:.035;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-weight:600}h1{letter-spacing:-.042em;font-size:clamp(42px,6.4vw,92px);line-height:.98}h2{letter-spacing:-.036em;font-size:clamp(30px,4vw,56px);line-height:1.04}h3{letter-spacing:-.02em;font-size:clamp(19px,1.8vw,24px);line-height:1.25}p{color:var(--ink-2);margin:0}.serif{font-family:var(--font-serif);letter-spacing:-.01em;font-style:italic;font-weight:400}.eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.16em;color:var(--ink-3);align-items:center;gap:10px;font-size:12px;display:inline-flex}.eyebrow:before{content:"";background:var(--ink-4);width:24px;height:1px}.grad-text{background:var(--grad-text);color:#0000;-webkit-background-clip:text;background-clip:text}.mono{font-family:var(--font-mono)}.container{max-width:1240px;margin:0 auto;padding:0 32px}.section-head h2{max-width:18ch}.section-head .lead{max-width:44ch;color:var(--ink-3)}.nav{z-index:50;-webkit-backdrop-filter:blur(20px)saturate(140%);border:1px solid var(--stroke);background:#0c0c188c;border-radius:999px;align-items:center;gap:6px;padding:8px 10px 8px 18px;display:flex;position:fixed;top:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #0006}.nav-brand{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);border-right:1px solid var(--stroke);align-items:center;gap:10px;margin-right:4px;padding-right:14px;font-size:15px;font-weight:600;text-decoration:none;display:flex}.nav-brand .dot{background:var(--grad-accent);border-radius:50%;width:8px;height:8px;box-shadow:0 0 12px #f0a13ccc}.nav-links{gap:2px;display:flex}.nav-link{color:var(--ink-2);border-radius:999px;padding:8px 14px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s;position:relative}.nav-link:hover{color:var(--ink);background:#ffffff0a}.nav-link.active{color:var(--ink);background:#ffffff14;box-shadow:inset 0 1px #ffffff1a}.nav-cta{color:var(--bg);background:var(--grad-text);border-radius:999px;margin-left:6px;padding:8px 16px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .2s,filter .2s}.nav-cta:hover{filter:brightness(1.1);transform:translateY(-1px)}@media (width<=720px){.nav{gap:0;padding:6px 6px 6px 14px}.nav-brand{padding-right:10px;font-size:14px}.nav-link{padding:6px 10px;font-size:13px}.nav-cta{padding:7px 12px;font-size:13px}}.glass{background:var(--surface);border:1px solid var(--stroke);border-radius:var(--r-md);box-shadow:var(--shadow-glass);position:relative}.glass:before{content:none}.btn{font-family:var(--font-body);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:10px;padding:14px 24px;font-size:15px;font-weight:600;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-primary{color:#0a0a14;background:var(--grad-text);box-shadow:0 10px 30px -10px #f0a13c80}.btn-ghost{color:var(--ink);background:var(--glass);border:1px solid var(--stroke-strong);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.btn .arr{width:14px;height:14px;transition:transform .25s}.btn:hover .arr{transform:translate(2px,-2px)}.reveal{opacity:0;transition:opacity .8s cubic-bezier(.2,.6,.2,1),transform .8s cubic-bezier(.2,.6,.2,1);transform:translateY(24px)}.reveal.in{opacity:1;transform:translateY(0)}.reveal[data-delay="1"]{transition-delay:80ms}.reveal[data-delay="2"]{transition-delay:.16s}.reveal[data-delay="3"]{transition-delay:.24s}.reveal[data-delay="4"]{transition-delay:.32s}.reveal[data-delay="5"]{transition-delay:.4s}.footer-brand{font-family:var(--font-display);color:var(--ink);font-weight:600}.footer-meta{font-family:var(--font-mono);color:var(--ink-4);letter-spacing:.05em;font-size:12px}.footer-links{gap:22px;display:flex}.footer-links a{color:var(--ink-3);font-size:13px;text-decoration:none;transition:color .2s}.cursor-spot{pointer-events:none;z-index:1;mix-blend-mode:screen;filter:blur(20px);will-change:transform;background:radial-gradient(circle,#f0a13c1f,#c9714a0f 30%,#0000 60%);border-radius:50%;width:600px;height:600px;position:fixed;top:0;left:0}.scroll-progress{background:var(--grad-text);transform-origin:0;z-index:100;width:100%;height:2px;position:fixed;top:0;left:0;transform:scaleX(0);box-shadow:0 0 12px #f0a13c99}[data-split=words] .word{opacity:0;transform-origin:0;transition:opacity .8s cubic-bezier(.2, .6, .2, 1) var(--wd,0s), transform .9s cubic-bezier(.2, .6, .2, 1) var(--wd,0s);will-change:transform, opacity;display:inline-block;transform:translateY(80%)rotateX(-30deg)}[data-split=words].in .word{opacity:1;transform:translateY(0)rotateX(0)}.grad-text .word{background:var(--grad-text);color:#0000;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:8s ease-in-out infinite grad-flow}.grad-text{background-size:100% 100%!important}.tilt{transform-style:preserve-3d;will-change:transform;transition:transform .5s cubic-bezier(.2,.6,.2,1);position:relative}.tilt .sheen{border-radius:inherit;pointer-events:none;mix-blend-mode:overlay;transition:background .2s;position:absolute;inset:0}.tilt>*{transform:translateZ(0)}.magnetic{will-change:transform;transition:transform .5s cubic-bezier(.2,.6,.2,1)}.particles{pointer-events:none;position:absolute;inset:0}.particle{filter:blur(.3px);background:linear-gradient(135deg,#f0a13c,#ffc46b);border-radius:50%;animation:linear infinite drift;position:absolute;box-shadow:0 0 6px #d8b98c80}@keyframes drift{0%{opacity:0;transform:translate(0)}10%{opacity:.7}90%{opacity:.7}to{opacity:0;transform:translate(-80px,-120vh)}}.shimmer{background:linear-gradient(90deg, var(--ink) 0%, var(--c-cyan) 50%, var(--ink) 100%);color:#0000;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:3.5s ease-in-out infinite shimmer;position:relative}@keyframes shimmer{0%,to{background-position:0%}50%{background-position:100%}}.pulse-ring{position:relative}.pulse-ring:after{content:"";border-radius:inherit;pointer-events:none;border:1px solid #f0a13c80;animation:2.4s cubic-bezier(.4,0,.6,1) infinite pulse-ring;position:absolute;inset:-4px}@keyframes pulse-ring{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.float-y{animation:6s ease-in-out infinite float-y}.float-y.slow{animation-duration:9s}@keyframes float-y{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.glow-pulse:hover{animation:1.6s ease-out infinite glow-pulse;box-shadow:0 0 #f0a13c80}@keyframes glow-pulse{0%{box-shadow:0 0 #f0a13c80}to{box-shadow:0 0 0 24px #f0a13c00}}.scramble-trigger{cursor:pointer}.marquee-glow span{transition:color .3s,text-shadow .3s}.marquee-glow span:hover{text-shadow:0 0 24px #c9714a99;color:var(--c-cyan)!important}.under-link{text-decoration:none;position:relative}.under-link:after{content:"";background:var(--grad-accent);transform-origin:100%;width:100%;height:1px;transition:transform .5s cubic-bezier(.2,.6,.2,1);position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.under-link:hover:after{transform-origin:0;transform:scaleX(1)}.nav{animation:.9s cubic-bezier(.2,.6,.2,1) .1s both nav-in}@keyframes nav-in{0%{opacity:0;transform:translate(-50%)translateY(-20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.word-stack{padding:140px 0 80px}.word-stack-eyebrow{margin-bottom:40px}.word-stack .wsw{font-family:var(--font-display);letter-spacing:-.04em;color:var(--ink);opacity:0;will-change:transform, opacity;font-size:clamp(48px,9vw,140px);font-weight:600;line-height:.98;transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform .85s cubic-bezier(.2,.7,.2,1);display:block;transform:translateY(60px)}.word-stack .wsw.in{opacity:1;transform:translateY(0)}.word-stack .wsw.accent{background:var(--grad-text);color:#0000;-webkit-background-clip:text;background-clip:text}.word-stack .wsw.dim{color:var(--ink-3);font-weight:400}.bento-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}@media (width<=880px){.bento-grid{grid-template-columns:1fr}}.bento-card{color:inherit;flex-direction:column;transition:transform .5s cubic-bezier(.2,.6,.2,1);display:flex;overflow:hidden;text-decoration:none!important}.bento-card *{text-decoration:none!important}.bento-vis{aspect-ratio:16/10;border-bottom:1px solid var(--stroke);background:linear-gradient(135deg,#f0a13c2e,#c9714a1a),repeating-linear-gradient(45deg,#ffffff0a 0 2px,#0000 2px 16px);justify-content:center;align-items:flex-end;display:flex;position:relative;overflow:hidden}.bento-glow{filter:blur(60px);opacity:.5;pointer-events:none;border-radius:50%;width:240px;height:240px;position:absolute}.bento-glow.a{background:#f0a13c;top:-60px;left:-60px}.bento-glow.b{background:#d8b98c;bottom:-60px;right:-60px}.bento-phone{aspect-ratio:9/18;z-index:1;background:linear-gradient(160deg,#141420d9,#0a0a14a6);border:1px solid #ffffff29;border-bottom:none;border-radius:18px 18px 0 0;flex-direction:column;gap:8px;width:36%;padding:16px 12px 0;transition:transform .6s cubic-bezier(.2,.6,.2,1);display:flex;position:relative;transform:translateY(0);box-shadow:0 20px 60px #00000080,inset 0 1px #ffffff12}.bento-card:hover .bento-phone{transform:translateY(-6px)}.bp-notch{background:#000;border-radius:0 0 10px 10px;width:32%;height:14px;position:absolute;top:0;left:50%;transform:translate(-50%)}.bp-bar{background:#ffffff14;border-radius:4px;height:8px}.bp-bar.w-50{width:50%}.bp-bar.w-70{width:70%}.bp-bar.w-90{width:90%}.bp-bar.accent{background:var(--grad-accent)}.bp-card{background:linear-gradient(140deg,#f0a13c59,#c9714a26);border:1px solid #ffffff12;border-radius:8px;height:56px}.bp-card.lg{height:88px}.bp-row-mini{gap:6px;margin-top:auto;padding-bottom:10px;display:flex}.bp-row-mini span{background:#ffffff0f;border:1px solid #ffffff0f;border-radius:6px;flex:1;height:22px}.bento-info{flex-direction:column;flex:1;gap:14px;padding:26px 28px 28px;display:flex}.bento-tags{flex-wrap:wrap;gap:8px;display:flex}.bento-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);text-wrap:balance;margin:0;font-size:clamp(20px,1.6vw,24px);font-weight:600;line-height:1.2}.bento-desc{color:var(--ink-3);margin:0;font-size:14.5px;line-height:1.55}.bento-foot{border-top:1px solid var(--stroke);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:16px;display:flex}.bento-role{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);font-size:11px}.bento-arrow{background:var(--glass);border:1px solid var(--stroke);width:36px;height:36px;color:var(--ink-2);border-radius:50%;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.2,.6,.2,1);display:flex}.bento-card:hover .bento-arrow{background:var(--grad-text);color:var(--bg);border-color:#0000;transform:rotate(-45deg)}.hover-preview-list{flex-direction:column;display:flex}.hp-row{border-bottom:1px solid var(--stroke);cursor:pointer;color:inherit;justify-content:space-between;align-items:baseline;gap:32px;padding:32px 0;transition:color .4s,padding .5s cubic-bezier(.2,.7,.2,1);display:flex;position:relative;text-decoration:none!important}.hp-row *{text-decoration:none!important}.hp-row:hover{padding-left:24px}.hp-row:before{content:"";background:var(--grad-text);width:0;height:1px;transition:width .5s cubic-bezier(.2,.7,.2,1);position:absolute;top:50%;left:0;transform:translateY(-50%)}.hp-row:hover:before{width:14px}.hp-row .hp-num{font-family:var(--font-mono);color:var(--ink-4);letter-spacing:.1em;flex-shrink:0;width:60px;font-size:13px}.hp-row .hp-title{font-family:var(--font-display);letter-spacing:-.035em;color:var(--ink-3);text-wrap:balance;flex:1;font-size:clamp(36px,5.5vw,80px);font-weight:600;line-height:1.05;transition:color .4s,transform .5s cubic-bezier(.2,.7,.2,1)}.hp-row:hover .hp-title{color:var(--ink)}.hp-row .hp-meta{text-align:right;flex-direction:column;flex-shrink:0;gap:6px;display:flex}.hp-row .hp-meta .role{font-family:var(--font-mono);color:var(--ink-3);letter-spacing:.08em;text-transform:uppercase;font-size:12px}.hp-row .hp-meta .yr{font-family:var(--font-mono);color:var(--ink-4);font-size:11px}.preview-phone{background:linear-gradient(160deg,#141420f2,#0a0a14f2);flex-direction:column;gap:10px;width:100%;height:100%;padding:22px 18px;display:flex;position:relative;overflow:hidden}.preview-phone:before{content:"";pointer-events:none;background:radial-gradient(circle at 30% 0,#f0a13c66,#0000 60%),radial-gradient(circle at 100% 100%,#c9714a4d,#0000 60%);position:absolute;inset:0}.preview-phone .pp-bar{z-index:1;background:#ffffff14;border-radius:4px;height:8px;position:relative}.preview-phone .pp-bar.w-50{width:50%}.preview-phone .pp-bar.w-70{width:70%}.preview-phone .pp-bar.w-90{width:90%}.preview-phone .pp-bar.accent{background:var(--grad-accent)}.preview-phone .pp-card{z-index:1;background:linear-gradient(140deg,#f0a13c66,#c9714a26);border:1px solid #ffffff14;border-radius:10px;height:90px;position:relative}[data-clip]{display:inline-block}.clip-mask{vertical-align:bottom;line-height:inherit;display:inline-block;overflow:hidden}.clip-inner{transition:transform 1.1s cubic-bezier(.2, .7, .2, 1) var(--clip-d,0s);will-change:transform;display:inline-block;transform:translateY(110%)}.clip-in .clip-inner{transform:translateY(0)}.hscroll{position:relative}.hscroll-pin{align-items:center;height:100vh;display:flex;position:sticky;top:0;overflow:hidden}.hscroll-panel{flex-shrink:0;align-items:stretch;width:72vw;max-width:1100px;height:70vh;display:flex}.mega-marquee{border-block:1px solid var(--stroke);background:#08081066;padding:80px 0;position:relative;overflow:hidden}.mega-marquee .mm-row{white-space:nowrap;gap:72px;width:max-content;animation:28s linear infinite mm-roll;display:flex}.mega-marquee .mm-row.reverse{animation-duration:36s;animation-direction:reverse}.mega-marquee .mm-row+.mm-row{margin-top:28px}.mega-marquee span{font-family:var(--font-display);letter-spacing:-.04em;color:var(--ink);-webkit-text-stroke:1px var(--ink-4);-webkit-text-fill-color:transparent;text-fill-color:transparent;font-size:clamp(56px,9vw,140px);font-weight:600;line-height:1}.mega-marquee .mm-row.solid span{-webkit-text-fill-color:var(--ink);text-fill-color:var(--ink);color:var(--ink)}.mega-marquee .mm-row.solid span:nth-child(2n){background:var(--grad-text);-webkit-text-fill-color:transparent;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:8s ease-in-out infinite grad-flow}.mega-marquee .star{-webkit-text-stroke:0;-webkit-text-fill-color:var(--c-iris);justify-content:center;align-items:center;width:80px;height:80px;display:inline-flex}@keyframes mm-roll{to{transform:translate(-50%)}}.boot-overlay{z-index:9999;font-family:var(--font-mono);background:#04040a;justify-content:center;align-items:center;transition:opacity .8s;display:flex;position:fixed;inset:0}.boot-overlay:before{content:"";pointer-events:none;background:radial-gradient(800px 500px,#f0a13c26,#0000 60%),radial-gradient(600px 400px at 50% 80%,#c9714a14,#0000 60%);position:absolute;inset:0}.boot-overlay.fade-out{opacity:0;pointer-events:none}.boot-frame{z-index:1;background:#0a0a14f2;border:1px solid #ffffff14;border-radius:16px;width:min(600px,92vw);animation:.6s cubic-bezier(.2,.6,.2,1) bootFrame;position:relative;overflow:hidden;box-shadow:0 30px 100px #f0a13c40,inset 0 1px #ffffff14}@keyframes bootFrame{0%{opacity:0;transform:translateY(20px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.boot-header{background:#ffffff08;border-bottom:1px solid #ffffff0f;align-items:center;gap:8px;padding:12px 16px;display:flex}.boot-header .td{border-radius:50%;width:11px;height:11px}.boot-header .d1{background:#ff5f57}.boot-header .d2{background:#febc2e}.boot-header .d3{background:#28c840}.boot-title{color:#6a6a8a;letter-spacing:.04em;margin-left:12px;font-size:11px}.boot-body{color:#9b9bae;font-variant-numeric:tabular-nums;min-height:260px;padding:22px 24px 20px;font-size:13px;line-height:1.85}.boot-line{white-space:pre-wrap;animation:.25s ease-out bootLineIn}.boot-line .ok{color:#4ade80;font-weight:700}.boot-line .hl{color:#c4b5fd}.boot-line .dim{color:#5a5a78}@keyframes bootLineIn{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}.boot-bar{background:#ffffff0a;height:2px;position:relative;overflow:hidden}.boot-bar-fill{background:var(--grad-text);transform-origin:0;transition:transform .4s cubic-bezier(.4,0,.2,1);position:absolute;inset:0;transform:scaleX(0)}html.has-custom-cursor,html.has-custom-cursor body,html.has-custom-cursor *{cursor:none!important}html.has-custom-cursor input,html.has-custom-cursor textarea{cursor:text!important}.cur-dot,.cur-ring{pointer-events:none;z-index:9998;will-change:transform, width, height;opacity:0;transition:opacity .25s;position:fixed;top:0;left:0}.cur-dot.on,.cur-ring.on{opacity:1}.cur-dot{background:#fff;border-radius:50%;width:6px;height:6px}.cur-ring{border:1.5px solid #ffffff80;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;transition:opacity .25s,border-radius .35s cubic-bezier(.2,.6,.2,1),border-color .25s;display:flex}.cur-ring.snap{background:#f0a13c0f;border-color:#c4b5fdf2;border-radius:14px}.cur-ring.press{transform:scale(.85)!important}.cur-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:#fffc;opacity:0;font-size:10px;font-weight:500;transition:opacity .25s}.cur-ring.has-label .cur-label{opacity:1}.ide{padding:0;overflow:hidden;transform:perspective(1400px)rotateY(-6deg)rotateX(3deg)}.ide-header{border-bottom:1px solid var(--stroke);background:#ffffff05;align-items:center;display:flex}.ide-traffic{border-right:1px solid var(--stroke);gap:8px;padding:12px 16px;display:flex}.ide-traffic .td{border-radius:50%;width:11px;height:11px}.ide-traffic .d1{background:#ff5f57}.ide-traffic .d2{background:#febc2e}.ide-traffic .d3{background:#28c840}.ide-tabs{flex:1;gap:0;display:flex;overflow:hidden}.ide-tab{font-family:var(--font-mono);color:var(--ink-3);letter-spacing:.02em;cursor:pointer;border-right:1px solid var(--stroke);white-space:nowrap;align-items:center;gap:8px;padding:12px 18px 12px 14px;font-size:12px;transition:all .25s;display:flex;position:relative}.ide-tab:hover{color:var(--ink-2);background:#ffffff05}.ide-tab.active{color:var(--ink);background:#ffffff0a}.ide-tab.active:after{content:"";background:var(--grad-text);height:1.5px;position:absolute;inset:auto 0 0}.ide-tab .tab-dot{background:var(--ink-4);border-radius:50%;width:6px;height:6px;transition:background .25s}.ide-tab.active .tab-dot{background:#c4b5fd;box-shadow:0 0 8px #c4b5fdb3}.ide-body{font-family:var(--font-mono);min-height:280px;padding:20px 20px 22px;font-size:13px;line-height:1.75}.ide-body .kw{color:#c084fc}.ide-body .fn{color:#ffc46b}.ide-body .str{color:#fbbf24}.ide-body .cm{color:var(--ink-4);font-style:italic}.ide-body .ty{color:#f0abfc}.ide-body .pn{color:var(--ink-3)}.ide-row{display:block}.ide-row .ln{color:var(--ink-4);-webkit-user-select:none;user-select:none;margin-right:14px;font-size:11px}.ide-row .caret{vertical-align:-3px;background:#ffc46b;width:7px;height:1em;margin-left:1px;animation:1s steps(2,end) infinite blink;display:inline-block;box-shadow:0 0 8px #ffc46b}.ide-status{border-top:1px solid var(--stroke);font-family:var(--font-mono);color:var(--ink-3);letter-spacing:.04em;background:#0000004d;align-items:center;gap:14px;padding:8px 16px;font-size:11px;display:flex}.ide-status .status-dot{background:#4ade80;border-radius:50%;width:7px;height:7px;animation:1.8s ease-in-out infinite pulse;box-shadow:0 0 8px #4ade80}.ide-status .spacer{flex:1}[data-glitch]{font-variant-ligatures:none}html.page-loading body{opacity:0}html.page-loaded body{opacity:1;transition:opacity .5s}html.page-leaving body{opacity:0;transition:opacity .3s,transform .3s;transform:translateY(-12px)}.spacer-sm{height:32px}.spacer-md{height:64px}.spacer-lg{height:120px}.pill{background:var(--glass);border:1px solid var(--stroke);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:11px;display:inline-flex}.pill .live-dot{background:#4ade80;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse;box-shadow:0 0 8px #4ade80}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}html,body{background:0 0!important}html{background-color:var(--bg)!important}html.page-loading body,html.page-leaving body{opacity:1!important;transform:none!important}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.route-shell{z-index:1;min-height:100vh;position:relative}.page-enter{animation:.65s cubic-bezier(.22,1,.36,1) both pageIn}@keyframes pageIn{0%{opacity:0;filter:blur(8px);transform:translateY(28px)scale(.985)}to{opacity:1;filter:none;transform:none}}.blob.mouse-parallax{transition:transform .15s ease-out}.particles-canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.nav-indicator{z-index:-1;background:#f6f2ec14;border-radius:999px;position:absolute;inset:4px;box-shadow:inset 0 1px #f6f2ec1f}.hero{align-items:center;min-height:100vh;padding-top:120px;padding-bottom:80px;display:flex}.hero-grid{grid-template-columns:1.4fr 1fr;align-items:center;gap:60px;display:grid}@media (width<=980px){.hero-grid{grid-template-columns:1fr;gap:40px}}.hero h1 .typed-wrap{vertical-align:top;align-items:baseline;gap:4px;display:inline-flex}.typed-stack{vertical-align:top;display:inline-grid}.typed-stack>*{white-space:pre;grid-area:1/1}.typed-stack .typed{background:var(--grad-text);color:#0000;-webkit-background-clip:text;background-clip:text;min-height:1.02em}.typed-stack .typed-ghost{visibility:hidden;pointer-events:none;-webkit-user-select:none;user-select:none}.hero h1 .typed{background:var(--grad-text);color:#0000;-webkit-background-clip:text;background-clip:text;min-height:1.02em}.caret{background:#ffc46b;border-radius:2px;width:4px;height:.85em;margin-left:6px;animation:1s steps(2,end) infinite blink;display:inline-block;transform:translateY(2px);box-shadow:0 0 12px #ffc46b}@keyframes blink{50%{opacity:0}}.hero-sub{color:var(--ink-2);max-width:48ch;margin-top:28px;font-size:18px;line-height:1.6}.hero-meta{flex-wrap:wrap;align-items:center;gap:12px;margin-top:32px;display:flex}.hero-cta{flex-wrap:wrap;gap:14px;margin-top:40px;display:flex}.stats{background:var(--stroke);border:1px solid var(--stroke);border-radius:var(--r-md);grid-template-columns:repeat(4,1fr);gap:1px;margin-top:80px;display:grid;overflow:hidden}@media (width<=760px){.stats{grid-template-columns:repeat(2,1fr)}}.stat{background:#0c0c1873;padding:28px 24px}.stat .num{font-family:var(--font-display);letter-spacing:-.03em;background:var(--grad-text);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:36px;font-weight:600}.stat .lbl{color:var(--ink-3);margin-top:6px;font-size:13px}.marquee-wrap{margin-top:28px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.about-hero{padding-top:160px;padding-bottom:60px}.about-grid{grid-template-columns:1fr 1.4fr;align-items:flex-start;gap:60px;display:grid}@media (width<=980px){.about-grid{grid-template-columns:1fr}}.portrait{aspect-ratio:4/5;border-radius:var(--r-lg);border:1px solid var(--stroke-strong);background:radial-gradient(circle at 30% 20%,#a8532f66,#0000 50%),radial-gradient(circle at 80% 80%,#c9714a4d,#0000 50%),linear-gradient(160deg,#f6f2ec0f,#f6f2ec05);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.portrait .placeholder{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);border:1px dashed var(--stroke-strong);background:#0000004d;border-radius:999px;padding:8px 14px;font-size:11px}.portrait .ring{border-radius:calc(var(--r-lg) - 8px);pointer-events:none;border:1px solid #f6f2ec1a;position:absolute;inset:12px}.about-body p+p{margin-top:16px}.about-body p{color:var(--ink-2);font-size:17px;line-height:1.65}.about-body p strong{color:var(--ink);font-weight:600}.skills-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (width<=860px){.skills-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=540px){.skills-grid{grid-template-columns:1fr}}.skill-card{padding:24px}.skill-card .icn{border:1px solid var(--stroke);width:44px;height:44px;font-family:var(--font-mono);color:#c4b5fd;background:linear-gradient(140deg,#a8532f40,#c9714a26);border-radius:12px;justify-content:center;align-items:center;margin-bottom:18px;font-size:18px;font-weight:600;display:flex}.skill-card h3{margin-bottom:6px;font-size:17px}.skill-card p{color:var(--ink-3);font-size:14px;line-height:1.5}.skill-tags{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.tag{font-family:var(--font-mono);border:1px solid var(--stroke);color:var(--ink-2);background:#f6f2ec0a;border-radius:6px;padding:4px 9px;font-size:11px}.timeline{padding-left:32px;position:relative}.timeline:before{content:"";background:linear-gradient(180deg, transparent, var(--stroke-strong) 10%, var(--stroke-strong) 90%, transparent);width:1px;position:absolute;top:8px;bottom:8px;left:8px}.tl-item{padding-bottom:40px;position:relative}.tl-item:before{content:"";background:var(--bg);border:2px solid var(--c-clay);border-radius:50%;width:13px;height:13px;position:absolute;top:6px;left:-28px;box-shadow:0 0 0 4px #a8532f26,0 0 16px #a8532f80}.tl-item .when{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-3);font-size:12px}.tl-item h3{margin-top:8px;font-size:20px}.tl-item .where{color:var(--ink-2);margin-top:2px;font-size:14px}.tl-item p{color:var(--ink-3);max-width:55ch;margin-top:10px;font-size:14px;line-height:1.6}.quote{text-align:center;font-family:var(--font-display);letter-spacing:-.02em;padding:56px 64px;font-size:clamp(24px,3vw,36px);font-weight:500;line-height:1.3}.quote .mark{color:var(--c-clay);vertical-align:-10px;margin-right:8px;font-family:serif;font-size:72px;line-height:0}.projects-hero{padding-top:160px;padding-bottom:40px}.filters{flex-wrap:wrap;gap:8px;margin-top:28px;display:flex}.chip{background:var(--glass);border:1px solid var(--stroke);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-2);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;padding:8px 16px;font-size:12px;transition:all .2s}.chip.active{background:var(--grad-text);color:var(--bg);border-color:#0000}.proj-grid{grid-template-columns:repeat(2,1fr);gap:28px;margin-top:56px;display:grid}@media (width<=880px){.proj-grid{grid-template-columns:1fr}}.proj-card{color:inherit;cursor:pointer;flex-direction:column;gap:22px;padding:28px;text-decoration:none;display:flex}.proj-vis{aspect-ratio:16/11;border-radius:var(--r-sm);border:1px solid var(--stroke);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.proj-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.proj-meta .left{flex-wrap:wrap;gap:8px;display:flex}.proj-title{font-family:var(--font-display);letter-spacing:-.02em;justify-content:space-between;align-items:center;gap:12px;font-size:24px;font-weight:600;display:flex}.proj-desc{color:var(--ink-3);font-size:14px;line-height:1.6}.proj-stats{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.proj-stat .v{font-family:var(--font-display);color:var(--ink);font-size:18px;font-weight:600}.proj-stat .k{color:var(--ink-4);font-size:11px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em}.oss-list{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=740px){.oss-list{grid-template-columns:1fr}}.oss-card{flex-direction:column;gap:10px;padding:22px 24px;display:flex}.oss-name{font-family:var(--font-mono);color:var(--ink);font-size:14px;font-weight:500}.oss-stars{font-family:var(--font-mono);color:var(--ink-3);font-size:12px}.oss-desc{color:var(--ink-3);font-size:13.5px;line-height:1.55}.contact-hero{padding-top:160px;padding-bottom:80px}.contact-grid{grid-template-columns:1fr 1fr;align-items:flex-start;gap:28px;display:grid}@media (width<=900px){.contact-grid{grid-template-columns:1fr}}.email-card{flex-direction:column;gap:24px;padding:40px;display:flex;position:relative;overflow:hidden}.email-card .glow{filter:blur(80px);opacity:.4;pointer-events:none;border-radius:50%;width:300px;height:300px;position:absolute}.email-card .g1{background:#a8532f;top:-120px;right:-80px}.email-card .g2{background:#c9714a;bottom:-120px;left:-80px}.email-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--ink-3);font-size:11px}.email-value{font-family:var(--font-display);letter-spacing:-.025em;background:var(--grad-text);color:#0000;word-break:break-all;-webkit-background-clip:text;background-clip:text;font-size:clamp(24px,3.4vw,36px);font-weight:500;text-decoration:none}.email-actions{z-index:1;flex-wrap:wrap;gap:10px;display:flex;position:relative}.icon-btn{background:var(--glass);border:1px solid var(--stroke);color:var(--ink-2);font-size:13px;font-family:var(--font-mono);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;align-items:center;gap:8px;padding:10px 16px;text-decoration:none;transition:all .2s;display:inline-flex}.icon-btn:hover{color:var(--ink);background:var(--glass-strong)}.icon-btn.copied{color:#4ade80;border-color:#4ade804d}.icon-btn svg{width:14px;height:14px}.meta-stack{flex-direction:column;gap:16px;display:flex}.meta-card{align-items:center;gap:18px;padding:24px 26px;display:flex}.meta-card .ic{border:1px solid var(--stroke);color:#c4b5fd;background:linear-gradient(140deg,#a8532f40,#c9714a26);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.meta-card .ic svg{width:18px;height:18px}.meta-card .k{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-3);font-size:11px}.meta-card .v{font-family:var(--font-display);color:var(--ink);margin-top:4px;font-size:17px;font-weight:500}.socials{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}@media (width<=700px){.socials{grid-template-columns:repeat(2,1fr)}}.social-card{color:inherit;flex-direction:column;gap:12px;padding:22px;text-decoration:none;display:flex}.form-card{padding:36px}.form-row{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}@media (width<=600px){.form-row{grid-template-columns:1fr}}.field{flex-direction:column;gap:8px;display:flex}.field label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-3);font-size:11px}.field input,.field textarea,.field select{border:1px solid var(--stroke);color:var(--ink);font-family:var(--font-body);background:#f6f2ec08;border-radius:12px;padding:14px 16px;font-size:15px;transition:all .2s}.field input:focus,.field textarea:focus,.field select:focus{background:#a8532f0f;border-color:#a8532f80;outline:none;box-shadow:0 0 0 4px #a8532f1a}.field textarea{resize:vertical;min-height:120px}.success{color:#86efac;background:#4ade8014;border:1px solid #4ade8040;border-radius:12px;align-items:center;gap:12px;margin-top:20px;padding:16px 20px;font-size:14px;display:none}.success.show{display:flex}.faq{padding:22px 26px}.faq summary{cursor:pointer;font-family:var(--font-display);justify-content:space-between;align-items:center;gap:16px;font-size:17px;font-weight:500;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq .answer{border-top:1px solid var(--stroke);color:var(--ink-3);margin-top:14px;padding-top:14px;font-size:15px;line-height:1.6}.hscroll-pin{height:260vh;position:relative}.hscroll-sticky{flex-direction:column;justify-content:center;gap:28px;height:100vh;padding:60px 0 32px;display:flex;position:sticky;top:0;overflow:hidden}.hscroll-head{flex-shrink:0}.hscroll-head h2{max-width:22ch}.hscroll-track-wrap{width:100%;overflow:hidden}.page-curtain{z-index:80;pointer-events:none;will-change:transform;background:radial-gradient(800px 500px,#a8532f33,#0000 60%),linear-gradient(#0c0c18 0%,#04040a 100%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.page-curtain:before,.page-curtain:after{content:"";height:80px;position:absolute;left:0;right:0}.page-curtain:before{background:linear-gradient(#d8b98c66,#0000);top:-1px}.page-curtain:after{background:linear-gradient(#0000,#f0abfc4d);bottom:-1px}.page-curtain-inner{text-align:center;flex-direction:column;align-items:center;gap:18px;display:flex}.curtain-eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.3em;color:var(--ink-3);font-size:11px}.curtain-label{font-family:var(--font-display);letter-spacing:-.04em;background:var(--grad-text);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(40px,7vw,96px);font-weight:600}.curtain-bars{gap:8px;margin-top:12px;display:flex}.curtain-bars span{background:linear-gradient(90deg,#f0a13c,#ffc46b);border-radius:2px;width:28px;height:3px;animation:.9s ease-in-out infinite barPulse}.curtain-bars span:nth-child(2){animation-delay:.12s}.curtain-bars span:nth-child(3){animation-delay:.24s}.curtain-bars span:nth-child(4){animation-delay:.36s}@keyframes barPulse{0%,to{opacity:.4;transform:scaleX(.4)}50%{opacity:1;transform:scaleX(1)}}.cursor-trail{pointer-events:none;z-index:60;mix-blend-mode:screen;position:fixed;inset:0}.hover-preview{border:1px solid var(--stroke-strong);width:auto;max-width:60vw;height:auto;color:var(--ink);font-family:var(--font-mono);letter-spacing:.06em;pointer-events:none;z-index:70;opacity:0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);white-space:nowrap;background:#0c0c18d9;border-radius:999px;padding:8px 14px;font-size:12px;transition:opacity .18s,scale .18s;position:fixed;top:0;left:0;overflow:visible;transform:translate(-50%,calc(-100% - 18px))scale(.8);box-shadow:0 12px 30px #00000080,inset 0 0 0 1px #f6f2ec0a}.hover-preview.on{opacity:1;scale:1}.underline-draw{max-width:100%;height:auto;margin-top:12px;display:block}.proj-swap{perspective:1400px;grid-template-rows:1fr;align-items:stretch;height:100%;display:grid;position:relative}.proj-swap>*{grid-area:1/1}.proj-swap-pane{width:100%;height:100%;transform-style:preserve-3d;display:flex}.proj-swap-pane>*{flex:1}.proj-card-back{border-radius:var(--r-md);border:1px solid var(--stroke-strong);box-sizing:border-box;background:linear-gradient(140deg,#a8532f2e,#c9714a1a),#0c0c18e6;flex-direction:column;justify-content:space-between;gap:22px;height:100%;min-height:100%;padding:28px;display:flex;position:relative;overflow:hidden}.proj-back-glow{filter:blur(80px);opacity:.45;pointer-events:none;z-index:0;border-radius:50%;width:360px;height:360px;position:absolute;top:-120px;right:-120px}.proj-back-top{z-index:1;flex-direction:column;gap:14px;display:flex;position:relative}.proj-back-title{font-family:var(--font-display);letter-spacing:-.02em;background:var(--grad-text);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(26px,2.4vw,32px);font-weight:600;line-height:1.1}.proj-back-desc{color:var(--ink-3);max-width:38ch;margin:0;font-size:14px;line-height:1.55}.proj-back-stats{z-index:1;grid-template-columns:repeat(3,1fr);gap:18px;display:grid;position:relative}.proj-back-stat .v{font-family:var(--font-display);background:var(--grad-text);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:22px;font-weight:600}.proj-back-stat .k{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);margin-top:4px;font-size:11px}.proj-back-foot{border-top:1px solid var(--stroke);color:var(--ink-3);font-size:13px;font-family:var(--font-mono);z-index:1;justify-content:flex-end;align-items:center;margin-top:16px;padding-top:16px;display:flex;position:relative}.proj-back-arrow{background:var(--grad-text);color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:600}.hscroll-track{will-change:transform;gap:28px;padding:0 32px;display:flex}.hscroll-card{flex-direction:column;flex:0 0 min(420px,78vw);justify-content:space-between;min-height:380px;padding:32px;display:flex}.shader-bg{z-index:-3;pointer-events:none;opacity:.75;width:100%;height:100%;position:fixed;inset:0}.click-burst-canvas{z-index:65;pointer-events:none;mix-blend-mode:screen;position:fixed;inset:0}.orbit-stage{pointer-events:none;z-index:0;position:absolute;top:45%;left:35%;transform:translate(-50%,-50%)}.orbit-track{pointer-events:none;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.orbit-anchor{position:absolute;top:50%;transform:translateY(-50%)}@media (width<=980px){.orbit-stage{display:none}}.cursor-spotlight{pointer-events:none;z-index:0;mix-blend-mode:screen;background:radial-gradient(400px circle at var(--cx,50%) var(--cy,50%), #a8532f2e, #c9714a0f 30%, transparent 60%);transition:background 50ms linear;position:fixed;inset:0}@keyframes ideFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.ide-floater{will-change:transform;animation:7s ease-in-out infinite ideFloat}.grad-text{animation:8s ease-in-out infinite gradShift;background-size:200% 100%!important}@keyframes gradShift{0%,to{background-position:0%}50%{background-position:100%}}.eyebrow:before{transition:width .6s cubic-bezier(.22,1,.36,1)}.reveal-eyebrow .eyebrow:before{width:0;animation:.8s cubic-bezier(.22,1,.36,1) .2s forwards ebGrow}@keyframes ebGrow{to{width:24px}}.glass.lift{transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s cubic-bezier(.22,1,.36,1)}.glass.lift:hover{transform:translateY(-6px);box-shadow:0 24px 60px -20px #a8532f66,inset 0 1px #f6f2ec1a}.stat .num{position:relative}.stat .num:after{content:"";opacity:0;pointer-events:none;background:radial-gradient(circle,#a8532f4d,#0000 70%);border-radius:12px;animation:2.4s ease-out .6s forwards numPulse;position:absolute;inset:-8px}@keyframes numPulse{0%{opacity:0;transform:scale(.7)}35%{opacity:.8}to{opacity:0;transform:scale(1.4)}}.section{padding:80px 0!important}.section.hero,.section.about-hero,.section.projects-hero,.section.contact-hero{padding-top:140px!important}.cta-panel{text-align:center;flex-direction:column;align-items:center;gap:24px;padding:64px;display:flex}.cta-panel-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px;padding:48px 64px;display:flex}@media (prefers-reduced-motion:reduce){.page-enter,.caret,.blob{animation:none!important}}.container{max-width:1280px;padding:0 40px}.section{padding:clamp(88px,12vh,148px) 0;position:relative}@media (width<=720px){.container{padding:0 22px}.section{padding:72px 0}}.eyebrow{letter-spacing:.2em;color:var(--ink-3);font-size:11.5px}.eyebrow:before{background:linear-gradient(90deg, transparent, var(--c-amber));width:28px}.tag{border-radius:var(--r-full);border:1px solid var(--stroke);font-family:var(--font-mono);letter-spacing:.02em;color:var(--ink-3);transition:color .3s var(--ease-out), border-color .3s var(--ease-out), background .3s var(--ease-out);background:#f6f2ec08;align-items:center;padding:5px 11px;font-size:11.5px;display:inline-flex}.tag:hover{color:var(--ink);border-color:var(--stroke-strong);background:#f6f2ec0f}.lead{color:var(--ink-3);max-width:46ch;font-size:16px;line-height:1.65}.btn{isolation:isolate;border-radius:var(--r-full);font-family:var(--font-display);letter-spacing:-.01em;transition:transform .4s var(--ease-out), box-shadow .4s var(--ease-out), border-color .3s var(--ease-out), color .3s var(--ease-out);padding:14px 26px;font-size:15px;font-weight:500;position:relative;overflow:hidden}.btn-primary{background:var(--grad-accent);color:#1a1005;font-weight:600;box-shadow:0 12px 34px -14px #f0a13ce6}.btn-primary:after{content:"";z-index:-1;transition:transform .9s var(--ease-out);background:linear-gradient(120deg,#0000 20%,#f6f2ec8c,#0000 80%);position:absolute;inset:0;transform:translate(-120%)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 22px 50px -16px #f0a13cf2}.btn-primary:hover:after{transform:translate(120%)}.btn-ghost{border:1px solid var(--stroke);color:var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f6f2ec09}.btn-ghost:hover{background:#f6f2ec13;border-color:#f6f2ec42;transform:translateY(-2px)}.btn-quiet{border-radius:var(--r-full);color:var(--ink-3);font-family:var(--font-display);transition:color .3s var(--ease-out), border-color .3s var(--ease-out), transform .4s var(--ease-out);border:1px solid #0000;align-items:center;gap:8px;padding:14px 22px;font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}.btn-quiet:hover{color:var(--ink);border-color:var(--stroke);transform:translateY(-2px)}.live-dot{background:#4ade80;border-radius:50%;width:7px;height:7px;animation:2.4s ease-out infinite live-pulse;box-shadow:0 0 #4ade8099}@keyframes live-pulse{0%{box-shadow:0 0 #4ade808c}70%{box-shadow:0 0 0 9px #4ade8000}to{box-shadow:0 0 #4ade8000}}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:48px;margin-bottom:clamp(44px,6vw,72px);display:flex}.section-head.is-center{text-align:center;flex-direction:column;align-items:center}.section-head.is-left{flex-direction:column;align-items:flex-start}.section-head-main{flex:460px;min-width:0}.section-head-aside{flex:0 400px;padding-bottom:6px}.section-title{max-width:17ch;margin-top:18px}.word-reveal{display:block}.wr{vertical-align:bottom;margin-right:.24em;padding-bottom:.06em;display:inline-block;overflow:hidden}.wr-in{will-change:transform;display:inline-block}.hairline{background:#f6f2ec14;width:100%;height:1px;margin-top:26px;display:block;overflow:hidden}.hairline-fill{transform-origin:0;background:var(--grad-line);width:100%;height:100%;display:block}.seam{max-width:1280px;height:1px;margin:0 auto;padding:0 40px;position:relative}.seam-line{transform-origin:50%;background:linear-gradient(90deg, transparent, rgba(var(--amb-a,240, 161, 60), .32) 35%, rgba(var(--amb-b,201, 113, 74), .4) 50%, rgba(var(--amb-a,240, 161, 60), .32) 65%, transparent);height:1px;position:absolute;top:0;left:40px;right:40px}.seam-bloom{pointer-events:none;background:radial-gradient(ellipse at center, rgba(var(--amb-a,240, 161, 60), .14), transparent 70%);filter:blur(14px);width:min(620px,70vw);height:140px;position:absolute;top:-70px;left:50%;transform:translate(-50%)}.hero{min-height:100svh;padding:calc(var(--nav-h) + 56px) 0 96px;align-items:center;display:flex;position:relative;overflow:hidden}.hero-inner{z-index:2;width:100%;position:relative}.hero-orb{pointer-events:none;filter:blur(70px);will-change:transform;z-index:1;border-radius:50%;position:absolute}.hero-orb.o1{background:radial-gradient(circle at 35% 35%,#f0a13c80,#0000 66%);width:460px;height:460px;top:-8%;right:4%}.hero-orb.o2{background:radial-gradient(circle at 60% 40%,#c9714a57,#0000 66%);width:380px;height:380px;bottom:2%;left:-6%}.hero-orb.o3{background:radial-gradient(circle,#a8532f4d,#0000 66%);width:260px;height:260px;top:42%;right:28%}.hero-beam{pointer-events:none;filter:blur(28px);width:42vw;height:190%;animation:beam-sweep 16s var(--ease-io) infinite;background:linear-gradient(90deg,#0000,#ffd6a00e,#0000);position:absolute;top:-40%;left:30%;transform:rotate(18deg)}@keyframes beam-sweep{0%,to{opacity:.5;transform:rotate(18deg)translate(-12%)}50%{opacity:1;transform:rotate(14deg)translate(14%)}}.hero-badge{border-radius:var(--r-full);border:1px solid var(--stroke);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-2);background:#f6f2ec09;align-items:center;gap:10px;padding:8px 16px 8px 12px;font-size:12px;display:inline-flex}.hero-type{margin:30px 0 0}.hero-headline{letter-spacing:-.05em;font-size:clamp(44px,7.4vw,112px);font-weight:600;line-height:.94}.hero-line{white-space:nowrap;display:block}.hw-in{background-image:radial-gradient(58vw 58vw at var(--mx,42vw) var(--my,40vh), #fff 0%, #f7efe1 26%, #cdbfa8 58%, #a2968a 100%);color:#0000;background-attachment:fixed;-webkit-background-clip:text;background-clip:text}.hero-headline .serif{letter-spacing:-.02em;background-image:linear-gradient(100deg,#ffc46b,#f0a13c 52%,#c9714a);background-attachment:scroll;font-size:1.12em}.hw{vertical-align:baseline;margin:-.16em .1em -.22em -.05em;padding:.16em .05em .22em;display:inline-block;overflow:hidden}.hw-in{will-change:transform;display:inline-block}.hero-lede{flex-wrap:wrap;align-items:flex-end;gap:34px 56px;margin-top:38px;display:flex}.hero-sub{max-width:52ch;color:var(--ink-2);font-size:clamp(15.5px,1.25vw,17.5px);line-height:1.62}.hero-roll{flex-direction:column;gap:8px;min-width:250px;display:flex}.roll-label{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-4);font-size:11px}.roll{height:30px;font-family:var(--font-display);letter-spacing:-.02em;font-size:20px;font-weight:600;display:block;position:relative;overflow:hidden}.roll-item{background:var(--grad-text);color:#0000;white-space:nowrap;-webkit-background-clip:text;background-clip:text;align-items:center;display:flex;position:absolute;inset:0}.roll-static{font-family:var(--font-display);color:var(--ink);font-size:20px;font-weight:600}.hero-cta{flex-wrap:wrap;align-items:center;gap:12px;margin-top:44px;display:flex}.hero-cta .btn .arr{width:16px;height:16px;transition:transform .35s var(--ease-out);margin-left:2px}.hero-cta .btn:hover .arr{transform:translateY(3px)}.stats-band{padding:0 0 clamp(24px,4vw,48px);position:relative}.hero-stats{background:var(--stroke);border-top:1px solid var(--stroke);border-bottom:1px solid var(--stroke);grid-template-columns:repeat(4,1fr);gap:1px;margin:0;display:grid}.hstat{transition:background .4s var(--ease-out);background:#05050580;flex-direction:column;gap:6px;padding:26px 24px 24px;display:flex}.hstat-v{font-family:var(--font-display);letter-spacing:-.045em;background:var(--grad-text);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(30px,3.4vw,46px);font-weight:600;line-height:1}.hstat-k{color:var(--ink-2);flex-direction:column;gap:3px;margin:0;font-size:13.5px;display:flex}.hstat-sub{font-family:var(--font-mono);color:var(--ink-4);letter-spacing:.03em;font-size:11px}.scroll-cue{z-index:3;color:var(--ink-4);letter-spacing:.22em;text-transform:uppercase;transition:color .3s var(--ease-out);flex-direction:column;align-items:center;gap:10px;font-size:10.5px;text-decoration:none;display:flex;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.scroll-cue:hover{color:var(--ink-2)}.cue-track{border:1px solid var(--stroke-strong);border-radius:var(--r-full);justify-content:center;width:22px;height:36px;padding-top:6px;display:flex}.cue-dot{background:var(--c-copper);width:3px;height:7px;animation:cue-fall 1.9s var(--ease-io) infinite;border-radius:2px}@keyframes cue-fall{0%{opacity:0;transform:translateY(0)}30%{opacity:1}70%{opacity:1;transform:translateY(14px)}to{opacity:0;transform:translateY(16px)}}@media (width<=980px){.hero-headline{max-width:100%}.hero-stats{grid-template-columns:repeat(2,1fr)}.hero-lede{gap:26px}}@media (width<=560px){.hero-cta .btn,.hero-cta .btn-quiet{flex:auto;justify-content:center}.scroll-cue{display:none}}.showcase{position:relative}.showcase-stage{align-items:center;height:100svh;display:flex;position:sticky;top:0;overflow:hidden}.showcase-wash{pointer-events:none;transition:background .9s var(--ease-out);position:absolute;inset:0}.showcase-inner{z-index:2;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:center;gap:56px;width:100%;display:grid;position:relative}.showcase-copy{max-width:34rem}.showcase-counter{letter-spacing:.16em;color:var(--ink-4);align-items:baseline;gap:6px;margin-bottom:22px;font-size:12px;display:flex}.showcase-counter .cur{color:var(--ink);font-size:15px}.showcase-counter .sep{opacity:.5}.showcase-domain{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;margin-bottom:14px;font-size:12px;display:block}.showcase-title{letter-spacing:-.045em;font-size:clamp(40px,5.4vw,76px);line-height:.98}.showcase-sub{color:var(--ink);font-size:clamp(17px,1.6vw,21px);font-family:var(--font-display);letter-spacing:-.02em;margin-top:12px;font-weight:400}.showcase-desc{color:var(--ink-3);max-width:46ch;margin-top:16px;font-size:15.5px;line-height:1.65}.showcase-stats{flex-wrap:wrap;gap:34px;margin:30px 0 0;padding:0;list-style:none;display:flex}.showcase-stats li{flex-direction:column;gap:4px;display:flex}.showcase-stats .v{font-family:var(--font-display);letter-spacing:-.04em;transition:color .6s var(--ease-out);font-size:clamp(22px,2.2vw,30px);font-weight:600}.showcase-stats .k{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);font-size:10.5px}.showcase-tech{flex-wrap:wrap;gap:7px;margin-top:26px;display:flex}.showcase-rail{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:42px;display:grid}.rail-dot{appearance:none;cursor:pointer;text-align:left;background:0 0;border:0;flex-direction:column;gap:9px;padding:0;display:flex}.rail-line{background:#f6f2ec1c;border-radius:2px;height:2px;display:block;overflow:hidden}.rail-fill{transform-origin:0;width:100%;height:100%;transition:transform .15s linear;display:block}.rail-label{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-4);transition:color .35s var(--ease-out);font-size:11px}.rail-dot.on .rail-label,.rail-dot:hover .rail-label{color:var(--ink)}.showcase-device{justify-content:center;align-items:center;height:82svh;display:flex;position:relative}.showcase-device canvas{display:block}.device-halo{aspect-ratio:1;filter:blur(72px);opacity:.5;pointer-events:none;width:120%;transition:background .9s var(--ease-out);border-radius:50%;position:absolute}@media (width<=900px){.showcase-stage{height:auto;min-height:100svh;padding:96px 0 64px}.showcase-inner{grid-template-columns:1fr;gap:40px}.showcase-device{order:-1;height:auto}.showcase-rail{grid-template-columns:repeat(2,1fr)}}.phone-frame{perspective:1200px;justify-content:center;display:flex;position:relative}.phone-frame.floating .phone-body{animation:phone-float 7s var(--ease-io) infinite}@keyframes phone-float{0%,to{transform:translateY(0)rotate(-.6deg)}50%{transform:translateY(-16px)rotate(.6deg)}}.phone-body{aspect-ratio:540/1170;width:clamp(216px,25vw,290px);box-shadow:0 50px 90px -30px #000000e6, 0 0 0 1px #f6f2ec14, 0 0 90px -24px rgba(var(--amb-a,240, 161, 60), .5);will-change:transform;background:linear-gradient(150deg,#6a707c 0%,#2c2f36 22%,#4a4e58 52%,#23262c 78%,#5c616c 100%);border-radius:14.5%/7.1%;padding:2.8%;position:relative}.phone-screen{background:#0a0809;border-radius:12%/5.9%;width:100%;height:100%;display:block}.phone-island{border-radius:var(--r-full);background:#000;width:27%;height:2.6%;position:absolute;top:4.2%;left:50%;transform:translate(-50%)}.phone-gloss{pointer-events:none;background:linear-gradient(128deg,#f6f2ec24 0%,#0000 34% 66%,#f6f2ec0f 100%);border-radius:12%/5.9%;position:absolute;inset:2.8%}.manifesto{padding:clamp(96px,16vh,180px) 0 clamp(72px,10vh,120px);position:relative;overflow:hidden}.manifesto-lines{text-align:center;flex-direction:column;align-items:center;gap:.02em;display:flex}.mf-line{font-family:var(--font-display);letter-spacing:-.05em;will-change:transform;font-size:clamp(38px,8.4vw,122px);font-weight:600;line-height:.94}.mf-mask{padding-bottom:.06em;display:block;overflow:hidden}.mf-word{will-change:transform;display:block}.tone-dim .mf-word{color:var(--ink-4)}.tone-normal .mf-word{color:var(--ink)}.tone-accent .mf-word{font-family:var(--font-serif);background:linear-gradient(100deg,#ffc46b,#f0a13c 55%,#c9714a);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:italic;font-weight:400}.manifesto-marquee{margin-top:clamp(52px,8vh,88px)}.about-lede{margin-bottom:clamp(56px,8vw,92px)}.shl{font-family:var(--font-display);letter-spacing:-.028em;max-width:30ch;color:var(--ink);font-size:clamp(21px,2.5vw,33px);font-weight:400;line-height:1.42}.shl-word{white-space:pre;display:inline-block}.about-split{grid-template-columns:minmax(0,1fr) minmax(0,.82fr);align-items:start;gap:clamp(36px,5vw,72px);display:grid}.about-prose{flex-direction:column;gap:20px;display:flex}.about-prose p{color:var(--ink-2);max-width:54ch;font-size:16px;line-height:1.72}.about-actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.craft-panel{top:calc(var(--nav-h) + 24px);min-width:0;position:sticky}.craft-panel .ide{border-radius:var(--r-lg);min-width:0;overflow:hidden}.craft-panel .ide-header{min-width:0}.craft-panel .ide-tabs{scrollbar-width:none;flex-wrap:nowrap;min-width:0;overflow-x:auto}.craft-panel .ide-tabs::-webkit-scrollbar{display:none}.craft-panel .ide-tab{flex:none}.philosophy{margin-top:clamp(72px,10vw,120px)}.philosophy-title{color:var(--ink-2);margin-bottom:30px;font-size:clamp(22px,2.4vw,30px)}.philosophy-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.phil-card{isolation:isolate;border-radius:var(--r-lg);border:1px solid var(--stroke);transition:transform .5s var(--ease-out), border-color .4s var(--ease-out);background:linear-gradient(#f6f2ec0b,#f6f2ec03);padding:26px 24px 28px;position:relative;overflow:hidden}.phil-card:hover{border-color:#f6f2ec2e;transform:translateY(-6px)}.phil-k{letter-spacing:.16em;color:var(--c-amber);font-size:11px}.phil-card h4{font-family:var(--font-display);letter-spacing:-.022em;color:var(--ink);margin:14px 0 10px;font-size:17.5px;font-weight:600}.phil-card p{color:var(--ink-3);font-size:14px;line-height:1.62}.phil-glow{z-index:-1;opacity:0;height:150px;transition:opacity .5s var(--ease-out);background:radial-gradient(#f0a13c47,#0000 70%);position:absolute;inset:auto -30% -60%}.phil-card:hover .phil-glow{opacity:1}@media (width<=1080px){.philosophy-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.about-split{grid-template-columns:1fr}.craft-panel{position:static}}@media (width<=560px){.philosophy-grid{grid-template-columns:1fr}}.filters{flex-wrap:wrap;gap:8px;margin-bottom:32px;display:flex}.chip{isolation:isolate;appearance:none;cursor:pointer;border-radius:var(--r-full);border:1px solid var(--stroke);color:var(--ink-3);font-family:var(--font-mono);letter-spacing:.04em;transition:color .3s var(--ease-out), border-color .3s var(--ease-out);background:#f6f2ec05;padding:9px 17px;font-size:12px;position:relative}.chip:hover{color:var(--ink);border-color:var(--stroke-strong)}.chip.active{color:#1a1005;border-color:#0000}.chip-bg{z-index:-1;border-radius:var(--r-full);background:var(--grad-accent);position:absolute;inset:0}.chip-label{position:relative}.tech-grid{grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:14px;display:grid}.tech-card{--accent:var(--c-amber);isolation:isolate;border-radius:var(--r-md);transform-style:preserve-3d;transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .45s var(--ease-out);animation:tech-float 8s var(--ease-io) infinite;animation-delay:var(--float-delay,0s);will-change:transform;padding:1px;position:relative}@keyframes tech-float{0%,to{translate:0}50%{translate:0 -7px}}.tech-edge{z-index:-2;border-radius:inherit;background:radial-gradient(220px circle at var(--gx,50%) var(--gy,0%), var(--accent), transparent 62%), linear-gradient(180deg, #f6f2ec1c, #f6f2ec08);opacity:.5;transition:opacity .4s var(--ease-out);position:absolute;inset:0}.tech-card:hover .tech-edge{opacity:1}.tech-glow{z-index:-1;background:radial-gradient(circle at var(--gx,50%) var(--gy,50%), color-mix(in srgb, var(--accent) 40%, transparent), transparent 62%);filter:blur(30px);opacity:0;transition:opacity .5s var(--ease-out);pointer-events:none;border-radius:50%;position:absolute;inset:-20%}.tech-card:hover .tech-glow{opacity:.75}.tech-body{border-radius:calc(var(--r-md) - 1px);height:100%;transition:transform .45s var(--ease-out);background:linear-gradient(#0b0b12 0%,#08080e 100%);flex-direction:column;gap:10px;padding:20px 20px 22px;display:flex;position:relative}.tech-card:hover .tech-body{transform:translateZ(28px)}.tech-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.tech-name{font-family:var(--font-display);letter-spacing:-.024em;color:var(--ink);font-size:17px;font-weight:600}.tech-cat{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);opacity:.85;font-size:10px}.tech-note{color:var(--ink-3);flex:1;font-size:13px;line-height:1.5}.tech-meter{background:#f6f2ec14;border-radius:2px;height:3px;overflow:hidden}.tech-meter-fill{transform-origin:0;background:linear-gradient(90deg, var(--accent), color-mix(in srgb, var(--accent) 45%, #fff));border-radius:2px;width:100%;height:100%;display:block}.timeline{margin:0;padding:0 0 0 clamp(28px,4vw,52px);list-style:none;position:relative}.timeline:before{content:none}.timeline-spine{background:#f6f2ec12;border-radius:2px;width:2px;position:absolute;top:8px;bottom:8px;left:5px;overflow:hidden}.timeline-spine-fill{transform-origin:top;background:linear-gradient(180deg, var(--c-amber), var(--c-copper) 55%, var(--c-clay));width:100%;height:100%;display:block;box-shadow:0 0 18px #f0a13c8c}.role{padding-bottom:clamp(48px,6vw,76px);position:relative}.role:last-child{padding-bottom:0}.role-node{background:var(--bg);border:2px solid var(--c-amber);border-radius:50%;width:12px;height:12px;position:absolute;top:6px;left:calc(-1*clamp(28px,4vw,52px));box-shadow:0 0 0 5px #f0a13c1f,0 0 20px #f0a13c99}.role-study .role-node{border-color:var(--ink-4);box-shadow:0 0 0 5px #f6f2ec0d}.role-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.role-when{letter-spacing:.12em;color:var(--c-copper);text-transform:uppercase;font-size:11.5px}.role-span{letter-spacing:.1em;color:var(--ink-4);border:1px solid var(--stroke);border-radius:var(--r-full);padding:3px 9px;font-size:10.5px}.role-title{letter-spacing:-.032em;color:var(--ink);max-width:22ch;margin-top:12px;font-size:clamp(21px,2.3vw,30px)}.role-where{color:var(--ink-2);margin-top:7px;font-size:14.5px}.role-where strong{color:var(--ink);font-weight:600}.dot-sep{color:var(--ink-4);margin:0 8px}.role-summary{color:var(--ink-3);max-width:62ch;margin-top:14px;font-size:15.5px;line-height:1.65}.role-wins{flex-direction:column;gap:2px;margin:26px 0 0;padding:0;list-style:none;display:flex}.role-wins li{border-top:1px solid var(--stroke);transition:background .4s var(--ease-out);grid-template-columns:86px 1fr;align-items:start;gap:20px;padding:15px 16px 15px 0;display:grid}.role-wins li:last-child{border-bottom:1px solid var(--stroke)}.role-wins li:hover{background:#f6f2ec06}.win-metric{font-family:var(--font-display);letter-spacing:-.04em;background:var(--grad-text);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:20px;font-weight:600;line-height:1.3}.win-text{color:var(--ink-2);max-width:68ch;font-size:14.5px;line-height:1.6}.role-tech{flex-wrap:wrap;gap:7px;margin-top:22px;display:flex}@media (width<=640px){.role-wins li{grid-template-columns:1fr;gap:6px}.win-metric{font-size:17px}}.case-grid{grid-template-columns:repeat(2,1fr);align-items:start;gap:16px;display:grid}@media (width<=900px){.case-grid{grid-template-columns:1fr}}.case-card{--accent:var(--c-amber);--accent-2:var(--c-copper);isolation:isolate;border-radius:var(--r-lg);border:1px solid var(--stroke);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:transform .55s var(--ease-out), border-color .4s var(--ease-out), box-shadow .55s var(--ease-out);background:linear-gradient(#f6f2ec0d,#f6f2ec04);flex-direction:column;padding:30px 30px 26px;display:flex;position:relative;overflow:hidden}.case-card:hover{border-color:color-mix(in srgb, var(--accent) 42%, transparent);box-shadow:0 44px 90px -40px #000000f2, 0 0 70px -30px var(--accent);transform:translateY(-7px)}.case-card.open{transform:none}.case-wash{z-index:-1;background:radial-gradient(ellipse at 50% 100%, color-mix(in srgb, var(--accent) 34%, transparent), transparent 68%);opacity:.55;height:320px;transition:opacity .5s var(--ease-out);position:absolute;inset:-40% -20% auto}.case-card:hover .case-wash{opacity:1}.case-sheen{z-index:-1;transition:transform 1s var(--ease-out);background:linear-gradient(115deg,#0000 30%,#f6f2ec12,#0000 70%);position:absolute;inset:0;transform:translate(-110%)}.case-card:hover .case-sheen{transform:translate(110%)}.case-top{justify-content:space-between;align-items:center;gap:14px;display:flex}.case-index{letter-spacing:.14em;color:var(--accent);font-size:12px}.case-domain{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-4);font-size:10.5px}.case-title{font-family:var(--font-display);letter-spacing:-.042em;color:var(--ink);margin-top:20px;font-size:clamp(28px,3.2vw,40px);font-weight:600;line-height:1}.case-subtitle{color:var(--ink-2);letter-spacing:-.012em;margin-top:10px;font-size:15.5px}.case-desc{color:var(--ink-3);margin-top:14px;font-size:14.5px;line-height:1.62}.case-stats{grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0 0;display:grid}.case-stats .v{font-family:var(--font-display);letter-spacing:-.035em;color:var(--ink);font-size:19px;font-weight:600}.case-stats .k{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4);margin:4px 0 0;font-size:10px}.case-detail{overflow:hidden}.case-detail-inner{border-top:1px solid var(--stroke);flex-direction:column;gap:22px;margin-top:26px;padding-top:26px;display:flex}.case-block h4{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:10px;font-size:10.5px;font-weight:500}.case-block p{color:var(--ink-2);font-size:14.5px;line-height:1.68}.case-block ul{flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;display:flex}.case-block li{color:var(--ink-2);padding-left:20px;font-size:14.5px;line-height:1.55;position:relative}.case-block li:before{content:"";background:var(--accent);opacity:.8;border-radius:50%;width:6px;height:6px;position:absolute;top:9px;left:2px}.case-result{font-weight:500;color:var(--ink)!important}.case-foot{border-top:1px solid var(--stroke);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:26px;padding-top:20px;display:flex}.case-tech{flex-wrap:wrap;gap:6px;display:flex}.case-toggle{appearance:none;cursor:pointer;border-radius:var(--r-full);border:1px solid var(--stroke);color:var(--ink);font-family:var(--font-display);white-space:nowrap;transition:border-color .3s var(--ease-out), background .3s var(--ease-out);background:#f6f2ec08;align-items:center;gap:7px;padding:9px 15px;font-size:13.5px;font-weight:500;display:inline-flex}.case-toggle:hover{border-color:color-mix(in srgb, var(--accent) 55%, transparent);background:#f6f2ec0f}.case-chev{transition:transform .4s var(--ease-out);display:inline-flex}.case-chev svg{width:15px;height:15px}.case-chev.up{transform:rotate(180deg)}.case-role{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);opacity:.85;margin-top:10px;font-size:10.5px}.projects-more{justify-content:center;margin-top:40px;display:flex}.projects-more .arr{width:15px;height:15px;transition:transform .35s var(--ease-out);margin-left:6px}.projects-more .btn:hover .arr{transform:translate(3px,-3px)}.contact-section{position:relative;overflow:hidden}.contact-aurora{pointer-events:none;filter:blur(30px);background:radial-gradient(60% 50% at 30% 80%,#f0a13c38,#0000 70%),radial-gradient(50% 40% at 74% 60%,#c9714a29,#0000 70%);height:90%;position:absolute;inset:-40% -10% auto}.contact-open{max-width:46rem;position:relative}.contact-title{letter-spacing:-.045em;margin-top:20px;font-size:clamp(34px,5.2vw,74px);line-height:.98}.contact-lede{color:var(--ink-3);max-width:54ch;margin-top:24px;font-size:16.5px;line-height:1.68}.contact-email{flex-direction:column;align-items:flex-start;gap:18px;margin:clamp(48px,7vw,86px) 0 clamp(40px,6vw,64px);display:flex;position:relative}.email-mega{font-family:var(--font-display);letter-spacing:-.05em;word-break:break-word;font-size:clamp(26px,6.2vw,88px);font-weight:600;line-height:1;text-decoration:none;display:inline-block}.email-mega-text{background:linear-gradient(100deg,#fff,#f4e3c9 40%,#ffc46b 78%,#f0a13c) 0 0/220% 100%;color:#0000;transition:background-position .9s var(--ease-out);-webkit-background-clip:text;background-clip:text}.email-mega:hover .email-mega-text{background-position:100% 0}.copy-btn{appearance:none;cursor:pointer;border-radius:var(--r-full);border:1px solid var(--stroke);color:var(--ink-3);font-family:var(--font-mono);letter-spacing:.04em;transition:color .3s var(--ease-out), border-color .3s var(--ease-out);background:#f6f2ec08;padding:10px 18px;font-size:12px}.copy-btn:hover{color:var(--ink);border-color:var(--stroke-strong)}.copy-btn.copied{color:#4ade80;border-color:#4ade8059}.social-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}@media (width<=860px){.social-grid{grid-template-columns:repeat(2,1fr)}}.social-card{isolation:isolate;border-radius:var(--r-lg);border:1px solid var(--stroke);transition:transform .5s var(--ease-out), border-color .4s var(--ease-out), background .4s var(--ease-out);background:#f6f2ec07;flex-direction:column;gap:8px;padding:24px 22px 22px;text-decoration:none;display:flex;position:relative;overflow:hidden}.social-card:hover{background:#f6f2ec0e;border-color:#f6f2ec38;transform:translateY(-6px)}.social-sheen{z-index:-1;transition:transform .95s var(--ease-out);background:linear-gradient(120deg,#0000 35%,#f6f2ec17,#0000 65%);position:absolute;inset:0;transform:translate(-110%)}.social-card:hover .social-sheen{transform:translate(110%)}.social-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.social-platform{font-family:var(--font-display);letter-spacing:-.024em;color:var(--ink);font-size:17px;font-weight:600}.social-card .ext{width:15px;height:15px;color:var(--ink-4);transition:transform .4s var(--ease-out), color .3s}.social-card:hover .ext{color:var(--c-copper);transform:translate(3px,-3px)}.social-handle{color:var(--ink-2);word-break:break-word;font-size:14px}.social-note{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4);font-size:10.5px}.contact-meta{border-top:1px solid var(--stroke);margin-top:44px}.meta-row{border-bottom:1px solid var(--stroke);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:20px;padding:17px 0;display:flex}.meta-row .k{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);font-size:11px}.meta-row .v{color:var(--ink);font-size:15px}.skip-link{z-index:200;border-radius:var(--r-full);background:var(--c-amber);color:#1a1005;font-family:var(--font-display);transition:transform .3s var(--ease-out);padding:12px 20px;font-size:14px;font-weight:600;text-decoration:none;position:fixed;top:10px;left:50%;transform:translate(-50%,-220%)}.skip-link:focus-visible{transform:translate(-50%)}.nav{z-index:90;height:var(--nav-h);width:auto;max-width:none;transition:height .45s var(--ease-out), background .45s var(--ease-out), border-color .45s var(--ease-out), backdrop-filter .45s var(--ease-out);background:0 0;border-bottom:1px solid #0000;border-radius:0;justify-content:space-between;align-items:center;gap:24px;padding:0 40px;animation:none;display:flex;position:fixed;top:0;left:0;right:0;transform:none}.nav.condensed{border-bottom-color:var(--stroke);-webkit-backdrop-filter:blur(18px)saturate(140%);backdrop-filter:blur(18px)saturate(140%);background:#050507b3;height:62px}.nav-brand{color:var(--ink);flex-shrink:0;align-items:center;gap:12px;text-decoration:none;display:flex}.brand-mark{background:var(--grad-accent);color:#1a1005;width:34px;height:34px;font-family:var(--font-display);letter-spacing:-.03em;border-radius:11px;place-items:center;font-size:13px;font-weight:700;display:grid;box-shadow:0 8px 22px -10px #f0a13ce6}.brand-text{flex-direction:column;line-height:1.15;display:flex}.brand-name{font-family:var(--font-display);letter-spacing:-.02em;font-size:14.5px;font-weight:600}.brand-role{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4);font-size:10px}.nav-links{border-radius:var(--r-full);border:1px solid var(--stroke);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f6f2ec06;align-items:center;gap:2px;padding:4px;display:flex}.nav-link{isolation:isolate;appearance:none;cursor:pointer;border-radius:var(--r-full);color:var(--ink-3);font-family:var(--font-display);letter-spacing:-.01em;transition:color .3s var(--ease-out);background:0 0;border:0;padding:8px 15px;font-size:13.5px;font-weight:500;text-decoration:none;position:relative}.nav-link:hover,.nav-link.active{color:var(--ink)}.nav-indicator{z-index:-1;border-radius:var(--r-full);border:1px solid var(--stroke);background:#f6f2ec17;position:absolute;inset:0}.nav-link-label{position:relative}.nav-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.nav-resume{letter-spacing:.06em;color:var(--ink-3);transition:color .3s var(--ease-out);padding:8px 4px;font-size:12px;text-decoration:none}.nav-resume:hover{color:var(--ink)}.nav-cta{border-radius:var(--r-full);background:var(--grad-accent);color:#1a1005;font-family:var(--font-display);transition:transform .35s var(--ease-out), box-shadow .35s var(--ease-out);padding:10px 18px;font-size:13.5px;font-weight:600;text-decoration:none;box-shadow:0 10px 26px -12px #f0a13ce6}.nav-cta:hover{transform:translateY(-1px);box-shadow:0 16px 34px -12px #f0a13c}.nav-burger{appearance:none;cursor:pointer;border:1px solid var(--stroke);background:#f6f2ec08;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;display:none}.nav-burger span{background:var(--ink);width:17px;height:1.5px;transition:transform .35s var(--ease-out), opacity .25s;border-radius:1px;display:block}.nav-burger.open span:first-child{transform:translateY(3.25px)rotate(45deg)}.nav-burger.open span:last-child{transform:translateY(-3.25px)rotate(-45deg)}.nav-sheet{z-index:89;border-radius:var(--r-lg);border:1px solid var(--stroke);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);box-shadow:var(--shadow-lift);background:#08080cf0;flex-direction:column;padding:12px;display:none;position:fixed;top:62px;left:14px;right:14px}.nav-sheet a,.nav-sheet button{appearance:none;cursor:pointer;text-align:left;border-radius:var(--r-sm);color:var(--ink-2);font-family:var(--font-display);background:0 0;border:0;padding:14px 12px;font-size:16px;font-weight:500;text-decoration:none;transition:background .25s,color .25s}.nav-sheet a:hover,.nav-sheet button:hover{color:var(--ink);background:#f6f2ec0d}@media (width<=1080px){.nav-links{display:none}.nav-burger,.nav-sheet{display:flex}}@media (width<=720px){.nav{padding:0 18px}.nav-resume,.nav-cta,.brand-role{display:none}}.page-hero{padding-top:calc(var(--nav-h) + 74px);padding-bottom:40px}.page-hero-title{max-width:19ch;margin-top:20px;font-size:clamp(34px,5vw,68px);line-height:1}.page-enter>.contact-section:first-child{padding-top:calc(var(--nav-h) + 62px)}.page-hero-lede{max-width:58ch;color:var(--ink-2);margin-top:26px;font-size:17px;line-height:1.66}.page-hero-facts{background:var(--stroke);border-top:1px solid var(--stroke);border-bottom:1px solid var(--stroke);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;max-width:800px;margin-top:42px;display:grid}.page-hero-facts>div{background:#05050580;flex-direction:column;gap:7px;padding:20px 22px;display:flex}.page-hero-facts .k{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);font-size:10.5px}.page-hero-facts .v{color:var(--ink);font-size:14.5px}@media (width<=700px){.page-hero-facts{grid-template-columns:1fr}}.about-prose-wide{max-width:68ch}.about-prose-wide p{max-width:none}.device-wall{grid-template-columns:repeat(4,1fr);align-items:start;gap:26px;display:grid}.device-wall-item{flex-direction:column;align-items:center;gap:20px;margin:0;display:flex}.device-wall-item .phone-body{width:100%;max-width:236px}.device-wall figcaption{text-align:center;flex-direction:column;align-items:center;gap:5px;display:flex}.dw-title{font-family:var(--font-display);letter-spacing:-.024em;color:var(--ink);font-size:16px;font-weight:600}.dw-sub{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);font-size:10.5px}@media (width<=980px){.device-wall{grid-template-columns:repeat(2,1fr);gap:34px}}@media (width<=520px){.device-wall{grid-template-columns:1fr}}.footer{border-top:1px solid var(--stroke);margin-top:0;padding:52px 0 44px}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:28px;display:flex}.footer-brand{flex-direction:column;gap:5px;display:flex}.footer-name{font-family:var(--font-display);letter-spacing:-.024em;color:var(--ink);font-size:16px;font-weight:600}.footer-role{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-4);font-size:10.5px}.footer-links{flex-wrap:wrap;gap:20px;display:flex}.footer-links a{color:var(--ink-3);transition:color .3s var(--ease-out);font-size:13.5px;text-decoration:none}.footer-links a:hover{color:var(--ink)}.footer-meta{font-family:var(--font-mono);color:var(--ink-4);font-size:11.5px}.footer-meta a{color:inherit;text-decoration:none}.footer-meta a:hover{color:var(--ink-2)}.route-loading{min-height:70svh}.skills-section,.projects-section,.device-wall-section{content-visibility:auto;contain-intrinsic-size:auto 900px}.hero-sub{margin-top:0}.tl-item:before{content:none}.skill-card .icn{font-family:var(--font-display);font-size:20px;font-weight:600}.quote{font-family:var(--font-display);letter-spacing:-.028em;font-size:clamp(20px,2.4vw,30px);font-weight:400;line-height:1.42}.quote em{font-family:var(--font-serif);font-style:italic}.faq-list{flex-direction:column;gap:10px;display:flex}:where(a,button,summary,input,textarea,[tabindex]):focus-visible{outline:2px solid var(--c-copper);outline-offset:3px;border-radius:6px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.showcase{height:auto!important}.showcase-stage{height:auto;padding:72px 0;position:relative}.hero-beam,.aurora,.bg-grid{display:none}}.glass,.nav,.nav.condensed,.nav-links,.nav-sheet,.hero-badge,.btn-ghost,.case-card,.chip,.ide,.form-card,.faq,.social-card,.skill-card,.oss-card,.meta-card,.email-card,.hscroll-card,.tech-body,.phil-card,.cur-ring{-webkit-backdrop-filter:none}.glass:before,.tilt .sheen{display:none}.social-sheen,.case-sheen{background:linear-gradient(115deg,#0000 32%,#f0a13c1f,#0000 68%)}.glass,.form-card,.faq,.skill-card,.oss-card,.meta-card,.email-card,.hscroll-card,.ide{background:var(--surface)}.nav.condensed{background:#060506f0}.nav-links,.nav-sheet,.hero-badge{background:var(--surface)}.btn-ghost{background:var(--surface-2)}.btn-ghost:hover{background:var(--surface-3);border-color:var(--stroke-strong)}.chip{background:var(--surface)}.tag{background:var(--surface-2)}.tag:hover{background:var(--surface-3)}.case-card,.phil-card{background:var(--surface);box-shadow:inset 0 1px #f6f2ec0a}.social-card{background:var(--surface)}.social-card:hover{background:var(--surface-2)}.tech-body,.hstat{background:var(--surface)}.hstat:hover{background:var(--surface-2)}.page-hero-facts>div,.stat{background:var(--surface)}
