:root{--bg: #121218;--bg-2: #181820;--surface: #1e1e26;--surface-2: #2a2a34;--surface-hover: #34343f;--border: #40404e;--border-2: #4a4a59;--border-hover: #5c5c6e;--text: #f7f7f8;--text-dim: #b8b8c2;--text-muted: #9b9ba8;--text-faint: #82828f;--accent: #f87171;--accent-solid: #dc2626;--accent-solid-hover: #c81e1e;--accent-2: #fb8a8a;--accent-dim: #7f1d1d;--accent-glow: rgba(248, 113, 113, .22);--accent-glow-soft: rgba(248, 113, 113, .08);--accent-ai: #2dd4bf;--accent-ai-soft: rgba(45, 212, 191, .1);--accent-ai-border: rgba(45, 212, 191, .38);--green: #22c55e;--font-sans: "Geist", ui-sans-serif, system-ui, sans-serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-serif: "Instrument Serif", ui-serif, Georgia, serif;--radius-card: 18px;--radius-pill: 999px;--gap: 14px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--card-pad: var(--space-4);--card-pad-lg: var(--space-5);--card-gap: var(--space-3);--card-gap-tight: var(--space-2);--ring-size: 30px;--ring-inset: 14px;--fs-micro: 9px;--fs-3xs: 10px;--fs-2xs: 11px;--fs-xs: 12px;--fs-sm: 13px;--fs-base: 14px;--fs-md: 16px;--fs-lg: 18px;--fs-xl: 22px;--fs-2xl: 24px;--fs-3xl: 26px;--fs-4xl: 30px;--ls-micro: .14em;--ls-caps: .1em;--ls-wide: .06em;--ls-snug: .04em;--ls-normal: .02em;--ls-tight: -.015em;--ls-tighter: -.025em;--ls-display: -.04em;--fw-normal: 400;--fw-medium: 500;--fw-semi: 600;--fw-bold: 700;--lh-none: 1;--lh-tight: 1.15;--lh-snug: 1.35;--lh-relaxed: 1.5;--lh-body: 1.6;--ease-spring: cubic-bezier(.22, 1, .36, 1);--ease-soft: cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box}html,body{margin:0;padding:0}html{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-feature-settings:"ss01","ss02","cv11";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{min-height:100vh;min-height:100dvh;height:100vh;height:100dvh;overflow:hidden;background:radial-gradient(1200px 800px at 80% -10%,rgba(248,113,113,.1),transparent 60%),radial-gradient(900px 600px at -10% 90%,rgba(248,113,113,.06),transparent 60%),var(--bg)}@media(hover:none){#cursor-glow{display:none}}@media(prefers-reduced-motion:reduce){#cursor-glow{display:none}}button,a{font-family:inherit;color:inherit}#cursor-glow{position:fixed;top:0;left:0;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(248,113,113,.2) 0%,rgba(248,113,113,.07) 30%,transparent 65%);pointer-events:none;z-index:9999;mix-blend-mode:screen;will-change:transform;transition:opacity .3s ease}#cursor-glow.hidden{opacity:0}#cursor-glow:after{content:"";position:absolute;top:50%;left:50%;width:6px;height:6px;margin:-3px 0 0 -3px;background:var(--accent);border-radius:50%;box-shadow:0 0 12px var(--accent)}#noise{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;opacity:.035;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.5 0 0 0 0 0.5 0 0 0 0 0.5 0 0 0 1 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}.lang-toggle button.active,.lang-toggle a.active{background:#dc2626;color:#fff;box-shadow:0 0 16px var(--accent-glow)}.card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);overflow:hidden;padding:var(--card-pad);min-height:0;min-width:0;transition:background .35s var(--ease-soft),border-color .35s var(--ease-soft),transform .5s var(--ease-spring),box-shadow .35s var(--ease-soft);display:flex;flex-direction:column;will-change:transform}.card:not(.hero-card){justify-content:center}.card:hover{background:var(--surface-hover);border-color:var(--border-hover);transform:translateY(-2px);box-shadow:0 12px 40px -10px #00000080,0 0 0 1px var(--border-hover)}.card.clickable{cursor:pointer}.card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(600px 200px at var(--mx, 50%) 0%,var(--accent-glow-soft),transparent 60%);opacity:0;transition:opacity .4s var(--ease-soft);pointer-events:none}.card:hover:before{opacity:1}.card .open-arrow{position:absolute;top:var(--ring-inset);right:var(--ring-inset);width:var(--ring-size);height:var(--ring-size);border-radius:50%;border:1px solid var(--border-2);background:#14141499;display:grid;place-items:center;color:var(--text-muted);transition:all .3s var(--ease-soft);z-index:3}.card:hover .open-arrow{border-color:var(--accent);color:var(--accent);transform:rotate(-45deg);box-shadow:0 0 18px var(--accent-glow)}.hero-id{display:flex;align-items:stretch;flex:1;min-height:0}.hero-name{font-family:var(--font-sans);font-weight:var(--fw-medium);font-size:clamp(44px,5.2vw,68px);line-height:.92;letter-spacing:var(--ls-display);margin:0;color:var(--text);display:flex;flex-direction:column;text-shadow:0 1px 12px rgba(0,0,0,.5)}.hero-name .accent{color:var(--accent)}.hero-name em{font-family:var(--font-serif);font-style:italic;font-weight:var(--fw-normal);color:var(--text-dim)}.hero-kw.ai{color:var(--accent-ai)}.hero-stat .n{font-family:var(--font-sans);font-size:var(--fs-xl);font-weight:var(--fw-semi);line-height:var(--lh-none);letter-spacing:var(--ls-tighter);color:var(--text)}.hero-stat .n .accent{color:var(--accent);font-size:.6em;margin-left:1px}.hero-stat .l{font-family:var(--font-mono);font-size:var(--fs-3xs);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-muted)}.hero-tagline.active{opacity:1;transform:translateY(0);pointer-events:auto}.hero-stats-clickable:hover .n{color:var(--accent)}.hero-stats-clickable .n{transition:color .25s var(--ease-soft)}.ai-cases{display:flex;flex-direction:column;gap:20px;margin-bottom:32px}.ai-case{padding:18px 20px;border:1px solid var(--border);border-radius:14px;background:#ffffff04}.ai-case-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px}.ai-case-head h3{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-semi);letter-spacing:var(--ls-tight);color:var(--text)}.ai-case-highlight{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--accent);letter-spacing:var(--ls-snug);margin-bottom:8px}.ai-case-bullets,.clients-list-bullets{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.ai-case-bullets li,.clients-list-bullets li{position:relative;padding-left:18px;font-size:var(--fs-base);line-height:var(--lh-body);color:var(--text-dim)}.ai-case-bullets li:before,.clients-list-bullets li:before{content:"";position:absolute;left:2px;top:8px;width:5px;height:5px;border-radius:50%;background:var(--accent);opacity:.7}.ai-case-bullets li strong,.clients-list-bullets li strong{color:var(--text);font-weight:var(--fw-medium)}.ai-case-stack{margin-top:14px;padding-top:12px;border-top:1px solid var(--border);font-family:var(--font-mono);font-size:var(--fs-xs);line-height:var(--lh-relaxed);color:var(--text-dim);opacity:.85}.ai-case-stack-label{color:var(--accent);letter-spacing:var(--ls-snug);margin-right:4px}.stat .n{font-family:var(--font-sans);font-size:var(--fs-3xl);font-weight:var(--fw-semi);letter-spacing:var(--ls-tighter);color:var(--text);line-height:var(--lh-none);white-space:nowrap}.stat .n .accent{color:var(--accent)}.stat .l{margin-top:var(--space-2);font-family:var(--font-mono);font-size:var(--fs-3xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--text-muted);line-height:var(--lh-snug)}.stack-row .h{font-family:var(--font-mono);font-size:var(--fs-3xs);letter-spacing:var(--ls-normal);text-transform:uppercase;white-space:nowrap;color:var(--text-muted)}.stack-row .items{display:flex;flex-wrap:wrap;gap:4px;min-width:0}.clients-list{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-direction:column;gap:14px}.clients-list-item{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border:1px solid var(--border);border-radius:12px;background:#ffffff03}.clients-list-logo{flex-shrink:0;width:44px;height:44px;border-radius:10px;background:#fff;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;padding:7px}.clients-list-logo img{max-width:100%;max-height:100%;object-fit:contain}.clients-list-logo-fallback{font-family:var(--font-mono);font-size:var(--fs-lg);font-weight:var(--fw-semi);color:var(--accent)}.clients-list-content{flex:1;min-width:0}.clients-list-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;flex-wrap:wrap}.clients-list-head h3{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-semi);color:var(--text);letter-spacing:var(--ls-tight)}.clients-list-via{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--accent);letter-spacing:var(--ls-snug)}.project-detail{padding:28px 0;border-top:1px solid var(--border)}.project-detail:first-of-type{border-top:0;padding-top:0}.proj-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:14px}.proj-head h3{margin:0;font-size:var(--fs-2xl);font-weight:var(--fw-semi);letter-spacing:var(--ls-tighter);color:var(--text);text-wrap:balance}.proj-link{flex-shrink:0;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--accent);text-decoration:none;padding:6px 12px;border:1px solid var(--accent);border-radius:var(--radius-pill);white-space:nowrap;background:#f8717117;transition:all .25s var(--ease-soft)}.proj-link:hover{background:var(--accent-solid);color:#fff;box-shadow:0 0 24px var(--accent-glow)}.proj-summary{font-size:var(--fs-md);line-height:var(--lh-body);color:var(--text-dim);margin:0 0 16px}.proj-summary strong{color:var(--text);font-weight:var(--fw-medium)}.stack-cell .h{font-family:var(--font-mono);font-size:var(--fs-3xs);letter-spacing:var(--ls-micro);text-transform:uppercase;color:var(--text-muted)}.stack-cell .items{margin-top:4px;font-size:var(--fs-xs);color:var(--text);line-height:var(--lh-snug)}.tag.accent{border-color:var(--accent);color:var(--accent);background:#f8717117}.xp-row.now .role{color:var(--accent)}.xp-row.now .co{color:var(--accent);opacity:.85}.xp-row.now .xp-highlight{color:var(--accent)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0000;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);transition:background .28s var(--ease-soft),backdrop-filter .28s var(--ease-soft);pointer-events:none}.modal-backdrop.open{background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:auto;transition-duration:.36s}.morph{position:fixed;inset:min(40px,4vw);background:var(--surface);border:1px solid var(--border);border-radius:22px;z-index:101;overflow:hidden;transition:clip-path .42s var(--ease-spring),border-color .3s var(--ease-soft)}.morph.open{border-color:var(--border-2)}.morph.closing{transition:clip-path .28s cubic-bezier(.4,0,1,1)}@media(prefers-reduced-motion:reduce){.modal-backdrop,.morph,.morph-close,.modal-content{transition:none}}.morph-inner{height:100%;width:100%;overflow-y:auto;position:relative;scrollbar-width:thin;scrollbar-color:var(--border-hover) transparent}.morph-inner::-webkit-scrollbar{width:10px}.morph-inner::-webkit-scrollbar-track{background:transparent}.morph-inner::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:6px;border:2px solid transparent;background-clip:content-box;transition:background-color .25s var(--ease-soft)}.morph-inner::-webkit-scrollbar-thumb:hover{background:var(--accent-dim);background-clip:content-box}.morph-close{position:fixed;top:24px;right:24px;width:40px;height:40px;border-radius:50%;border:1px solid var(--border-2);background:#141414b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text);display:grid;place-items:center;z-index:102;transition:all .3s var(--ease-soft);opacity:0;transform:scale(.6)}.morph-close.show{opacity:1;transform:scale(1);transition-delay:.08s}.morph-close:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 0 24px var(--accent-glow)}.modal-content{max-width:880px;margin:0 auto;padding:64px 56px 80px;opacity:0;transform:translateY(8px);transition:opacity .3s var(--ease-soft),transform .4s var(--ease-spring)}.modal-content.show{opacity:1;transform:translateY(0)}.modal-content .eyebrow{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:var(--ls-micro);text-transform:uppercase;color:var(--accent);margin-bottom:14px}.modal-content .modal-title{font-weight:var(--fw-semi);font-size:46px;line-height:1.05;letter-spacing:var(--ls-tighter);margin:0 0 24px;text-wrap:balance}.modal-content h2:not(.modal-title){font-weight:var(--fw-semi);font-size:var(--fs-base);font-family:var(--font-mono);letter-spacing:var(--ls-micro);text-transform:uppercase;color:var(--text-muted);margin:38px 0 16px}.modal-content p{font-size:var(--fs-md);line-height:var(--lh-body);color:var(--text-dim);margin:0 0 16px;text-wrap:pretty}.modal-content p strong{color:var(--text);font-weight:var(--fw-medium)}.kv-grid{display:grid;grid-template-columns:160px 1fr;gap:10px 20px;padding:18px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.kv-grid dt{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--text-muted);align-self:center}.kv-grid dd{margin:0;font-size:var(--fs-md);color:var(--text)}.kv-grid dd a{color:var(--accent);text-decoration:none}.kv-grid dd a:hover{text-decoration:underline}.xp-detail{padding:24px 0;border-top:1px solid var(--border);display:grid;grid-template-columns:160px 1fr;gap:28px}.xp-detail:first-of-type{border-top:0}.xp-detail .when{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--text-muted);letter-spacing:var(--ls-wide)}.xp-detail .when .at{display:block;margin-top:6px;color:var(--text-dim);text-transform:uppercase;letter-spacing:var(--ls-caps);font-size:var(--fs-2xs)}.xp-detail .body h3{margin:0 0 4px;font-size:var(--fs-xl);font-weight:var(--fw-semi);letter-spacing:var(--ls-tight);color:var(--text)}.xp-detail .body .where{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--accent);margin-bottom:14px;letter-spacing:var(--ls-snug)}.xp-detail .body ul{padding-left:18px;margin:0 0 14px;color:var(--text-dim);font-size:var(--fs-base);line-height:var(--lh-body)}.xp-detail .body ul li::marker{color:var(--accent)}.xp-detail .body ul li{margin-bottom:6px}.tag-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.stack-block{padding:22px 0;border-top:1px solid var(--border);display:grid;grid-template-columns:200px 1fr;gap:28px;align-items:start}.stack-block:first-of-type{border-top:0}.stack-block .h{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:var(--ls-micro);text-transform:uppercase;color:var(--text-muted)}.stack-block .items{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--border-2);border-radius:var(--radius-pill);background:var(--surface-2);font-size:var(--fs-sm);font-family:var(--font-mono);color:var(--text-dim);letter-spacing:var(--ls-normal)}.chip.accent{border-color:var(--accent);color:var(--accent);background:#f8717117}.project-bullets li{list-style:none;padding:12px 0;border-top:1px solid var(--border);font-size:var(--fs-md);color:var(--text-dim);line-height:var(--lh-relaxed);display:grid;grid-template-columns:80px 1fr;gap:18px}.project-bullets li:first-child{border-top:1px solid var(--border)}.project-bullets li .b-label{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:var(--ls-micro);text-transform:uppercase;color:var(--accent)}.project-bullets li .b-body strong{color:var(--text);font-weight:var(--fw-medium)}.stats-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:24px 0}.stats-detail-grid .item{padding:24px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.stats-detail-grid .item .n{font-size:44px;font-weight:var(--fw-semi);letter-spacing:var(--ls-display);line-height:var(--lh-none)}.stats-detail-grid .item .n .accent{color:var(--accent)}.stats-detail-grid .item .l{margin-top:10px;font-size:var(--fs-sm);color:var(--text-dim);line-height:var(--lh-relaxed)}@media(max-width:900px)and (min-width:641px){body{height:auto;min-height:100vh;min-height:100dvh;overflow:auto}.hero-name{font-size:36px;flex-direction:row;flex-wrap:wrap;column-gap:.25em}.modal-content{padding:48px 24px 60px}.modal-content .modal-title{font-size:var(--fs-4xl)}.xp-detail,.stack-block,.kv-grid{grid-template-columns:1fr;gap:8px}}@media(max-width:640px){.card{padding:10px;border-radius:14px}.card .open-arrow{width:22px;height:22px;top:8px;right:8px}.card .open-arrow svg{width:9px;height:9px}.hero-id{min-width:0}.hero-name{font-size:33px;line-height:.95;letter-spacing:var(--ls-display);flex-direction:column}.stat .n{font-size:var(--fs-lg)}.stat .l{font-size:var(--fs-micro);margin-top:2px}.stack-row .h{font-size:var(--fs-micro)}.stack-row .items:after{content:"···";color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-3xs)}.modal-content{padding:28px 16px 40px}.modal-content .modal-title{font-size:var(--fs-2xl)}.morph-close{top:12px;right:12px;width:32px;height:32px}.xp-detail,.stack-block,.kv-grid{grid-template-columns:1fr;gap:8px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:root{--col: 460px;--col-wide: 720px;--r-card: 22px;--r-inner: 14px;--r-pill: 999px;--ease-framer: cubic-bezier(.44, 0, .56, 1);--t-fast: .22s;--t-base: .3s;--card-bg: #1e1e26;--card-bg-hover: #24242d;--inner-bg: #2a2a34;--inner-bg-hover: #34343f;--hairline: #40404e}html,body{height:auto;overflow:visible}body{min-height:100dvh}.app{width:100%;max-width:var(--col);margin:0 auto;padding:14px 14px 96px;display:flex;flex-direction:column;gap:14px}@media(min-width:860px){.app{display:grid;grid-template-columns:repeat(6,1fr);align-items:stretch;max-width:1180px;padding:20px 20px 80px;gap:14px}.app>*{margin:0;min-width:0}.app>.sec,.app>.rise{grid-column:span 3}.app>.band,.app>.foot{grid-column:1 / -1}.app>.foot{padding-top:10px}.app>.rise:not(.sec):not(.band):not(.foot){display:flex}.app>.rise:not(.sec):not(.band):not(.foot)>.sec{flex:1;min-width:0}.app>.sec{height:100%}.app .sec>.btn:last-child{margin-top:auto}}@media(min-width:860px){.app>.cell-clients,.app>.cell-cta{grid-column:1 / -1}}@media(min-width:1280px){.app{grid-template-columns:repeat(12,1fr);max-width:1560px;padding:24px 24px 80px;gap:16px}.app>.sec,.app>.rise{grid-column:span 4}.app>.band,.app>.foot{grid-column:1 / -1}.app>.cell-stack{grid-column:span 4}.app>.cell-cta{grid-column:span 8}.app>.cell-clients{grid-column:1 / -1}}@media(min-width:1800px){.app{max-width:1840px}}.tabbar-wrap{position:sticky;top:0;padding-top:14px;z-index:40;display:flex;justify-content:center}.tabbar{position:relative;display:flex;gap:4px;padding:6px;border-radius:var(--r-pill);background:#0d0d0dd1;border:1px solid var(--hairline);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.tab{position:relative;z-index:1;display:inline-flex;align-items:center;gap:7px;padding:9px 15px;border-radius:var(--r-pill);font-size:var(--fs-sm);font-weight:var(--fw-medium);letter-spacing:var(--ls-tight);color:var(--text-dim);text-decoration:none;white-space:nowrap;transition:color var(--t-base) var(--ease-framer)}.tab:hover{color:var(--text)}.tab.active{color:#fff}.tab svg{width:15px;height:15px;flex-shrink:0}.tab-pill{position:absolute;left:0;top:6px;bottom:6px;border-radius:var(--r-pill);background:var(--accent-solid);box-shadow:0 6px 20px var(--accent-glow);transition:transform .42s var(--ease-spring),width .42s var(--ease-spring);will-change:transform,width;pointer-events:none}.sec{background:var(--card-bg);border:1px solid var(--hairline);border-radius:var(--r-card);padding:20px 16px;display:flex;flex-direction:column;gap:14px}@media(min-width:900px){.sec{padding:26px 24px;gap:18px}}.sec-head{display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center}.sec-eyebrow{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:var(--fs-3xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--accent)}.sec-eyebrow.ai{color:var(--accent-ai)}.sec-eyebrow svg{width:13px;height:13px}.sec-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-semi);letter-spacing:var(--ls-tight);line-height:var(--lh-tight);color:var(--text);text-wrap:balance}.sec-sub{margin:0;font-size:var(--fs-sm);line-height:var(--lh-snug);color:var(--text-muted);text-wrap:balance}.tile{background:var(--inner-bg);border:1px solid var(--hairline);border-radius:var(--r-inner);padding:13px 14px;transition:background var(--t-base) var(--ease-framer),border-color var(--t-base) var(--ease-framer),transform var(--t-base) var(--ease-framer)}a.tile,button.tile,.tile.clickable{cursor:pointer}a.tile:hover,button.tile:hover,.tile.clickable:hover{background:var(--inner-bg-hover);border-color:var(--border-hover);transform:translateY(-1px)}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}@media(max-width:400px){.grid-2{grid-template-columns:1fr}.grid-2:has(>.btn){row-gap:inherit}}.pill-row{display:flex;flex-wrap:wrap;gap:7px;justify-content:center}.pill{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:var(--r-pill);background:var(--inner-bg);border:1px solid var(--hairline);font-size:var(--fs-xs);color:var(--text-dim);white-space:nowrap;transition:background var(--t-base) var(--ease-framer),color var(--t-base) var(--ease-framer)}.pill:hover{background:var(--inner-bg-hover);color:var(--text)}.pill svg{width:13px;height:13px;color:var(--accent);flex-shrink:0}.pill.ai svg{color:var(--accent-ai)}.pill.mono{font-family:var(--font-mono);font-size:var(--fs-3xs);letter-spacing:var(--ls-normal);text-transform:uppercase}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:var(--r-inner);background:var(--inner-bg);border:1px solid var(--hairline);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text);text-decoration:none;cursor:pointer;transition:background var(--t-base) var(--ease-framer),border-color var(--t-base) var(--ease-framer),transform var(--t-fast) var(--ease-framer)}.btn:hover{background:var(--inner-bg-hover);border-color:var(--border-hover)}.btn:active{transform:scale(.98)}.btn svg{width:15px;height:15px;color:var(--accent)}.btn-accent{background:var(--accent-solid);border-color:transparent;color:#fff;box-shadow:0 8px 26px var(--accent-glow)}.btn-accent:hover{background:var(--accent-solid-hover);border-color:transparent}.btn-accent svg{color:#fff}.hero-top{display:flex;align-items:center;gap:14px}.hero-photo{width:84px;height:84px;border-radius:18px;overflow:hidden;flex-shrink:0;background:var(--inner-bg);border:1px solid var(--hairline)}.hero-photo img{width:100%;height:100%;object-fit:cover;display:block}.hero-id{display:flex;flex-direction:column;gap:7px;min-width:0}.badge-avail{display:inline-flex;align-items:center;gap:7px;align-self:flex-start;padding:6px 11px;border-radius:var(--r-pill);background:var(--inner-bg);border:1px solid var(--hairline);font-size:var(--fs-xs);color:var(--text-dim)}.badge-avail .led{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 #22c55e8c;animation:led-pulse 2.4s var(--ease-framer) 3}@keyframes led-pulse{0%{box-shadow:0 0 #22c55e80}70%{box-shadow:0 0 0 7px #22c55e00}to{box-shadow:0 0 #22c55e00}}.hero-name{margin:0;font-size:var(--fs-2xl);font-weight:var(--fw-semi);letter-spacing:var(--ls-display);line-height:var(--lh-none);color:var(--text)}@media(min-width:900px){.hero-name{font-size:30px}}.hero-line{font-size:var(--fs-md);color:var(--text-muted)}.hero-line .tw{color:var(--accent);font-weight:var(--fw-medium)}.tw-caret{display:inline-block;width:1.5px;height:.95em;margin-left:2px;vertical-align:-.1em;background:var(--accent);animation:tw-caret 1s steps(1) infinite}@keyframes tw-caret{0%,to{opacity:0}50%{opacity:1}}.stat-tile{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 12px 12px}.stat-n{font-size:40px;font-weight:var(--fw-semi);line-height:var(--lh-none);letter-spacing:var(--ls-display);background:linear-gradient(180deg,var(--text) 0%,var(--text-faint) 130%);-webkit-background-clip:text;background-clip:text;color:transparent}.stat-n sup{font-size:.45em;vertical-align:super;color:var(--accent);-webkit-text-fill-color:var(--accent);margin-left:1px}.stat-l{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--r-pill);background:var(--card-bg);border:1px solid var(--hairline);font-size:var(--fs-xs);color:var(--text-dim);text-align:center}.marquee{position:relative;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent)}.marquee-track{display:flex;gap:9px;width:max-content;animation:marquee var(--marquee-dur, 32s) linear infinite;will-change:transform}.marquee:hover .marquee-track,.marquee[data-offscreen] .marquee-track{animation-play-state:paused}.marquee.reverse .marquee-track{animation-direction:reverse}@keyframes marquee{to{transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}.marquee{mask-image:none;-webkit-mask-image:none}}.logo-cell{display:flex;align-items:center;justify-content:center;width:118px;height:54px;border-radius:var(--r-inner);background:var(--inner-bg);border:1px solid var(--hairline);flex-shrink:0}.logo-cell img{max-width:76%;max-height:64%;object-fit:contain;filter:grayscale(1) brightness(2.6);opacity:.92;transition:opacity var(--t-base) var(--ease-framer),filter var(--t-base) var(--ease-framer)}.logo-cell:hover img{opacity:1;filter:grayscale(0) brightness(1)}.logo-cell img.logo-invert{filter:grayscale(1) invert(1) brightness(1.15)}.row-list{display:flex;flex-direction:column;gap:7px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.row-k{font-size:var(--fs-sm);line-height:var(--lh-tight);color:var(--text-dim);min-width:0}.row-v{font-family:var(--font-mono);font-size:var(--fs-3xs);letter-spacing:var(--ls-normal);color:var(--accent);white-space:nowrap}.row-v.ai{color:var(--accent-ai)}.xp-line{display:flex;align-items:baseline;gap:12px;min-width:0}.xp-when{font-family:var(--font-mono);font-size:var(--fs-3xs);letter-spacing:var(--ls-normal);color:var(--text-muted);white-space:nowrap;flex-shrink:0}.xp-body{min-width:0;display:flex;flex-direction:column;gap:2px}.xp-role{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text);line-height:var(--lh-tight)}.xp-where{font-family:var(--font-mono);font-size:var(--fs-3xs);letter-spacing:var(--ls-normal);color:var(--text-muted)}.xp-line.now .xp-role{color:var(--accent)}.proj-card{display:flex;flex-direction:column;gap:9px;padding:15px}.proj-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.proj-card-title{margin:0;font-size:var(--fs-md);font-weight:var(--fw-semi);letter-spacing:var(--ls-tight);line-height:var(--lh-tight);color:var(--text)}.proj-card-year{font-family:var(--font-mono);font-size:var(--fs-3xs);letter-spacing:var(--ls-normal);color:var(--text-muted);white-space:nowrap}.proj-card-sum{font-size:var(--fs-sm);line-height:var(--lh-snug);color:var(--text-muted)}.proj-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.arrow-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--card-bg);border:1px solid var(--hairline);color:var(--text-dim);flex-shrink:0;transition:transform var(--t-base) var(--ease-framer),color var(--t-base) var(--ease-framer)}.tile:hover .arrow-btn,.proj-card:hover .arrow-btn{transform:translate(2px,-2px);color:var(--accent)}.step{display:flex;align-items:center;gap:12px}.step-n{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--card-bg);border:1px solid var(--hairline);font-family:var(--font-mono);font-size:var(--fs-3xs);color:var(--accent);flex-shrink:0}.step-t{font-size:var(--fs-sm);line-height:var(--lh-snug);color:var(--text-dim)}.foot{display:flex;flex-direction:column;align-items:center;gap:8px;padding:6px 0 0;text-align:center}.foot-mark{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--accent);opacity:.75;border-radius:var(--r-pill);transition:opacity .45s var(--ease-spring),transform .45s var(--ease-spring),filter .45s var(--ease-spring)}.foot-mark svg{width:30px;height:30px;overflow:visible}.foot-mark svg path{transform-box:fill-box;transform-origin:center;transition:transform .55s var(--ease-spring)}.foot-mark:hover,.foot-mark:focus-visible{opacity:1;color:var(--text);transform:translateY(-2px) scale(1.06);filter:drop-shadow(0 4px 14px var(--accent-glow));outline:none}.foot-mark:focus-visible{box-shadow:0 0 0 2px var(--accent)}.foot-mark:hover svg path:nth-of-type(1),.foot-mark:focus-visible svg path:nth-of-type(1){transform:translate(-13%) rotate(-5deg);transition-delay:0s}.foot-mark:hover svg path:nth-of-type(2),.foot-mark:focus-visible svg path:nth-of-type(2){transform:translateY(-9%) scale(1.06);transition-delay:.06s}.foot-mark:hover svg path:nth-of-type(3),.foot-mark:focus-visible svg path:nth-of-type(3){transform:translate(13%) rotate(5deg);transition-delay:.12s}.foot-mark svg path:nth-of-type(1){transition-delay:.12s}.foot-mark svg path:nth-of-type(2){transition-delay:.06s}.foot-mark svg path:nth-of-type(3){transition-delay:0s}@media(prefers-reduced-motion:reduce){.foot-mark,.foot-mark svg path{transition:none}.foot-mark:hover,.foot-mark:focus-visible{transform:none}.foot-mark:hover svg path,.foot-mark:focus-visible svg path{transform:none}}.foot-txt{font-family:var(--font-mono);font-size:var(--fs-3xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--text-muted)}.rise{animation:rise .6s var(--ease-spring) backwards}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.rise,.badge-avail .led{animation:none}.tw-caret{animation:none;opacity:1}}.marquee-half{display:flex;gap:9px;padding-right:9px}@media(min-width:860px){.sec-hero{padding:24px 22px}.sec-hero .hero-name{font-size:30px}}.band{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:6px 4px 12px;border-bottom:1px solid var(--hairline);background:none;border-radius:0}.band-txt{display:flex;flex-direction:column;gap:3px;min-width:0}.band-eyebrow{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:var(--fs-3xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--accent)}.band-eyebrow svg{width:13px;height:13px}.band-title{margin:0;font-size:var(--fs-xl);font-weight:var(--fw-semi);letter-spacing:var(--ls-tighter);line-height:var(--lh-tight);color:var(--text)}.band-count{font-family:var(--font-mono);font-size:var(--fs-3xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--text-muted);white-space:nowrap;flex-shrink:0}@media(min-width:860px){.band{margin-top:10px}.band-title{font-size:var(--fs-2xl)}}.proj-badge{display:inline-flex;align-items:center;gap:5px;align-self:flex-start;padding:4px 9px;border-radius:var(--r-pill);font-family:var(--font-mono);font-size:var(--fs-3xs);letter-spacing:var(--ls-normal);text-transform:uppercase}.proj-badge.perso{color:var(--accent);background:var(--accent-glow-soft);border:1px solid var(--accent-ai-border);border-color:#f8717157}.proj-badge.client{color:var(--accent-ai);background:var(--accent-ai-soft);border:1px solid var(--accent-ai-border)}.proj-card{cursor:pointer}.proj-card .proj-card-sum{color:var(--text-dim)}.proj-card:hover{background:var(--card-bg-hover);border-color:var(--border-hover);transform:translateY(-2px)}.proj-card{transition:background var(--t-base) var(--ease-framer),border-color var(--t-base) var(--ease-framer),transform var(--t-base) var(--ease-framer)}@media(min-width:860px){.app-grid2{columns:auto;display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch;max-width:1280px}.app-grid2>*{margin:0}.app-grid2>.sec,.app-grid2>.rise,.app-grid2>div{grid-column:auto}.app-grid2>.foot{grid-column:1 / -1}.app-grid2>.sec,.app-grid2>div>.sec{height:100%}.app-grid2>div{display:flex}.app-grid2>div>.sec{flex:1}.app-grid2 .sec>.btn:last-child{margin-top:auto}}@media(min-width:1280px){.app-grid2{max-width:1440px;gap:18px}}.stack-group{display:flex;flex-direction:column;gap:8px}.stack-group-label{font-family:var(--font-mono);font-size:var(--fs-3xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--text-muted);text-align:center}.stack-group-label.ai{color:var(--accent-ai)}.stack-group--prod .stack-group-label{color:var(--accent)}.cta-links{display:flex;flex-direction:column;gap:inherit}@media(min-width:860px){.cell-cta .row-list{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.cta-links{display:grid;grid-template-columns:repeat(4,1fr);column-gap:9px;row-gap:inherit}.cta-links .grid-2{display:contents}}@media(min-width:1280px){.cell-cta .row-list{grid-template-columns:repeat(2,1fr)}}@media(min-width:860px){.cell-clients .marquee{padding:4px 0}.logo-cell{width:150px;height:72px}}@media(min-width:860px){.app>.sec>.row-list,.app>.rise>.sec>.row-list{flex:1}.app>.sec>.row-list>*,.app>.rise>.sec>.row-list>*{flex:1;display:flex;align-items:center}.app>.sec>.row-list>*>.row,.app>.rise>.sec>.row-list>*>.row{flex:1;min-width:0}.cell-stats>.grid-2{flex:1;grid-auto-rows:1fr}.sec-hero{justify-content:space-between}}@media(max-width:1279px){.app-screen>.bcol{display:contents}.app-screen .tabbar-wrap{order:1;grid-column:1 / -1}.app-screen .cell-hero{order:2}.app-screen .cell-stats{order:3}.app-screen .cell-xp{order:4}.app-screen .cell-stack{order:5}.app-screen .cell-cta{order:6}.app-screen .cell-clients{order:7}.app-screen>.foot{order:8}}@media(min-width:1280px){.app-screen{display:grid;grid-template-columns:1fr 1.12fr 1fr;grid-template-rows:1fr auto;min-height:100dvh;max-width:1560px;padding:14px 20px 10px;gap:14px}.app-screen>.bcol{display:flex;flex-direction:column;gap:14px;min-height:0}.app-screen>.foot{grid-column:1 / -1;padding-top:0}.app-screen .tabbar-wrap{position:static;justify-content:center;padding-top:0}.app-screen .bcol>.sec,.app-screen .bcol>.rise{min-height:0}.app-screen .bcol>.rise{display:flex}.app-screen .bcol>.rise>.sec{flex:1;min-width:0}.app-screen .sec>.btn:last-child{margin-top:auto}.app-screen .sec>.row-list{flex:1}.app-screen .sec>.row-list>*{flex:1;display:flex;align-items:center}.app-screen .sec>.row-list>*>.row{flex:1;min-width:0}.app-screen .cell-stats>.grid-2{flex:1;grid-auto-rows:1fr}.app-screen .sec-hero{justify-content:space-between}}@media(min-width:1280px){.app-screen .cell-cta .row-list{display:flex;flex-direction:column;flex:0 0 auto}.app-screen .cell-cta .row-list>*{flex:0 0 auto}.app-screen .cell-cta>.sec{justify-content:space-between}.app-screen .cta-links{grid-template-columns:repeat(2,1fr)}.app-screen .bcol>.sec,.app-screen .bcol>.rise{flex:1 1 auto}.app-screen .tabbar-wrap{flex:0 0 auto}}@media(min-width:1440px){.app-screen .cta-links{grid-template-columns:repeat(4,1fr)}}@media(min-width:860px)and (max-width:1279px){.app-screen .bcol>.sec,.app-screen .bcol>.rise{grid-column:span 3}.app-screen .bcol>.cell-cta,.app-screen .bcol>.cell-clients{grid-column:1 / -1}.app-screen .bcol>.rise{display:flex}.app-screen .bcol>.rise>.sec{flex:1;min-width:0}.app-screen .bcol>.rise>.sec>.row-list{flex:1}.app-screen .bcol>.rise>.sec>.row-list>*{flex:1;display:flex;align-items:center}.app-screen .bcol>.rise>.sec>.row-list>*>.row{flex:1;min-width:0}.app-screen .cell-cta>.sec{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"head   email" "head   links" "format links";column-gap:28px;row-gap:12px;align-items:center}.app-screen .cell-cta .sec-head{grid-area:head;align-items:flex-start;text-align:left}.app-screen .cell-cta .row-list{grid-area:format;display:flex;align-self:end}.app-screen .cell-cta .btn-accent{grid-area:email}.app-screen .cell-cta .cta-links{grid-area:links;grid-template-columns:repeat(2,1fr);row-gap:9px;align-self:end}}@media(min-width:1280px){.app-grid2{min-height:calc(100dvh - 63px);grid-template-rows:auto auto auto;align-content:stretch;max-width:1560px;padding:14px 20px 10px;gap:14px}.app-grid2>.sec,.app-grid2>div{min-height:0}.app-grid2 .sec{padding:18px 20px;gap:12px}.app-grid2>.foot{padding-top:0}}@media(min-width:1280px){.app-screen>.foot,.app-grid2>.foot{flex-direction:row;justify-content:center;gap:14px}}@media(min-width:1280px)and (max-height:899px){:is(.app-screen,.app-grid2){padding-top:10px;gap:12px}.app-screen>.bcol{gap:12px}:is(.app-screen,.app-grid2) .sec{padding:18px 22px;gap:12px}.app-screen .sec-hero{padding:18px 22px}:is(.app-screen,.app-grid2) .tile{padding:11px 14px}:is(.app-screen,.app-grid2) .btn{padding:10px 16px}.app-screen .hero-photo{width:76px;height:76px}.app-screen .stat-n{font-size:36px}.app-screen .stat-tile{gap:8px;padding:14px 12px 10px}.app-screen .logo-cell{width:136px;height:64px}}@media(min-width:1280px)and (max-height:799px){:is(.app-screen,.app-grid2){padding-top:8px;padding-bottom:6px;gap:10px}.app-screen>.bcol{gap:10px}:is(.app-screen,.app-grid2) .sec{padding:16px 18px;gap:10px}.app-screen .sec-hero{padding:16px 18px}:is(.app-screen,.app-grid2) .sec-head{gap:3px}:is(.app-screen,.app-grid2) .row-list{gap:6px}:is(.app-screen,.app-grid2) .tile{padding:8px 12px}:is(.app-screen,.app-grid2) .btn{padding:8px 14px}:is(.app-screen,.app-grid2) .grid-2{gap:8px}:is(.app-screen,.app-grid2) .pill-row{gap:6px}:is(.app-screen,.app-grid2) .pill{padding:5px 10px}.app-screen .hero-top{gap:12px}.app-screen .hero-photo{width:64px;height:64px;border-radius:15px}.app-screen .sec-hero .hero-name{font-size:26px}.app-screen .stat-n{font-size:32px}.app-screen .stat-tile{gap:6px;padding:10px 10px 8px}.app-screen .stat-l{padding:4px 10px}.app-screen .logo-cell{width:120px;height:54px}.app-screen .tabbar{padding:4px}.app-screen .tab{padding:7px 13px}.app-screen .tab-pill{top:4px;bottom:4px}}@media(min-width:1280px)and (max-height:719px){:is(.app-screen,.app-grid2) .sec{padding:14px 18px}.app-screen .sec-hero{padding:14px 18px}:is(.app-screen,.app-grid2) .tile{padding:7px 12px}}.proj-grid{display:flex;flex-direction:column;gap:14px}@media(min-width:860px){.app>.proj-grid{grid-column:1 / -1}.proj-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;align-items:stretch}.proj-grid>.proj-card{margin:0;min-width:0;height:100%}.proj-grid>.proj-card{grid-column:span 6}.proj-grid>.proj-card:nth-child(odd):last-child{grid-column:4 / span 6}}@media(min-width:1280px){.proj-grid{gap:16px}.proj-grid>.proj-card,.proj-grid>.proj-card:nth-child(odd):last-child{grid-column:span 4}.proj-grid>.proj-card:nth-child(3n+1):last-child{grid-column:5 / span 4}.proj-grid>.proj-card:nth-child(3n+1):nth-last-child(2){grid-column:3 / span 4}}.lang-switch{display:inline-flex;align-items:center;gap:6px}.lang-flag{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--r-pill);text-decoration:none;transition:transform var(--t-base) var(--ease-framer),opacity var(--t-base) var(--ease-framer)}.lang-flag svg{width:26px;height:auto;border-radius:4px;box-shadow:0 0 0 1px var(--hairline);transition:box-shadow var(--t-base) var(--ease-framer)}.lang-flag:not(.active) svg{filter:saturate(.55) brightness(.92);opacity:.85}.lang-flag:hover svg,.lang-flag:focus-visible svg{filter:none;opacity:1}.lang-flag:hover{transform:translateY(-1px)}.lang-flag:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lang-flag.active svg{box-shadow:0 0 0 2px var(--accent)}.lang-flag.active{cursor:default}.app{view-transition-name:page}.tabbar{view-transition-name:tabbar}.tab-pill{view-transition-name:tab-pill}html[data-navigated] .rise{animation:none}::view-transition-old(root),::view-transition-new(root){animation:none}::view-transition-group(page),::view-transition-group(tabbar),::view-transition-group(tab-pill){animation-duration:.38s;animation-timing-function:var(--ease-spring)}::view-transition-old(page){animation:vt-fade-out .18s var(--ease-soft) both}::view-transition-new(page){animation:vt-fade-in .32s var(--ease-spring) both}html:active-view-transition-type(forward)::view-transition-old(page){animation:vt-out-left .18s cubic-bezier(.4,0,1,1) both}html:active-view-transition-type(forward)::view-transition-new(page){animation:vt-in-right .32s var(--ease-spring) both}html:active-view-transition-type(backward)::view-transition-old(page){animation:vt-out-right .18s cubic-bezier(.4,0,1,1) both}html:active-view-transition-type(backward)::view-transition-new(page){animation:vt-in-left .32s var(--ease-spring) both}@keyframes vt-fade-out{to{opacity:0}}@keyframes vt-fade-in{0%{opacity:0}}@keyframes vt-out-left{to{opacity:0;transform:translate(-24px)}}@keyframes vt-out-right{to{opacity:0;transform:translate(24px)}}@keyframes vt-in-right{0%{opacity:0;transform:translate(24px)}}@keyframes vt-in-left{0%{opacity:0;transform:translate(-24px)}}@media(prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}html .rise[data-reveal=pending]{opacity:0;animation:none}html .rise[data-reveal=in]{animation:reveal .35s var(--ease-spring) backwards;animation-delay:var(--reveal-delay, 0ms)}@keyframes reveal{0%{opacity:0;transform:translateY(12px)}}.count{display:inline-grid;justify-items:center}.count>.count-ghost,.count>.count-live{grid-area:1 / 1}.count-ghost{visibility:hidden}.stat-n{font-variant-numeric:tabular-nums}@media(hover:hover)and (pointer:fine){.sec{position:relative}.sec:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;padding:1px;border-radius:inherit;background:radial-gradient(220px circle at var(--sx, 50%) var(--sy, 0%),color-mix(in srgb,var(--accent) 70%,transparent),transparent 70%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);opacity:0;transition:opacity .3s var(--ease-soft);pointer-events:none}.sec:hover:before{opacity:1}}.ai-stack{display:flex;flex-direction:column;gap:inherit}@media(min-width:860px){.sec-ai-stack{container-type:inline-size}.ai-stack{flex:1;display:grid;grid-template-columns:minmax(0,1fr);gap:9px}.ai-stack .stack-group{justify-content:center;gap:14px;padding:18px 14px;background:var(--inner-bg);border:1px solid var(--hairline);border-radius:var(--r-inner);transition:border-color var(--t-base) var(--ease-framer)}.ai-stack .stack-group:hover{border-color:var(--border-hover)}.ai-stack .pill-row{gap:8px}}@container (min-width: 560px){.ai-stack{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@container (max-width: 559px){.ai-stack .stack-group{padding:12px;gap:9px}}.ai-stack .pill{transition:transform .25s var(--ease-spring),opacity .25s var(--ease-soft),background .25s var(--ease-soft),border-color .25s var(--ease-soft),color .25s var(--ease-soft),box-shadow .25s var(--ease-soft)}@media(hover:hover)and (pointer:fine){.ai-stack .pill{cursor:default}.ai-stack .pill:hover{transform:translateY(-2px);color:var(--text);border-color:var(--accent-ai-border);background:var(--accent-ai-soft);box-shadow:0 8px 20px -10px var(--accent-ai)}.ai-stack .stack-group--prod .pill:hover{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 10%,transparent);box-shadow:0 8px 20px -10px var(--accent)}.ai-stack .pill-row:has(.pill:hover) .pill:not(:hover){opacity:.45}}@media(prefers-reduced-motion:no-preference){.ai-stack .pill{animation:pill-in .45s var(--ease-spring) backwards;animation-delay:calc(.3s + var(--i, 0) * 22ms)}html[data-navigated] .ai-stack .pill{animation:none}}@keyframes pill-in{0%{opacity:0;transform:translateY(6px) scale(.96)}}
