:root{--bg:#000;--fg:#fff;--muted:#6d6d6d;--subtle:#636363;--border:rgba(255,255,255,.3);--faint:rgba(255,255,255,.12);--hair:rgba(255,255,255,.07);--roo:"General Sans","Roobert",ui-sans-serif,system-ui,sans-serif;--ral:"Raleway",serif;--maxw:1180px;--radius-full:75.024px;--g-ocean:linear-gradient(115deg, rgb(160,224,171), rgb(255,172,46) 50%, rgb(165,45,37));--g-teal:linear-gradient(115deg, #49c5b6, #2f8e82 38%, #ECD06F 78%, #8a5a28);--g-aurora:linear-gradient(120deg, #a0e0ab, #49c5b6 45%, #4f7cff);--g-ember:linear-gradient(120deg, #ffac2e, #a52d25 52%, #b0306e);--field-a:#342c14;--field-b:#141a0f;--field-c:#2c2413;--sphere-warm:201,162,75;--sphere-cool:31,107,99;--ease:cubic-bezier(.2,.7,.2,1);--motion:1}:root[data-grad=teal]{--field-a:#103a35;--field-b:#1c2a10;--field-c:#3a3115;--sphere-warm:236,208,111;--sphere-cool:73,197,182}:root[data-grad=aurora]{--field-a:#123a2a;--field-b:#10243a;--field-c:#1c3a2c;--sphere-warm:79,124,255;--sphere-cool:73,197,182}:root[data-grad=ember]{--field-a:#3a2410;--field-b:#3a1020;--field-c:#2c1413;--sphere-warm:255,172,46;--sphere-cool:176,48,110}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:auto}html,body{background:var(--bg);color:var(--fg);font-family:var(--roo);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{overflow-x:hidden}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}::selection{background:#ffac2e47;color:#fff}@media (pointer:fine){*,a,button,summary{cursor:none}}.well{max-width:var(--maxw);margin:0 auto;padding:0 40px;width:100%}.gradient-text{background:var(--g-ocean);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}:root[data-grad=teal] .gradient-text{background:var(--g-teal);-webkit-background-clip:text;background-clip:text}:root[data-grad=aurora] .gradient-text{background:var(--g-aurora);-webkit-background-clip:text;background-clip:text}:root[data-grad=ember] .gradient-text{background:var(--g-ember);-webkit-background-clip:text;background-clip:text}.field{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;z-index:0;background:#070705}.field.fluid{background:#000}.fluid-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.hero-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;background:#000;pointer-events:none;overflow:hidden}.hero-backdrop .fluid-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.field.fluid.fallback{position:absolute;top:0;right:0;bottom:0;left:0}.amb{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:1}.hblob{position:absolute;width:62vw;height:62vw;will-change:transform;opacity:.6}.hblob .bi{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;will-change:transform;mix-blend-mode:screen;filter:blur(90px)}.hb1{left:-18vw;top:-16vw}.hb1 .bi{background:radial-gradient(circle at 50% 50%,rgba(160,224,171,.12),transparent 64%)}.hb2{right:-14vw;top:-10vw;width:70vw;height:70vw}.hb2 .bi{background:radial-gradient(circle at 50% 50%,rgba(255,172,46,.1),transparent 66%);filter:blur(110px)}.hb3{left:6vw;bottom:-22vw;width:56vw;height:56vw}.hb3 .bi{background:radial-gradient(circle at 50% 50%,rgba(165,45,37,.09),transparent 66%);filter:blur(96px)}.hb4{right:8vw;bottom:-18vw;width:50vw;height:50vw}.hb4 .bi{background:radial-gradient(circle at 50% 50%,rgba(120,160,120,.07),transparent 66%);filter:blur(80px)}.h-light{position:absolute;right:-4vw;top:30%;width:40vw;height:40vw;border-radius:50%;background:radial-gradient(circle at 50% 50%,rgba(255,184,84,.12),transparent 62%);filter:blur(50px);mix-blend-mode:screen;will-change:opacity,transform}.h-haze{position:absolute;top:0;right:0;bottom:0;left:0;mix-blend-mode:screen;background:radial-gradient(120% 80% at 78% 42%,rgba(255,170,70,.05),transparent 55%),radial-gradient(90% 70% at 20% 80%,rgba(160,200,150,.035),transparent 60%)}.h-vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(135% 115% at 50% 46%,transparent 42%,rgba(0,0,0,.5) 100%),linear-gradient(180deg,rgba(0,0,0,.4),transparent 18%,transparent 64%,rgba(0,0,0,.6))}@media (prefers-reduced-motion:reduce){.hblob .bi,.h-light{animation:none}}.field .marble{position:absolute;top:-28%;right:-28%;bottom:-28%;left:-28%;mix-blend-mode:screen}.field .marble.m1{background:linear-gradient(116deg,#050503 0%,#0f150f 7%,#040402 16%,var(--field-a) 25%,#050503 34%,var(--field-b) 44%,#030302 54%,var(--field-c) 65%,#050503 75%,#111813 85%,#040402 100%);filter:blur(46px) saturate(.95);animation:marble1 calc(38s / var(--motion)) ease-in-out infinite}.field .marble.m2{background:linear-gradient(140deg,transparent 0%,var(--field-b) 12%,transparent 25%,var(--field-a) 39%,transparent 53%,var(--field-c) 67%,transparent 81%,var(--field-a) 94%);opacity:.5;filter:blur(50px) saturate(.98);animation:marble2 calc(52s / var(--motion)) ease-in-out infinite}.field .sphere{position:absolute;width:62vw;height:62vw;max-width:900px;max-height:900px;right:-6vw;top:50%;transform:translateY(-50%);animation:bob calc(14s / var(--motion)) ease-in-out infinite}.field .sphere .glow{position:absolute;top:-22%;right:-22%;bottom:-22%;left:-22%;border-radius:50%;background:radial-gradient(circle,rgba(var(--sphere-warm),.26),rgba(var(--sphere-cool),.14) 42%,transparent 68%);filter:blur(64px)}.field .sphere .glass{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;overflow:hidden;background:radial-gradient(circle at 37% 30%,rgba(255,250,236,.18),transparent 28%),radial-gradient(circle at 66% 72%,rgba(var(--sphere-cool),.34),transparent 52%),radial-gradient(circle at 24% 78%,rgba(var(--sphere-warm),.26),transparent 46%),radial-gradient(circle at 50% 50%,#0e0c086b,#050503bd 80%);box-shadow:inset 0 0 90px #000000b8,inset 26px -36px 110px rgba(var(--sphere-warm),.18),inset -30px 30px 90px rgba(var(--sphere-cool),.16);backdrop-filter:blur(7px) brightness(1.12) saturate(1.1);-webkit-backdrop-filter:blur(7px) brightness(1.12) saturate(1.1)}.field .sphere .caustic{position:absolute;top:-12%;right:-12%;bottom:-12%;left:-12%;border-radius:50%;background:conic-gradient(from 200deg,transparent,rgba(var(--sphere-warm),.5) 16%,transparent 30%,rgba(var(--sphere-cool),.42) 52%,transparent 68%,rgba(var(--sphere-warm),.46) 84%,transparent 100%);filter:blur(28px);mix-blend-mode:screen;opacity:.7;animation:spin calc(64s / var(--motion)) linear infinite}.field .sphere .rim{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;padding:2.5px;background:conic-gradient(from 120deg,rgb(var(--sphere-cool)),rgb(var(--sphere-warm)) 24%,#8a5a28 44%,#0c0b07 58%,rgb(var(--sphere-cool)) 78%,rgb(var(--sphere-warm)));-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 3.5px),#000 calc(100% - 2.5px));mask:radial-gradient(farthest-side,transparent calc(100% - 3.5px),#000 calc(100% - 2.5px))}.field .sphere .fresnel{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:radial-gradient(circle at 76% 82%,rgba(255,244,220,.6),transparent 9%);filter:blur(6px)}.field .sphere .spec{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:radial-gradient(ellipse 7% 5% at 33% 23%,rgba(255,255,255,.95),transparent 60%),radial-gradient(ellipse 3% 2.2% at 30% 19%,#fff,transparent 60%);filter:blur(1.2px)}.field .veil{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(115% 95% at 50% 50%,rgba(0,0,0,.5) 0%,transparent 32%,rgba(0,0,0,.55) 100%),linear-gradient(180deg,rgba(0,0,0,.5),transparent 16%,transparent 70%,rgba(0,0,0,.62))}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bob{0%,to{transform:translateY(-50%)}50%{transform:translateY(-54%)}}@keyframes marble1{0%,to{transform:translate(-4%,-2%) rotate(0)}50%{transform:translate(3%,3%) rotate(3deg)}}@keyframes marble2{0%,to{transform:translate(3%,2%) rotate(0)}50%{transform:translate(-3%,-3%) rotate(-3deg)}}.grain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8;pointer-events:none;opacity:.06;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px}.cursor{position:fixed;top:0;left:0;width:7px;height:7px;border-radius:50%;background:#fff;z-index:9990;pointer-events:none;transform:translate(-50%,-50%);mix-blend-mode:difference;transition:width .3s var(--ease),height .3s var(--ease),background .3s}.cursor-ring{position:fixed;top:0;left:0;width:34px;height:34px;border:1px solid rgba(255,255,255,.4);border-radius:50%;z-index:9990;pointer-events:none;transform:translate(-50%,-50%);mix-blend-mode:difference;transition:width .35s var(--ease),height .35s var(--ease),border-color .35s,opacity .3s}body.cursor-hover .cursor-ring{width:64px;height:64px;border-color:#ffffffb3}body.cursor-hover .cursor{width:4px;height:4px}.cursor-label{position:fixed;top:0;left:0;z-index:9990;pointer-events:none;transform:translate(-50%,-50%);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#fff;mix-blend-mode:difference;opacity:0;transition:opacity .3s}body.cursor-view .cursor-label{opacity:1}body.cursor-view .cursor-ring{width:84px;height:84px}@media (pointer:coarse){.cursor,.cursor-ring,.cursor-label{display:none}}.nav{position:fixed;top:0;left:0;right:0;z-index:60;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:26px 40px;transition:transform .5s var(--ease)}.nav.hide{transform:translateY(-130%)}.nav .brand{font-size:18px;letter-spacing:.4px;display:inline-flex;align-items:center;gap:11px;justify-self:start}.nav .brand .brand-mark{flex:none;color:#fff;transition:transform .5s var(--ease)}.nav .brand:hover .brand-mark{transform:rotate(-4deg)}.nav .brand b{font-weight:600;letter-spacing:.5px}.nav .brand span{font-weight:400;font-size:13px;color:#fff9;letter-spacing:.18em;text-transform:uppercase}.nav .center{justify-self:center;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px}.nav .center .dot{width:5px;height:5px;border-radius:50%;background:#49c5b6;box-shadow:0 0 8px #49c5b6}.nav .right{justify-self:end;display:flex;align-items:center;gap:26px}.nav .right .lnk{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#ffffff9e;transition:color .3s}.nav .right .lnk:hover{color:#fff}.menu-btn{display:flex;flex-direction:column;gap:5px;align-items:flex-end}.menu-btn span{display:block;height:1px;background:#fff;width:24px;transition:width .3s var(--ease)}.menu-btn span:last-child{width:16px}.menu-btn:hover span:last-child{width:24px}.progress{position:fixed;top:0;left:0;height:2px;width:100%;transform-origin:0 50%;transform:scaleX(0);z-index:70;background:var(--g-ocean)}:root[data-grad=teal] .progress{background:var(--g-teal)}:root[data-grad=aurora] .progress{background:var(--g-aurora)}:root[data-grad=ember] .progress{background:var(--g-ember)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#000;display:flex;flex-direction:column;justify-content:center;opacity:0;pointer-events:none;transition:opacity .5s var(--ease)}.overlay.open{opacity:1;pointer-events:auto}.overlay .field{opacity:.55}.overlay .ov-inner{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;width:100%;padding:0 40px;display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:center}.overlay .links{display:flex;flex-direction:column;gap:2px}.overlay .links a{font-weight:400;font-size:clamp(38px,6vw,72px);line-height:1.1;letter-spacing:-.02em;transition:opacity .3s,padding-left .4s var(--ease);display:flex;align-items:baseline;gap:18px}.overlay .links a .i{font-size:13px;color:var(--muted);letter-spacing:.1em}.overlay .links a:hover{opacity:.55;padding-left:18px}.overlay .ov-side{display:flex;flex-direction:column;gap:22px}.overlay .ov-side .h{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.overlay .ov-side a{font-size:15px;color:#fffc;transition:opacity .3s}.overlay .ov-side a:hover{opacity:.5}.overlay .close{position:absolute;top:26px;right:40px;z-index:3;font-size:30px;line-height:1}@media (max-width:760px){.overlay .ov-inner{grid-template-columns:1fr}.overlay .ov-side{display:none}}.hero{position:relative;z-index:1;height:100vh;min-height:640px;display:flex;align-items:center}.hero .well{position:relative;z-index:2}.hero .eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#ffffffb8;margin-bottom:30px;overflow:hidden}.hero .eyebrow span{display:inline-block}.hero h1{font-weight:400;font-size:clamp(58px,12vw,184px);line-height:.92;letter-spacing:-.03em}.hero h1 .ln{display:block;overflow:hidden}.hero h1 .ln>span{display:block}.hero h1 .ital{font-family:var(--ral);font-style:italic;font-weight:400}.hero .sub{max-width:560px;margin-top:40px;font-size:clamp(16px,1.4vw,19px);line-height:1.55;color:#ffffffb3;overflow:hidden}.hero .sub span{display:block}.scroll-cue{position:absolute;left:40px;bottom:40px;z-index:3;display:flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#fff9}.scroll-cue .line{width:46px;height:1px;background:#fff6;position:relative;overflow:hidden}.scroll-cue .line:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;transform:translate(-100%);animation:cue 2.4s var(--ease) infinite}@keyframes cue{0%{transform:translate(-100%)}50%{transform:translate(0)}to{transform:translate(100%)}}.hero .hello{position:absolute;right:40px;bottom:40px;z-index:3;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#ffffff73;text-align:right;line-height:1.8}.section{position:relative;z-index:1;background:#000;padding:160px 0}.section.pad-sm{padding:120px 0}.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:70px}.sec-head .idx{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:10px}.sec-head .idx .bar{width:28px;height:1px;background:var(--muted)}.sec-head h2{font-weight:400;font-size:clamp(32px,4.4vw,58px);line-height:1.02;letter-spacing:-.025em;max-width:14ch}.sec-head .note{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:right;white-space:nowrap}.line-mask{overflow:hidden}.about{display:grid;grid-template-columns:1.25fr 1fr;gap:80px;align-items:start}.about .lede{font-weight:400;font-size:clamp(26px,2.9vw,38px);line-height:1.28;letter-spacing:-.02em}.about .lede .gradient-text{font-family:var(--ral);font-style:italic}.about .col-r{padding-top:10px}.about .body{font-size:16px;line-height:1.7;color:#ffffffa8;display:flex;flex-direction:column;gap:18px}.about .stats{display:flex;gap:46px;margin-top:48px;border-top:1px solid var(--faint);padding-top:34px}.about .stats .n{font-size:clamp(34px,3.4vw,46px);font-weight:300;letter-spacing:-.02em}.about .stats .l{font-size:11px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:8px}.marquee{position:relative;z-index:1;background:#000;padding:30px 0;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);overflow:hidden;white-space:nowrap}.marquee .track{display:inline-flex;gap:42px;will-change:transform}.marquee .track span{font-size:clamp(26px,3.4vw,46px);font-weight:300;color:#ffffff4d;letter-spacing:-.01em}.marquee .track .dot{color:#ffac2e99}.featured{position:relative;z-index:1;background:#000}.feat{position:relative;min-height:100vh;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding:120px 60px;max-width:1480px;margin:0 auto}.feat .feat-vis{position:relative;aspect-ratio:4/3;border-radius:12px;overflow:hidden;will-change:transform}.feat:nth-child(2n) .feat-vis{order:2}.feat:nth-child(2n) .feat-txt{order:1}.feat .feat-vis .g{position:absolute;top:0;right:0;bottom:0;left:0;background-size:170% 170%;background-position:50% 50%;transform:scale(1.04);will-change:transform}.feat .feat-vis .vis-grain{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.12;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.9'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.feat .feat-num{position:absolute;left:20px;top:18px;z-index:3;font-size:12px;letter-spacing:.14em;color:#ffffffe6;mix-blend-mode:difference}.feat .feat-txt{position:relative}.feat .feat-txt .ft-tag{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:22px;display:flex;gap:12px;align-items:center}.feat .feat-txt h3{font-weight:400;font-size:clamp(40px,5vw,76px);line-height:.98;letter-spacing:-.03em;margin-bottom:6px}.feat .feat-txt .tagline{font-family:var(--ral);font-style:italic;font-size:clamp(18px,1.7vw,24px);color:#ffffff9e;margin-bottom:26px}.feat .feat-txt .desc{font-size:16px;line-height:1.65;color:#ffffffa8;max-width:46ch;margin-bottom:30px}.feat .feat-txt .stack{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:34px}.feat .feat-txt .stack .chip{font-size:12px;letter-spacing:.04em;color:#fffc;padding:7px 15px;border:1px solid var(--faint);border-radius:var(--radius-full);transition:border-color .3s,color .3s}.feat .feat-txt .stack .chip:hover{border-color:var(--border)}.feat .feat-actions{display:flex;gap:14px}.btn-ghost{font-size:14px;color:#fff;border-top:1px solid var(--border);border-radius:var(--radius-full);padding:12px 30px;transition:opacity .4s;display:inline-flex;align-items:center;gap:8px}.btn-ghost:hover{opacity:.6}.mock{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column}.mock .bar{height:38px;flex:none;display:flex;align-items:center;gap:8px;padding:0 16px;background:#0a0a0880;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid rgba(255,255,255,.08)}.mock .bar .dots{display:flex;gap:7px}.mock .bar .dots i{width:11px;height:11px;border-radius:50%;background:#ffffff38}.mock .bar .url{flex:1;font-size:11px;color:#ffffff80;letter-spacing:.04em;text-align:center;font-family:var(--roo)}.mock .screen{flex:1;position:relative;overflow:hidden}.mock .screen .slot-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:12px;color:#ffffff4d;letter-spacing:.04em}.mock.terminal .screen{padding:20px 22px;font-family:SFMono-Regular,ui-monospace,Menlo,monospace;font-size:12.5px;line-height:1.75;color:#ffffffd1;background:#06080657;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mock.terminal .screen .ln{white-space:pre-wrap}.mock.terminal .screen .c-dim{color:#fff6}.mock.terminal .screen .c-grn{color:#a0e0ab}.mock.terminal .screen .c-amb{color:#ffac2e}.mock.terminal .screen .c-tl{color:#49c5b6}.mock.terminal .cursor-blink{display:inline-block;width:8px;height:15px;background:#a0e0ab;vertical-align:-2px;animation:blink 1.1s steps(2) infinite}@keyframes blink{50%{opacity:0}}.blink-dot{animation:blink-dot 2s infinite}@keyframes blink-dot{0%,to{opacity:1}50%{opacity:.2}}.gallery-wrap{position:relative;z-index:1;background:#000;overflow:hidden}.gallery-sticky{height:100vh;display:flex;align-items:center;overflow:hidden}.gallery-track{display:flex;gap:40px;padding:0 60px;will-change:transform}.gcard{position:relative;flex:none;width:min(46vw,560px)}.gcard .gvis{position:relative;aspect-ratio:5/4;border-radius:12px;overflow:hidden}.gcard .gvis .g{position:absolute;top:0;right:0;bottom:0;left:0;background-size:170% 170%;transform:scale(1.05);transition:transform 1.1s var(--ease)}.gcard:hover .gvis .g{transform:scale(1.14)}.gcard .gnum{position:absolute;left:18px;top:16px;font-size:12px;letter-spacing:.14em;color:#ffffffe6;mix-blend-mode:difference}.gcard .gmeta{display:flex;justify-content:space-between;align-items:baseline;margin-top:20px;gap:20px}.gcard .gmeta .gt{font-size:26px;font-weight:400;letter-spacing:-.01em}.gcard .gmeta .gtag{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:right}.gcard .gmeta .gstack{font-size:12px;color:#ffffff80;margin-top:6px}.gallery-intro{flex:none;width:min(40vw,440px);padding-right:30px;display:flex;flex-direction:column;justify-content:center}.gallery-intro .idx{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:20px}.gallery-intro h2{font-weight:400;font-size:clamp(34px,4vw,56px);line-height:1.02;letter-spacing:-.025em}.gallery-intro p{margin-top:22px;font-size:15px;line-height:1.6;color:#fff9;max-width:34ch}.skills{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:0;border-top:1px solid var(--faint)}.skill-col{padding:36px 30px 36px 0;border-bottom:1px solid var(--faint)}.skill-col .g{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:22px}.skill-col ul{list-style:none;display:flex;flex-direction:column;gap:13px}.skill-col li{font-size:17px;color:#ffffffd1;transition:color .3s,transform .4s var(--ease);width:fit-content}.skill-col li:hover{color:#fff;transform:translate(6px)}.timeline{display:flex;flex-direction:column}.tl-row{display:grid;grid-template-columns:200px 1fr auto;gap:40px;align-items:baseline;padding:38px 0;border-top:1px solid var(--faint);transition:background .4s}.tl-row:last-child{border-bottom:1px solid var(--faint)}.tl-row:hover{background:linear-gradient(90deg,rgba(255,255,255,.03),transparent)}.tl-row .when{font-size:13px;letter-spacing:.06em;color:var(--muted);text-transform:uppercase}.tl-row .what{font-size:clamp(22px,2.4vw,30px);font-weight:400;letter-spacing:-.015em}.tl-row .where{font-size:14px;color:#ffffff8c;margin-top:6px}.tl-row .note{font-size:14px;line-height:1.55;color:#fff9;max-width:42ch}@media (max-width:820px){.tl-row{grid-template-columns:1fr;gap:10px}.tl-row .note{max-width:none}}.github{position:relative;z-index:1}.gh-inner{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.gh-l h2{font-weight:400;font-size:clamp(32px,4vw,54px);line-height:1.04;letter-spacing:-.025em;margin-bottom:20px}.gh-l .handle{font-size:14px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase;margin-bottom:26px}.gh-l p{font-size:16px;line-height:1.6;color:#ffffffa8;max-width:42ch;margin-bottom:34px}.gh-stats{display:flex;gap:46px}.gh-stats .n{font-size:clamp(30px,3.2vw,42px);font-weight:300;letter-spacing:-.02em}.gh-stats .l{font-size:11px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:8px}.contrib{display:grid;grid-template-columns:repeat(20,1fr);gap:5px}.contrib i{aspect-ratio:1;border-radius:2px;background:#ffffff0f}.contact{position:relative;z-index:1;text-align:center;padding:190px 0;overflow:hidden}.contact .field{opacity:.85}.contact .well{position:relative;z-index:2}.contact .eyebrow{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#fff9;margin-bottom:34px}.contact h2{font-weight:400;font-size:clamp(44px,8vw,128px);line-height:.94;letter-spacing:-.035em}.contact h2 .ital{font-family:var(--ral);font-style:italic}.contact .email{display:inline-block;margin-top:46px;font-size:clamp(18px,2vw,26px);color:#fff;border-bottom:1px solid var(--border);padding-bottom:6px;transition:opacity .4s}.contact .email:hover{opacity:.6}.contact .socials{display:flex;gap:30px;justify-content:center;margin-top:60px;flex-wrap:wrap}.contact .socials a{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#ffffff9e;transition:color .3s;display:inline-flex;align-items:center;gap:7px}.contact .socials a:hover{color:#fff}.footer{position:relative;z-index:1;background:#000;padding:60px 0 40px;border-top:1px solid var(--hair)}.footer .top{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap}.footer .brand{font-size:clamp(40px,7vw,88px);font-weight:500;letter-spacing:-.03em;line-height:1}.footer .meta{font-size:12px;color:var(--muted);letter-spacing:.04em;line-height:1.9;text-align:right}.footer .legal{display:flex;justify-content:space-between;margin-top:50px;padding-top:24px;border-top:1px solid var(--hair);font-size:12px;color:var(--muted);letter-spacing:.04em;flex-wrap:wrap;gap:10px}.footer .legal a{transition:opacity .3s}.footer .legal a:hover{opacity:.5}.journal{display:flex;flex-direction:column;border-top:1px solid var(--faint)}.jrow{display:grid;grid-template-columns:64px 1fr auto auto;gap:34px;align-items:center;width:100%;text-align:left;padding:34px 0;border-bottom:1px solid var(--faint);background:none;color:inherit;position:relative;transition:padding .5s var(--ease)}.jrow:before{content:"";position:absolute;top:0;right:-40px;bottom:0;left:-40px;background:linear-gradient(90deg,rgba(255,255,255,.04),transparent 70%);opacity:0;transition:opacity .5s var(--ease);pointer-events:none}.jrow:hover:before{opacity:1}.jrow:hover{padding-left:18px}.jnum{font-size:12px;letter-spacing:.16em;color:var(--muted)}.jmain{min-width:0}.jtitle{font-size:clamp(20px,2.3vw,30px);font-weight:400;letter-spacing:-.02em;line-height:1.12;text-wrap:balance}.jexcerpt{font-size:14px;line-height:1.55;color:#ffffff8c;margin-top:9px;max-width:54ch}.jmeta{display:flex;flex-direction:column;align-items:flex-end;gap:8px;white-space:nowrap}.jtag{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#fff;border:1px solid var(--faint);border-radius:var(--radius-full);padding:5px 13px;transition:border-color .3s}.jrow:hover .jtag{border-color:var(--border)}.jdate{font-size:12px;color:var(--muted);letter-spacing:.04em}.jarrow{font-size:18px;color:#fff6;transition:transform .45s var(--ease),color .3s;justify-self:end}.jrow:hover .jarrow{transform:translate(6px);color:#fff}@media (max-width:820px){.jrow{grid-template-columns:1fr auto;gap:8px 18px;align-items:start;padding:28px 0}.jnum{grid-row:1;grid-column:1;order:0}.jmain{grid-column:1/-1;order:2}.jmeta{grid-row:1;grid-column:2;order:1;flex-direction:row;align-items:center;gap:12px}.jarrow{display:none}}.ji-wrap{min-height:100vh;background:var(--bg);position:relative;z-index:2}.ji-page{max-width:var(--maxw);margin:0 auto;padding:80px 40px 120px}.ji-back{display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-decoration:none;margin-bottom:52px;transition:color .2s}.ji-back:hover{color:#fff}.ji-eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.ji-title{font-size:clamp(40px,5.5vw,72px);font-weight:400;letter-spacing:-.03em;line-height:1;margin-bottom:10px}.ji-sub{font-size:14px;color:var(--muted);margin-bottom:44px}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:44px}.filter-tag{font-size:11px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--faint);border-radius:var(--radius-full);padding:6px 15px;cursor:pointer;color:#ffffff73;background:none;transition:border-color .2s,color .2s}.filter-tag:hover{color:#fffc;border-color:var(--border)}.filter-tag.active{border-color:#a0e0ab80;color:#a0e0ab}.j-seeall{display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-bottom:1px solid var(--faint)}.j-more{font-size:12px;color:var(--muted);letter-spacing:.04em}.j-link{font-size:13px;color:#fff9;text-decoration:none;display:inline-flex;align-items:center;gap:7px;letter-spacing:.04em;transition:color .25s}.j-link:hover{color:#fff}.j-link span{display:inline-block;transition:transform .35s var(--ease)}.j-link:hover span{transform:translate(5px)}@media (max-width:640px){.ji-page{padding:60px 24px 80px}}.article{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95;pointer-events:none}.article-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#040404;opacity:0;transition:opacity .5s var(--ease)}.article.open{pointer-events:auto}.article.open .article-scrim{opacity:1}.article-sheet{position:absolute;top:0;right:0;bottom:0;left:0;height:100%;width:100%;background:radial-gradient(120% 80% at 80% -10%,rgba(255,172,46,.05),transparent 55%),#050505;overflow-y:auto;overflow-x:hidden;opacity:0;transform:translateY(26px);transition:opacity .55s var(--ease),transform .7s var(--ease);will-change:opacity,transform;-webkit-overflow-scrolling:touch}.article.open .article-sheet{opacity:1;transform:none}.article-sheet::-webkit-scrollbar{width:10px}.article-sheet::-webkit-scrollbar-thumb{background:#ffffff24;border-radius:5px}.article-close{position:fixed;top:26px;right:32px;z-index:5;display:inline-flex;align-items:center;gap:9px;padding:10px 18px 10px 14px;border:1px solid var(--faint);border-radius:var(--radius-full);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#ffffffd9;background:#0505058c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:border-color .3s,color .3s}.article-close:hover{border-color:var(--border);color:#fff}.article-close span{position:relative;width:13px;height:13px}.article-close span:before,.article-close span:after{content:"";position:absolute;top:50%;left:0;width:13px;height:1px;background:currentColor}.article-close span:before{transform:rotate(45deg)}.article-close span:after{transform:rotate(-45deg)}.article-body{padding:118px 40px 110px;max-width:720px;margin:0 auto}.a-meta{display:flex;align-items:center;gap:16px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:30px;flex-wrap:wrap}.a-tag{color:#fff;border:1px solid var(--faint);border-radius:var(--radius-full);padding:5px 13px;letter-spacing:.12em}.a-title{font-weight:400;font-size:clamp(32px,4.4vw,52px);line-height:1.05;letter-spacing:-.03em;text-wrap:balance}.a-lede{font-family:var(--ral);font-style:italic;font-size:clamp(18px,2vw,23px);line-height:1.45;color:#ffffffa8;margin-top:22px}.a-rule{height:1px;background:var(--faint);margin:42px 0}.a-p{font-size:17px;line-height:1.72;color:#ffffffc7;margin-bottom:26px}.a-p strong{color:#fff;font-weight:600}.a-p em,.a-list em{font-family:var(--ral);font-style:italic}.a-h{font-size:clamp(22px,2.6vw,28px);font-weight:500;letter-spacing:-.02em;margin:46px 0 20px}.a-quote{position:relative;margin:40px 0;padding-left:26px;border-left:2px solid;border-image:var(--g-ocean) 1;font-family:var(--ral);font-style:italic;font-size:clamp(22px,2.6vw,28px);line-height:1.34;color:#fff}:root[data-grad=teal] .a-quote{border-image:var(--g-teal) 1}:root[data-grad=aurora] .a-quote{border-image:var(--g-aurora) 1}:root[data-grad=ember] .a-quote{border-image:var(--g-ember) 1}.a-quote cite{display:block;margin-top:16px;font-family:var(--roo);font-style:normal;font-size:13px;letter-spacing:.04em;color:var(--muted)}.a-code{background:#000;border:1px solid var(--hair);border-radius:10px;padding:20px 22px;margin:30px 0;overflow-x:auto}.a-code code{font-family:SFMono-Regular,ui-monospace,Menlo,monospace;font-size:13.5px;line-height:1.7;color:#a0e0ab;white-space:pre}.a-list{list-style:none;margin:6px 0 30px;display:flex;flex-direction:column;gap:14px}.a-list li{position:relative;padding-left:26px;font-size:17px;line-height:1.6;color:#ffffffc7}.a-list li:before{content:"";position:absolute;left:2px;top:11px;width:9px;height:1px;background:#ffac2e}.a-end{display:flex;align-items:center;gap:13px;margin-top:54px;padding-top:26px;border-top:1px solid var(--faint);font-size:13px;letter-spacing:.04em;color:var(--muted)}.a-end .a-mark{color:#fff;display:flex}.a-next{display:flex;align-items:center;gap:16px;width:100%;text-align:left;margin-top:30px;padding:26px 24px;border:1px solid var(--faint);border-radius:12px;background:none;color:inherit;transition:border-color .4s,background .4s}.a-next:hover{border-color:var(--border);background:#ffffff05}.a-next-l{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);flex:none}.a-next-t{font-size:16px;font-weight:400;letter-spacing:-.01em;color:#fff;flex:1;line-height:1.2}.a-next-arrow{font-size:18px;color:#ffffff80;transition:transform .4s var(--ease)}.a-next:hover .a-next-arrow{transform:translate(6px)}@media (max-width:680px){.article-body{padding:96px 24px 80px}.article-close{top:18px;right:18px}}.reveal{opacity:0;transform:translateY(30px);transition:opacity 1s var(--ease),transform 1s var(--ease)}.reveal.in{opacity:1;transform:none}[data-stagger]>*{opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease),transform .9s var(--ease)}[data-stagger].in>*{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.field .marble,.field .sphere,.field .sphere .caustic{animation:none}.reveal,[data-stagger]>*{opacity:1;transform:none;transition:none}.blink-dot,.mock.terminal .cursor-blink{animation:none}}@media (max-width:960px){.about,.gh-inner{grid-template-columns:1fr;gap:44px}.feat{grid-template-columns:1fr;gap:40px;min-height:auto;padding:90px 40px}.feat:nth-child(2n) .feat-vis,.feat:nth-child(2n) .feat-txt{order:0}}@media (max-width:760px){.hero{height:100svh;min-height:540px}.hero h1{font-size:clamp(46px,15vw,96px)}.hero .sub{margin-top:28px}.hblob .bi{will-change:auto;filter:blur(45px)}.hb2 .bi{filter:blur(55px)}.hb3 .bi{filter:blur(48px)}.h-light{will-change:auto}.gallery-wrap{overflow:visible}.gallery-sticky{height:auto;display:block;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;padding:8px 0 34px;scrollbar-width:none}.gallery-sticky::-webkit-scrollbar{display:none}.gallery-track{transform:none!important;width:max-content;padding:0 24px;gap:16px}.gallery-intro{width:74vw;padding-right:4px}.gallery-intro p{max-width:none}.gcard{width:82vw;scroll-snap-align:center}.gcard .gvis .g{transform:scale(1.05)!important}.contact{padding:120px 0}.field .sphere{width:54vw;height:54vw;right:-28vw}}@media (max-width:680px){.well{padding:0 24px}.nav{padding:18px 22px;grid-template-columns:auto 1fr}.nav .center{display:none}.nav .right{gap:18px}.section{padding:96px 0}.section.pad-sm{padding:80px 0}.sec-head{flex-wrap:wrap;margin-bottom:48px}.sec-head .note{text-align:left;white-space:normal}.feat{padding:70px 24px;gap:32px}.about .stats{gap:30px;flex-wrap:wrap}.scroll-cue{left:24px;bottom:28px}.hero .hello{right:24px;bottom:28px}.contrib{grid-template-columns:repeat(auto-fill,minmax(12px,1fr));gap:3px}.footer .top{flex-direction:column;align-items:flex-start;gap:24px}.footer .meta{text-align:left}}.article-body.has-toc{max-width:1060px;display:grid;grid-template-columns:1fr 240px;gap:60px;align-items:start}.a-content{min-width:0}.a-toc-sidebar{position:sticky;top:100px;max-height:calc(100vh - 120px);overflow-y:auto}.a-toc-sidebar::-webkit-scrollbar{width:4px}.a-toc-sidebar::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}@media (max-width:768px){.article-body.has-toc{display:block;max-width:720px}.a-toc-sidebar{display:none}}.token.keyword,.token.rule{color:#ffac2e}.token.string,.token.char{color:#a0e0ab}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#ffffff52;font-style:italic}.token.number,.token.boolean,.token.constant{color:#7eb8f7}.token.function{color:#c4b5fd}.token.class-name,.token.maybe-class-name{color:#f9ca74}.token.operator,.token.entity{color:#ffffffa6}.token.punctuation{color:#ffffff80}.token.parameter{color:#e8a87c}.token.property{color:#7eb8f7}.token.tag{color:#f87171}.token.attr-name{color:#ffac2e}.token.attr-value{color:#a0e0ab}.token.selector{color:#c4b5fd}.token.important{color:#f87171;font-weight:700}.a-h2{font-size:clamp(18px,2.2vw,22px);font-weight:500;letter-spacing:-.02em;margin:36px 0 14px;color:#ffffffe6}.a-h3{font-size:clamp(15px,1.8vw,18px);font-weight:500;letter-spacing:-.01em;margin:28px 0 10px;color:#fffc}.a-lead{font-family:var(--ral);font-size:clamp(19px,2.2vw,24px);line-height:1.5;color:#ffffffbf;margin-bottom:30px}.a-divider{border:none;border-top:1px solid var(--faint);margin:40px 0}.a-spacer-sm{height:24px}.a-spacer-md{height:48px}.a-spacer-lg{height:80px}.a-olist{list-style:none;margin:6px 0 30px;display:flex;flex-direction:column;gap:14px;counter-reset:ol}.a-olist li{position:relative;padding-left:36px;font-size:17px;line-height:1.6;color:#ffffffc7;counter-increment:ol}.a-olist li:before{content:counter(ol);position:absolute;left:0;top:0;width:24px;height:24px;border-radius:50%;background:#ffac2e26;border:1px solid rgba(255,172,46,.3);color:#ffac2e;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center}.a-steps{display:flex;flex-direction:column;margin:20px 0 30px;position:relative}.a-steps:before{content:"";position:absolute;left:17px;top:34px;bottom:34px;width:1px;background:var(--faint)}.a-step{display:flex;align-items:flex-start;gap:18px;padding:14px 0}.a-step-num{width:34px;height:34px;border-radius:50%;background:#ffac2e1f;border:1px solid rgba(255,172,46,.35);color:#ffac2e;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:1}.a-step-text{font-size:16px;line-height:1.6;color:#ffffffc7;padding-top:6px}.a-checklist{border:1px solid var(--faint);border-radius:12px;padding:20px 24px;margin:24px 0}.a-prereq{border-color:#7eb8f74d;background:#7eb8f70a}.a-outcome{border-color:#a0e0ab4d;background:#a0e0ab0a}.a-checklist-head{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.a-checklist ul{list-style:none;display:flex;flex-direction:column;gap:10px}.a-checklist li{display:flex;align-items:center;gap:12px;font-size:15px;color:#fffc}.a-check{font-size:13px;flex-shrink:0}.a-prereq .a-check{color:#7eb8f7}.a-outcome .a-check{color:#a0e0ab}.a-code-wrap{border:1px solid var(--hair);border-radius:12px;overflow:hidden;margin:30px 0}.a-code-header{display:flex;align-items:center;justify-content:space-between;padding:11px 16px;background:#ffffff0a;border-bottom:1px solid var(--hair)}.a-code-filename{font-family:SFMono-Regular,ui-monospace,Menlo,monospace;font-size:12px;color:#ffffff80}.a-code-actions{display:flex;gap:8px}.a-code-btn{font-size:11px;letter-spacing:.06em;padding:5px 11px;border:1px solid var(--faint);border-radius:6px;color:#ffffff80;background:none;transition:border-color .2s,color .2s}.a-code-btn:hover{border-color:var(--border);color:#fff}.a-code-wrap .a-code{border-radius:0;border:none;margin:0}.a-code.a-ln{display:grid;grid-template-columns:44px 1fr}.a-ln-nums{display:flex;flex-direction:column;align-items:flex-end;padding:20px 12px 20px 0;border-right:1px solid var(--hair);margin-right:16px;color:var(--muted);font-family:SFMono-Regular,ui-monospace,Menlo,monospace;font-size:12px;line-height:1.7;-webkit-user-select:none;user-select:none}.a-filetree{background:#000;border:1px solid var(--hair);border-radius:10px;padding:20px 22px;margin:30px 0;overflow-x:auto}.a-filetree pre{font-family:SFMono-Regular,ui-monospace,Menlo,monospace;font-size:13.5px;line-height:1.7;color:#ffffffb3;white-space:pre;margin:0}.a-filelabel{display:inline-flex;align-items:center;gap:6px;background:#ffffff0f;border:1px solid var(--faint);border-radius:6px;padding:4px 12px;font-family:SFMono-Regular,ui-monospace,Menlo,monospace;font-size:13px;color:#ffffffb3;margin:6px 0}.a-command{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#000;border:1px solid var(--hair);border-radius:10px;padding:14px 18px;margin:24px 0}.a-command-inner{display:flex;align-items:center;gap:10px;overflow:hidden}.a-command-prompt{color:#ffac2e;font-family:SFMono-Regular,ui-monospace,Menlo,monospace;font-size:14px;-webkit-user-select:none;user-select:none;flex-shrink:0}.a-command-text{font-family:SFMono-Regular,ui-monospace,Menlo,monospace;font-size:14px;color:#a0e0ab;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.a-command-copy{font-size:11px;padding:5px 11px;border:1px solid var(--faint);border-radius:6px;color:#ffffff80;background:none;transition:border-color .2s,color .2s;flex-shrink:0}.a-command-copy:hover{border-color:var(--border);color:#fff}.a-img-wrap,.a-video-wrap{margin:34px 0}.a-img-wrap img{width:100%;border-radius:10px;display:block}.a-video-wrap video{width:100%;border-radius:10px;display:block}.a-caption{font-size:13px;color:var(--muted);margin-top:10px;text-align:center;font-style:italic}.a-embed{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:10px;margin:34px 0}.a-embed iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:none}.a-arch{margin:34px 0}.a-arch-label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.a-arch img{width:100%;border-radius:10px;border:1px solid var(--faint)}.a-alert{display:flex;gap:14px;border-radius:10px;padding:16px 18px;margin:26px 0;border:1px solid}.a-alert-icon{font-size:15px;flex-shrink:0;margin-top:2px}.a-alert-body{flex:1;min-width:0}.a-alert-title{font-size:14px;font-weight:600;margin-bottom:5px}.a-alert-text{font-size:15px;line-height:1.6;color:#fffc}.a-alert[data-type=info]{background:#7eb8f712;border-color:#7eb8f740}.a-alert[data-type=info] .a-alert-icon,.a-alert[data-type=info] .a-alert-title{color:#7eb8f7}.a-alert[data-type=warning]{background:#ffac2e12;border-color:#ffac2e40}.a-alert[data-type=warning] .a-alert-icon,.a-alert[data-type=warning] .a-alert-title{color:#ffac2e}.a-alert[data-type=error]{background:#f8717112;border-color:#f8717140}.a-alert[data-type=error] .a-alert-icon,.a-alert[data-type=error] .a-alert-title{color:#f87171}.a-alert[data-type=success]{background:#a0e0ab12;border-color:#a0e0ab40}.a-alert[data-type=success] .a-alert-icon,.a-alert[data-type=success] .a-alert-title{color:#a0e0ab}.a-alert[data-type=tip]{background:#c4b5fd12;border-color:#c4b5fd40}.a-alert[data-type=tip] .a-alert-icon,.a-alert[data-type=tip] .a-alert-title{color:#c4b5fd}.a-alert[data-type=callout]{background:#ffffff0a;border-color:var(--faint)}.a-alert[data-type=callout] .a-alert-title{color:#fff}.a-badge{display:inline-flex;align-items:center;padding:4px 12px;background:#ffffff14;border:1px solid var(--faint);border-radius:99px;font-size:12px;letter-spacing:.06em;color:#ffffffbf}.a-tags,.a-techstack{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.a-tech-pill{display:inline-flex;align-items:center;padding:5px 13px;background:#ffac2e14;border:1px solid rgba(255,172,46,.2);border-radius:99px;font-size:13px;color:#ffac2ee6}.a-extlink{display:inline-flex;align-items:center;gap:5px;color:#ffac2ee6;text-decoration:none;border-bottom:1px solid rgba(255,172,46,.3);transition:border-color .2s;font-size:15px;margin:12px 0}.a-extlink:hover{border-color:#ffac2ecc}.a-extlink-arrow{font-size:11px}.a-meta-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;letter-spacing:.05em;color:var(--muted);margin:8px 0}.a-author{display:flex;align-items:center;gap:12px;margin:20px 0}.a-author-avatar{width:38px;height:38px;border-radius:50%;background:#ffac2e26;border:1px solid rgba(255,172,46,.3);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:#ffac2e;flex-shrink:0}.a-author-name{font-size:14px;color:#ffffffd9;font-weight:500}.a-author-label{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-top:2px}.a-table-wrap{overflow-x:auto;margin:30px 0;border-radius:10px;border:1px solid var(--faint)}.a-table{width:100%;border-collapse:collapse;font-size:14px}.a-table th{background:#ffffff0a;padding:12px 16px;text-align:left;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--faint);white-space:nowrap}.a-table td{padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.05);color:#ffffffc7}.a-table tr:last-child td{border-bottom:none}.a-table tr:hover td{background:#ffffff05}.a-accordion{border:1px solid var(--faint);border-radius:10px;margin:20px 0;overflow:hidden}.a-accordion summary{padding:16px 20px;font-size:16px;font-weight:500;color:#ffffffd9;display:flex;align-items:center;justify-content:space-between;list-style:none;-webkit-user-select:none;user-select:none;transition:background .2s}.a-accordion summary::-webkit-details-marker{display:none}.a-accordion summary:hover{background:#ffffff08}.a-accordion summary:after{content:"↓";font-size:13px;color:var(--muted);transition:transform .3s var(--ease)}.a-accordion[open] summary:after{transform:rotate(180deg)}.a-accordion-body{padding:16px 20px 18px;font-size:15px;line-height:1.7;color:#ffffffb8;border-top:1px solid var(--faint)}.a-tabs{margin:26px 0}.a-tab-list{display:flex;border-bottom:1px solid var(--faint);overflow-x:auto;scrollbar-width:none}.a-tab-list::-webkit-scrollbar{display:none}.a-tab-btn{padding:10px 18px;font-size:13px;letter-spacing:.04em;color:var(--muted);background:none;border:none;border-bottom:2px solid transparent;transition:color .2s,border-color .2s;white-space:nowrap;margin-bottom:-1px}.a-tab-btn.active{color:#fff;border-bottom-color:#ffac2e}:root[data-grad=teal] .a-tab-btn.active{border-bottom-color:#4ec9b0}:root[data-grad=aurora] .a-tab-btn.active{border-bottom-color:#c4b5fd}:root[data-grad=ember] .a-tab-btn.active{border-bottom-color:#f87171}.a-tab-btn:hover:not(.active){color:#fff9}.a-tab-panel{padding:20px 0;font-size:15px;line-height:1.7;color:#ffffffc7}.a-compare{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:26px 0}.a-compare-side{border:1px solid var(--faint);border-radius:10px;overflow:hidden}.a-compare-label{padding:8px 16px;background:#ffffff0a;border-bottom:1px solid var(--faint);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.a-compare-content{padding:16px;font-size:14px;color:#ffffffbf;line-height:1.6}@media (max-width:580px){.a-compare{grid-template-columns:1fr}}.a-metric{display:inline-flex;flex-direction:column;gap:4px;padding:20px 28px;border:1px solid var(--faint);border-radius:12px;margin:16px 0}.a-metric-value{font-size:clamp(28px,4vw,42px);font-weight:300;letter-spacing:-.03em;color:#fff}.a-metric-label{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.a-timeline{display:flex;flex-direction:column;margin:24px 0;position:relative}.a-timeline:before{content:"";position:absolute;left:7px;top:16px;bottom:16px;width:1px;background:var(--faint)}.a-tl-item{display:flex;gap:20px;padding:10px 0;align-items:flex-start}.a-tl-dot{width:15px;height:15px;border-radius:50%;border:2px solid rgba(255,172,46,.5);background:#050505;flex-shrink:0;margin-top:4px;position:relative;z-index:1}.a-tl-body{flex:1}.a-tl-title{font-size:15px;color:#ffffffd9;font-weight:500}.a-tl-date{font-size:12px;color:var(--muted);letter-spacing:.04em;margin-top:3px}.a-gh-card{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--faint);border-radius:12px;padding:18px 22px;margin:20px 0;transition:border-color .3s,background .3s;text-decoration:none;color:inherit}.a-gh-card:hover{border-color:var(--border);background:#ffffff05}.a-gh-card-left{display:flex;align-items:center;gap:13px}.a-gh-icon{font-size:20px;color:#ffffff8c}.a-gh-repo{font-family:SFMono-Regular,ui-monospace,Menlo,monospace;font-size:14px;color:#ffac2ee6}.a-gh-arrow{color:#ffffff4d;font-size:16px;transition:transform .3s var(--ease)}.a-gh-card:hover .a-gh-arrow{transform:translate(4px)}.a-demo-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border:1px solid var(--faint);border-radius:10px;color:#fffc;text-decoration:none;font-size:14px;transition:border-color .3s,color .3s,background .3s;margin:16px 0}.a-demo-btn:hover{border-color:var(--border);color:#fff;background:#ffffff08}.a-demo-btn span{font-size:12px}.a-project-card{border:1px solid var(--faint);border-radius:14px;padding:24px 26px;margin:24px 0;transition:border-color .3s,background .3s}.a-project-card:hover{border-color:var(--border);background:#ffffff05}.a-project-title{font-size:20px;font-weight:500;letter-spacing:-.02em;margin-bottom:8px;color:#fff}.a-project-desc{font-size:15px;line-height:1.6;color:#ffffffa6;margin-bottom:16px}.a-project-stack{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px}.a-project-links{display:flex;gap:14px;flex-wrap:wrap}.a-project-link{font-size:13px;color:#ffac2ee6;text-decoration:none;border-bottom:1px solid rgba(255,172,46,.25);padding-bottom:1px;transition:border-color .2s}.a-project-link:hover{border-color:#ffac2eb3}.a-toc-label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.a-toc nav{display:flex;flex-direction:column;gap:2px}.a-toc a{font-size:13px;line-height:1.5;color:#ffffff73;text-decoration:none;transition:color .2s,border-color .2s,background-size .2s;padding:4px 0 4px 12px;border-left:2px solid transparent;display:block}.a-toc a:hover{color:#fffc}.a-toc a[data-level="2"]{padding-left:22px;font-size:12px}.a-toc a[data-level="3"]{padding-left:34px;font-size:12px}.a-toc a.toc-active{background:linear-gradient(90deg,#a0e0ab,#ffac2e 50%,#a52d25);-webkit-background-clip:text;background-clip:text;color:transparent;border-left-color:#a0e0ab}.a-toc-details{margin-bottom:30px;border:1px solid var(--faint);border-radius:10px;overflow:hidden}.a-toc-details summary{padding:12px 16px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);list-style:none;-webkit-user-select:none;user-select:none}.a-toc-details summary::-webkit-details-marker{display:none}.a-toc-details .a-toc{padding:12px 16px 16px}
