@font-face{font-family:Anton;src:url(assets/fonts/anton.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Poster Fallback;src:local("Roboto"),local("Roboto-Regular"),local("Arial"),local("Helvetica");size-adjust:66%;ascent-override:179%;descent-override:50%;line-gap-override:0%}@font-face{font-family:Caveat;src:url(assets/fonts/caveat.woff2) format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Space Grotesk;src:url(assets/fonts/space-grotesk.woff2) format("woff2");font-weight:500 700;font-display:swap}@font-face{font-family:Space Grotesk;src:url(assets/fonts/space-grotesk-ext.woff2) format("woff2");font-weight:500 700;font-display:swap;unicode-range:U+20B9}@font-face{font-family:Inter;src:url(assets/fonts/inter.woff2) format("woff2");font-weight:400 600;font-display:swap}@font-face{font-family:Inter;src:url(assets/fonts/inter-ext.woff2) format("woff2");font-weight:400 600;font-display:swap;unicode-range:U+20B9}@font-face{font-family:JetBrains Mono;src:url(assets/fonts/jetbrains-mono.woff2) format("woff2");font-weight:400 500;font-display:swap}:root{--bg: #fbf8f3;--bg-alt: #f4eee5;--surface: #ffffff;--surface-2: #fdfaf6;--text: #16181d;--muted: #555b6a;--line: #e6dfd2;--line-strong: #d4c9b7;--accent: #c2410c;--accent-2: #b45309;--accent-fill: #c2410c;--accent-fill-2: #b4380a;--accent-ink: #ffffff;--accent-soft: rgba(194, 65, 12, .07);--accent-glow: rgba(194, 65, 12, .24);--ok: #15803d;--grid: rgba(120, 90, 50, .09);--blob-1: rgba(255, 140, 80, .26);--blob-2: rgba(255, 196, 92, .24);--blob-3: rgba(255, 110, 140, .12);--shadow-sm: 0 1px 2px rgba(60, 40, 20, .05), 0 2px 6px rgba(60, 40, 20, .04);--shadow: 0 1px 2px rgba(60, 40, 20, .05), 0 10px 30px -12px rgba(90, 50, 20, .16);--shadow-lg: 0 2px 4px rgba(60, 40, 20, .05), 0 22px 50px -20px rgba(120, 60, 20, .26);--nav-bg: rgba(251, 248, 243, .82);--badge-win: #854d0e;--badge-win-bg: rgba(202, 138, 4, .13);--badge-final: #6d28d9;--badge-final-bg: rgba(109, 40, 217, .1);--badge-sel: #0f766e;--badge-sel-bg: rgba(15, 118, 110, .1);--badge-part: #475569;--badge-part-bg: rgba(71, 85, 105, .1);--danger: #b91c1c;--font-display: "Space Grotesk", system-ui, sans-serif;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, Consolas, monospace;--radius: 16px;--wrap: 1160px;--ease: cubic-bezier(.22, 1, .36, 1);color-scheme:light}:root[data-theme=dark]{--bg: #0b0d12;--bg-alt: #0f1219;--surface: #151922;--surface-2: #121620;--text: #ecebe6;--muted: #a0a5b3;--line: #242a36;--line-strong: #343c4b;--accent: #ff7a4d;--accent-2: #ffb44a;--accent-fill: #ff6a3d;--accent-fill-2: #ff8a3d;--accent-ink: #0b0d12;--accent-soft: rgba(255, 106, 61, .12);--accent-glow: rgba(255, 106, 61, .28);--ok: #3ddc84;--grid: rgba(255, 255, 255, .05);--blob-1: rgba(255, 106, 61, .18);--blob-2: rgba(255, 170, 60, .09);--blob-3: rgba(120, 90, 255, .11);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 16px 40px -16px rgba(0, 0, 0, .6);--shadow-lg: 0 2px 4px rgba(0, 0, 0, .3), 0 26px 60px -20px rgba(0, 0, 0, .75);--nav-bg: rgba(11, 13, 18, .76);--badge-win: #fcd34d;--badge-win-bg: rgba(252, 211, 77, .14);--badge-final: #c4b5fd;--badge-final-bg: rgba(196, 181, 253, .14);--badge-sel: #5eead4;--badge-sel-bg: rgba(94, 234, 212, .12);--badge-part: #cbd5e1;--badge-part-bg: rgba(203, 213, 225, .12);--danger: #f87171;color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0b0d12;--bg-alt: #0f1219;--surface: #151922;--surface-2: #121620;--text: #ecebe6;--muted: #a0a5b3;--line: #242a36;--line-strong: #343c4b;--accent: #ff7a4d;--accent-2: #ffb44a;--accent-fill: #ff6a3d;--accent-fill-2: #ff8a3d;--accent-ink: #0b0d12;--accent-soft: rgba(255, 106, 61, .12);--accent-glow: rgba(255, 106, 61, .28);--ok: #3ddc84;--grid: rgba(255, 255, 255, .05);--blob-1: rgba(255, 106, 61, .18);--blob-2: rgba(255, 170, 60, .09);--blob-3: rgba(120, 90, 255, .11);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 16px 40px -16px rgba(0, 0, 0, .6);--shadow-lg: 0 2px 4px rgba(0, 0, 0, .3), 0 26px 60px -20px rgba(0, 0, 0, .75);--nav-bg: rgba(11, 13, 18, .76);--badge-win: #fcd34d;--badge-win-bg: rgba(252, 211, 77, .14);--badge-final: #c4b5fd;--badge-final-bg: rgba(196, 181, 253, .14);--badge-sel: #5eead4;--badge-sel-bg: rgba(94, 234, 212, .12);--badge-part: #cbd5e1;--badge-part-bg: rgba(203, 213, 225, .12);--danger: #f87171;color-scheme:dark}}*,*:before,*:after{box-sizing:border-box}html{scroll-padding-top:84px}body{margin:0;background:var(--bg);color:var(--text);font:400 16px/1.65 var(--font-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}.theme-anim,.theme-anim *,.theme-anim *:before,.theme-anim *:after{transition:background-color .4s ease,border-color .4s ease,color .4s ease,box-shadow .4s ease!important}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3{font-family:var(--font-display);line-height:1.15;margin:0;letter-spacing:-.02em}p{margin:0 0 1em}ul,ol{margin:0;padding:0;list-style:none}code{font-family:var(--font-mono);font-size:.86em;background:var(--accent-soft);padding:1px 5px;border-radius:5px}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}::selection{background:var(--accent-fill);color:var(--accent-ink)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 24px}.mono{font-family:var(--font-mono);font-size:.82rem;letter-spacing:0}.muted{color:var(--muted)}.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}.grad{background:linear-gradient(100deg,var(--accent) 0%,var(--accent-2) 50%,var(--accent) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.skip{position:absolute;left:-999px;top:8px;background:var(--accent-fill);color:var(--accent-ink);padding:10px 16px;border-radius:8px;z-index:100;font-weight:600}.skip:focus{left:8px}.ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.ambient span{position:absolute;border-radius:50%;filter:blur(80px)}.ambient span:nth-child(1){width:46vw;height:46vw;top:-14vw;right:-10vw;background:var(--blob-1)}.ambient span:nth-child(2){width:36vw;height:36vw;top:30vh;left:-14vw;background:var(--blob-2)}.ambient span:nth-child(3){width:30vw;height:30vw;bottom:-12vw;right:20vw;background:var(--blob-3)}.progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:70;pointer-events:none;background:linear-gradient(90deg,var(--accent-fill),var(--accent-2));transform-origin:0 50%;transform:scaleX(0)}.btn{position:relative;overflow:hidden;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:12px 22px;border-radius:999px;border:1px solid transparent;font:600 .95rem/1 var(--font-body);text-decoration:none;cursor:pointer;transition:transform .3s var(--ease),box-shadow .3s ease,background .25s ease,border-color .25s ease,color .25s ease}.btn svg{width:18px;height:18px}.btn--primary{background:linear-gradient(135deg,var(--accent-fill),var(--accent-fill-2));color:var(--accent-ink);box-shadow:0 8px 22px -10px var(--accent-glow)}.btn--primary:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translate(-120%);transition:transform .7s var(--ease)}.btn--primary:hover{transform:translateY(-2px);box-shadow:0 14px 30px -10px var(--accent-glow)}.btn--primary:hover:after{transform:translate(120%)}.btn--ghost{background:var(--surface);color:var(--text);border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.btn--ghost:hover{transform:translateY(-2px);border-color:var(--accent);color:var(--accent)}.btn:active{transform:translateY(0) scale(.98)}.btn--sm{min-height:40px;padding:9px 16px;font-size:.88rem}.btn__meta{font:500 .7rem/1 var(--font-mono);padding:3px 6px;border-radius:5px;background:var(--accent-soft);color:var(--accent)}.btn[disabled]{opacity:.7;cursor:progress;transform:none}.link{color:var(--accent);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:4px;text-decoration-thickness:1.5px;font-weight:600;font-size:.92rem;transition:text-decoration-color .25s ease}.link:hover{text-decoration-color:currentColor}.icon-btn{width:42px;height:42px;display:inline-grid;place-items:center;border-radius:12px;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);cursor:pointer;transition:border-color .2s ease,color .2s ease}.icon-btn:hover{border-color:var(--accent);color:var(--accent)}.nav{position:sticky;top:0;z-index:50;background:var(--nav-bg);backdrop-filter:saturate(1.5) blur(14px);-webkit-backdrop-filter:saturate(1.5) blur(14px);border-bottom:1px solid transparent;transition:border-color .3s ease,box-shadow .3s ease}.nav.scrolled{border-bottom-color:var(--line);box-shadow:0 8px 30px -18px #00000040}.nav__inner{display:flex;align-items:center;justify-content:space-between;height:70px;gap:16px;transition:height .3s var(--ease)}.nav.scrolled .nav__inner{height:62px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:600}.brand__mark{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent-fill),var(--accent-fill-2));color:var(--accent-ink);font:700 1.15rem/1 var(--font-display);transition:transform .4s var(--ease),border-radius .4s ease}.brand:hover .brand__mark{transform:rotate(-8deg);border-radius:50%}.brand__name{font-family:var(--font-display)}.brand:hover .brand__name{color:var(--accent)}.nav__links{display:flex;align-items:center;gap:2px}.nav__links a{text-decoration:none;padding:8px 12px;border-radius:999px;color:var(--muted);font-weight:500;font-size:.93rem;transition:color .2s ease,background .2s ease}.nav__links a:hover{color:var(--text);background:var(--accent-soft)}.nav__links a.active{color:var(--accent);background:var(--accent-soft)}.nav__links .nav__resume{color:var(--text)}.nav__links .nav__cta{color:var(--accent-ink);background:linear-gradient(135deg,var(--accent-fill),var(--accent-fill-2));margin-left:6px}.nav__links .nav__cta:hover,.nav__links .nav__cta.active{color:var(--accent-ink);background:linear-gradient(135deg,var(--accent-fill),var(--accent-fill-2));filter:brightness(1.06)}.nav__tools{display:flex;gap:8px}.menu-btn,.i-moon{display:none}:root[data-theme=dark] .i-sun{display:none}:root[data-theme=dark] .i-moon{display:block}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .i-sun{display:none}:root:not([data-theme=light]) .i-moon{display:block}}.hero{padding:80px 0 60px;position:relative}.hero:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:52px 52px;mask-image:radial-gradient(ellipse 75% 65% at 65% 35%,#000 15%,transparent 72%);-webkit-mask-image:radial-gradient(ellipse 75% 65% at 65% 35%,#000 15%,transparent 72%)}.hero__grid{display:grid;grid-template-columns:1.4fr 1fr;gap:56px;align-items:center}.status{display:inline-flex;align-items:center;gap:10px;padding:7px 15px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font-size:.85rem;font-weight:500;color:var(--muted);margin-bottom:18px;box-shadow:var(--shadow-sm)}.dot{position:relative;width:8px;height:8px;border-radius:50%;background:var(--ok)}.dot:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--ok);opacity:0}.role{font:500 .9rem/1.4 var(--font-mono);color:var(--accent);margin-bottom:14px;letter-spacing:.01em}.hero h1{font-size:clamp(2.4rem,5.6vw,4.2rem);margin-bottom:22px;letter-spacing:-.035em}.hero h1 .line{display:block}.lede{font-size:1.1rem;color:var(--muted);max-width:60ch}.lede strong{color:var(--text);font-weight:600}.hero__cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 14px;margin:30px 0 26px}.hero__contact{margin-left:4px}.socials{display:flex;flex-wrap:wrap;gap:10px}.socials a{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--muted);font-weight:500;font-size:.9rem;padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);transition:color .2s ease,border-color .2s ease,transform .3s var(--ease)}.socials a:hover{color:var(--accent);border-color:var(--accent);transform:translateY(-2px)}.socials svg{width:17px;height:17px}.hero__card{position:relative;margin:0;justify-self:end;width:100%;max-width:340px;background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:14px;box-shadow:var(--shadow-lg)}.hero__card:before{content:"";position:absolute;inset:-1px;border-radius:inherit;z-index:-1;padding:1px;background:linear-gradient(140deg,var(--accent-fill),transparent 45%,transparent 60%,var(--accent-2));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}.avatar{position:relative;aspect-ratio:4 / 5;border-radius:16px;overflow:hidden;background:var(--bg-alt)}.avatar img{width:100%;height:100%;object-fit:cover;object-position:50% 38%}.hero__card figcaption{display:grid;gap:2px;padding:14px 6px 4px}.hero__card figcaption .mono{color:var(--accent)}.hero__card figcaption strong{font-family:var(--font-display);font-size:1.15rem}.hero__card figcaption .muted{font-size:.9rem}.facts{margin:60px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.facts>div{padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}.facts dt{font:500 .72rem/1.2 var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:8px}.facts dd{margin:0;font-family:var(--font-display);font-weight:600;font-size:1.04rem;line-height:1.3}.section{padding:100px 0;position:relative}.section--alt{background:linear-gradient(180deg,var(--bg-alt),color-mix(in srgb,var(--bg-alt) 60%,var(--bg)));border-block:1px solid var(--line)}.section__head h2{font-size:clamp(1.9rem,3.6vw,2.6rem);margin-bottom:12px;letter-spacing:-.03em}.section__head--row{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:30px;flex-wrap:wrap}.section__intro{color:var(--muted);max-width:62ch;margin:0}.eyebrow{display:inline-flex;align-items:center;gap:10px;font:500 .8rem/1 var(--font-mono);color:var(--accent);text-transform:uppercase;letter-spacing:.12em;margin-bottom:16px}.eyebrow:before{content:"";width:0;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--accent-fill),var(--accent-2));transition:width .8s var(--ease) .15s}.eyebrow.drawn:before{width:28px}.two-col{display:grid;grid-template-columns:1fr 2fr;gap:48px}.two-col>*{min-width:0}.two-col>.section__head{position:sticky;top:100px;align-self:start}.prose p{font-size:1.05rem;color:var(--muted)}.prose strong{color:var(--text);font-weight:600}.prose__sub{font-size:1.15rem;margin:30px 0 12px}.principles{display:grid;gap:10px}.principles li{position:relative;padding:12px 16px 12px 44px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--muted);font-size:.98rem}.principles li:before{content:"→";position:absolute;left:16px;top:12px;color:var(--accent);font-weight:700}.principles strong{color:var(--text)}.about__evidence{margin:14px 0 0!important}.skills{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:34px}.skill-group h3{font:500 .76rem/1 var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:12px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips li{padding:6px 12px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font-size:.86rem;font-weight:500}.chips--sm li{padding:4px 10px;font-size:.76rem;background:var(--accent-soft);border-color:transparent;color:var(--text)}.quote{margin:30px 0 0;padding:18px 22px 18px 24px;background:linear-gradient(135deg,var(--accent-soft),transparent);border:1px solid var(--line);border-left:3px solid var(--accent-fill);border-radius:4px var(--radius) var(--radius) 4px}.quote p{margin:0 0 6px;font-family:var(--font-display);font-size:1.12rem;color:var(--text)!important;line-height:1.45}.quote cite{font-style:normal;font-size:.86rem;color:var(--muted)}.quote--sm{margin:4px 0 14px;padding:12px 16px}.quote--sm p{font-size:.98rem;margin:0}.lift{transition:transform .4s var(--ease),box-shadow .35s ease,border-color .3s ease}.lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font:600 .72rem/1.2 var(--font-body);letter-spacing:.01em;white-space:nowrap;color:var(--badge-part);background:var(--badge-part-bg)}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.badge--win{color:var(--badge-win);background:var(--badge-win-bg)}.badge--final{color:var(--badge-final);background:var(--badge-final-bg)}.badge--sel{color:var(--badge-sel);background:var(--badge-sel-bg)}.badge--plain:before{display:none}.case__media .badge{position:absolute;left:12px;top:12px;z-index:1;background:#0c0e14d1;color:#fff;backdrop-filter:blur(6px)}.case__media .badge--win{color:#fde68a}.case__media .badge--final{color:#ddd6fe}.case__media .badge--sel{color:#99f6e4}.badge--inline{margin-right:6px}.thumb{display:block;overflow:hidden;border-radius:12px;border:1px solid var(--line);background:var(--bg-alt);aspect-ratio:4 / 3}a.thumb,a.card__img,a.case__media,.study__gallery a,.card__mosaic a{cursor:zoom-in}.thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.thumb--doc img{object-position:top}.lift:hover .thumb img,a.thumb:hover img{transform:scale(1.05)}.thumb--logo{background:#fff;cursor:default}.thumb--logo img{object-fit:contain}.lift:hover .thumb--logo img{transform:none}.more{display:flex;flex-wrap:wrap;gap:6px 18px;margin:14px 0 0!important}.filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px}.filter{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:8px 15px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font:500 .9rem/1.2 var(--font-body);cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.filter:hover{border-color:var(--accent);color:var(--accent)}.filter[aria-pressed=true]{background:var(--text);border-color:var(--text);color:var(--bg)}.filter__n{font:500 .74rem/1 var(--font-mono);opacity:.75}.filter[aria-pressed=true] .filter__n{opacity:1}.filter__n:empty{display:none}.group-title{font:600 .8rem/1 var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:0 0 14px}.cards+.filter-empty,.group-title[data-group=more]{margin-top:44px}.is-hidden{display:none!important}.fade-in{animation:fadeIn .35s var(--ease)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.filter-empty{color:var(--muted)}.cases{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;align-items:start}.case{display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-sm);scroll-margin-top:90px}.case__media{position:relative;display:block;aspect-ratio:16 / 9;overflow:hidden;background:#0b0d12;border-bottom:1px solid var(--line)}.case__media img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.case:hover .case__media img{transform:scale(1.04)}.case__body{padding:24px 26px 26px;display:flex;flex-direction:column;gap:10px}.case__body>p{margin:0;color:var(--muted);font-size:.96rem}.case__kicker{font:500 .74rem/1.4 var(--font-mono)!important;text-transform:uppercase;letter-spacing:.07em;color:var(--accent)!important}.case h3{font-size:1.45rem}.case__purpose{color:var(--text)!important;font-size:1.02rem!important;font-weight:500}.case__links{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:6px!important}.study{border:1px solid var(--line);border-radius:14px;background:var(--surface-2);margin-top:4px}.study summary{list-style:none;cursor:pointer;padding:12px 16px;font-weight:600;font-size:.92rem;display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:14px}.study summary::-webkit-details-marker{display:none}.study summary:after{content:"";width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .3s var(--ease);flex:none}.study[open] summary:after{transform:rotate(-135deg) translateY(-2px)}.study summary:hover{color:var(--accent)}.study__grid{margin:0;padding:4px 16px 6px;display:grid;gap:12px}.study__grid div{border-top:1px dashed var(--line);padding-top:10px}.study__grid dt{font:600 .72rem/1.3 var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin-bottom:4px}.study__grid dd{margin:0;color:var(--muted);font-size:.94rem;line-height:1.6}.study__grid strong{color:var(--text)}.study__gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:6px 16px 16px}.study__gallery--wide{grid-template-columns:1fr}.study__gallery a{display:block;overflow:hidden;border-radius:10px;border:1px solid var(--line);aspect-ratio:4 / 3;background:var(--bg-alt)}.study__gallery--wide a{aspect-ratio:auto}.study__gallery img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.study__gallery a:hover img{transform:scale(1.05)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:start}.card{display:flex;flex-direction:column;gap:6px;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-sm);scroll-margin-top:90px}.card h3{font-size:1.1rem;margin-bottom:2px}.card p:not(.tag){color:var(--muted);font-size:.9rem;margin:0}.card .chips{margin:6px 0 10px}.card__img{display:block;margin:-20px -20px 12px;aspect-ratio:16 / 9;overflow:hidden;border-bottom:1px solid var(--line);background:var(--bg-alt)}.card__img img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.card:hover .card__img img{transform:scale(1.05)}.card__img--logo{background:#fff}.card__img--logo img{object-fit:contain;padding:10px}.card .link{margin-top:auto;align-self:flex-start}.card__links{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:auto 0 0}.card__links .link{margin-top:0}.tag{font:500 .72rem/1.4 var(--font-mono);text-transform:uppercase;letter-spacing:.07em;color:var(--accent);margin:0}.tag .badge{text-transform:none;font-family:var(--font-body);letter-spacing:.01em}.mini{display:grid;gap:2px}.mini li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px dashed var(--line);font-size:.9rem}.mini li:last-child{border-bottom:0}.mini a{text-decoration:none;font-weight:500}.mini a:hover{color:var(--accent);text-decoration:underline}.mini span{color:var(--muted);font:.76rem var(--font-mono)}.timeline{position:relative;display:grid;gap:20px}.timeline>li{display:grid;grid-template-columns:1fr 190px;gap:24px;align-items:start;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow-sm)}.timeline>li.timeline__plain{grid-template-columns:1fr}.timeline h3{font-size:1.22rem;margin:6px 0 4px}.org{color:var(--accent);font-weight:600;font-size:.95rem;margin-bottom:12px}.timeline p:not(.org){color:var(--muted)}.timeline strong{color:var(--text)}.edu{margin-top:80px}.early{display:grid;gap:2px;margin:12px 0 2px}.early li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px dashed var(--line)}.early li:last-child{border-bottom:0}.early strong{display:block;font-weight:600;color:var(--text)}.early div span{font-size:.9rem;color:var(--muted)}.early li>.mono{white-space:nowrap;flex:none}.cred-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:22px;align-items:start}.certs{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px 26px;box-shadow:var(--shadow-sm)}.certs__title{font-size:1.2rem;margin-bottom:8px}.cert-list li{display:grid;grid-template-columns:88px 1fr auto;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.cert-list li.cert-list__text{grid-template-columns:1fr}.cert-list li:last-child{border-bottom:0}.thumb--sm{aspect-ratio:4 / 3;border-radius:9px}.cert-list strong{display:block;font-weight:600;margin-bottom:2px}.cert-list span{font-size:.88rem;color:var(--muted)}.cert-list .badge{font-size:.7rem}.certs__more{font-size:.88rem;margin:14px 0 0}.contact__grid{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:start}.contact h2{font-size:clamp(2rem,4.4vw,3.2rem);margin-bottom:16px;letter-spacing:-.035em}.email-box{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:26px 0 20px;padding:12px 12px 12px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.email-box__addr{font:500 clamp(.88rem,2.4vw,1.05rem) var(--font-mono);text-decoration:none;overflow-wrap:anywhere;min-width:0}.email-box__addr:hover{color:var(--accent);text-decoration:underline}.contact__links{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center}.contact__links a{font-weight:600;text-decoration:none}.contact__links a:hover{color:var(--accent);text-decoration:underline}.form{display:grid;gap:16px;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--shadow)}.field{display:grid;gap:6px}.field label{font-weight:600;font-size:.9rem}.form input[type=text],.form input[type=email],.form textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--line-strong);background:var(--surface-2);color:var(--text);font:inherit;resize:vertical;transition:border-color .2s ease,box-shadow .2s ease}.form input:focus,.form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.form [aria-invalid=true]{border-color:var(--danger)!important}.field__err{margin:0;color:var(--danger);font-size:.85rem;font-weight:500}.field--check{grid-template-columns:auto 1fr;align-items:start;column-gap:10px}.field--check input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--accent-fill)}.field--check label{font-weight:500;font-size:.9rem;line-height:1.5}.field--check .field__err{grid-column:2}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form__submit{justify-self:start}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;display:none}.form.is-sending .spinner{display:inline-block;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.form__captcha{min-height:78px;max-width:100%;overflow:hidden}.form__captcha[hidden]{display:none}.form__note{margin:0;font-size:.86rem;color:var(--muted)}.form__note.is-ok{color:var(--ok);font-weight:600}.form__note.is-err{color:var(--danger);font-weight:500}.footer{border-top:1px solid var(--line);padding:30px 0;font-size:.9rem;color:var(--muted)}.footer__inner{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.footer p{margin:0}.footer__links{display:flex;flex-wrap:wrap;gap:6px 18px}.footer__links a{text-decoration:none;padding:4px 0}.footer__links a:hover{color:var(--accent);text-decoration:underline}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--text);color:var(--bg);padding:10px 18px;border-radius:999px;font-weight:500;font-size:.9rem;transition:opacity .25s ease,transform .3s var(--ease);z-index:80}.toast.show{opacity:1;transform:translate(-50%)}.to-top{position:fixed;right:24px;bottom:24px;z-index:60;width:52px;height:52px;border-radius:50%;border:0;padding:0;cursor:pointer;display:grid;place-items:center;color:var(--accent-ink);background:linear-gradient(135deg,var(--accent-fill),var(--accent-fill-2));box-shadow:0 12px 28px -10px var(--accent-glow),0 0 0 4px var(--bg);opacity:0;visibility:hidden;transform:translateY(16px);transition:opacity .3s ease,transform .4s var(--ease),visibility 0s linear .3s}.to-top.show{opacity:1;visibility:visible;transform:none;transition:opacity .3s ease,transform .4s var(--ease),visibility 0s}.to-top:hover{transform:translateY(-3px)}.to-top__ring{position:absolute;inset:-6px;width:calc(100% + 12px);height:calc(100% + 12px);transform:rotate(-90deg)}.to-top__ring circle{fill:none;stroke-width:2.5}.to-top__ring .track{stroke:var(--line)}.to-top__ring .bar{stroke:var(--accent-fill);stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100}.to-top__arrow{width:22px;height:22px;stroke-width:2.4}.lightbox{border:0;padding:0;background:transparent;max-width:min(92vw,1200px);max-height:92vh;overflow:visible}.lightbox::backdrop{background:#08080cd9;backdrop-filter:blur(6px)}.lightbox[open]{animation:pop .3s var(--ease)}.lightbox img{max-width:min(92vw,1200px);max-height:82vh;width:auto;height:auto;border-radius:14px;box-shadow:0 30px 80px #0009;margin:0 auto;background:#111}.lightbox img[hidden]{display:none}.lightbox video{display:block;width:min(92vw,1200px);max-height:82vh;border-radius:14px;box-shadow:0 30px 80px #0009;margin:0 auto;background:#000}.lightbox p{color:#eee;text-align:center;margin:14px 0 0;font-size:.92rem}.lightbox__close{position:absolute;top:-18px;right:-18px;width:42px;height:42px;border-radius:50%;border:0;cursor:pointer;background:#fff;color:#111;display:grid;place-items:center;box-shadow:0 6px 20px #0006}.lightbox__close:focus-visible{outline-color:#fff}.legal{padding:60px 0 90px}.legal .wrap{max-width:780px}.legal h1{font-size:clamp(2rem,5vw,2.8rem);margin:10px 0 8px;letter-spacing:-.03em}.legal h2{font-size:1.3rem;margin:34px 0 10px}.legal p,.legal li{color:var(--muted)}.legal ul{list-style:disc;padding-left:22px;display:grid;gap:6px;margin:0 0 1em}.legal strong{color:var(--text)}.legal .note{padding:14px 18px;border:1px solid var(--line);border-left:3px solid var(--accent-fill);border-radius:4px 12px 12px 4px;background:var(--surface)}@keyframes pop{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease) var(--d, 0s),transform .8s var(--ease) var(--d, 0s)}.js .reveal.in{opacity:1;transform:none}.js .enter{opacity:0;transform:translateY(18px);animation:enter .8s var(--ease) forwards}.js .d1{animation-delay:.05s}.js .d2{animation-delay:.15s}.js .d3{animation-delay:.27s}.js .d4{animation-delay:.38s}.js .d5{animation-delay:.48s}.js .d6{animation-delay:.58s}@keyframes enter{to{opacity:1;transform:none}}.dot:after{animation:ping 2.2s cubic-bezier(0,0,.2,1) infinite}@keyframes ping{0%{opacity:.7;transform:scale(.6)}80%,to{opacity:0;transform:scale(1.8)}}.ambient span:nth-child(1){animation:drift1 24s ease-in-out infinite alternate}.ambient span:nth-child(2){animation:drift2 28s ease-in-out infinite alternate}@keyframes drift1{to{transform:translate(-8vw,10vh) scale(1.12)}}@keyframes drift2{to{transform:translate(10vw,-6vh) scale(.92)}}}@media(prefers-reduced-motion:reduce){.lift,.lift:hover,.btn:hover,.socials a:hover,.to-top:hover,.case:hover .case__media img,.card:hover .card__img img,.lift:hover .thumb img,a.thumb:hover img,.study__gallery a:hover img{transform:none!important}.fade-in{animation:none}}@media(max-width:1100px){.cards{grid-template-columns:repeat(2,1fr)}.nav__links a{padding:8px 9px;font-size:.9rem}}@media(max-width:960px){.two-col{grid-template-columns:1fr;gap:26px}.two-col>.section__head{position:static}.cases{grid-template-columns:1fr}.contact__grid,.cred-grid{grid-template-columns:1fr;gap:32px}.facts{grid-template-columns:repeat(2,1fr)}.menu-btn{display:inline-grid}.nav__links{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:2px;padding:10px 16px 18px;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 20px 40px -20px #00000059;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .2s ease,transform .3s var(--ease),visibility 0s linear .2s}.nav__links.open{opacity:1;visibility:visible;transform:none;transition:opacity .2s ease,transform .3s var(--ease),visibility 0s}.nav__links a{padding:13px 12px;border-radius:12px;font-size:1rem}.nav__links .nav__cta{margin:8px 0 0;text-align:center}}@media(max-width:760px){.ambient span{animation:none!important;filter:blur(60px)}.nav{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--bg)}.wrap{padding:0 16px}.brand__name{font-size:.98rem}.hero{padding:36px 0 44px}.hero__grid{grid-template-columns:1fr;gap:28px}.hero__card{justify-self:stretch;max-width:none;order:-1;display:flex;align-items:center;gap:14px;padding:10px;border-radius:18px}.hero__card .avatar{width:76px;flex:none;border-radius:12px;aspect-ratio:1}.hero__card .avatar img{object-position:55% 40%}.hero__card figcaption{padding:0}.hero__cta .btn{flex:1 1 auto}.facts{grid-template-columns:1fr 1fr;gap:10px;margin-top:36px}.facts>div{padding:14px 16px}.section{padding:70px 0}.skills{grid-template-columns:1fr}.filters{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px 22px;padding:2px 16px 6px;scrollbar-width:thin}.filter{flex:none}.case__body{padding:20px}.case h3{font-size:1.3rem}.cards{grid-template-columns:1fr}.timeline>li{grid-template-columns:1fr;gap:16px;padding:20px}.timeline .thumb{order:-1;aspect-ratio:16 / 9}.cert-list li{grid-template-columns:72px 1fr;gap:12px}.cert-list li>.link{grid-column:2;justify-self:start}.form{padding:20px}.to-top{right:16px;bottom:16px;width:48px;height:48px}.lightbox__close{top:-52px;right:0}}.case__media--top img{object-position:50% 12%}.facts__sub{display:block;margin-top:4px;font:500 .8rem/1.35 var(--font-body);color:var(--muted)}.remarks{display:grid;grid-template-columns:1fr 2fr;gap:14px;align-items:stretch}.remarks .quote{margin:0;display:flex;flex-direction:column;justify-content:space-between;gap:10px}.remarks__src{font-size:.88rem;color:var(--muted);margin:12px 0 0}.quote--sm p+p{margin-top:10px}.quote--sm cite{display:block;margin-top:10px}.thumbs{display:grid;gap:14px}.thumbs figure{margin:0}.thumbs figcaption{margin-top:6px;font-size:.78rem;color:var(--muted);text-align:center}@media(max-width:760px){.remarks{grid-template-columns:1fr}.timeline .thumbs{order:-1;grid-template-columns:1fr 1fr;gap:10px}.timeline .thumbs .thumb{aspect-ratio:1}}@media(max-width:420px){.nav__tools{gap:4px}.nav__tools .icon-btn{width:44px;height:44px}.brand{gap:9px}.brand__name{font-size:.92rem}}.filters,.filter{position:relative}a,button,summary,label,.filter{touch-action:manipulation}h1,h2,h3{text-wrap:balance}p,li,dd{text-wrap:pretty}.facts dd,.filter__n{font-variant-numeric:tabular-nums}.icon-btn:active,.filter:active,.to-top:active{transform:scale(.94)}.icon-btn,.filter{transition:transform .12s ease,border-color .2s ease,color .2s ease,background .2s ease}.form__hint{margin:0 0 4px;font-size:.86rem;color:var(--muted)}.field__help{margin:6px 0 0;font-size:.82rem;color:var(--muted)}@media(pointer:coarse){.more .link,.case__links .link,.card>.link,.cert-list li>.link,.contact__links a,.footer__links a,.hero__contact,.about__evidence .link,.email-box__addr,.mini a,.section__head--row>.link{display:inline-flex;align-items:center;min-height:44px}.certs__more .link,.cert-list span .link,.remarks__src .link,.field--check .link{padding-block:12px}.footer__links{gap:0 20px}.field--check input{width:24px;height:24px;margin-top:0}.field input,.field textarea{min-height:48px}}@media(max-width:380px){.nav__tools{gap:2px}.brand{gap:8px}.brand__name{font-size:.84rem}}@media(max-width:340px){.brand__name{display:none}}.cred-group+.cred-group{margin-top:56px}.cred-group .certs__title{margin-bottom:18px;display:flex;align-items:center;gap:12px}.cred-group .certs__title:after{content:"";flex:1;height:1px;background:var(--line)}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}.tile{display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .25s ease}.tile:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--line-strong)}.tile__img{display:block;aspect-ratio:4 / 3;overflow:hidden;background:var(--bg-alt);border-bottom:1px solid var(--line);cursor:zoom-in}.tile__img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.tile:hover .tile__img img{transform:scale(1.05)}.tile__img--logo{background:#fff;cursor:default}.tile__img--logo img{object-fit:contain;padding:14px}.tile:hover .tile__img--logo img{transform:none}.tile__body{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:16px 18px 18px;flex:1}.tile__body h4{margin:2px 0 0;font:600 1.02rem/1.3 var(--font-display)}.tile__body p{margin:0;font-size:.86rem;color:var(--muted)}.tile__body .link{margin-top:auto;padding-top:6px}.tile .badge{font-size:.68rem}.cred-rows{margin-top:18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.cred-rows li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:14px 18px;border-bottom:1px solid var(--line);font-size:.9rem}.cred-rows li:last-child{border-bottom:0}.cred-rows li>span:last-child{color:var(--muted)}.mini-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}.mini-gallery figure{margin:0}.mini-gallery .thumb{aspect-ratio:4 / 3;border-radius:9px}.mini-gallery figcaption{margin-top:5px;font-size:.74rem;line-height:1.3;color:var(--muted)}@media(max-width:760px){.mini-gallery{grid-template-columns:repeat(2,1fr)}.tiles{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.tile__body{padding:12px 14px 14px}.tile__body h4{font-size:.95rem}}@media(pointer:coarse){.tile__body .link{display:inline-flex;align-items:center;min-height:44px;padding-top:0}.cred-rows .link{padding-block:12px}}.cred-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 22px}.cred-stats>div{padding:16px 20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}.cred-stats dt{font:500 .72rem/1.2 var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.cred-stats dd{margin:6px 0 0;font:700 2.2rem/1 var(--font-display);font-variant-numeric:tabular-nums;background:linear-gradient(135deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.cred-feature{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:0;margin-bottom:30px;overflow:hidden;border:1px solid transparent;border-radius:calc(var(--radius) + 4px);background:linear-gradient(var(--surface),var(--surface)) padding-box,linear-gradient(135deg,var(--accent-fill),var(--line) 45%,var(--line) 70%,var(--accent-2)) border-box;box-shadow:var(--shadow-lg)}.cred-feature__img{display:grid;place-items:center;padding:28px;cursor:zoom-in;background:radial-gradient(120% 90% at 30% 20%,var(--accent-soft),transparent 70%),var(--bg-alt);border-right:1px solid var(--line)}.cred-feature__img img{width:100%;height:auto;border-radius:10px;box-shadow:0 18px 40px -18px #00000073;transition:transform .6s var(--ease)}.cred-feature__img:hover img{transform:scale(1.03)}.cred-feature__body{padding:26px 28px 24px;display:flex;flex-direction:column;gap:10px;min-width:0}.cred-feature__kicker{margin:0;font-size:.8rem;color:var(--accent)}.cred-feature__body h4{margin:0;font:700 clamp(1.3rem,2.2vw,1.6rem)/1.2 var(--font-display)}.cred-feature__desc{margin:0;color:var(--muted);font-size:.94rem}.courses{margin:6px 0 0;border-top:1px solid var(--line)}.courses li{display:grid;grid-template-columns:30px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:.9rem}.course__n{color:var(--accent);font-size:.78rem}.course__t{font-weight:500;min-width:0}.courses time{font-size:.76rem;color:var(--muted)}.cred-feature__cta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:8px 0 0}.cred-feature__cta .mono{font-size:.76rem}.cred-feature__cta .btn svg{width:16px;height:16px}.cred-filters{margin-bottom:18px}.best5{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin:0;padding:0;list-style:none}.best5 a{display:flex;flex-direction:column;gap:6px;height:100%;padding:16px;border-radius:14px;border:1px solid var(--line);border-top:3px solid var(--accent);background:var(--surface);color:inherit;text-decoration:none;transition:border-color .2s ease}.best5 a:hover{border-color:var(--accent)}.best5 a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.best5__n{font-size:.78rem;color:var(--accent)}.best5 strong{font:600 1rem/1.25 var(--font-display)}.best5 a>span:last-child{font-size:.86rem;line-height:1.4;color:var(--muted)}.creds{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px}.cred{--cat: var(--accent);position:relative;display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .25s ease}.cred[data-cat=ai]{--cat: var(--badge-final)}.cred[data-cat=lead]{--cat: var(--badge-sel)}.cred[data-cat=soft]{--cat: var(--badge-part)}.cred:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--cat);z-index:1}.cred:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--line-strong)}.cred__img{display:block;aspect-ratio:16 / 10;overflow:hidden;background:var(--bg-alt);border-bottom:1px solid var(--line);cursor:zoom-in}.cred__img img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .6s var(--ease)}.cred:hover .cred__img img{transform:scale(1.05)}.cred__img--logo{background:#fff;cursor:default}.cred__img--logo img{object-fit:contain;object-position:center;padding:16px}.cred:hover .cred__img--logo img{transform:none}.cred__body{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 18px 16px;flex:1}.cred__top{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;margin:0}.cred__cat{font:600 .68rem/1 var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--cat)}.cred__top time{font-size:.74rem;color:var(--muted)}.cred__body h4{margin:2px 0 0;font:600 1.02rem/1.3 var(--font-display)}.cred__issuer{margin:0;font-size:.85rem;color:var(--muted)}.cred .badge{font-size:.68rem}.cred__id{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;width:100%;margin:auto 0 0;padding-top:10px;border-top:1px dashed var(--line)}.cred__id .mono{font-size:.72rem;color:var(--muted)}.cred__verify{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;font:600 .76rem/1 var(--font-body);text-decoration:none;white-space:nowrap;color:var(--badge-sel);background:var(--badge-sel-bg);border:1px solid transparent;transition:border-color .2s ease,transform .12s ease}.cred__verify svg{width:14px;height:14px;stroke-width:2.4}.cred__verify:hover{border-color:currentColor}.cred__verify:active{transform:scale(.95)}.cred.fade-in{animation:pop .35s var(--ease)}@media(max-width:960px){.cred-feature{grid-template-columns:1fr}.cred-feature__img{border-right:0;border-bottom:1px solid var(--line);padding:18px}}@media(max-width:760px){.cred-stats{gap:8px}.cred-stats>div{padding:12px}.cred-stats dt{font-size:.62rem;letter-spacing:.06em}.cred-stats dd{font-size:1.7rem}.cred-feature__body{padding:18px}.courses li{grid-template-columns:24px minmax(0,1fr) auto}.courses time{display:none}.cred-filters{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px 16px;padding:2px 16px 6px}}@media(pointer:coarse){.cred__verify{position:relative;padding:8px 12px}.cred__verify:after{content:"";position:absolute;inset:-6px -4px}.courses li{min-height:48px}}.cred-stats{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:960px){.cred-feature__img img{max-width:420px}}@media(max-width:560px){.cred-feature__img img{max-width:260px}.creds{grid-template-columns:1fr;gap:12px}.cred{display:grid;grid-template-columns:104px minmax(0,1fr)}.cred__img{aspect-ratio:auto;height:100%;min-height:110px;border-bottom:0;border-right:1px solid var(--line)}.cred__img--logo img{padding:10px}.cred__body{padding:12px 14px;gap:4px}.cred__body h4{font-size:.95rem}.cred__issuer{font-size:.8rem}.cred__id{padding-top:8px}}.intro{display:none}.intro-on .intro{display:flex;align-items:center;justify-content:center;position:fixed;inset:0;z-index:300;background:radial-gradient(60% 50% at 50% 45%,#1a1210,#0b0d12 70%);color:#f4f1ec;cursor:pointer;transition:transform .85s cubic-bezier(.76,0,.24,1),border-radius .85s cubic-bezier(.76,0,.24,1);animation:introFailsafe .6s ease 3.4s forwards}.intro-on:not(.intro-leaving) body{overflow:hidden}.intro-leaving .intro{transform:translateY(-100%);border-radius:0 0 50% 50%/0 0 12vh 12vh}@keyframes introFailsafe{to{transform:translateY(-100%);visibility:hidden}}.intro__inner{display:grid;justify-items:center;gap:14px;text-align:center}.intro__mark{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#ff6a3d,#e2541f);color:#0b0d12;font:700 2rem/1 var(--font-display);box-shadow:0 0 60px #ff6a3d73;animation:introPop .7s var(--ease) both}.intro__name{font:700 clamp(1.5rem,4vw,2.4rem)/1.1 var(--font-display);letter-spacing:-.03em;animation:introUp .7s var(--ease) .12s both}.intro__role{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:#ff9a75;animation:introUp .7s var(--ease) .22s both}.intro__bar{position:relative;width:min(240px,60vw);height:2px;margin-top:10px;background:#ffffff1f;border-radius:2px;overflow:hidden}.intro__bar span{position:absolute;inset:0;background:linear-gradient(90deg,#ff6a3d,#ffb36b);transform:scaleX(0);transform-origin:left}.intro__count{font-size:.82rem;color:#f4f1ec99;font-variant-numeric:tabular-nums}@keyframes introPop{0%{opacity:0;transform:scale(.6) rotate(-10deg)}to{opacity:1;transform:none}}@keyframes introUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.intro-on:not(.intro-leaving) .enter,.intro-on:not(.intro-leaving) .stage__word span{animation-play-state:paused!important}.stage{--word: clamp(4.4rem, 17vw, 15rem);position:relative;padding:0 0 84px;overflow:hidden;min-height:min(calc(100svh - 70px),1040px)}.stage__word{position:absolute;left:50%;top:18px;z-index:0;display:flex;white-space:nowrap;transform:translate(-50%,var(--py, 0px));font:700 var(--word)/.82 var(--font-display);letter-spacing:-.05em;pointer-events:none;user-select:none}.stage__word span{display:inline-block;background:linear-gradient(180deg,var(--accent-fill) 20%,var(--accent-fill-2) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.stage__grid{position:relative;z-index:1;display:grid;align-items:end;grid-template-columns:minmax(0,1.1fr) minmax(0,.95fr) 180px;gap:28px}.stage__text{padding-top:calc(var(--word) * .82 + 54px)}.stage h1{font-size:inherit;margin:0 0 14px;letter-spacing:normal}.stage__hello{display:block;font:500 clamp(1.1rem,1.8vw,1.45rem)/1.2 var(--font-display);color:var(--muted);margin-bottom:6px}.stage__name{display:block;font:700 clamp(2.2rem,4.3vw,3.7rem)/1 var(--font-display);letter-spacing:-.04em;text-transform:uppercase}.stage h1 .line.grad{display:block;margin-top:12px;font-size:clamp(1.35rem,2.5vw,2.1rem);letter-spacing:-.02em}.stage .role{margin:0 0 14px}@media(max-width:480px){.stage .role{font-size:clamp(.68rem,3.45vw,.9rem);letter-spacing:0}}.stage .lede{font-size:1.02rem;max-width:54ch}.stage .hero__cta{margin:24px 0 20px}.stage__portrait{position:relative;margin:0;height:clamp(440px,62vw,720px);align-self:end}.stage__portrait img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;object-position:50% 30%;-webkit-mask-image:linear-gradient(to bottom,#000 68%,transparent 98%),radial-gradient(ellipse 72% 80% at 50% 40%,#000 52%,transparent 82%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to bottom,#000 68%,transparent 98%),radial-gradient(ellipse 72% 80% at 50% 40%,#000 52%,transparent 82%);mask-composite:intersect}.stage__glow{position:absolute;inset:12% 8% 6%;z-index:0;border-radius:50%;background:radial-gradient(circle at 50% 40%,var(--accent-glow),transparent 68%);filter:blur(30px)}.stage__tag{position:absolute;z-index:2;left:50%;bottom:7%;transform:translate(-50%);width:max-content;max-width:94%;padding:9px 14px;border-radius:999px;font-size:.8rem;text-align:center;background:var(--nav-bg);border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.stage__tag .mono{color:var(--accent);margin-right:6px}@media(max-width:1100px){.stage__tag{width:auto;left:8px;right:8px;transform:none;max-width:none}.stage__tag *{min-width:0;white-space:normal}}.stage__rail{margin:0;display:grid;gap:14px;align-self:center;padding-top:calc(var(--word) * .5)}.stage__rail>div{padding:2px 0 2px 16px;border-left:2px solid var(--line-strong);transition:border-color .3s ease}.stage__rail>div:hover{border-color:var(--accent-fill)}.stage__rail dt{font:500 .68rem/1.2 var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.stage__rail dd{margin:0}.stage__rail .count{display:block;font:700 2.6rem/1.05 var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.03em;background:linear-gradient(135deg,var(--text),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}.stage__sub{font-size:.76rem;color:var(--muted);line-height:1.35}.stage__scroll{position:absolute;left:50%;bottom:20px;transform:translate(-50%);z-index:2;display:inline-flex;align-items:center;gap:6px;font:500 .72rem/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-decoration:none;padding:10px}.stage__scroll svg{width:16px;height:16px}.stage__scroll:hover{color:var(--accent)}.js .d7{animation-delay:.68s}.js .d8{animation-delay:.78s}@media(prefers-reduced-motion:no-preference){.js .stage__word span{opacity:0;transform:translateY(40%);animation:wordRise 1s var(--ease) forwards;animation-delay:calc(.05s + var(--i) * 55ms)}.stage__scroll svg{animation:bob 1.8s ease-in-out infinite}}@keyframes wordRise{to{opacity:1;transform:none}}@keyframes bob{50%{transform:translateY(4px)}}@media(max-width:1100px){.stage__grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.stage__rail{grid-column:1 / -1;grid-template-columns:repeat(4,1fr);padding-top:8px;align-self:start}}@media(max-width:760px){.stage{--word: 21vw;min-height:0;padding-bottom:64px}.stage__word{top:10px}.stage__grid{grid-template-columns:1fr;gap:22px;padding-top:calc(var(--word) * .82 * .45)}.stage__portrait{order:-1;height:clamp(320px,100vw,430px);width:min(84vw,340px);justify-self:center}.stage__text{padding-top:0}.stage__rail{grid-template-columns:repeat(2,1fr);gap:16px 14px}.stage__rail .count{font-size:2.1rem}.stage__tag{font-size:.72rem;bottom:4%}}.stage{--word: clamp(5.4rem, 22vw, 20rem);--font-poster: "Anton", "Impact", "Poster Fallback", sans-serif}.stage__word{font-family:var(--font-poster);font-weight:400;letter-spacing:-.005em;line-height:.86;top:12px}.stage__word span{background:linear-gradient(180deg,var(--accent-fill) 35%,var(--accent-fill-2) 100%);-webkit-background-clip:text;background-clip:text}.stage__text{padding-top:calc(var(--word) * .86 + 34px)}.stage__hello{font:600 clamp(1.7rem,2.8vw,2.4rem)/1 "Caveat","Segoe Script",cursive;color:var(--text);margin-bottom:2px}.stage__name{font-family:var(--font-poster);font-weight:400;letter-spacing:.01em;line-height:.95;font-size:clamp(2.7rem,5.2vw,4.6rem)}.accent-dot{color:var(--accent)}.stage__rail .count{font-family:var(--font-poster);font-weight:400;font-size:3rem;letter-spacing:.01em;line-height:1;background:none;color:var(--accent);-webkit-text-fill-color:currentColor}.stage__rail .count:after{content:".";color:var(--text)}.stage__rail dt{margin-bottom:4px}@media(max-width:760px){.stage{--word: 24vw}.stage__grid{padding-top:calc(var(--word) * .86 * .5)}.stage__rail .count{font-size:2.4rem}}.stage__word span:nth-child(1){--i: 0}.stage__word span:nth-child(2){--i: 1}.stage__word span:nth-child(3){--i: 2}.stage__word span:nth-child(4){--i: 3}.stage__word span:nth-child(5){--i: 4}.stage__word span:nth-child(6){--i: 5}.stage__word span:nth-child(7){--i: 6}.stage__word span:nth-child(8){--i: 7}.stage__word span:nth-child(9){--i: 8}.stage{--word: clamp(5.4rem, 16.5vw, 15rem)}.stage__text{padding-top:calc(var(--word) * .86 + 30px)}.stage__portrait{height:clamp(520px,66vw,860px);margin-top:calc(var(--word) * -.62)}.stage__portrait img{object-position:62% 26%;filter:grayscale(1) contrast(1.18) brightness(.82);transition:filter .9s var(--ease),transform 1.2s var(--ease);-webkit-mask-image:linear-gradient(to bottom,#000 62%,transparent 96%),radial-gradient(ellipse 58% 66% at 56% 42%,#000 42%,transparent 74%);mask-image:linear-gradient(to bottom,#000 62%,transparent 96%),radial-gradient(ellipse 58% 66% at 56% 42%,#000 42%,transparent 74%)}.stage__portrait:hover img{filter:none;transform:scale(1.015)}.stage__glow{inset:6% 4% 10%;background:radial-gradient(circle at 56% 40%,var(--accent-glow),transparent 64%);filter:blur(40px);opacity:.9}.stage__portrait:after{content:"";position:absolute;left:18%;right:18%;bottom:14%;height:1px;z-index:2;background:linear-gradient(90deg,transparent,var(--accent-fill),transparent);opacity:.7}.stage__tag{bottom:9%}.stage .lede{font-size:.98rem}.stage .hero__cta{margin:20px 0 16px}@media(max-width:1100px){.stage__portrait{margin-top:calc(var(--word) * -.5);height:clamp(480px,70vw,700px)}}@media(max-width:760px){.stage{--word: 24vw}.stage__text{padding-top:0}.stage__grid{padding-top:calc(var(--word) * .86 * .42)}.stage__portrait{margin-top:0;height:clamp(320px,98vw,420px);width:min(88vw,360px)}.stage__portrait img{-webkit-mask-image:linear-gradient(to bottom,#000 60%,transparent 95%),radial-gradient(ellipse 62% 70% at 56% 44%,#000 44%,transparent 76%);mask-image:linear-gradient(to bottom,#000 60%,transparent 95%),radial-gradient(ellipse 62% 70% at 56% 44%,#000 44%,transparent 76%)}.stage__tag{bottom:4%}}@media(hover:none){.stage__portrait.is-colour img{filter:none}}.stage__portrait:after{content:none}.stage__portrait img{-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 24%,#000 62%,transparent 96%),radial-gradient(ellipse 60% 70% at 56% 46%,#000 44%,transparent 76%);mask-image:linear-gradient(to bottom,transparent 0%,#000 24%,#000 62%,transparent 96%),radial-gradient(ellipse 60% 70% at 56% 46%,#000 44%,transparent 76%)}.stage__tag{border-color:color-mix(in srgb,var(--accent-fill) 35%,var(--line))}@media(max-width:760px){.stage__portrait img{-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 22%,#000 60%,transparent 95%),radial-gradient(ellipse 64% 72% at 56% 46%,#000 46%,transparent 78%);mask-image:linear-gradient(to bottom,transparent 0%,#000 22%,#000 60%,transparent 95%),radial-gradient(ellipse 64% 72% at 56% 46%,#000 46%,transparent 78%)}.stage__tag{font-size:.7rem;padding:7px 12px;max-width:92%}.stage__tag .tag__extra{display:none}}@media(max-width:760px){.stage__tag{white-space:nowrap;font-size:.68rem}}.build-on body{overflow:hidden}.build-on .stage:not(.bp-live) :is(.stage__word,#hero-title,.stage__rail,.status,.role,.lede,.hero__cta,.socials,.stage__scroll){opacity:0}.build-on .stage:not(.bp-live) .stage__portrait{translate:70px 40px;rotate:3deg}.stage.no-enter .stage__word span{animation:none!important;opacity:1!important;transform:none!important}.is-building{opacity:0;transition:opacity .4s ease,translate .43s cubic-bezier(.65,0,.35,1),rotate .43s cubic-bezier(.65,0,.35,1),filter .3s ease,scale .2s ease}.is-building.is-scattered{opacity:.38;filter:grayscale(.5) blur(.4px)}.is-building.is-picked{opacity:1;filter:none;scale:1.015}.stage__portrait.is-building{opacity:1;filter:none}.bp-still .is-building{transition:none!important}.bp-measure .is-building{translate:none!important;rotate:none!important}.is-waiting{opacity:0!important}.stage.bp-live :is(.role,.lede,.hero__cta,.socials,.stage__scroll):not(.is-building){transition:opacity .5s ease}.bp{position:fixed;inset:0;z-index:250;pointer-events:none}.bp__grid{position:absolute;inset:0;opacity:0;transition:opacity .45s ease;background-image:linear-gradient(rgba(79,140,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(79,140,255,.09) 1px,transparent 1px);background-size:32px 32px}.bp.is-on .bp__grid{opacity:1}.bp__slot{position:absolute;top:0;left:0;border:1px dashed rgba(79,140,255,.6);border-radius:6px;background:#4f8cff0a;opacity:0;transition:opacity .35s ease}.bp.is-on .bp__slot{opacity:1}.bp.is-on .bp__slot.is-filled{opacity:0;transition-delay:0s!important}.bp.is-leaving{opacity:0;transition:opacity .45s ease}.bp__sel{position:absolute;top:0;left:0;border:1.5px solid #4f8cff;border-radius:2px;opacity:0;transition-property:transform,width,height,opacity,box-shadow;transition-timing-function:cubic-bezier(.65,0,.35,1)}.bp__sel.is-on{opacity:1}.bp__sel.is-drop{box-shadow:0 0 0 6px #4f8cff38}.bp__sel i{position:absolute;width:8px;height:8px;background:#fff;border:1.5px solid #4f8cff;border-radius:1px}.bp__sel i:nth-of-type(1){top:-5px;left:-5px}.bp__sel i:nth-of-type(2){top:-5px;right:-5px}.bp__sel i:nth-of-type(3){bottom:-5px;left:-5px}.bp__sel i:nth-of-type(4){bottom:-5px;right:-5px}.bp__tag,.bp__size{position:absolute;padding:3px 7px;border-radius:4px;background:#4f8cff;color:#fff;font:600 11px/1.2 var(--font-mono);white-space:nowrap}.bp__tag{left:-1.5px;bottom:calc(100% + 6px)}.bp__size{left:50%;top:calc(100% + 6px);transform:translate(-50%);background:#1d4ed8}.hand{position:absolute;top:0;left:0;width:0;height:0;z-index:2;transition-property:transform;transition-timing-function:cubic-bezier(.45,.05,.25,1)}.hand__label{position:absolute;left:20px;top:22px;padding:3px 9px;border-radius:999px 999px 999px 4px;background:var(--accent-fill);color:var(--accent-ink);font:600 11px/1.3 var(--font-body);white-space:nowrap;box-shadow:0 6px 16px -6px #00000080}.bp__skip{position:fixed;right:20px;bottom:20px;z-index:260;padding:10px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:#0b0d12b8;color:#f4f1ec;font:600 .82rem/1 var(--font-body);cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:fadeIn .4s ease .3s both}.bp__skip:hover{border-color:var(--accent-fill)}.hero__cta .btn--primary{transition:transform .2s var(--ease),box-shadow .2s ease,filter .2s ease}.hero__cta .btn--primary.is-poked{transform:scale(.95);box-shadow:0 0 0 6px var(--accent-soft),0 10px 30px -8px var(--accent-glow)}@media(max-width:760px){.bp__tag,.bp__size{font-size:10px}.hand svg{width:32px;height:32px}}.hand svg{left:-19px;top:-15px;width:44px;height:44px}.hand__label{left:24px;top:26px;font-size:12px}@media(max-width:760px){.hand svg{left:-16px;top:-12px;width:38px;height:38px}}:root{--font-poster: "Anton", "Impact", "Poster Fallback", sans-serif;--gold: #b45309;--gold-bg: rgba(202, 138, 4, .14)}:root[data-theme=dark]{--gold: #fbbf24;--gold-bg: rgba(251, 191, 36, .14)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--gold: #fbbf24;--gold-bg: rgba(251, 191, 36, .14)}}.section h2{font-family:var(--font-poster);font-weight:400;text-transform:uppercase;font-size:clamp(2.6rem,5.6vw,4.6rem);line-height:.94;letter-spacing:.005em}.section h2 .hl{display:block;background:linear-gradient(90deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.two-col .section__head h2{font-size:clamp(2.4rem,4.4vw,3.8rem)}.section h3.certs__title{font:600 1.05rem/1.2 var(--font-display);text-transform:none}.await-hand{opacity:.22;translate:calc(70px * var(--tilt-x, 1)) 26px;rotate:-2deg;filter:blur(1px)}.await-hand[data-tilt="1"]{--tilt-x: 1;rotate:2deg}.await-hand[data-tilt="-1"]{--tilt-x: -1}.section__head h2{transition:opacity .3s ease,translate .38s cubic-bezier(.65,0,.35,1),rotate .38s cubic-bezier(.65,0,.35,1),filter .3s ease}.section__head h2.is-handled{opacity:1;filter:none}.bp--lite{z-index:240}.hand.is-gone{opacity:0;transition:transform .3s ease,opacity .3s ease .1s}.hand--design .hand__label{background:#4f8cff;color:#fff}.hand--code .hand__label{background:var(--accent-fill);color:var(--accent-ink)}.ticker{position:relative;overflow:hidden;padding:16px 0;border-block:1px solid var(--line);background:linear-gradient(90deg,var(--bg),transparent 8%,transparent 92%,var(--bg)),var(--bg-alt)}.ticker__track{display:flex;width:max-content}.ticker__row{display:flex;align-items:center;gap:28px;padding-right:28px;flex:none}.ticker span{font:400 clamp(1.6rem,3vw,2.4rem)/1 var(--font-poster);text-transform:uppercase;letter-spacing:.02em;color:var(--text);white-space:nowrap}.ticker span.o{color:transparent;-webkit-text-stroke:1.2px var(--muted)}.ticker i{font-style:normal;color:var(--accent);font-size:1.1rem}@media(prefers-reduced-motion:no-preference){.ticker__track{animation:marquee 42s linear infinite}.ticker:hover .ticker__track{animation-play-state:paused}}@keyframes marquee{to{transform:translate(-50%)}}.medals{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:14px}.medal{--tone: var(--accent);--tone-bg: var(--accent-soft);position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;height:100%;padding:20px 14px 18px;border-radius:var(--radius);text-decoration:none;overflow:hidden;background:radial-gradient(120% 70% at 50% 0%,var(--tone-bg),transparent 70%),var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .25s ease}.medal--gold{--tone: var(--gold);--tone-bg: var(--gold-bg)}.medal--violet{--tone: var(--badge-final);--tone-bg: var(--badge-final-bg)}.medal--teal{--tone: var(--badge-sel);--tone-bg: var(--badge-sel-bg)}.medal:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--tone)}.medal__disc{position:relative;display:grid;place-items:center;width:62px;height:62px;margin-bottom:8px;border-radius:50%;color:var(--tone);background:var(--surface);box-shadow:0 0 0 3px var(--tone-bg),0 0 0 4px var(--tone),0 10px 24px -10px var(--tone);overflow:hidden}.medal__disc svg{width:28px;height:28px;stroke-width:1.8}.medal__disc:after{content:"";position:absolute;inset:-40%;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.55) 50%,transparent 60%);transform:translate(-120%);transition:transform .8s var(--ease)}.medal:hover .medal__disc:after{transform:translate(120%)}.medal__big{font:400 1.5rem/1 var(--font-poster);text-transform:uppercase;letter-spacing:.02em;color:var(--tone)}.medal__what{font:600 .86rem/1.3 var(--font-display);color:var(--text)}.medal__where{font-size:.74rem;color:var(--muted);line-height:1.35}.courses li{grid-template-columns:26px 56px minmax(0,1fr) auto auto}.course__thumb{display:block;width:56px;aspect-ratio:4 / 3;border-radius:5px;overflow:hidden;border:1px solid var(--line);cursor:zoom-in}.course__thumb img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .4s var(--ease)}.course__thumb:hover img{transform:scale(1.12)}.cred__img--ph{display:grid;place-content:center;justify-items:center;gap:8px;padding:14px;text-align:center;cursor:default;background:radial-gradient(90% 90% at 30% 20%,var(--accent-soft),transparent 70%),linear-gradient(135deg,var(--bg-alt),var(--surface));color:var(--accent)}.cred__img--ph svg{width:34px;height:34px}.cred__img--ph span{font:400 1.05rem/1.05 var(--font-poster);text-transform:uppercase;letter-spacing:.02em;color:var(--text)}.cred.is-collapsed{display:none}.cred:target{border-color:var(--accent-fill);box-shadow:0 0 0 3px var(--accent-soft),var(--shadow)}.creds__more{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 22px;margin:22px 0 0}.cred-group+.cred-group{margin-top:48px}.cred-stats{margin-top:6px}@media(max-width:760px){.section h2{font-size:clamp(2.3rem,11vw,3.2rem)}.medals{grid-template-columns:repeat(2,1fr);gap:10px}.medal{padding:16px 10px 14px}.medal__disc{width:52px;height:52px}.medal__big{font-size:1.3rem}.courses li{grid-template-columns:22px 44px minmax(0,1fr) auto}.course__thumb{width:44px}.ticker{padding:12px 0}}@media(max-width:560px){.cred__img--ph span{display:none}}.bp.bp--lite{position:absolute;inset:0 auto auto 0;width:100%;height:0;overflow:visible}.section{overflow-x:clip}.bp.bp--lite{overflow-x:clip;overflow-y:visible}@media(max-width:760px){.await-hand{translate:calc(28px * var(--tilt-x, 1)) 18px}}html:not(.build-on) .bp:not(.bp--lite):not(.is-leaving),html:not(.build-on) .bp__skip{display:none}.tabbar{display:none}:root[data-device=phone] .tabbar,:root[data-device=tablet] .tabbar{display:flex;position:fixed;z-index:70;justify-content:space-around;align-items:stretch;background:color-mix(in srgb,var(--surface) 88%,transparent);border:1px solid var(--line);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);box-shadow:0 -8px 30px -18px #00000073}.tabbar a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:44px;min-height:48px;padding:6px 4px;text-decoration:none;color:var(--muted);font:600 .66rem/1 var(--font-body);letter-spacing:.02em;transition:color .2s ease}.tabbar svg{width:22px;height:22px;transition:transform .25s var(--ease)}.tabbar a.active{color:var(--accent)}.tabbar a.active svg{transform:translateY(-2px) scale(1.08)}.tabbar a:active svg{transform:scale(.9)}:root[data-device=phone] .tabbar{left:0;right:0;bottom:0;padding:4px 6px calc(4px + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:18px 18px 0 0}:root[data-device=phone] .tabbar a[data-tab=resume]{display:none}:root[data-device=phone] .tabbar a{flex:1}:root[data-device=phone] .tabbar a.active:before{content:"";position:absolute;top:2px;width:34px;height:30px;border-radius:12px;background:var(--accent-soft);z-index:-1}:root[data-device=phone] .menu-btn,:root[data-device=phone] .nav__links{display:none!important}:root[data-device=phone] body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}:root[data-device=phone] .to-top{bottom:calc(80px + env(safe-area-inset-bottom));right:14px;width:46px;height:46px}:root[data-device=phone] .bp__skip{bottom:calc(80px + env(safe-area-inset-bottom))}:root[data-device=phone] .toast{bottom:calc(84px + env(safe-area-inset-bottom))}:root[data-device=tablet] .tabbar{left:50%;bottom:18px;transform:translate(-50%);gap:4px;padding:6px;border-radius:22px;box-shadow:0 18px 40px -18px #0000008c}:root[data-device=tablet] .tabbar a{padding:8px 14px;border-radius:16px;font-size:.7rem;transition:background .2s ease,color .2s ease}:root[data-device=tablet] .tabbar a.active{background:var(--accent-soft)}:root[data-device=tablet] .nav__links,:root[data-device=tablet] .menu-btn{display:none!important}:root[data-device=tablet] body{padding-bottom:90px}:root[data-device=tablet] .to-top{bottom:96px}:root[data-touch="1"] .lift:hover,:root[data-touch="1"] .tile:hover,:root[data-touch="1"] .cred:hover,:root[data-touch="1"] .medal:hover{transform:none}:root[data-touch="1"] :is(.case,.card,.cred,.medal,.ctile,.tile):active{transform:scale(.985);transition:transform .12s ease}@media(prefers-reduced-motion:no-preference){:root[data-device=phone] .js .reveal,:root[data-device=phone].js .reveal{transform:translateY(34px) scale(.97)}:root[data-device=tablet].js .reveal{transform:translate(-26px)}:root[data-device=desktop].js .reveal{transform:translateY(18px);filter:blur(6px);transition:opacity .7s var(--ease) var(--d, 0s),transform .8s var(--ease) var(--d, 0s),filter .8s var(--ease) var(--d, 0s)}:root[data-device].js .reveal.in{transform:none;filter:none}}:root[data-device=phone] .cards,:root[data-device=phone] .medals{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:78%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;margin-inline:-16px;padding:4px 16px 10px;scrollbar-width:none}:root[data-device=phone] .medals{grid-auto-columns:46%}:root[data-device=phone] .cards::-webkit-scrollbar,:root[data-device=phone] .medals::-webkit-scrollbar{display:none}:root[data-device=phone] :is(.cards,.medals)>*{scroll-snap-align:start}.swipe-hint{display:none}:root[data-device=phone] .swipe-hint{display:flex;align-items:center;gap:6px;margin:6px 0 0;font:500 .72rem/1 var(--font-mono);color:var(--muted);letter-spacing:.08em;text-transform:uppercase}:root[data-device=phone] .swipe-hint svg{width:16px;height:16px}@media(prefers-reduced-motion:no-preference){:root[data-device=phone] .swipe-hint svg{animation:nudge 1.6s ease-in-out infinite}}@keyframes nudge{50%{transform:translate(5px)}}:root[data-device=desktop] .spot{background-image:radial-gradient(360px circle at var(--mx, -999px) var(--my, -999px),color-mix(in srgb,var(--accent-fill) 11%,transparent),transparent 62%)}:root[data-device=desktop] .spot:hover{border-color:color-mix(in srgb,var(--accent-fill) 40%,var(--line))}.magnetic{transition:translate .25s var(--ease)}.viewtoggle{display:inline-flex;gap:4px;padding:4px;margin:-6px 0 26px;border-radius:999px;background:var(--surface);border:1px solid var(--line)}.viewtoggle button{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border:0;border-radius:999px;cursor:pointer;background:transparent;color:var(--muted);font:600 .84rem/1 var(--font-body);min-height:36px}.viewtoggle svg{width:16px;height:16px}.viewtoggle button[aria-pressed=true]{background:var(--text);color:var(--bg)}.is-index .cases,.is-index .cards,.is-index .group-title{display:none!important}.pindex__list{counter-reset:p;border-top:1px solid var(--line-strong)}.pindex__row{display:grid;grid-template-columns:54px minmax(0,1.4fr) minmax(0,1fr) minmax(0,1.1fr) auto;align-items:center;gap:18px;padding:18px 8px;border-bottom:1px solid var(--line);transition:background .25s ease,padding .25s var(--ease)}.pindex__row:hover{background:var(--accent-soft);padding-left:16px}.pindex__n{font:400 1.6rem/1 var(--font-poster);color:var(--muted)}.pindex__row:hover .pindex__n{color:var(--accent)}.pindex__title{text-align:left;border:0;background:none;padding:0;cursor:pointer;color:var(--text);font:600 1.08rem/1.25 var(--font-display)}.pindex__title:hover{color:var(--accent)}.pindex__kind{display:block;margin-top:3px;font:500 .72rem/1.3 var(--font-mono);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.pindex__stack{display:flex;flex-wrap:wrap;gap:6px}.pindex__stack span{padding:3px 9px;border-radius:999px;font-size:.74rem;background:var(--surface);border:1px solid var(--line)}.pindex__rec .badge{font-size:.7rem}.pindex__go{white-space:nowrap}@media(max-width:960px){.pindex__row{grid-template-columns:40px minmax(0,1fr) auto}.pindex__stack,.pindex__rec{grid-column:2 / -1}}.codecard{margin:28px 0 0;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:#0d1017;box-shadow:var(--shadow)}.codecard figcaption{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#151924;border-bottom:1px solid rgba(255,255,255,.06);color:#9aa3b5;font-size:.78rem}.codecard__dots{display:inline-flex;gap:6px}.codecard__dots i{width:10px;height:10px;border-radius:50%;background:#ff5f57}.codecard__dots i:nth-child(2){background:#febc2e}.codecard__dots i:nth-child(3){background:#28c840}.codecard pre{margin:0;padding:16px 18px 18px;overflow-x:auto;font-size:.82rem;line-height:1.75;color:#d6dbe6}.codecard .k{color:#7cc4ff}.codecard .s{color:#ffb380}.codecard .n{color:#c792ea}.codecard__caret{display:inline-block;width:8px;height:1.05em;margin-left:2px;vertical-align:-2px;background:var(--accent-fill)}@media(prefers-reduced-motion:no-preference){.codecard__caret{animation:blink 1.1s steps(1) infinite}}@keyframes blink{50%{opacity:0}}.principles{counter-reset:pr;display:grid;gap:12px;padding:0}.principles li{counter-increment:pr;position:relative;list-style:none;padding:18px 18px 18px 64px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.principles li:before{content:counter(pr,decimal-leading-zero);position:absolute;left:18px;top:14px;font:400 1.9rem/1 var(--font-poster);color:var(--accent)}.principles li strong{display:block;margin-bottom:4px;font-family:var(--font-display)}.skill-group{padding:16px 18px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}.dur{display:inline-block;margin-left:8px;padding:2px 9px;border-radius:999px;font:600 .7rem/1.5 var(--font-body);color:var(--accent);background:var(--accent-soft);vertical-align:1px}.timeline{position:relative;padding-left:30px}.timeline:before,.timeline:after{content:"";position:absolute;left:9px;top:10px;bottom:10px;width:2px;border-radius:2px}.timeline:before{background:var(--line)}.timeline:after{background:linear-gradient(var(--accent-fill),var(--accent-2));transform-origin:top;transform:scaleY(var(--p, 0))}.timeline>li{position:relative}.timeline>li:before{content:"";position:absolute;left:-27px;top:30px;width:12px;height:12px;border-radius:50%;background:var(--bg);border:2px solid var(--accent-fill);box-shadow:0 0 0 4px var(--accent-soft)}@media(max-width:760px){.timeline{padding-left:22px}.timeline:before,.timeline:after{left:5px}.timeline>li:before{left:-23px}}.resume__grid{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:48px;align-items:center}.resume__paper{position:relative;display:block;border-radius:10px;overflow:hidden;cursor:zoom-in;box-shadow:0 30px 60px -28px #0009,0 0 0 1px var(--line);transform:rotate(-1.5deg);transition:transform .5s var(--ease),box-shadow .5s var(--ease)}.resume__paper:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.18))}.resume__paper img{display:block;width:100%;height:auto}.resume__paper:hover{transform:rotate(0) translateY(-4px);box-shadow:0 40px 70px -28px #000000a6,0 0 0 1px var(--accent-fill)}.resume__zoom{position:absolute;right:12px;bottom:12px;z-index:1;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--accent-fill);color:var(--accent-ink)}.resume__zoom svg{width:20px;height:20px}.resume__facts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 26px}.resume__facts>div{padding:12px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--line)}.resume__facts dt{font:500 .66rem/1.2 var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.resume__facts dd{margin:4px 0 0;font:400 2rem/1 var(--font-poster);color:var(--accent)}.resume__title{font:600 1.05rem/1.2 var(--font-display);margin:0 0 10px}.resume__toc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;padding:0;margin:0 0 26px}.resume__toc li{list-style:none;display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px dashed var(--line);font-weight:500}.resume__toc .mono{color:var(--accent);font-size:.78rem}.resume__cta{display:flex;flex-wrap:wrap;gap:12px;margin:0}.resume__cta svg{width:18px;height:18px}@media(max-width:960px){.resume__grid{grid-template-columns:1fr;gap:30px}.resume__paper{max-width:420px;margin-inline:auto}}@media(max-width:560px){.resume__facts{grid-template-columns:repeat(2,1fr)}.resume__toc{grid-template-columns:1fr}}.ctiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0 0;padding:0}.ctiles li{list-style:none}.ctile{position:relative;display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;min-height:72px;padding:14px 16px;border-radius:var(--radius);text-decoration:none;color:var(--text);background-color:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:transform .3s var(--ease),border-color .25s ease,box-shadow .3s var(--ease)}.ctile>svg{grid-row:1 / 3;width:26px;height:26px;color:var(--accent);justify-self:center}.ctile__t{font:600 .98rem/1.2 var(--font-display)}.ctile__s{font-size:.78rem;color:var(--muted);overflow-wrap:anywhere}.ctile__go{position:absolute;right:14px;top:12px;color:var(--muted);transition:transform .25s var(--ease),color .2s ease}.ctile:hover{transform:translateY(-3px);border-color:var(--accent-fill);box-shadow:var(--shadow)}.ctile:hover .ctile__go{color:var(--accent);transform:translate(2px,-2px)}.topics{border:0;margin:0 0 6px;padding:0;display:flex;flex-wrap:wrap;gap:8px}.topics legend{width:100%;margin-bottom:8px;font-weight:600;font-size:.9rem}.topics label{position:relative;cursor:pointer}.topics input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}.topics span{display:inline-flex;align-items:center;min-height:38px;padding:8px 14px;border-radius:999px;font-size:.86rem;font-weight:600;border:1px solid var(--line-strong);background:var(--surface);color:var(--muted);transition:all .2s ease}.topics input:checked+span{background:var(--accent-fill);border-color:var(--accent-fill);color:var(--accent-ink)}.topics input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:420px){.ctiles{grid-template-columns:1fr}}.hand-wait{opacity:.16;filter:saturate(.2) blur(1.2px)}.hand-held{opacity:1!important;filter:none!important;box-shadow:0 18px 40px -18px #4f8cff8c}main .section :is(.section__head>*,.group-title,.filters,.viewtoggle,.case,.card,.prose>p,.prose__sub,.principles li,.remarks .quote,.skill-group,.timeline>li,.cred-stats>div,.certs__title,.medals>li,.cred-feature,.cred,.creds__more,.resume__paper,.resume__facts>div,.resume__title,.resume__toc,.resume__cta,.contact__grid>div>*,.ctiles>li,.form){transition-property:opacity,filter,translate,rotate,transform,box-shadow,border-color,background-color,color;transition-duration:.3s,.3s,.23s,.23s,.35s,.35s,.25s,.25s,.2s;transition-timing-function:ease,ease,cubic-bezier(.65,0,.35,1),cubic-bezier(.65,0,.35,1),var(--ease),var(--ease),ease,ease,ease}.is-draggable{cursor:grab}.is-draggable.is-dragging{cursor:grabbing;scroll-snap-type:none!important;user-select:none}.is-dragging *{pointer-events:none}.cards img,.medals img{-webkit-user-drag:none;user-select:none}.scroller{display:flex;align-items:center;gap:10px;margin:10px 0 0}.scroller[hidden]{display:none}.scroller__btn{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;cursor:pointer;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);transition:border-color .2s ease,color .2s ease,opacity .2s ease,transform .12s ease}.scroller__btn svg{width:18px;height:18px;stroke-width:2.2}.scroller__btn:hover:not(:disabled){border-color:var(--accent-fill);color:var(--accent)}.scroller__btn:active:not(:disabled){transform:scale(.92)}.scroller__btn:disabled{opacity:.35;cursor:default}.scroller__bar{--fill: 0%;flex:1;height:6px;margin:0;appearance:none;-webkit-appearance:none;border-radius:999px;cursor:pointer;background:linear-gradient(90deg,var(--accent-fill) var(--fill),var(--line) var(--fill))}.scroller__bar::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--surface);border:3px solid var(--accent-fill);box-shadow:0 2px 8px #0000004d;cursor:grab}.scroller__bar::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--surface);border:3px solid var(--accent-fill);cursor:grab}.scroller__bar:active::-webkit-slider-thumb{cursor:grabbing;transform:scale(1.1)}.scroller__bar:focus-visible{outline:2px solid var(--accent);outline-offset:4px}:root[data-device=phone] .filters.is-draggable{-webkit-mask-image:linear-gradient(90deg,transparent,#000 14px,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(90deg,transparent,#000 14px,#000 calc(100% - 28px),transparent)}@media print{.nav,.tabbar,.to-top,.bp,.bp__skip,.lightbox,.toast,.scroller,.ticker,.stage__scroll,.progress,.ambient{display:none!important}.hand-wait,.is-building,.is-waiting,.await-hand{opacity:1!important;filter:none!important;translate:none!important;rotate:none!important}.reveal{opacity:1!important;transform:none!important}body{background:#fff;color:#000;padding:0!important}.section{padding:24px 0}}:root[data-device=phone] :is(.cards,.medals){scroll-padding-inline:16px}:root[data-theme=light] .stage__portrait img{mix-blend-mode:multiply;filter:grayscale(1) contrast(1.25) brightness(1.18)}@media(prefers-color-scheme:light){:root:not([data-theme=dark]) .stage__portrait img{mix-blend-mode:multiply;filter:grayscale(1) contrast(1.25) brightness(1.18)}}:root[data-theme=light] .stage__portrait:hover img{filter:brightness(1.05)}.lightbox__nav{position:fixed;top:50%;z-index:2;display:grid;place-items:center;width:52px;height:52px;margin-top:-26px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:#0f111699;color:#fff;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .2s ease,transform .12s ease}.lightbox__nav svg{width:24px;height:24px;stroke-width:2.2}.lightbox__nav:hover{background:var(--accent-fill);border-color:var(--accent-fill)}.lightbox__nav:active{transform:scale(.92)}.lightbox__nav--prev{left:max(12px,calc(50vw - min(46vw,600px) - 70px))}.lightbox__nav--next{right:max(12px,calc(50vw - min(46vw,600px) - 70px))}.lightbox__nav[hidden]{display:none}.lightbox__count{position:fixed;left:50%;top:18px;transform:translate(-50%);margin:0;padding:6px 12px;border-radius:999px;background:#0f111699;color:#fff;font-size:.8rem}.lightbox__count:empty{display:none}:root[data-touch="1"] .cmdk-btn__k{display:none!important}.lightbox,.lightbox::backdrop,.lightbox img{touch-action:pan-y pinch-zoom}.lightbox img{user-select:none;-webkit-user-drag:none}@media(max-width:760px){.lightbox__nav{top:auto;bottom:18px;margin-top:0}.lightbox__nav--prev{left:18px}.lightbox__nav--next{right:18px}}.gh{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:12px 0 0;padding:7px 12px;border-radius:999px;font:500 .76rem/1.2 var(--font-mono);color:var(--muted);text-decoration:none;background:var(--surface);border:1px solid var(--line);transition:border-color .2s ease,color .2s ease}.gh{max-width:100%}.gh__repo{min-width:0;overflow-wrap:anywhere}.gh:hover{border-color:var(--accent-fill);color:var(--text)}.gh svg{width:15px;height:15px;color:var(--text)}.gh b{font-weight:400;opacity:.6}.gh__lang{display:inline-flex;align-items:center;gap:5px}.gh__lang i{width:8px;height:8px;border-radius:50%;background:var(--accent-fill)}.gh__live{margin-left:2px;padding:1px 6px;border-radius:999px;font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,transparent)}.case__body>.gh{margin-bottom:4px}.stage__tag{padding:0}.tag__btn{display:inline-flex;align-items:center;gap:4px;padding:9px 14px;border:0;border-radius:inherit;background:none;color:inherit;font:inherit;cursor:pointer;text-align:center}.tag__run{margin-left:8px;padding:2px 8px;border-radius:999px;font:600 .66rem/1.4 var(--font-mono);color:var(--accent-ink);background:var(--accent-fill)}.tag__btn:hover .tag__run{filter:brightness(1.08)}@media(prefers-reduced-motion:no-preference){.tag__run{animation:pulseRun 2.4s ease-in-out infinite}}@keyframes pulseRun{50%{box-shadow:0 0 0 5px var(--accent-soft)}}.term{width:min(720px,calc(100vw - 24px));max-height:min(560px,calc(100dvh - 40px));padding:0;border:1px solid #262c3a;border-radius:14px;background:#0d1017;color:#d6dbe6;box-shadow:0 40px 90px -30px #000c;overflow:hidden}.term[open]{display:flex;flex-direction:column}.term::backdrop{background:#05060a8c;backdrop-filter:blur(4px)}.term__bar{display:flex;align-items:center;gap:12px;padding:10px 12px 10px 14px;background:#151924;border-bottom:1px solid rgba(255,255,255,.06);font-size:.78rem;color:#9aa3b5}.term__close{margin-left:auto;display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:8px;background:transparent;color:#9aa3b5;cursor:pointer}.term__close:hover{background:#ffffff14;color:#fff}.term__close svg{width:18px;height:18px}.term__out{flex:1;min-height:220px;overflow-y:auto;padding:14px 16px 6px;font-size:.84rem;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.term__out a{color:#7cc4ff}.term__cmd{color:#ffb380;margin-top:6px}.term__ok{color:#6ee7a8}.term__err{color:#ff8a8a}.term__dim{color:#7d8597}.term__form{display:flex;align-items:center;gap:8px;padding:10px 16px 14px;border-top:1px solid rgba(255,255,255,.06)}.term__ps{color:#6ee7a8;font-size:.84rem;white-space:nowrap}.term__form input{flex:1;min-width:0;min-height:40px;border:0;outline:0;background:transparent;color:#fff;font-size:.9rem;caret-color:var(--accent-fill)}@media(max-width:560px){.term__ps{display:none}}.cmdk{width:min(640px,calc(100vw - 24px));max-height:min(560px,calc(100dvh - 80px));margin:10vh auto auto;padding:0;border:1px solid var(--line-strong);border-radius:16px;background:var(--surface);color:var(--text);box-shadow:0 40px 90px -30px #0009;overflow:hidden}.cmdk[open]{display:flex;flex-direction:column;animation:pop .22s var(--ease)}.cmdk::backdrop{background:#05060a73;backdrop-filter:blur(4px)}.cmdk__head{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line)}.cmdk__head svg{width:20px;height:20px;color:var(--muted);flex:none}.cmdk__head input{flex:1;min-width:0;min-height:40px;border:0;outline:0;background:transparent;color:var(--text);font:500 1rem/1.3 var(--font-body)}.cmdk kbd{padding:2px 7px;border-radius:6px;border:1px solid var(--line-strong);background:var(--bg-alt);font:600 .7rem/1.4 var(--font-mono);color:var(--muted)}.cmdk__list{flex:1;overflow-y:auto;margin:0;padding:6px;list-style:none}.cmdk__group{padding:10px 10px 4px;font:600 .68rem/1 var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.cmdk__item{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:44px;padding:8px 12px;border-radius:10px;cursor:pointer}.cmdk__item.is-active{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent-fill)}.cmdk__label{font-weight:600;font-size:.92rem}.cmdk__hint{font-size:.78rem;color:var(--muted);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:52%}.cmdk__empty{padding:26px 12px;text-align:center;color:var(--muted)}.cmdk__foot{display:flex;gap:16px;margin:0;padding:10px 16px;border-top:1px solid var(--line);font-size:.76rem;color:var(--muted)}.cmdk__foot span{display:inline-flex;align-items:center;gap:5px}:root[data-touch="1"] .cmdk__foot{display:none}.cmdk-btn{position:relative}.cmdk-btn__k{display:none}:root[data-device=desktop] .cmdk-btn{width:auto;gap:8px;padding:0 12px;display:inline-flex;align-items:center}:root[data-device=desktop] .cmdk-btn__k{display:inline;font:600 .7rem/1 var(--font-mono);color:var(--muted);padding:3px 6px;border-radius:6px;border:1px solid var(--line-strong)}:root[data-device=phone] #viewToggle{display:none!important}.is-flash{animation:flashCard 1.4s ease}@keyframes flashCard{0%,to{box-shadow:var(--shadow-sm)}25%{box-shadow:0 0 0 4px var(--accent-fill),var(--shadow)}}.deep-open-btn{background:var(--text);color:var(--bg);border:0}.deep-open-btn svg{width:16px;height:16px}.deep-open-btn:hover{filter:brightness(1.15)}body.deep-open{overflow:hidden}.deep{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:var(--bg);color:var(--text);overflow-y:auto;overscroll-behavior:contain}.deep[open]{display:flex;flex-direction:column;animation:deepIn .45s var(--ease)}@keyframes deepIn{0%{opacity:0;transform:translateY(24px) scale(.985)}to{opacity:1;transform:none}}.deep::backdrop{background:var(--bg)}.deep__bar{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:12px;padding:12px clamp(16px,4vw,40px);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.deep__crumb{margin:0;font-size:.78rem;color:var(--muted);letter-spacing:.08em}.deep__btn{margin-left:auto;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font:600 .84rem/1 var(--font-body);cursor:pointer}.deep__btn:hover{border-color:var(--accent-fill);color:var(--accent)}.deep__close{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);cursor:pointer}.deep__close svg{width:18px;height:18px}.deep__body{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);width:min(1240px,100%);margin:0 auto;padding:clamp(20px,4vw,44px) clamp(16px,4vw,40px)}.deep__media{position:sticky;top:84px;align-self:start}.deep__shot{margin:0;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:var(--bg-alt);box-shadow:var(--shadow-lg)}.deep__shot img{display:block;width:100%;max-height:62vh;object-fit:contain;background:#0b0d12}.deep__shot figcaption{padding:10px 14px;font-size:.82rem;color:var(--muted);border-top:1px solid var(--line)}.deep__thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;scrollbar-width:thin}.deep__thumb{flex:none;width:92px;aspect-ratio:4 / 3;padding:0;border-radius:8px;overflow:hidden;border:2px solid transparent;background:var(--bg-alt);cursor:pointer;opacity:.65;transition:opacity .2s ease,border-color .2s ease}.deep__thumb img{width:100%;height:100%;object-fit:cover}.deep__thumb[aria-pressed=true],.deep__thumb:hover{opacity:1;border-color:var(--accent-fill)}.deep__kicker{margin:0 0 8px;font-size:.78rem;color:var(--accent);text-transform:uppercase;letter-spacing:.08em}.deep__title{font:400 clamp(2.4rem,5vw,4.2rem)/.95 var(--font-poster);text-transform:uppercase;letter-spacing:.005em;margin:0 0 12px}.deep__lede{font-size:1.08rem;color:var(--muted);margin:14px 0}.deep__story .chips{margin-bottom:26px}.deep__steps{position:relative;display:grid;gap:14px;margin:0;padding:0 0 0 4px;list-style:none;counter-reset:none}.deep__steps:before{content:"";position:absolute;left:25px;top:20px;bottom:20px;width:2px;background:linear-gradient(var(--accent-fill),var(--line))}.deep__step{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:start}.deep__n{position:relative;z-index:1;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--bg);border:2px solid var(--accent-fill);font:400 1.1rem/1 var(--font-poster);color:var(--accent)}.deep__step>div{padding:14px 18px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.deep__step h3{margin:0 0 6px;font:600 1.02rem/1.25 var(--font-display)}.deep__step p{margin:0;color:var(--muted)}@media(prefers-reduced-motion:no-preference){.deep[open] .deep__step{animation:stepIn .5s var(--ease) both}.deep[open] .deep__step:nth-child(2){animation-delay:.06s}.deep[open] .deep__step:nth-child(3){animation-delay:.12s}.deep[open] .deep__step:nth-child(4){animation-delay:.18s}.deep[open] .deep__step:nth-child(5){animation-delay:.24s}}@keyframes stepIn{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:none}}.deep__links{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:24px}.deep__links .gh{margin:0}.deep__nav{display:grid;grid-template-columns:1fr 1fr;gap:14px;width:min(1240px,100%);margin:0 auto;padding:8px clamp(16px,4vw,40px) 40px}.deep__pn{display:flex;flex-direction:column;gap:4px;min-height:76px;padding:16px 20px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--text);text-align:left;cursor:pointer;transition:border-color .2s ease,transform .3s var(--ease)}.deep__pn--next{text-align:right;align-items:flex-end}.deep__pn .mono{font-size:.74rem;color:var(--muted);letter-spacing:.06em}.deep__pn strong{font:600 1rem/1.25 var(--font-display)}.deep__pn:hover{border-color:var(--accent-fill);transform:translateY(-2px)}@media(max-width:960px){.deep__body{grid-template-columns:1fr}.deep__media{position:static}}@media(max-width:560px){.deep__btn{padding:0 10px;font-size:.78rem}.deep__nav{grid-template-columns:1fr}.deep__pn--next{text-align:left;align-items:flex-start}}.skillmap .chips li{padding:0;border:0;background:none}.skillchip{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:6px 12px;border-radius:999px;cursor:pointer;background:var(--surface);border:1px solid var(--line);color:var(--text);font:500 .86rem/1 var(--font-body);transition:border-color .2s ease,background .2s ease,transform .12s ease}.skillchip__n{min-width:20px;padding:2px 6px;border-radius:999px;font:600 .68rem/1.3 var(--font-mono);color:var(--accent-ink);background:var(--accent-fill);text-align:center}.skillchip:hover,.skillchip:focus-visible{border-color:var(--accent-fill)}.skillchip[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent-fill)}.skillchip:active{transform:scale(.96)}.skillmap__panel{margin-top:16px;padding:16px 18px;min-height:64px;border-radius:var(--radius);border:1px dashed var(--line-strong);background:linear-gradient(135deg,var(--accent-soft),transparent 60%),var(--surface)}.skillmap__hint{margin:0;color:var(--muted);font-size:.9rem}.skillmap__head{margin:0 0 10px;color:var(--muted)}.skillmap__head strong{color:var(--text);font-family:var(--font-display);font-size:1.05rem}.skillmap__group+.skillmap__group{margin-top:10px}.skillmap__gt{margin:0 0 6px;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}.skillmap__group ul{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.skillmap__item{min-height:34px;padding:6px 12px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--text);font:500 .82rem/1.2 var(--font-body);cursor:pointer;text-align:left}.skillmap__item:hover{border-color:var(--accent-fill);color:var(--accent)}.journey__pin[data-city=bbsr]{--x: 59.4%;--y: 53.87%}.journey__pin[data-city=kgp]{--x: 64.37%;--y: 47.26%}.journey__pin[data-city=del]{--x: 30.7%;--y: 27.06%}.journey__pin[data-city=goa]{--x: 19.43%;--y: 69.39%}.nowbar{border-top:1px solid var(--line);background:var(--surface)}.nowbar__inner{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;min-height:52px;padding-block:10px}.nowbar__dot{position:relative;width:9px;height:9px;border-radius:50%;background:var(--ok);flex:none}.nowbar__dot:after{content:"";position:absolute;inset:-5px;border-radius:50%;border:2px solid var(--ok);opacity:0}@media(prefers-reduced-motion:no-preference){.nowbar__dot:after{animation:ping 2s ease-out infinite}}.nowbar__label{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.nowbar__repo{font:600 1rem/1.2 var(--font-display);color:var(--text);text-decoration:none}.nowbar__repo:hover{color:var(--accent)}.nowbar__meta{font:500 .8rem/1.3 var(--font-mono);color:var(--muted)}.nowbar__meta .gh__lang i{display:inline-block}.nowbar__all{margin-left:auto;font-size:.85rem}@media(max-width:560px){.nowbar__all{margin-left:0}}.qv-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:999px;cursor:pointer;border:1px dashed var(--accent-fill);background:var(--accent-soft);color:var(--accent);font:600 .9rem/1 var(--font-body);transition:background .2s ease,transform .12s ease}.qv-btn svg{width:18px;height:18px}.qv-btn:hover{background:color-mix(in srgb,var(--accent-fill) 18%,transparent)}.qv-btn:active{transform:scale(.96)}.qv{width:min(760px,calc(100vw - 24px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--line-strong);border-radius:18px;background:var(--surface);color:var(--text);box-shadow:0 40px 90px -30px #0009;overflow:auto}.qv[open]{animation:pop .3s var(--ease)}.qv::backdrop{background:#05060a80;backdrop-filter:blur(4px)}.qv__head{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:22px 24px 16px;border-bottom:1px solid var(--line)}.qv__avatar{width:64px;height:64px;border-radius:16px;object-fit:cover;object-position:55% 30%}.qv__name{margin:0;font:400 1.9rem/1 var(--font-poster);text-transform:uppercase;letter-spacing:.01em}.qv__role{margin:4px 0 0;color:var(--accent);font:500 .82rem/1.3 var(--font-mono)}.qv__close{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1px solid var(--line-strong);background:var(--bg);color:var(--text);cursor:pointer;align-self:start}.qv__close svg{width:18px;height:18px}.qv__body{display:grid;grid-template-columns:1fr 1fr;gap:18px 26px;padding:18px 24px}.qv__block h3{margin:0 0 8px;font:600 .72rem/1 var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.qv__block ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}.qv__block li{font-size:.9rem;line-height:1.4}.qv__block li strong{font-family:var(--font-display)}.qv__block li span{color:var(--muted)}.qv__wide{grid-column:1 / -1}.qv__foot{display:flex;flex-wrap:wrap;gap:10px;padding:14px 24px 22px;border-top:1px solid var(--line)}@media(max-width:640px){.qv__body{grid-template-columns:1fr}.qv__head{grid-template-columns:auto 1fr auto}.qv__name{font-size:1.5rem}}@media print{body.qv-printing>*:not(.qv){display:none!important}body.qv-printing .qv{position:static;display:block;width:auto;max-height:none;border:0;box-shadow:none}body.qv-printing .qv__foot,body.qv-printing .qv__close{display:none}}.journey{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:28px;align-items:start}.journey__map{position:relative;aspect-ratio:600 / 420;border-radius:20px;overflow:hidden;border:1px solid var(--line);background:radial-gradient(70% 70% at 60% 55%,var(--accent-soft),transparent 70%),var(--surface);box-shadow:var(--shadow)}.journey__map svg{position:absolute;inset:0;width:100%;height:100%}.journey__grid line{stroke:var(--line);stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:2 6}.journey__arc{fill:none;stroke:var(--accent-fill);stroke-width:2;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0;opacity:.85}@media(prefers-reduced-motion:no-preference){.js .journey__arc{stroke-dashoffset:1;transition:stroke-dashoffset 1.6s var(--ease)}.js .journey.is-drawn .journey__arc{stroke-dashoffset:0}.js .journey.is-drawn .journey__arc:nth-of-type(2){transition-delay:.25s}.js .journey.is-drawn .journey__arc:nth-of-type(3){transition-delay:.5s}}.journey__pin{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);z-index:1;display:flex;align-items:center;gap:8px;min-height:44px;padding:6px 12px 6px 8px;border-radius:999px;cursor:pointer;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font:600 .82rem/1 var(--font-body);box-shadow:var(--shadow);transition:border-color .2s ease,transform .2s var(--ease)}.journey__pin:hover,.journey__pin[aria-pressed=true]{border-color:var(--accent-fill);transform:translate(-50%,-50%) scale(1.06)}.journey__pin[aria-pressed=true]{background:var(--accent-fill);color:var(--accent-ink)}.journey__pinDot{position:relative;width:12px;height:12px;border-radius:50%;background:var(--accent-fill);box-shadow:0 0 0 3px var(--accent-soft)}.journey__pin[aria-pressed=true] .journey__pinDot{background:var(--accent-ink)}.journey__pin.is-home .journey__pinDot{background:var(--ok);box-shadow:0 0 0 3px color-mix(in srgb,var(--ok) 25%,transparent)}@media(prefers-reduced-motion:no-preference){.journey__pinDot:after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid currentColor;color:var(--accent-fill);opacity:0;animation:ping 2.4s ease-out infinite}}.journey__note{position:absolute;left:14px;bottom:10px;margin:0;font-size:.66rem;color:var(--muted);letter-spacing:.08em}.journey__side{display:grid;gap:14px}.journey__card,.journey__online{padding:18px 20px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.journey__card[hidden]{display:none}.journey__city{margin:0 0 10px;font:400 1.6rem/1 var(--font-poster);text-transform:uppercase;letter-spacing:.01em;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.journey__card ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}.journey__card a{display:grid;gap:2px;padding:10px 12px;border-radius:10px;text-decoration:none;color:var(--text);background:var(--bg);border:1px solid var(--line);transition:border-color .2s ease}.journey__card a:hover{border-color:var(--accent-fill)}.journey__card a span{font-size:.8rem;color:var(--muted)}.journey__chips{display:flex;flex-wrap:wrap;gap:6px;margin:0}.journey__chips a{display:inline-flex;align-items:center;min-height:36px;padding:6px 12px;border-radius:999px;font-size:.8rem;font-weight:600;text-decoration:none;color:var(--text);border:1px solid var(--line-strong);background:var(--bg)}.journey__chips a:hover{border-color:var(--accent-fill);color:var(--accent)}@media(max-width:960px){.journey{grid-template-columns:1fr}}@media(max-width:560px){.journey__pinName{display:none}.journey__pin{padding:6px;min-width:44px;justify-content:center}}.words-sec{overflow:hidden}.words{position:relative;display:grid;min-height:230px}.word{grid-area:1 / 1;margin:0;padding:clamp(24px,4vw,44px);border-radius:24px;border:1px solid var(--line);background:radial-gradient(90% 120% at 0% 0%,var(--accent-soft),transparent 60%),var(--surface);box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(14px) scale(.98);transition:opacity .6s var(--ease),transform .7s var(--ease),visibility 0s .6s}.word.is-active{opacity:1;visibility:visible;transform:none;transition:opacity .6s var(--ease),transform .7s var(--ease),visibility 0s}.word blockquote{margin:0}.word blockquote p{margin:0;font:500 clamp(1.25rem,2.6vw,2rem)/1.35 var(--font-display);letter-spacing:-.01em}.word blockquote p:before{content:"“";display:block;height:.55em;margin-bottom:8px;font:400 4.5rem/1 var(--font-poster);color:var(--accent)}.word blockquote p{text-indent:0}.word figcaption{display:grid;gap:2px;margin-top:18px}.word figcaption strong{font-family:var(--font-display)}.word figcaption span{font-size:.86rem;color:var(--muted)}.words__nav{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px}.words__nav[hidden]{display:none}.words__dots{display:flex;gap:8px}.words__dots button{width:28px;height:28px;border:0;padding:0;background:none;cursor:pointer;display:grid;place-items:center}.words__dots button:before{content:"";width:10px;height:10px;border-radius:999px;background:var(--line-strong);transition:width .3s var(--ease),background .3s ease}.words__dots button[aria-current=true]:before{width:26px;background:var(--accent-fill)}.words__pause{margin-left:auto;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font:600 .82rem/1 var(--font-body);cursor:pointer}@supports (animation-timeline: view()){@media(prefers-reduced-motion:no-preference){.section h2 .hl{background:linear-gradient(90deg,var(--accent) 50%,color-mix(in srgb,var(--accent) 22%,transparent) 50%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:hlFill linear both;animation-timeline:view();animation-range:entry 15% cover 42%}.section__head h2{transform-origin:0 50%;animation:headScale linear both;animation-timeline:view();animation-range:entry 0% cover 30%}.case__media img,.resume__paper img{animation:imgDrift linear both;animation-timeline:view();animation-range:entry 0% exit 100%}}}@keyframes hlFill{0%{background-position:100% 0}to{background-position:0 0}}@keyframes headScale{0%{scale:.9;opacity:.6}to{scale:1;opacity:1}}@keyframes imgDrift{0%{scale:1.08}to{scale:1}}body{background-color:var(--page-bg, var(--bg));transition:background-color 1s ease}.section--alt{background:linear-gradient(180deg,color-mix(in srgb,var(--bg-alt) 55%,transparent),transparent)}:root[data-sec=work]{--page-bg: color-mix(in srgb, var(--bg) 94%, var(--accent-fill))}:root[data-sec=about]{--page-bg: color-mix(in srgb, var(--bg) 93%, #4f8cff)}:root[data-sec=experience],:root[data-sec=journey]{--page-bg: color-mix(in srgb, var(--bg) 93%, var(--badge-final))}:root[data-sec=kind-words]{--page-bg: color-mix(in srgb, var(--bg) 93%, var(--gold))}:root[data-sec=credentials]{--page-bg: color-mix(in srgb, var(--bg) 93%, var(--badge-sel))}:root[data-sec=resume]{--page-bg: color-mix(in srgb, var(--bg) 94%, var(--accent-2))}:root[data-sec=contact]{--page-bg: color-mix(in srgb, var(--bg) 92%, var(--accent-fill))}.particles{position:absolute;inset:0;z-index:0;width:100%;height:100%;pointer-events:none;opacity:.9}.sound-btn{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border-radius:999px;border:1px solid var(--line-strong);background:transparent;color:var(--muted);font:600 .8rem/1 var(--font-body);cursor:pointer}.sound-btn svg{width:16px;height:16px}.sound-btn[aria-pressed=true]{color:var(--accent);border-color:var(--accent-fill)}:root.retro{--bg: #050805;--bg-alt: #081008;--surface: #0b140b;--surface-2: #0b140b;--text: #b6ffb6;--muted: #6fbf6f;--line: #163016;--line-strong: #245024;--accent: #39ff14;--accent-2: #a6ff00;--accent-fill: #39ff14;--accent-fill-2: #2bd10f;--accent-ink: #031003;--accent-soft: rgba(57, 255, 20, .1);--accent-glow: rgba(57, 255, 20, .3);--font-display: "JetBrains Mono", monospace;--font-body: "JetBrains Mono", monospace}:root.retro body:after{content:"";position:fixed;inset:0;z-index:400;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0 1px,transparent 1px 3px)}:root.retro img{filter:grayscale(1) sepia(1) hue-rotate(70deg) saturate(2.2) brightness(.85)}.tag__btn{display:inline-block;white-space:nowrap;line-height:1.4}.tag__run{display:inline-block;vertical-align:1px}@media(max-width:760px){.tag__btn{white-space:normal}}.word blockquote p:before{content:none}.word blockquote{position:relative;padding-top:34px}.word blockquote:before{content:"";position:absolute;left:0;top:0;width:46px;height:6px;border-radius:6px;background:linear-gradient(90deg,var(--accent-fill),var(--accent-2))}.journey__arc--kgp-phone{display:none}@media(max-width:560px){.journey__pin[data-city=kgp]{--x: 72%;--y: 38%}.journey__arc--kgp{display:none}.journey__arc--kgp-phone{display:inline}}.is-building.is-scattered,.hand-wait{filter:none}.intro-lite .hand-wait{opacity:.6}.intro-lite .stage .hand-wait:not(.hand-held){transition:translate .3s var(--ease),rotate .3s var(--ease),opacity .3s var(--ease)}.is-building{transition-property:opacity,translate,rotate,scale}.ambient span{will-change:transform}@media(prefers-reduced-motion:no-preference){.tag__run{animation:none;position:relative}.tag__run:after{content:"";position:absolute;inset:-4px;border-radius:inherit;border:2px solid var(--accent-fill);opacity:0;animation:ping 2.4s ease-out infinite}}.bp__tag{background:#2563eb}.bp__size{background:#1e40af}.hand--design .hand__label{background:#2563eb}.bp__sel,.bp__sel i{border-color:#2563eb}.nowbar__repo{display:inline-flex;align-items:center;min-height:32px}.stage__tag{padding:0;width:max-content;max-width:min(96%,460px);border-radius:14px;text-align:left;white-space:normal;font-size:.82rem;bottom:8%}.stage__tag .tag__btn{display:grid;gap:6px;width:100%;padding:10px 12px 11px 16px;border-radius:inherit;text-align:left;white-space:normal;line-height:1.35}.tag__top{display:flex;align-items:center;justify-content:space-between;gap:18px}.stage__tag .tag__cmd{margin:0;color:var(--accent);font-size:.78rem;letter-spacing:.02em}.stage__tag .tag__run{margin:0;flex:none}.tag__out{display:block;color:var(--text);font-weight:500;white-space:nowrap}.stage__tag .tag__btn:hover{background:color-mix(in srgb,var(--accent-fill) 6%,transparent)}@media(max-width:760px){.stage__tag{font-size:.74rem;max-width:94%;bottom:4%}.stage__tag .tag__extra{display:none}.tag__out{white-space:normal}}.cases,.cards{align-items:stretch}.case__body{flex:1;display:flex;flex-direction:column}.case__body>.study{margin-bottom:14px}.case__body>.gh{margin-top:auto;align-self:stretch}.case__body:not(:has(>.gh))>.case__links{margin-top:auto}.case__body>.case__links{margin-top:12px}.case__body>.gh+.case__links{margin-top:12px}.card>.gh{margin-top:auto;align-self:stretch}.card:not(:has(>.gh))>.link:last-child{margin-top:auto}.card>.gh+.link{margin-top:10px}.card>.link{align-self:flex-start}.card>.chips{margin-bottom:8px}.card--list .mini{margin-top:4px}.card>.tag{min-height:26px;display:flex;align-items:center;margin:4px 0 0}.workbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin:0 0 28px}.workbar .filters{margin:0;flex:1 1 auto;min-width:0}.workbar .viewtoggle{margin:0;flex:none}@media(max-width:760px){.workbar{gap:10px}.workbar .viewtoggle{order:2}}@media(min-width:761px){.workbar{flex-wrap:nowrap;align-items:flex-start}.workbar .filters{flex-wrap:wrap}}.inst{margin:0;display:grid;justify-items:center;align-content:center;gap:12px;padding:20px 12px;border-radius:16px;background:radial-gradient(circle at 50% 38%,var(--accent-soft),transparent 70%),var(--bg-alt);border:1px solid var(--line)}.inst__logo{display:block;width:136px;aspect-ratio:1;border-radius:50%;background:#fff;box-shadow:0 0 0 4px var(--surface),0 0 0 5px var(--line-strong),0 16px 34px -14px #0000008c;transition:transform .5s var(--ease)}.inst__logo img{display:block;width:100%;height:100%;border-radius:50%}.timeline>li:hover .inst__logo{transform:scale(1.04)}.inst figcaption{font:600 .74rem/1.3 var(--font-mono);text-align:center;color:var(--muted);letter-spacing:.04em}@media(max-width:760px){.timeline .inst{order:-1;grid-template-columns:auto 1fr;justify-items:start;align-items:center;padding:12px 14px}.inst__logo{width:64px}.inst figcaption{text-align:left;font-size:.8rem;color:var(--text)}}.filters[hidden]{display:none!important}@media(min-width:761px){.workbar .filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cred-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.workbar .filters .filter,.cred-filters .filter{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;min-width:0;white-space:nowrap}}@media(min-width:761px)and (max-width:1100px){.workbar .filters{grid-template-columns:repeat(2,minmax(0,1fr))}}.rvault{margin-top:36px;display:grid;grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:56px;align-items:center}.rvault__stack{position:relative;aspect-ratio:1 / 1.3;width:100%;max-width:440px;margin-inline:auto}.rpaper{position:absolute;inset:0;margin:0;overflow:hidden;cursor:pointer;background:#fff;color:#16181d;border-radius:10px;box-shadow:0 1px #0000000a,0 30px 60px -28px #28140073,0 0 0 1px #0000000f;transition:transform .6s var(--ease),opacity .4s ease,filter .4s ease}.rpaper img{display:block;width:100%;height:auto}.rpaper:before{content:"";position:absolute;inset:41% 7% 0;background:repeating-linear-gradient(180deg,#e3e6ec 0 6px,transparent 6px 15px);-webkit-mask:linear-gradient(90deg,#000 0 64%,transparent 64% 70%,#000 70% 92%,transparent 92%),linear-gradient(180deg,#000,transparent 85%);-webkit-mask-composite:source-in;mask-composite:intersect;mask:linear-gradient(90deg,#000 0 64%,transparent 64% 70%,#000 70% 92%,transparent 92%),linear-gradient(180deg,#000,transparent 85%)}.rpaper__tab{position:absolute;top:10px;right:10px;z-index:2;padding:4px 9px;border-radius:999px;font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;background:#16181d;color:#fff}.rpaper__scan{position:absolute;left:0;right:0;top:0;height:18%;z-index:1;pointer-events:none;opacity:0;background:linear-gradient(180deg,transparent,rgba(194,65,12,.07) 70%,rgba(194,65,12,.38) 98%,transparent)}.rpaper__lock{position:absolute;left:50%;bottom:9%;z-index:2;translate:-50% 0;width:max-content;max-width:86%;display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:14px;background:#ffffffb8;border:1px solid rgba(22,24,29,.1);-webkit-backdrop-filter:blur(10px) saturate(1.2);backdrop-filter:blur(10px) saturate(1.2);box-shadow:0 12px 30px -14px #28140059;font-size:.82rem;line-height:1.35;color:#3a3f4b}.rpaper__lock svg{flex:none;width:26px;height:26px;fill:none;stroke:#c2410c;stroke-width:1.8;stroke-linecap:round}.rpaper__lock strong{display:block;font:600 .95rem/1.2 var(--font-display);color:#16181d}.rvault[data-version=dev] [data-paper=pl],.rvault[data-version=pl] [data-paper=dev]{z-index:0;transform:translate(8%,4%) rotate(4deg) scale(.95);filter:brightness(.93)}.rvault[data-version=dev] [data-paper=dev],.rvault[data-version=pl] [data-paper=pl]{z-index:1;cursor:default}.rvault[data-version=dev] [data-paper=pl]:hover,.rvault[data-version=pl] [data-paper=dev]:hover{transform:translate(11%,3%) rotate(6deg) scale(.95)}.rvault [data-paper] .rpaper__lock,.rvault [data-paper] .rpaper__scan{transition:opacity .3s ease}.rvault[data-version=dev] [data-paper=pl] .rpaper__lock,.rvault[data-version=pl] [data-paper=dev] .rpaper__lock{opacity:0}@media(prefers-reduced-motion:no-preference){.rvault[data-version=dev] [data-paper=dev] .rpaper__scan,.rvault[data-version=pl] [data-paper=pl] .rpaper__scan{animation:rscan 3.6s cubic-bezier(.45,0,.55,1) infinite}@keyframes rscan{0%{top:-18%;opacity:0}12%{opacity:1}70%{opacity:1}85%,to{top:100%;opacity:0}}}.rswitch{position:relative;display:grid;grid-template-columns:1fr 1fr;padding:5px;margin:0 0 22px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}.rswitch:before{content:"";position:absolute;top:5px;bottom:5px;left:5px;width:calc(50% - 5px);border-radius:10px;background:var(--accent-fill);box-shadow:0 8px 20px -10px var(--accent-glow);transition:translate .45s var(--ease)}.rvault[data-version=pl] .rswitch:before{translate:100% 0}.rswitch__btn{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 12px;border:0;border-radius:10px;background:none;color:var(--text);font:600 .92rem/1.2 var(--font-display);cursor:pointer;transition:color .3s ease}.rswitch__btn[aria-pressed=true]{color:var(--accent-ink)}.rswitch__k{font-size:.7rem;opacity:.75}.rswitch__btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.rinfo:not([hidden]){animation:rinfoIn .5s var(--ease) both}@keyframes rinfoIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.rinfo__lede{margin:0 0 12px;color:var(--muted);max-width:56ch}.rinfo__tags{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0 0 20px}.rinfo__tags li{list-style:none;padding:4px 11px;border-radius:999px;font:500 .74rem/1.4 var(--font-mono);color:var(--accent);background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}.rdl{position:relative;overflow:hidden;isolation:isolate}.rdl__fill{position:absolute;inset:0;z-index:-1;background:#ffffff47;transform:scaleX(0);transform-origin:left}.rdl.is-loading .rdl__fill{transform:scaleX(1);transition:transform .9s cubic-bezier(.3,.7,.2,1)}.rdl.is-done{background:var(--ok);border-color:var(--ok);color:#fff}.rdl.is-done svg{display:none}@media(max-width:960px){.rvault{grid-template-columns:1fr;gap:40px}.rvault__stack{max-width:380px;width:86%}}@media(max-width:560px){.rswitch__btn{font-size:.84rem;padding:8px 6px}.rpaper__lock{font-size:.74rem;padding:10px 12px;gap:10px}.rpaper__lock strong{font-size:.86rem}}@media print{.rvault__stack,.rswitch{display:none}.rinfo[hidden]{display:block!important}}:root:not([data-theme=dark]) .rinfo__tags li{color:#9a3412}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .rinfo__tags li{color:var(--accent)}}.topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.topics label{display:block}.topics span{display:flex;justify-content:center;width:100%;min-height:44px;text-align:center}.form__fallback{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.rhand{width:0;height:0}.rh{position:absolute;left:0;top:0;transform-origin:0 0}.rh__rig{position:absolute;left:0;top:0;perspective:900px;filter:drop-shadow(16px 24px 12px rgba(28,14,6,.34))}.rhand.is-grab .rh__rig{filter:drop-shadow(32px 46px 16px rgba(28,14,6,.24))}.rh__p,.rh__b{position:absolute;left:0;top:0;transform-origin:0 0;backface-visibility:hidden;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.rh__p,.rh__b{--sh: 0;--shc: rgba(30, 16, 8, var(--sh));background-repeat:no-repeat}.no-palm .rh__b{visibility:hidden}.rhand--rim .rh__rig,.rhand--rim.is-grab .rh__rig{filter:drop-shadow(0 0 7px rgba(255,196,150,.6))}.rh__glint{position:absolute;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;pointer-events:none;opacity:.3;background:radial-gradient(circle at 42% 38%,rgba(255,255,255,.95) 0 8%,rgba(190,215,255,.5) 22%,transparent 60%)}.rh__glint--pearl{width:20px;height:14px;margin:-7px 0 0 -10px;background:radial-gradient(ellipse at 45% 40%,rgba(255,255,255,.9) 0 10%,rgba(255,250,235,.35) 35%,transparent 65%)}.rhand .hand__label{left:auto;right:18px;top:14px}.rhand--left .hand__label,.rhand.rh-lab-flip .hand__label{right:auto;left:18px}.rhand--left.rh-lab-flip .hand__label{left:auto;right:18px}.rhand.is-grab .hand__label{scale:.96}.hand__label:empty{display:none}.bp:not(.bp--lite) .rhand .rh__rig{pointer-events:auto;cursor:pointer}.cred.is-stamped:after{content:"✓ Verified";position:absolute;top:12px;right:12px;z-index:2;padding:3px 9px 3px 8px;border-radius:6px;font:700 .66rem/1.3 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ok);border:2px solid currentColor;background:color-mix(in srgb,var(--surface) 82%,transparent);rotate:-9deg;pointer-events:none}@media(max-width:760px){.cred.is-stamped:after{top:8px;left:8px;right:auto}}.cred.stamp-anim:after{animation:stampIn .34s cubic-bezier(.3,1.6,.5,1) both}@keyframes stampIn{0%{scale:1.9;opacity:0}60%{opacity:1}to{scale:1;opacity:1}}:root[data-theme=dark] .cred.is-stamped:after{color:#4ade80}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .cred.is-stamped:after{color:#4ade80}}.bp-fx{position:fixed;inset:0;z-index:245;pointer-events:none}.ask{margin-top:56px;padding:26px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.ask__title{margin:0 0 4px;font:600 1.25rem/1.2 var(--font-display)}.ask__sub{margin:0 0 16px;color:var(--muted)}.ask__chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.ask__chip{min-height:38px;padding:7px 14px;border-radius:999px;border:1px solid var(--line-strong);background:var(--bg);color:var(--text);font:600 .84rem/1.2 var(--font-body);cursor:pointer;transition:border-color .2s ease,color .2s ease}.ask__chip:hover{border-color:var(--accent-fill);color:var(--accent)}.ask__chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ask__form{display:flex;gap:10px}.ask__form input{flex:1;min-width:0;min-height:44px;padding:10px 14px;border-radius:12px;border:1px solid var(--line-strong);background:var(--bg);color:var(--text);font:inherit}.ask__form input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media(max-width:560px){.ask{padding:18px}}.share{display:flex;align-items:center;gap:24px;padding-top:28px;padding-bottom:28px;border-bottom:1px solid var(--line)}.share__qr{flex:none;width:112px;height:112px;padding:9px;border-radius:14px;background:#fff;color:#111;box-shadow:var(--shadow-sm);border:1px solid var(--line)}.share__qr:empty{background:#fff repeating-linear-gradient(90deg,#eee 0 6px,#fff 6px 12px)}.share__qr svg{display:block;width:100%;height:100%}.share__body{min-width:0}.share__title{margin:0 0 2px;font:600 1.1rem/1.25 var(--font-display);color:var(--text)}.share__sub{margin:0 0 12px;color:var(--muted);font-size:.92rem}.share__btns{display:flex;flex-wrap:wrap;gap:8px}.share__url{margin:10px 0 0;font-size:.74rem;color:var(--muted);overflow-wrap:anywhere}@media(max-width:560px){.share{flex-direction:column;align-items:flex-start}}@media print{.share__btns{display:none}}.journey__learned{margin:6px 0 2px;padding:8px 10px;border-radius:10px;background:var(--accent-soft);font-size:.86rem;line-height:1.45;color:var(--text)}.journey__learned .mono{display:block;margin-bottom:2px;font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.case__media[data-video]{position:relative}.case__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .45s ease;pointer-events:none}.case__media.is-playing .case__video{opacity:1}.stage__portrait.is-building,.stage__portrait.is-building.is-scattered{opacity:1;filter:none}.intro-lite .enter,.intro-lite .stage__word span{opacity:1;transform:none;animation:none}main>.section{content-visibility:auto;contain-intrinsic-size:auto 1400px}@media print{main>.section{content-visibility:visible}}.ask__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.ask__clear{flex:none;min-height:36px;padding:6px 12px;border:0;border-radius:10px;background:none;color:var(--muted);font:600 .82rem/1.2 var(--font-body);cursor:pointer}.ask__clear:hover{color:var(--accent)}.ask__clear:focus-visible,.ask__log:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ask__log{display:flex;flex-direction:column;gap:10px;max-height:420px;margin-bottom:14px;padding:4px 2px;overflow-y:auto;overscroll-behavior:contain}.ask__log[hidden]{display:none}.ask__msg{max-width:min(82%,640px);padding:10px 14px;border-radius:16px;line-height:1.5;animation:rinfoIn .3s var(--ease) both;overflow-wrap:anywhere}.ask__msg--you{align-self:flex-end;border-bottom-right-radius:5px;background:var(--accent-fill);color:var(--accent-ink);font-weight:500}.ask__msg--me{align-self:flex-start;border-bottom-left-radius:5px;background:var(--bg);border:1px solid var(--line);color:var(--text)}.ask__read{margin:0 0 4px;font:500 .72rem/1.3 var(--font-mono);color:var(--muted)}.ask__text{margin:0}.ask__links{display:flex;flex-wrap:wrap;gap:6px 14px;margin:8px 0 0}.ask__link{font-size:.88rem;font-weight:600;color:var(--accent);text-decoration:none}.ask__link:hover{text-decoration:underline}.ask__typing{display:inline-flex;gap:5px;padding:14px}.ask__typing i{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:askDot 1s ease-in-out infinite}.ask__typing i:nth-child(2){animation-delay:.15s}.ask__typing i:nth-child(3){animation-delay:.3s}@keyframes askDot{0%,60%,to{opacity:.3;translate:0 0}30%{opacity:1;translate:0 -3px}}@media(max-width:560px){.ask__msg{max-width:92%}.ask__log{max-height:360px}}.term__links{display:flex;flex-wrap:wrap;gap:4px 14px;margin:2px 0}.term__links a{color:#7dd3fc}.moments{margin-top:40px;container-type:inline-size}.moments__title{margin:0 0 14px;font:600 1.05rem/1.2 var(--font-display)}.moments__filters{margin-bottom:14px}.moments__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;grid-auto-rows:190px;grid-auto-rows:calc((100cqw - 36px)*.1875);gap:12px}.moments__item{position:relative;display:block;min-height:0;overflow:hidden;border-radius:12px;border:1px solid var(--line);background:var(--surface);cursor:zoom-in}.moments__item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}.moments__item span{position:absolute;inset:auto 0 0;padding:22px 10px 8px;font:600 .78rem/1.25 var(--font-body);color:#fff;background:linear-gradient(transparent,#000000c7)}.moments__item:hover img{transform:scale(1.04)}.moments__item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.moments__item--big{grid-column:span 2;grid-row:span 2}.moments__item--wide,.moments__grid[data-set] [data-fw]{grid-column:span 2}.moments__item--tall{grid-row:span 2}.moments__grid[data-set] [data-fb]{grid-column:span 2;grid-row:span 2}.moments__foot{margin:14px 0 0;text-align:center}.moments__foot:has(>[hidden]){display:none}@media(max-width:760px){.moments__grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:130px;grid-auto-rows:calc((100cqw - 8px)*.375);gap:8px}}[data-video]{position:relative}.case__video{object-fit:contain;background:#0b0d12;z-index:0}.card__img.is-playing .case__video{opacity:1}:root{--dv-1: #c2410c;--dv-2: #2563eb;--dv-3: #0a8f83;--dv-ink: #fff}:root[data-theme=dark]{--dv-1: #f0622e;--dv-2: #4a8df0;--dv-3: #0fa898;--dv-ink: #0b0d12}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--dv-1: #f0622e;--dv-2: #4a8df0;--dv-3: #0fa898;--dv-ink: #0b0d12}}.study-data{margin-top:44px}.study-data:first-of-type{margin-top:30px}.dl-h{margin:0 0 6px;font:600 1.45rem/1.2 var(--font-display)}.dl-lede{margin:0 0 20px;max-width:70ch;color:var(--muted)}.dl-finding{margin:-8px 0 20px;padding:10px 14px;max-width:78ch;border-left:3px solid var(--accent);border-radius:0 10px 10px 0;background:var(--surface)}.dl-finding--rec{margin-top:-12px;border-left-color:#14b8a6}.dl-shot{display:block;max-width:760px;overflow:hidden;border-radius:14px;border:1px solid var(--line);cursor:zoom-in}.dl-shot img{display:block;width:100%;height:auto}.dl-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}.dl-stats>div{padding:14px 16px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}.dl-stats dt{font:500 .68rem/1.3 var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.dl-stats dd{margin:6px 0 0;font:400 2.1rem/1 var(--font-poster);color:var(--text)}.dl-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dl-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.dl-fig{margin:0;padding:18px;min-width:0;border-radius:14px;background:var(--surface);border:1px solid var(--line)}.dl-fig figcaption{margin-bottom:14px}.dl-fig figcaption strong{display:block;font:600 1rem/1.3 var(--font-display);color:var(--text)}.dl-fig figcaption span{display:block;margin-top:3px;font-size:.84rem;line-height:1.4;color:var(--muted)}.dl-chart{min-height:40px}.dl-wait{margin:0;color:var(--muted);font-size:.88rem}.dl-bars{display:grid;gap:7px}.dl-bar,.dl-stack{display:grid;grid-template-columns:minmax(84px,34%) minmax(0,1fr);gap:10px;align-items:center}.dl-bar__label{font-size:.82rem;line-height:1.2;color:var(--text);overflow-wrap:anywhere}.dl-bar__track{display:flex;align-items:center;gap:6px;min-width:0;padding-right:46px}.dl-bar__fill{height:16px;min-width:3px;border-radius:0 4px 4px 0;background:var(--dv-1)}.dl-bar__fill.is-muted{background:var(--line-strong)}.dl-bar__val{flex:none;margin-right:-46px;font:500 .76rem/1 var(--font-mono);color:var(--muted)}.dl-cols{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:8px;height:170px}.dl-col{display:flex;flex-direction:column;min-width:0}.dl-col__area{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;min-height:0;border-bottom:1px solid var(--line)}.dl-col__fill{width:min(24px,100%);border-radius:4px 4px 0 0;background:var(--dv-1)}.dl-col__val{margin-bottom:4px;font:500 .76rem/1 var(--font-mono);color:var(--muted)}.dl-col__label{margin-top:6px;text-align:center;font:500 .72rem/1 var(--font-mono);color:var(--muted)}.dl-legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 12px;padding:0;list-style:none;font-size:.8rem;color:var(--muted)}.dl-legend li{display:inline-flex;align-items:center;gap:6px}.dl-sw{width:10px;height:10px;border-radius:3px}.dl-sw--1,.dl-seg--1{background:var(--dv-1)}.dl-sw--2,.dl-seg--2{background:var(--dv-2)}.dl-sw--3,.dl-seg--3{background:var(--dv-3)}.dl-stack{margin-bottom:10px;grid-template-columns:64px minmax(0,1fr)}.dl-stack__track{display:flex;gap:2px;min-width:0}.dl-seg{display:flex;align-items:center;justify-content:center;height:24px;min-width:2px;color:var(--dv-ink);font:600 .72rem/1 var(--font-mono)}.dl-seg:first-child{border-radius:4px 0 0 4px}.dl-seg:last-child{border-radius:0 4px 4px 0}.dl-table{margin-top:12px;font-size:.82rem}.dl-table summary{cursor:pointer;color:var(--muted);font-weight:600;padding:10px 0}.dl-table summary:hover{color:var(--accent)}.dl-table table{width:100%;margin-top:8px;border-collapse:collapse}.dl-table th,.dl-table td{padding:4px 6px;text-align:left;border-bottom:1px solid var(--line)}.dl-tip{position:fixed;left:0;top:0;z-index:300;max-width:260px;padding:5px 9px;border-radius:8px;background:#16181d;color:#fff;font:500 .76rem/1.3 var(--font-body);pointer-events:none;box-shadow:var(--shadow)}.dl-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}.dl-notes>div{padding:18px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}.dl-notes h4{margin:0 0 8px;font:600 1rem/1.3 var(--font-display)}.dl-notes ul{margin:0;padding-left:18px;list-style:disc;color:var(--muted);font-size:.9rem}.dl-notes li{margin:5px 0}.dl-notes strong{color:var(--text)}.dl-links{display:flex;flex-wrap:wrap;gap:6px 16px;margin:12px 0 0;font-size:.9rem}.sql__examples{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.sql__ex{min-height:38px;padding:7px 14px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font:600 .84rem/1.2 var(--font-body);cursor:pointer}.sql__ex:hover{border-color:var(--accent-fill);color:var(--accent)}.sql__ex:focus-visible,.sql__in:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sql__in{display:block;width:100%;padding:12px 14px;border-radius:12px;border:1px solid #262c3a;background:#0d1017;color:#d6dbe6;font:500 .9rem/1.5 var(--font-mono);resize:vertical}.sql__bar{display:flex;align-items:center;gap:12px;margin:10px 0}.sql__keys{font-size:.74rem;color:var(--muted)}.sql__out:empty{display:none}.sql__out{padding:12px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--line)}.sql__scroll{max-height:320px;overflow:auto}.sql__out table{width:100%;border-collapse:collapse;font-size:.84rem}.sql__out th{position:sticky;top:0;padding:6px 8px;text-align:left;background:var(--surface);font:600 .74rem/1.2 var(--font-mono);color:var(--muted);border-bottom:1px solid var(--line-strong)}.sql__out td{padding:5px 8px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.sql__msg{margin:0;color:var(--muted)}.sql__msg.is-hint{color:var(--text)}.sql__count{margin:8px 0 0;font:500 .74rem/1.2 var(--font-mono);color:var(--muted)}.sql__schema{margin:10px 0 0;font-size:.72rem;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}@media(max-width:960px){.dl-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}.dl-grid--3>:last-child{grid-column:1 / -1}}@media(max-width:760px){.dl-grid,.dl-grid--3,.dl-notes{grid-template-columns:1fr}.dl-grid--3>:last-child{grid-column:auto}.dl-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.dl-seg--3{color:#0b0d12}:root:not([data-theme=dark]) .gh__live{color:#166534}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .gh__live{color:var(--ok)}}@media(min-width:1000px){.best5{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(min-width:761px)and (max-width:999px){.best5{grid-template-columns:repeat(6,minmax(0,1fr))}.best5>li{grid-column:span 2}.best5>li:nth-child(n+4){grid-column:span 3}}@media(min-width:761px)and (max-width:1099px){.medals{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:1100px){.medals{grid-template-columns:repeat(6,minmax(0,1fr))}}@media(min-width:761px){.creds{display:flex;flex-wrap:wrap;justify-content:center}.creds>.cred{flex:0 1 calc((100% - 36px) / 3);min-width:0}}@media(max-width:1100px){.cred-feature{grid-template-columns:1fr}.cred-feature__img{border-right:0;border-bottom:1px solid var(--line)}.cred-feature__img img{max-width:460px}}@media(min-width:900px){#data .section__intro,.dl-lede,.dl-finding{max-width:none}.dl-findings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:20px}.dl-findings .dl-finding{margin:0}#toll-dashboard{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-template-rows:1fr repeat(4,auto) 1fr;column-gap:36px}#toll-dashboard>*{grid-column:1}#toll-dashboard>.dl-h{grid-row:2}#toll-dashboard>.dl-lede{grid-row:3}#toll-dashboard>.dl-finding{grid-row:4}#toll-dashboard>.dl-links{grid-row:5}#toll-dashboard>.dl-shot{grid-column:2;grid-row:1 / -1;margin:0}}.bp__tag:before,.bp__size:before,.hand__label:before{content:attr(data-t)}.proj{padding:104px 0 72px}.proj__crumbs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px;font-size:.86rem;color:var(--muted)}.proj__crumbs a{color:inherit;text-decoration:underline;text-underline-offset:3px}.proj__kicker{margin:0;color:var(--accent);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}.proj h1{margin:8px 0 14px;font:400 clamp(2.4rem,7vw,4.4rem)/.98 var(--font-poster);letter-spacing:.01em;text-transform:uppercase;overflow-wrap:anywhere}.proj__lede{margin:0 0 10px;max-width:62ch;font-size:1.18rem;line-height:1.5;color:var(--text)}.proj__desc{margin:0 0 12px;max-width:70ch;color:var(--muted)}.proj__badge{margin:4px 0 12px}.proj__chips{margin:6px 0 4px}.proj__actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.proj__media{margin:26px 0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.proj__media:not(.proj__media--fit) img,.proj__media video{display:block;width:100%;height:auto}.proj__media figcaption,.proj__gallery figcaption{padding:8px 12px;font-size:.84rem;color:var(--muted)}.proj__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px;margin:24px 0}.proj__grid>.dl-finding{margin:0}.proj__block{padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.proj__block h2{margin:0 0 8px;font:600 1.05rem/1.3 var(--font-display)}.proj__block p,.proj__block ul{margin:0;color:var(--muted);line-height:1.6}.proj__block ul{padding-left:1.1rem}.proj__stats{margin:6px 0 22px}.proj__h2{margin:36px 0 12px;font:600 1.35rem/1.25 var(--font-display)}.proj__gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:14px}.proj__gallery figure{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.proj__gallery img{display:block;width:100%;height:auto;aspect-ratio:16 / 10;object-fit:cover}.proj__cta{margin:48px 0 0;padding:26px 24px;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:var(--radius);background:var(--surface)}.proj__cta h2{margin:0 0 6px;font:600 1.3rem/1.25 var(--font-display)}.proj__cta p{margin:0;color:var(--muted)}.proj__cta .proj__actions{margin-bottom:0}.proj__more{margin:44px 0 0}.proj__more h2{margin:0 0 14px;font:600 1.3rem/1.25 var(--font-display)}.proj__more ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:12px;margin:0;padding:0;list-style:none}.proj__more a{display:grid;gap:4px;height:100%;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);text-decoration:none}.proj__more a:hover,.proj__more a:focus-visible{border-color:var(--accent)}.proj__more span{font-size:.88rem;line-height:1.45;color:var(--muted)}@media(max-width:760px){.proj{padding-top:88px}}.proj__block ul{list-style:disc}.proj__block li+li{margin-top:6px}.proj__media--fit{width:fit-content;max-width:100%;margin-inline:auto}.proj__media--fit img{display:block;max-width:100%;height:auto}.proj__builds{display:grid;gap:16px;margin:26px 0}.proj__build{display:grid;gap:14px 24px;padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.proj__build h2{margin:0 0 4px;font:600 1.2rem/1.3 var(--font-display)}.proj__build p{margin:0;color:var(--muted);line-height:1.6}.proj__build .proj__tech{margin:0 0 10px;color:var(--accent);font-size:.78rem;letter-spacing:.04em}.proj__build .proj__actions{margin:14px 0 0}.proj__build .proj__media{margin:0}.proj__build .proj__media img{display:block;width:100%;height:auto}.proj__build video{aspect-ratio:16 / 9;background:#000;object-fit:contain}.proj__media--logo{max-width:min(100%,380px)}@media(min-width:760px){.proj__grid--pair{grid-template-columns:1fr 1fr}}@media(min-width:900px){.proj__build--media{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:start}}.card__mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px;background:var(--line)}.card__mosaic a{display:block;overflow:hidden;background:var(--bg-alt)}.card:hover .card__mosaic img{transform:none}.card__mosaic a:hover img{transform:scale(1.06)}.mini .mini__play{margin-left:6px;font-weight:500;color:var(--accent)}@media(max-width:1100px){.card__mosaic{grid-template-columns:repeat(4,1fr);grid-template-rows:1fr;aspect-ratio:4 / 1}#small .mini li{padding:6px 0}}
