@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400..700;1,9..40,400..700&display=swap";.engineer-page main,.engineer-page .engineer-footer{width:min(1120px,calc(100% - 64px));margin-inline:auto}.engineer-page .engineer-hero{padding:64px 0 100px}.engineer-page .engineer-kicker{display:flex;justify-content:space-between;gap:20px;color:var(--ed-muted);margin-bottom:64px}.engineer-page .engineer-kicker,.engineer-page .engineer-section-label{font-size:11px;font-weight:500;letter-spacing:.13em;line-height:1.7;color:var(--ed-muted)}.engineer-page .engineer-kicker a{letter-spacing:0;font-size:14px}.engineer-page .engineer-intro-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:7%;align-items:center}.engineer-page .engineer-intro{min-width:0}.engineer-page .engineer-hero h1{font-size:clamp(44px,5.6vw,76px);font-weight:500;letter-spacing:-.065em;line-height:1.06;margin:0 0 36px}.engineer-page .engineer-hero h1 span,.engineer-page h2 em{font-family:Georgia,Times New Roman,serif;font-style:italic;font-weight:400;color:var(--ed-accent);letter-spacing:-.045em}.engineer-page .engineer-name{font-size:17px;margin-bottom:16px}.engineer-page .engineer-lede{font-size:22px;line-height:1.5;letter-spacing:-.025em;max-width:520px}.engineer-page .engineer-description{font-size:16px;line-height:1.85;color:var(--ed-muted);margin-top:20px;max-width:520px}.engineer-page .engineer-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px}.engineer-page .engineer-button{display:inline-flex;align-items:center;gap:24px;background:var(--ed-ink);color:var(--ed-paper);border-radius:3px;padding:14px 20px;font-size:14px;font-weight:500}.engineer-page .engineer-text-link{display:inline-flex;align-items:center;gap:8px;font-size:14px;border-bottom:1px solid var(--ed-rule);padding-block:5px}.engineer-page .engineer-text-link svg{flex-shrink:0}.engineer-page .engineer-scroll{display:inline-flex;align-items:center;gap:10px;font-size:13px;color:var(--ed-muted);margin-top:40px}.engineer-page .engineer-portrait{margin:0;width:100%}.engineer-page .engineer-portrait>img{width:100%;aspect-ratio:.8;object-fit:cover;object-position:center 37%;filter:grayscale(.75);border-radius:3px}.engineer-page .engineer-portrait figcaption{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;font-size:11px;letter-spacing:.08em;line-height:1.6;padding-top:16px;color:var(--ed-muted)}.engineer-page .engineer-section{display:grid;grid-template-columns:1fr 2.3fr;gap:7%;padding-block:88px;border-top:1px solid var(--ed-rule)}.engineer-page .engineer-section-body{min-width:0}.engineer-page h2{font-size:clamp(32px,3.7vw,48px);line-height:1.15;letter-spacing:-.045em;font-weight:500}.engineer-page .engineer-section-intro{font-size:17px;color:var(--ed-muted);line-height:1.8;max-width:650px;margin-top:24px}.engineer-page .engineer-principles{margin-top:36px}.engineer-page .engineer-principles article{display:flex;gap:26px;border-top:1px solid var(--ed-rule);padding:26px 0}.engineer-page .engineer-principles article:last-child{padding-bottom:0}.engineer-page .engineer-principles article>span{color:var(--ed-accent);font-size:12px;line-height:1.8;padding-top:3px}.engineer-page .engineer-principles h3,.engineer-page .engineer-working h3{font-size:21px;font-weight:500;letter-spacing:-.025em;margin-bottom:10px}.engineer-page .engineer-principles p,.engineer-page .engineer-working-grid p{font-size:15px;color:var(--ed-muted);line-height:1.8;max-width:590px}.engineer-page .engineer-working-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:36px;border-block:1px solid var(--ed-rule)}.engineer-page .engineer-working-grid article{padding:28px 24px 28px 0}.engineer-page .engineer-working-grid article+article{border-left:1px solid var(--ed-rule);padding-left:24px;padding-right:0}.engineer-page .engineer-working-grid h3{margin-top:20px}.engineer-page .engineer-evidence-links{display:flex;gap:20px 32px;flex-wrap:wrap;margin-top:28px}.engineer-page .about-tech{margin-top:0;padding:80px 0;border-top:1px solid var(--ed-rule);text-align:left;background:transparent}.engineer-page .about-tech h2{margin-top:24px}.engineer-page .about-tech-description{margin:20px 0 32px;color:var(--ed-muted);font-size:16px;line-height:1.8}.engineer-page .about-tech-marquee{overflow-x:auto;overflow-y:hidden;width:100%;-webkit-mask-image:none;mask-image:none;padding:0}.engineer-page .about-tech-track{display:flex;width:max-content;gap:28px;animation:ed-stack-scroll 90s linear infinite}.engineer-page .about-tech-list{display:flex;flex-shrink:0;gap:28px;padding:0;margin:0;list-style:none}.engineer-page .about-tech-item{display:flex;flex-direction:column;align-items:center;gap:14px;width:88px;font-size:11px;color:var(--ed-muted)}.engineer-page .about-tech-icon{display:grid;place-items:center;width:64px;height:64px;border:1px solid var(--ed-rule);border-radius:50%;background:transparent}.engineer-page .about-tech-icon img,.engineer-page .about-tech-icon svg{width:28px;height:28px;object-fit:contain;filter:none}.engineer-page .about-tech-marquee:hover .about-tech-track,.engineer-page .about-tech-marquee:focus-within .about-tech-track,.engineer-page .about-tech-marquee.is-paused .about-tech-track{animation-play-state:paused}.engineer-page .about-tech-pause{margin-top:24px;border:0;border-bottom:1px solid var(--ed-rule);padding:8px 0;background:transparent;color:var(--ed-muted);font:inherit;font-size:12px;cursor:pointer}.engineer-page .engineer-contact{padding-block:88px;border-top:1px solid var(--ed-rule)}.engineer-page .engineer-contact h2{font-size:clamp(40px,5.6vw,72px);margin-top:28px}.engineer-page .engineer-contact-bottom{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-top:24px}.engineer-page .engineer-contact-bottom p{color:var(--ed-muted);font-size:16px;line-height:1.8}.engineer-page .engineer-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;padding-block:28px 110px;border-top:1px solid var(--ed-rule);color:var(--ed-muted);font-size:12px}.engineer-page .engineer-footer>div{display:flex;flex-wrap:wrap;gap:24px}.engineer-page .engineer-footer>div a{display:inline-flex;align-items:center;gap:6px}@keyframes ed-stack-scroll{to{transform:translate(calc(-50% - 14px))}}@media (max-width: 900px){.engineer-page .engineer-section{grid-template-columns:1fr;gap:28px}.engineer-page .engineer-contact-bottom{flex-direction:column;align-items:start}}@media (max-width: 700px){.engineer-page main,.engineer-page .engineer-footer{width:calc(100% - 40px)}.engineer-page .engineer-hero{padding-block:40px 64px}.engineer-page .engineer-kicker{flex-direction:column;gap:16px;margin-bottom:36px}.engineer-page .engineer-intro-grid{grid-template-columns:1fr;gap:40px}.engineer-page .engineer-portrait{max-width:440px}.engineer-page .engineer-portrait>img{aspect-ratio:1}.engineer-page .engineer-section,.engineer-page .engineer-contact,.engineer-page .about-tech{padding-block:56px}.engineer-page .engineer-working-grid{grid-template-columns:1fr}.engineer-page .engineer-working-grid article+article{border-left:0;border-top:1px solid var(--ed-rule);padding-left:0}.engineer-page .engineer-footer{flex-direction:column}}@media (prefers-reduced-motion: reduce){.engineer-page .about-tech-track{animation:none;transform:none}.engineer-page .about-tech-list[aria-hidden=true],.engineer-page .about-tech-pause{display:none}}:is(.editorial-site,.editorial-details) :is(.ed-contact,.engineer-contact).ed-thunder-contact{position:relative;isolation:isolate;min-height:620px;padding-block:155px 125px}.ed-thunder-contact>:not(.ed-lightning-layer){position:relative;z-index:1}.ed-thunder-contact .ed-lightning-layer{position:absolute;top:0;bottom:0;z-index:0;overflow:hidden;pointer-events:auto}.ed-lightning-layer canvas{display:block;width:100%;height:100%}:is(.editorial-site,.editorial-details) .ed-lightning-toggle{position:absolute;right:max(20px,calc((100% - 1120px)/2));bottom:25px;display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:8px 0;border:0;border-bottom:1px solid #ffffff40;background:transparent;color:#e0e4ff;font:inherit;font-size:11px;cursor:pointer;pointer-events:auto}:is(.editorial-site,.editorial-details) .ed-lightning-toggle:hover{color:#fff}@media (max-width: 700px){:is(.editorial-site,.editorial-details) :is(.ed-contact,.engineer-contact).ed-thunder-contact{min-height:560px;padding-block:110px 100px}}@media (prefers-reduced-motion: reduce){:is(.editorial-site,.editorial-details) .ed-lightning-toggle{display:none}}.editorial-details{--ed-paper: #ffffff;--ed-ink: #10132b;--ed-muted: #5d637b;--ed-rule: #e0e4ef;--text: var(--ed-ink);background:var(--ed-paper);color:var(--ed-ink);min-height:100vh;font-family:DM Sans,sans-serif}.editorial-details :is(a,button,[tabindex]):focus-visible{outline:2px solid var(--ed-accent);outline-offset:5px}.editorial-details a{transition:opacity .2s ease}.editorial-details a:hover{opacity:.72}.editorial-details .skip-link{background:var(--ed-ink);color:var(--ed-paper)}.editorial-details .ed-header{width:min(1120px,calc(100% - 64px));margin-inline:auto;min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--ed-rule)}.editorial-details .ed-wordmark{font-size:25px;font-weight:600;letter-spacing:-.06em}.editorial-details .ed-header nav{display:flex;gap:32px;font-size:13px;color:var(--ed-muted)}.editorial-details .ed-header nav a{padding-block:12px}.editorial-details .ed-header nav [aria-current=page]{color:var(--ed-ink);text-decoration:underline;text-underline-offset:7px}.editorial-details .ed-project,.editorial-details .ed-footer{width:min(1120px,calc(100% - 64px));margin-inline:auto}.editorial-details .ed-project{padding-top:48px}.editorial-details .ed-link{display:inline-flex;align-items:center;gap:8px;font-size:14px;padding-block:5px}.editorial-details .ed-label{font-size:11px;font-weight:500;letter-spacing:.13em;line-height:1.7;color:var(--ed-muted);text-transform:uppercase}.editorial-details .ed-project-intro{padding:56px 0 64px;max-width:850px}.editorial-details .ed-project h1{font-size:clamp(60px,8.5vw,112px);font-weight:500;letter-spacing:-.07em;line-height:1.03;margin:20px 0 28px;overflow-wrap:anywhere}.editorial-details .ed-tagline{font-family:Georgia,Times New Roman,serif;font-style:italic;font-size:clamp(24px,3vw,36px);line-height:1.3;color:var(--ed-accent)}.editorial-details .ed-summary{max-width:700px;font-size:18px;line-height:1.85;color:var(--ed-muted);margin-top:24px}.editorial-details .ed-status{font-size:12px;color:var(--ed-muted);margin-top:24px;padding-left:12px;border-left:2px solid var(--ed-accent);line-height:1.7}.editorial-details .ed-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.editorial-details .ed-project-intro .ed-actions{margin-top:32px}.editorial-details .ed-button{display:inline-flex;justify-content:center;align-items:center;gap:24px;padding:14px 20px;background:var(--ed-ink);color:var(--ed-paper);border-radius:3px;font-size:14px}.editorial-details .ed-image{margin:0 0 88px}.editorial-details .ed-image>img{width:100%;height:auto;border:1px solid var(--ed-rule);border-radius:4px}.editorial-details .ed-image figcaption{color:var(--ed-muted);font-size:12px;line-height:1.8;padding-top:16px}.editorial-details .ed-image figcaption a{display:inline-flex;align-items:center;gap:3px;text-decoration:underline;text-underline-offset:3px}.editorial-details .ed-section,.editorial-details .ed-writing{display:grid;grid-template-columns:1fr 2.3fr;gap:7%;border-top:1px solid var(--ed-rule);padding-block:80px}.editorial-details .ed-section-body{min-width:0}.editorial-details :is(.ed-project,.ed-footer) h2{font-size:clamp(32px,3.7vw,48px);font-weight:500;letter-spacing:-.045em;line-height:1.15}.editorial-details h2 em{font-family:Georgia,Times New Roman,serif;font-weight:400;color:var(--ed-accent)}.editorial-details .ed-section h3{font-size:22px;font-weight:500;letter-spacing:-.025em;line-height:1.35;margin-top:32px}.editorial-details .ed-section-body p,.editorial-details .ed-writing>div>p:not(.ed-label){font-size:16px;line-height:1.85;color:var(--ed-muted);margin-top:20px}.editorial-details .ed-steps{list-style:none;padding:0;margin:36px 0 0}.editorial-details .ed-steps li{display:flex;gap:24px;padding-block:24px;border-top:1px solid var(--ed-rule)}.editorial-details .ed-step-number{color:var(--ed-accent);font-size:12px;padding-top:6px}.editorial-details .ed-steps h3{margin:0}.editorial-details .ed-steps p{margin-top:10px}.editorial-details .ed-features{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:36px}.editorial-details .ed-features article{border-top:1px solid var(--ed-rule);padding-top:24px}.editorial-details .ed-features h3{margin:0;font-size:20px}.editorial-details .ed-features p{margin-top:12px;font-size:15px}.editorial-details .ed-tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:36px 0 0}.editorial-details .ed-tags li{border:1px solid var(--ed-rule);border-radius:3px;padding:6px 10px;color:var(--ed-muted);font-size:11px}.editorial-details .ed-next{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--ed-rule);padding-block:56px 80px}.editorial-details .ed-next h2{margin-top:20px}.editorial-details .ed-next p{margin-top:12px;font-size:16px;line-height:1.6;color:var(--ed-muted)}.editorial-details .ed-next>svg{flex-shrink:0}.editorial-details .ed-writing h2{margin-top:20px}.editorial-details .ed-writing .ed-link{margin-top:24px;border-bottom:1px solid var(--ed-rule)}.editorial-details .ed-contact{padding-block:80px;border-top:1px solid var(--ed-rule)}.editorial-details .ed-contact h2{font-size:clamp(40px,5.6vw,72px);margin-top:28px}.editorial-details .ed-contact-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:28px;margin-top:32px}.editorial-details .ed-contact-bottom>p{font-size:16px;color:var(--ed-muted);line-height:1.8}.editorial-details .ed-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--ed-rule);padding-block:24px 110px;color:var(--ed-muted);font-size:12px}@media (max-width: 900px){.editorial-details .ed-section,.editorial-details .ed-writing{grid-template-columns:1fr;gap:28px}}@media (max-width: 700px){.editorial-details .ed-header,.editorial-details .ed-project,.editorial-details .ed-footer{width:calc(100% - 40px)}.editorial-details .ed-header{min-height:88px;gap:16px}.editorial-details .ed-header nav{gap:18px;font-size:12px}.editorial-details .ed-wordmark{font-size:23px}.editorial-details .ed-project{padding-top:36px}.editorial-details .ed-project-intro{padding-block:40px 48px}.editorial-details .ed-image{margin-bottom:56px}.editorial-details .ed-section,.editorial-details .ed-writing,.editorial-details .ed-contact{padding-block:56px}.editorial-details .ed-features{grid-template-columns:1fr;gap:24px}.editorial-details .ed-actions{gap:20px}.editorial-details .ed-next{padding-block:48px}}@media (max-width: 360px){.editorial-details .ed-header{flex-wrap:wrap;padding-block:20px}}@media (prefers-reduced-motion: reduce){html:has(.editorial-details){scroll-behavior:auto}.editorial-details,.editorial-details *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.badges-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;background:#04060ad1;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:1.25rem;animation:badgesFadeIn .22s cubic-bezier(.16,1,.3,1)}@keyframes badgesFadeIn{0%{opacity:0}to{opacity:1}}.badges-modal-sheet{position:relative;width:100%;max-width:760px;max-height:min(90vh,840px);background:linear-gradient(180deg,#141822,#0c0e14);border:1px solid rgba(255,255,255,.12);border-radius:20px;box-shadow:0 25px 60px -15px #000000e6,0 0 45px #f59e0b14;display:flex;flex-direction:column;overflow:hidden;animation:badgesSheetPop .28s cubic-bezier(.16,1,.3,1)}@keyframes badgesSheetPop{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.badges-modal-header{padding:1.5rem 1.75rem 1.15rem;border-bottom:1px solid rgba(255,255,255,.07);display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;background:#ffffff04}.badges-header-info{display:flex;align-items:center;gap:1rem}.badges-header-avatar-wrap{position:relative;flex-shrink:0}.badges-header-avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid #f59e0b;box-shadow:0 0 16px #f59e0b59;display:block}.badges-header-avatar-badge{position:absolute;bottom:-2px;right:-2px;width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,#f59e0b,#d97706);border:2px solid #141822;color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px}.badges-header-text h2{font-size:1.35rem;font-weight:700;letter-spacing:-.02em;color:#f8fafc;margin:0 0 .25rem;display:flex;align-items:center;gap:.5rem}.badges-header-text p{font-size:.85rem;color:#94a3b8;margin:0;line-height:1.4}.badges-close-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#cbd5e1;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;flex-shrink:0}.badges-close-btn:hover{background:#ffffff1f;color:#fff;border-color:#ffffff40;transform:rotate(90deg)}.badges-filter-bar{display:flex;align-items:center;gap:.5rem;padding:.85rem 1.75rem;border-bottom:1px solid rgba(255,255,255,.05);background:#0a0c1180;overflow-x:auto}.badges-filter-pill{background:#ffffff0a;border:1px solid rgba(255,255,255,.07);color:#94a3b8;font-size:.8rem;font-weight:500;padding:.35rem .85rem;border-radius:999px;cursor:pointer;transition:all .18s ease;white-space:nowrap;display:flex;align-items:center;gap:.4rem}.badges-filter-pill:hover{background:#ffffff14;color:#f1f5f9;border-color:#ffffff26}.badges-filter-pill.is-active{background:#f59e0b26;color:#fbbf24;border-color:#f59e0b66}.badges-modal-body{padding:1.5rem 1.75rem 2rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.75rem}.badges-section-subhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:.85rem}.badges-section-title{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;margin:0;display:flex;align-items:center;gap:.5rem}.badges-section-count{font-size:.72rem;padding:.15rem .5rem;border-radius:999px;background:#ffffff0f;color:#94a3b8}.badge-card-10x{position:relative;background:linear-gradient(135deg,#1e180fd9,#141822f2);border:1.5px solid rgba(245,158,11,.45);border-radius:16px;padding:1.5rem;box-shadow:0 8px 32px -6px #f59e0b33,inset 0 1px #ffffff1a;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;cursor:pointer}.badge-card-10x:hover{transform:translateY(-2px);border-color:#f59e0bb3;box-shadow:0 12px 40px -4px #f59e0b4d,inset 0 1px #fff3}.badge-card-10x:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 35%,rgba(245,158,11,.08) 45%,rgba(255,255,255,.12) 50%,rgba(245,158,11,.08) 55%,transparent 65%);transform:rotate(25deg);animation:shineLoop 8s ease-in-out infinite;pointer-events:none}@keyframes shineLoop{0%{transform:translate(-100%,-100%) rotate(25deg)}30%,to{transform:translate(100%,100%) rotate(25deg)}}.badge-10x-inner{position:relative;z-index:1;display:flex;flex-direction:column;gap:1.15rem}.badge-10x-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.badge-10x-identity{display:flex;align-items:center;gap:1.1rem}.badge-10x-icon-wrap{position:relative;width:58px;height:58px;border-radius:16px;background:linear-gradient(135deg,#f59e0b,#b45309);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 0 24px #f59e0b80,inset 0 2px 4px #fff6;flex-shrink:0;animation:pulseZapGlow 3s infinite alternate}@keyframes pulseZapGlow{0%{box-shadow:0 0 16px #f59e0b66}to{box-shadow:0 0 32px #f59e0bb3}}.badge-10x-title-wrap h3{font-size:1.45rem;font-weight:800;color:#fff;letter-spacing:-.02em;margin:0 0 .2rem;display:flex;align-items:center;gap:.5rem}.badge-10x-tagline{font-size:.85rem;font-weight:600;color:#fbbf24;margin:0;letter-spacing:-.01em}.badge-rarity-pill{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:.3rem .65rem;border-radius:999px;display:inline-flex;align-items:center;gap:.35rem}.badge-rarity-pill.legendary{background:#f59e0b33;color:#fbbf24;border:1px solid rgba(245,158,11,.5);box-shadow:0 0 12px #f59e0b40}.badge-10x-description{font-size:.92rem;color:#e2e8f0;line-height:1.55;margin:0}.badge-10x-perks{display:flex;flex-wrap:wrap;gap:.45rem}.badge-perk-pill{font-size:.75rem;font-weight:500;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);color:#cbd5e1;padding:.25rem .65rem;border-radius:6px}.badge-perk-pill.legendary-perk{background:#f59e0b1f;border-color:#f59e0b40;color:#fde68a;font-weight:600}.badge-10x-lore{font-size:.8rem;font-style:italic;color:#94a3b8;border-left:2px solid rgba(245,158,11,.5);padding-left:.75rem;margin:0}.badges-common-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}@media (max-width: 640px){.badges-common-grid{grid-template-columns:1fr}}.badge-common-card{position:relative;background:#ffffff05;border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:1.15rem;display:flex;flex-direction:column;gap:.75rem;transition:all .2s ease;cursor:pointer;text-align:left}.badge-common-card:hover{background:#ffffff0a;border-color:#ffffff2e;transform:translateY(-2px);box-shadow:0 8px 24px -6px #0009}.badge-common-card.is-selected{border-color:var(--badge-accent, rgba(255, 255, 255, .3));background:#ffffff0d;box-shadow:0 0 20px -4px var(--badge-glow, rgba(255, 255, 255, .1))}.badge-common-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.badge-common-identity{display:flex;align-items:center;gap:.75rem}.badge-common-icon-wrap{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s ease}.badge-common-card:hover .badge-common-icon-wrap{transform:scale(1.08)}.badge-common-titles h4{font-size:.95rem;font-weight:700;color:#f1f5f9;margin:0 0 .15rem;letter-spacing:-.01em}.badge-common-tagline{font-size:.75rem;color:#94a3b8;margin:0}.badge-rarity-pill.common{background:#ffffff0d;color:#94a3b8;border:1px solid rgba(255,255,255,.09)}.badge-common-desc{font-size:.82rem;color:#cbd5e1;line-height:1.5;margin:0}.badge-common-perks{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:auto}.badge-common-perks .badge-perk-pill{font-size:.7rem;padding:.2rem .5rem}.badges-modal-footer{padding:1rem 1.75rem;border-top:1px solid rgba(255,255,255,.07);background:#0a0c1199;display:flex;align-items:center;justify-content:space-between;gap:1rem}.badges-footer-stats{font-size:.78rem;color:#94a3b8;display:flex;align-items:center;gap:.4rem}.badges-footer-stats strong{color:#f1f5f9}.badges-done-btn{background:#f8fafc;color:#0f172a;border:none;font-size:.85rem;font-weight:600;padding:.45rem 1.25rem;border-radius:8px;cursor:pointer;transition:all .18s ease}.badges-done-btn:hover{background:#fff;transform:translateY(-1px);box-shadow:0 4px 14px #fff3}.badge-toast{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);z-index:100000;background:#0f172af2;border:1px solid rgba(245,158,11,.4);box-shadow:0 10px 30px #00000080,0 0 20px #f59e0b33;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#f8fafc;padding:.6rem 1.2rem;border-radius:999px;font-size:.82rem;font-weight:500;display:flex;align-items:center;gap:.5rem;animation:toastSlideUp .25s cubic-bezier(.16,1,.3,1);pointer-events:none}@keyframes toastSlideUp{0%{opacity:0;transform:translate(-50%,15px)}to{opacity:1;transform:translate(-50%)}}.hero-avatar-btn{position:relative;border:none;background:transparent;padding:0;margin:0;cursor:pointer;display:inline-block;border-radius:50%;transition:transform .25s cubic-bezier(.16,1,.3,1)}.hero-avatar-btn:hover{transform:scale(1.05)}.hero-avatar-btn:focus-visible{outline:2px solid #f59e0b;outline-offset:4px}.hero-avatar-badge-indicator{position:absolute;bottom:1px;right:1px;width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#f59e0b,#d97706);border:2px solid #0e1015;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 0 12px #f59e0bb3;transition:transform .2s ease,box-shadow .2s ease}.hero-avatar-btn:hover .hero-avatar-badge-indicator{transform:scale(1.15) rotate(10deg);box-shadow:0 0 18px #f59e0be6}.hero-avatar-badge-icon{width:13px;height:13px;color:#fff;fill:#fff}.hero-avatar-hover-hint{position:absolute;top:-10px;right:-24px;background:#0f172aeb;border:1px solid rgba(245,158,11,.4);color:#fbbf24;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 7px;border-radius:999px;box-shadow:0 4px 12px #0006,0 0 8px #f59e0b33;opacity:0;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease;pointer-events:none;white-space:nowrap}.hero-avatar-btn:hover .hero-avatar-hover-hint{opacity:1;transform:translateY(0)}.header-portrait-btn{background:transparent;border:none;padding:0;cursor:pointer;position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;transition:transform .2s ease}.header-portrait-btn:hover{transform:scale(1.1)}.header-portrait-btn:focus-visible{outline:2px solid #f59e0b;outline-offset:2px}.header-portrait-badge-dot{position:absolute;bottom:-1px;right:-1px;width:10px;height:10px;border-radius:50%;background:#f59e0b;border:1.5px solid #0e1015;box-shadow:0 0 6px #f59e0bcc}.ed-flight-origin{position:absolute;top:0;right:0;width:180px;height:125px;pointer-events:none}.ed-plane-art{display:block;width:100%;height:auto;overflow:visible;filter:drop-shadow(0 14px 9px rgb(28 52 111 / 16%))}.ed-flight-origin.is-flying>svg{visibility:hidden}.ed-flight-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;overflow:hidden;visibility:hidden;contain:strict}.ed-flight-layer.is-flying{visibility:visible}.ed-flight-plane{position:absolute;top:0;left:0;width:180px;will-change:transform;perspective:600px}.ed-flight-plane>svg{transform:rotate(var(--plane-heading, 0deg)) rotateY(var(--plane-bank, 0deg));transform-origin:50% 50%}.ed-flight-trail{position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible}.ed-flight-trail path{fill:none;stroke:var(--ed-blue, #000000);filter:drop-shadow(0 1px 0 #ffffff);stroke-width:1.3;stroke-dasharray:2 7;stroke-linecap:round;opacity:.3}.editorial-site .ed-flight-toggle{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:4px 0;border:0;background:none;color:var(--ed-muted);font:inherit;font-size:11px;cursor:pointer}.editorial-site .ed-flight-toggle:hover{color:var(--ed-accent, #315bd6)}@media (max-width: 1000px){.ed-flight-origin{width:120px;height:83px;top:-10px}}@media (max-width: 700px){.ed-flight-origin{position:relative;width:100px;height:69px;top:auto;margin:8px 0 0 auto}}@media (prefers-reduced-motion: reduce){.ed-flight-origin.is-flying>svg{visibility:visible}.ed-flight-layer.is-flying{visibility:hidden}.editorial-site .ed-flight-toggle{display:none}}.editorial-site,.editorial-details{--ed-blue: #000000;--ed-accent: var(--ed-blue);--ed-accent-hover: #262626;--ed-accent-soft: #eef0ff}:is(.editorial-site,.editorial-details) ::selection{background:var(--ed-accent-soft);color:var(--ed-ink)}:is(.editorial-site,.editorial-details) .ed-blue-band{--ed-ink: #ffffff;--ed-muted: #e0e4ff;--ed-accent: #ffffff;--ed-accent-hover: #d5dcff;--ed-line: #ffffff40;--ed-rule: #ffffff40;--text: #ffffff;position:relative;isolation:isolate;background:var(--ed-blue);color:#fff}:is(.editorial-site,.editorial-details) .ed-blue-band:before{content:"";position:absolute;top:-1px;right:0;bottom:-1px;left:0;z-index:-1;background:var(--ed-blue);box-shadow:0 0 0 100vmax var(--ed-blue);clip-path:inset(0 -100vmax);pointer-events:none}:is(.editorial-site,.editorial-details) .ed-blue-band a:hover{color:#fff;text-decoration:underline;text-underline-offset:5px;opacity:1}:is(.editorial-site,.editorial-details) .ed-blue-band :is(a,button):focus-visible{outline-color:#fff}:is(.editorial-site,.editorial-details) .ed-blue-band ::selection{background:#fff;color:var(--ed-blue)}.editorial-site .ed-blue-band .ed-link{text-decoration-color:#ffffff80}.editorial-details .ed-blue-band :is(.ed-button,.engineer-button){background:#fff;color:var(--ed-blue)}.editorial-details .ed-blue-band :is(.ed-button,.engineer-button):hover{color:var(--ed-blue)}.editorial-site{--ed-paper: #ffffff;--ed-ink: #10132b;--ed-muted: #5d637b;--ed-line: #e0e4ef;--text: var(--ed-ink);background:var(--ed-paper);color:var(--ed-ink);font-size:15px;line-height:1.65}.editorial-site .ed-shell{width:min(1120px,calc(100% - 64px));margin-inline:auto}.editorial-site .ed-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.editorial-site a{transition:color .18s ease}.editorial-site a:hover{color:var(--ed-accent-hover)}.editorial-site a:focus-visible,.editorial-site button:focus-visible,.editorial-site summary:focus-visible{outline:2px solid var(--ed-accent);outline-offset:6px}.editorial-site svg{flex-shrink:0}.editorial-site em{font-family:Georgia,Times New Roman,serif;font-weight:400}.editorial-site .ed-header{display:flex;align-items:center;justify-content:space-between;padding-block:31px;border-bottom:1px solid var(--ed-line)}.editorial-site .ed-wordmark{font-size:26px;font-weight:750;letter-spacing:-1.5px;line-height:1}.editorial-site .ed-wordmark span{color:var(--ed-accent)}.editorial-site .ed-header nav,.editorial-site .ed-footer nav{display:flex;align-items:center;gap:30px;font-size:13px}.editorial-site .ed-header nav a{display:inline-flex;gap:5px;align-items:center;min-height:32px}.editorial-site .ed-hero{padding-top:89px;padding-bottom:83px}.editorial-site .ed-introduction{display:flex;align-items:center;gap:15px}.editorial-site .ed-introduction p{font-weight:550;font-size:15px}.editorial-site .ed-introduction span{color:var(--ed-muted);font-size:13px}.editorial-site .ed-avatar{width:53px;height:53px;border:2px solid #ffffff80;padding:0;border-radius:50%;overflow:hidden;background:#eef0ff;cursor:pointer;flex-shrink:0}.editorial-site .ed-avatar img{height:100%;width:100%;object-fit:cover;object-position:50% 32%}.editorial-site .ed-hero-heading{position:relative;padding-block:36px 33px}.editorial-site .ed-hero h1{font-size:clamp(52px,6.15vw,83px);line-height:1.1;letter-spacing:-3px;font-weight:450}.editorial-site .ed-hero h1 em{color:var(--ed-accent);letter-spacing:-3px}.editorial-site .ed-hero-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:32px}.editorial-site .ed-hero-description{color:var(--ed-muted);font-size:16px;line-height:1.8;max-width:560px}.editorial-site .ed-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:15px 20px;margin-top:27px}.editorial-site .ed-hero-actions>span{color:var(--ed-muted);font-size:12px;max-width:220px}.editorial-site .ed-hero-actions .ed-hire-link{display:inline-flex;align-items:center;gap:18px;padding:13px 18px;border-radius:3px;background:#fff;color:var(--ed-blue);font-size:14px;font-weight:550}.editorial-site .ed-hero-actions .ed-hire-link:hover{color:var(--ed-blue);background:#eef0ff}.editorial-site .ed-current{margin-top:24px;font-size:13px;color:var(--ed-muted);line-height:1.95}.editorial-site .ed-current a{color:var(--ed-ink);display:inline-flex;align-items:center;gap:3px;border-bottom:1px solid var(--ed-line)}.editorial-site .ed-work{padding-top:48px}.editorial-site .ed-scroll-link{display:flex;align-items:center;gap:22px;font-size:12px;padding-bottom:4px;color:var(--ed-muted)}.editorial-site .ed-section-marker{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 20px;border-bottom:1px solid var(--ed-line);padding-bottom:17px;font-size:11px;letter-spacing:1px;color:var(--ed-muted)}.editorial-site .ed-project{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:center;padding-block:65px;border-bottom:1px solid var(--ed-line)}.editorial-site .ed-kicker{font-size:12px;letter-spacing:.3px;color:var(--ed-muted);margin-bottom:25px}.editorial-site .ed-project-name{display:inline-flex;align-items:center;gap:9px;font-size:18px;font-weight:650;margin-bottom:15px;letter-spacing:-.5px}.editorial-site .ed-project h2{font-size:clamp(32px,3.5vw,45px);font-weight:450;line-height:1.16;letter-spacing:-1.8px}.editorial-site .ed-project h2 em{letter-spacing:-1.5px}.editorial-site .ed-project-description{margin-top:22px;color:var(--ed-muted);line-height:1.8;max-width:385px;font-size:14px}.editorial-site .ed-project-links{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:25px}.editorial-site .ed-link{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:550;text-decoration:underline;text-decoration-color:#aaa99a;text-underline-offset:6px}.editorial-site .ed-secondary-link{display:inline-flex;align-items:center;gap:5px;color:var(--ed-muted);font-size:12px}.editorial-site .ed-status{font-size:11px;color:var(--ed-muted);display:flex;gap:6px;align-items:center;margin-top:28px;letter-spacing:.15px}.editorial-site .ed-status>span{width:5px;height:5px;border-radius:50%;background:var(--ed-accent)}.editorial-site .ed-project-visual{background:var(--ed-accent-soft);height:366px;border:1px solid #d6def3;border-radius:5px;overflow:hidden;display:flex;flex-direction:column;padding:23px 28px 18px;color:var(--ed-accent-hover)}.editorial-site .ed-preview-top{display:flex;align-items:center;justify-content:space-between;font-size:15px;font-weight:650;letter-spacing:-.5px}.editorial-site .ed-browser-frame{margin-top:29px;border-radius:5px 5px 0 0;overflow:hidden;box-shadow:0 12px 27px #242b2924;background:#fff;transform:rotate(-2deg);transform-origin:center;transition:transform .25s ease;flex:1;min-height:0;border:1px solid #ffffff66}.editorial-site .ed-project-visual:hover .ed-browser-frame{transform:rotate(0) translateY(-4px)}.editorial-site .ed-browser-bar{height:25px;display:flex;align-items:center;gap:4px;background:#f0f0ed;padding:0 9px;position:relative}.editorial-site .ed-browser-bar>span{width:4px;height:4px;border-radius:50%;background:#c3c2bc}.editorial-site .ed-browser-bar i{position:absolute;left:50%;transform:translate(-50%);font-style:normal;font-size:11px;color:#73736a;white-space:nowrap}.editorial-site .ed-browser-frame img{width:100%;height:auto}.editorial-site .ed-preview-caption{margin-top:23px;font-size:11px;letter-spacing:.5px;flex-shrink:0}.editorial-site .ed-project-opsagent .ed-project-visual{background:#e1e6ff;border-color:#d6def3;color:var(--ed-accent-hover)}.editorial-site .ed-project-opsagent .ed-browser-frame{transform:rotate(2deg)}.editorial-site .ed-project-opsagent .ed-project-visual:hover .ed-browser-frame{transform:rotate(0) translateY(-4px)}.editorial-site .ed-project-inferly .ed-project-visual{background:#f4f5ff;border-color:#d6def3;color:var(--ed-accent-hover)}.editorial-site .ed-github-link{margin-top:24px;color:var(--ed-muted);font-weight:400}.editorial-site .ed-section{padding-block:108px}.editorial-site .ed-section-heading h2,.editorial-site .ed-notebook h2{font-size:clamp(40px,4.4vw,56px);font-weight:450;letter-spacing:-2.3px;line-height:1.13}.editorial-site .ed-section-heading .ed-kicker{margin-bottom:18px}.editorial-site .ed-experience-list{margin-top:45px}.editorial-site .ed-job{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;border-top:1px solid var(--ed-line);padding-block:30px}.editorial-site .ed-job h3{font-size:20px;font-weight:550;letter-spacing:-.5px}.editorial-site .ed-job h3 a{display:inline-flex;align-items:center;gap:5px}.editorial-site .ed-job-role{margin-top:5px;font-size:13px;text-transform:capitalize}.editorial-site .ed-job-period{color:var(--ed-muted);font-size:12px;margin-top:5px}.editorial-site .ed-job-description{font-size:14px;line-height:1.9;color:var(--ed-muted)}.editorial-site .ed-notebook{border-top:1px solid var(--ed-line);border-bottom:1px solid var(--ed-line);background:var(--ed-accent-soft);padding-block:76px}.editorial-site .ed-notebook-inner{display:grid;grid-template-columns:1fr .85fr;gap:110px;align-items:center}.editorial-site .ed-notebook h2{margin-bottom:23px}.editorial-site .ed-notebook-inner>div>p:not(.ed-kicker){font-size:14px;color:var(--ed-muted);line-height:1.85;max-width:380px}.editorial-site .ed-notebook .ed-link{margin-top:26px}.editorial-site .ed-note{background:#fff;border:1px solid var(--ed-line);padding:32px 35px;transform:rotate(3deg);box-shadow:2px 10px 20px #00000008;position:relative}.editorial-site .ed-note:before{content:"";width:80px;height:24px;background:#bac5ff9c;position:absolute;top:-12px;left:calc(50% - 40px);transform:rotate(-7deg)}.editorial-site .ed-note-label{font-size:11px;color:var(--ed-muted);letter-spacing:1px}.editorial-site .ed-notebook-inner .ed-note>p{font-size:26px;color:var(--ed-ink);line-height:1.35;margin-top:25px;letter-spacing:-.6px}.editorial-site .ed-note ul{list-style:none;padding:0;margin:22px 0;font-size:12px;color:var(--ed-muted)}.editorial-site .ed-note li{padding-block:8px;border-bottom:1px solid var(--ed-line)}.editorial-site .ed-note li:before{content:"↳";margin-right:10px;color:var(--ed-accent)}.editorial-site .ed-note-signature{display:block;font-family:Georgia,serif;font-style:italic;font-size:18px;color:var(--ed-accent);text-align:right}.editorial-site .ed-collection{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.editorial-site .ed-collection .ed-section-heading>p:last-child{margin-top:22px;color:var(--ed-muted);font-size:14px;line-height:1.85}.editorial-site .ed-accordions{border-top:1px solid var(--ed-line);margin-top:8px}.editorial-site .ed-accordions details{border-bottom:1px solid var(--ed-line)}.editorial-site .ed-accordions summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:26px;font-size:17px;font-weight:500;list-style:none;cursor:pointer}.editorial-site .ed-accordions summary::-webkit-details-marker{display:none}.editorial-site .ed-accordions summary>span{display:inline-flex;align-items:center;gap:19px;color:var(--ed-muted);font-size:11px}.editorial-site .ed-accordions details[open] summary>span>svg:last-child{transform:rotate(45deg)}.editorial-site .ed-accordion-body{padding-bottom:28px;font-size:13px;color:var(--ed-muted)}.editorial-site .ed-accordion-body article+article{margin-top:22px}.editorial-site .ed-accordion-body h3{color:var(--ed-ink);font-size:14px;font-weight:550;margin-bottom:7px}.editorial-site .ed-accordion-body>.ed-link{margin-top:22px;color:var(--ed-ink)}.editorial-site .ed-skill-links{display:flex;flex-wrap:wrap;gap:7px 15px}.editorial-site .ed-skill-links a{display:inline-flex;align-items:center;gap:3px}.editorial-site .ed-contact{padding-block:77px 69px;border-top:1px solid var(--ed-line)}.editorial-site .ed-contact h2{font-size:clamp(50px,6.3vw,82px);line-height:1.08;font-weight:450;letter-spacing:-3.5px;position:relative}.editorial-site .ed-contact h2>span{position:absolute;right:15px;bottom:4px;font-size:110px;font-weight:300;color:var(--ed-accent)}.editorial-site .ed-contact-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:37px}.editorial-site .ed-email{display:inline-flex;align-items:center;gap:10px;font-size:17px;letter-spacing:-.3px}.editorial-site .ed-contact-bottom>.ed-link{color:var(--ed-muted);font-weight:400}.editorial-site .ed-footer{border-top:1px solid var(--ed-line);display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:30px 110px}.editorial-site .ed-footer .ed-wordmark{font-size:23px}.editorial-site .ed-footer nav{color:var(--ed-muted);font-size:12px}.editorial-site .ed-back-top{display:inline-flex;align-items:center;gap:7px;min-height:32px;font-size:11px;color:var(--ed-muted)}@media (min-width: 1440px){.editorial-site .ed-hero{padding-top:106px;padding-bottom:105px}}@media (max-width: 1000px){.editorial-site .ed-shell{width:calc(100% - 64px)}.editorial-site .ed-hero h1{font-size:64px;letter-spacing:-3px}.editorial-site .ed-hero h1 em{letter-spacing:-3px}.editorial-site .ed-project{gap:32px}.editorial-site .ed-project-visual{height:335px;padding-inline:20px}.editorial-site .ed-notebook-inner{gap:65px}.editorial-site .ed-collection{gap:50px}.editorial-site .ed-preview-caption{letter-spacing:.3px}}@media (max-width: 700px){.editorial-site .ed-shell{width:calc(100% - 40px)}.editorial-site .ed-header{padding-block:24px}.editorial-site .ed-wordmark{font-size:24px}.editorial-site .ed-header nav{gap:16px;font-size:11px}.editorial-site .ed-hero{padding-top:55px;padding-bottom:51px}.editorial-site .ed-introduction span{font-size:11px}.editorial-site .ed-introduction p{font-size:14px}.editorial-site .ed-avatar{width:46px;height:46px}.editorial-site .ed-hero-heading{padding-block:31px 25px}.editorial-site .ed-hero h1{font-size:clamp(42px,8vw,58px);letter-spacing:-1.5px;line-height:1.13}.editorial-site .ed-hero h1 em{letter-spacing:-1.5px}.editorial-site .ed-hero-description{font-size:14px;max-width:350px}.editorial-site .ed-desktop-break{display:none}.editorial-site .ed-hero-bottom{display:block}.editorial-site .ed-current{font-size:12px;margin-top:21px}.editorial-site .ed-scroll-link{margin-top:31px;justify-content:space-between}.editorial-site .ed-section-marker{letter-spacing:.3px}.editorial-site .ed-project{grid-template-columns:1fr;gap:27px;padding-block:37px}.editorial-site .ed-kicker{margin-bottom:19px;font-size:11px}.editorial-site .ed-project-name{font-size:17px;margin-bottom:13px}.editorial-site .ed-project h2{font-size:39px}.editorial-site .ed-project-description{max-width:480px;margin-top:17px}.editorial-site .ed-project-links{margin-top:20px}.editorial-site .ed-status{margin-top:18px}.editorial-site .ed-project-visual{height:340px;padding:20px 25px 17px}.editorial-site .ed-preview-caption{font-size:11px}.editorial-site .ed-section{padding-block:65px}.editorial-site .ed-section-heading h2,.editorial-site .ed-notebook h2{font-size:43px;letter-spacing:-1.8px}.editorial-site .ed-experience-list{margin-top:30px}.editorial-site .ed-job{grid-template-columns:1fr;gap:17px;padding-block:25px}.editorial-site .ed-job-description{font-size:13px}.editorial-site .ed-notebook{padding-block:55px}.editorial-site .ed-notebook-inner{grid-template-columns:1fr;gap:45px}.editorial-site .ed-note{max-width:360px;width:calc(100% - 16px);margin-inline:auto}.editorial-site .ed-collection{grid-template-columns:1fr;gap:33px}.editorial-site .ed-accordions summary{font-size:16px;padding-block:22px}.editorial-site .ed-contact{padding-block:51px 43px}.editorial-site .ed-contact h2{font-size:clamp(41px,8.4vw,58px);letter-spacing:-2px}.editorial-site .ed-contact h2>span{font-size:48px;right:0;top:0;bottom:auto}.editorial-site .ed-contact-bottom{align-items:flex-start;flex-direction:column;gap:19px;margin-top:27px}.editorial-site .ed-email{font-size:14px;gap:6px;overflow-wrap:anywhere}.editorial-site .ed-email svg{width:16px}.editorial-site .ed-footer{flex-wrap:wrap;padding-bottom:110px;gap:24px}.editorial-site .ed-footer nav{gap:17px;font-size:11px}.editorial-site .ed-back-top{width:100%}}@media (prefers-reduced-motion: reduce){html:has(.editorial-site){scroll-behavior:auto}.editorial-site *,.editorial-site *:before{transition:none!important}}.agent-pet-avatar-wrapper{position:relative;display:inline-flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;background:transparent!important;border:none!important;box-shadow:none!important;cursor:pointer;transition:transform .25s cubic-bezier(.2,.8,.2,1);filter:drop-shadow(0 8px 16px rgba(0,0,0,.65))}.agent-pet-avatar-wrapper:hover{transform:scale(1.1) translateY(-2px);filter:drop-shadow(0 12px 24px rgba(0,0,0,.8)) drop-shadow(0 0 10px rgba(255,255,255,.2))}.agent-pet-inner-transparent{position:relative;width:100%;height:100%;background:transparent!important;border:none!important;box-shadow:none!important;display:flex;align-items:center;justify-content:center}.agent-pet-transparent-img{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none;background:transparent!important}.agent-pet-eyes-layer{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;transition:transform .08s ease-out}.agent-pet-eye{position:absolute;background:#fff;border-radius:50%;box-shadow:0 0 7px #fffffff2,0 0 14px #ffffffb3;transition:transform .12s ease-in-out,opacity .2s ease}.agent-pet-eye.eye-left{left:42.8%;top:45.9%;width:22.2%;height:39.7%;transform-origin:center center}.agent-pet-eye.eye-right{left:74.1%;top:47.6%;width:15.6%;height:36%;transform-origin:center center}.agent-pet-eyes-layer.is-blinking .agent-pet-eye{transform:scaleY(.06)!important}.agent-pet-eyes-layer.is-thinking .agent-pet-eye{animation:petEyePulse 1.2s infinite alternate ease-in-out}@keyframes petEyePulse{0%{box-shadow:0 0 5px #ffffffb3,0 0 10px #fff6;transform:scale(.96)}to{box-shadow:0 0 14px #fff,0 0 26px #ffffffe6;transform:scale(1.08)}}.agent-pet-eyes-layer.is-speaking .agent-pet-eye{animation:petEyeSpeak .32s infinite alternate ease-in-out}@keyframes petEyeSpeak{0%{transform:translateY(0) scaleY(1)}to{transform:translateY(-1.5px) scaleY(1.06)}}.agent-pet-thinking-halo{position:absolute;top:-12%;right:-12%;bottom:-12%;left:-12%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.2) 0%,transparent 70%);animation:haloPulse 2s infinite ease-in-out;pointer-events:none}@keyframes haloPulse{0%,to{opacity:.3;transform:scale(.9)}50%{opacity:.8;transform:scale(1.15)}}.agent-pet-status-indicator{position:absolute;bottom:2px;right:2px;width:9px;height:9px;border-radius:50%;border:1.5px solid #0d0e12;box-shadow:0 0 5px #00000080;z-index:2}.agent-pet-status-indicator.status-ready{background:#22c55e;box-shadow:0 0 6px #22c55e}.agent-pet-status-indicator.status-thinking{background:#f59e0b;box-shadow:0 0 6px #f59e0b;animation:statusPulse 1s infinite alternate}.agent-pet-status-indicator.status-speaking{background:#3b82f6;box-shadow:0 0 6px #3b82f6;animation:statusPulse .5s infinite alternate}@keyframes statusPulse{0%{transform:scale(.9)}to{transform:scale(1.15)}}.agent-pet-launch-btn{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;outline:none;border-radius:50%;animation:petIdleLevitate 4.2s ease-in-out infinite;transition:transform .2s ease}.agent-pet-launch-btn:focus-visible{outline:2px solid #ffffff;outline-offset:3px}@keyframes petIdleLevitate{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.agent-pet-widget-container{position:fixed;bottom:22px;right:22px;z-index:9999;font-family:var(--font-family, inherit)}.agent-pet-docked-row{display:flex;align-items:center;gap:10px}.agent-pet-speech-bubble{position:relative;background:#0e0f14f5;color:#f3f4f6;border:1px solid rgba(255,255,255,.16);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:7px 11px;border-radius:12px;display:flex;align-items:center;gap:8px;box-shadow:0 12px 28px #0009,0 0 0 1px #ffffff0d;cursor:pointer;max-width:260px;animation:speechBubblePop .25s cubic-bezier(.16,1,.3,1);transition:all .2s cubic-bezier(.16,1,.3,1)}.agent-pet-speech-bubble:hover{transform:translateY(-2px);border-color:#ffffff59;background:#14161cfa}.agent-pet-speech-bubble:after{content:"";position:absolute;right:-5px;top:50%;transform:translateY(-50%) rotate(45deg);width:8px;height:8px;background:#0e0f14f5;border-top:1px solid rgba(255,255,255,.16);border-right:1px solid rgba(255,255,255,.16)}.bubble-sparkle-icon{color:#fff;flex-shrink:0;animation:sparkleGlow 2s infinite alternate ease-in-out}@keyframes sparkleGlow{0%{transform:scale(.9);opacity:.7}to{transform:scale(1.1);opacity:1;filter:drop-shadow(0 0 5px #fff)}}.bubble-text-col{display:flex;flex-direction:column;gap:2px;min-width:0}.bubble-query-label{font-size:11px;font-weight:500;color:#f3f4f6;line-height:1.3;letter-spacing:-.01em;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bubble-action-hint{font-size:9px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em;transition:color .15s ease}.agent-pet-speech-bubble:hover .bubble-action-hint{color:#60a5fa}.speech-bubble-close{background:none;border:none;color:#9ca3af;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:2px;border-radius:50%;transition:color .15s ease;margin-left:2px;flex-shrink:0}.speech-bubble-close:hover{color:#fff}@keyframes speechBubblePop{0%{opacity:0;transform:scale(.9) translate(8px)}to{opacity:1;transform:scale(1) translate(0)}}.agent-pet-chat-card{width:min(420px,calc(100vw - 32px));height:min(580px,calc(100vh - 90px));background:#0d0e13f5;border:1px solid rgba(255,255,255,.14);border-radius:18px;box-shadow:0 24px 60px -12px #000c,0 0 0 1px #ffffff0d;-webkit-backdrop-filter:blur(26px) saturate(180%);backdrop-filter:blur(26px) saturate(180%);display:flex;flex-direction:column;overflow:hidden;animation:chatCardOpen .25s cubic-bezier(.16,1,.3,1)}@keyframes chatCardOpen{0%{opacity:0;transform:scale(.92) translateY(16px)}to{opacity:1;transform:scale(1) translateY(0)}}.agent-chat-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.08);background:#ffffff05}.header-pet-profile{display:flex;align-items:center;gap:10px}.header-pet-info{display:flex;flex-direction:column;gap:2px}.pet-name-row{display:flex;align-items:center;gap:6px}.pet-name{font-size:14px;font-weight:600;color:#f3f4f6;letter-spacing:-.01em}.pet-badge{font-size:9.5px;font-weight:600;text-transform:uppercase;padding:2px 6px;border-radius:9999px;background:#ffffff1a;color:#d1d5db;letter-spacing:.04em}.pet-status-row{display:flex;align-items:center;gap:5px}.status-ping{width:5px;height:5px;border-radius:50%;background:#22c55e;box-shadow:0 0 6px #22c55e}.status-text{font-size:10.5px;color:#9ca3af}.header-controls{display:flex;align-items:center;gap:6px}.header-ctrl-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:#9ca3af;width:26px;height:26px;border-radius:7px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.header-ctrl-btn:hover{background:#ffffff1f;color:#fff}.agent-chat-chips-scroll{display:flex;gap:6px;padding:8px 14px;overflow-x:auto;scrollbar-width:none;background:#0003;border-bottom:1px solid rgba(255,255,255,.05)}.agent-chat-chips-scroll::-webkit-scrollbar{display:none}.agent-chip{flex-shrink:0;display:inline-flex;align-items:center;gap:4px;background:#ffffff0f;border:1px solid rgba(255,255,255,.09);color:#e5e7eb;padding:4px 9px;border-radius:9999px;font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.agent-chip:hover:not(:disabled){background:#ffffff24;border-color:#ffffff40;color:#fff;transform:translateY(-1px)}.agent-chip:disabled{opacity:.5;cursor:not-allowed}.chip-icon{color:#9ca3af}.agent-chat-feed{flex:1;padding:14px;overflow-y:auto;display:flex;flex-direction:column;gap:14px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}.agent-chat-feed::-webkit-scrollbar{width:4px}.agent-chat-feed::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.agent-message-row{display:flex;gap:8px;width:100%}.agent-message-row.row-user{justify-content:flex-end}.agent-message-row.row-ai{justify-content:flex-start}.msg-pet-avatar{flex-shrink:0;margin-top:2px}.msg-bubble-container{max-width:88%;display:flex;flex-direction:column;gap:5px}.msg-bubble{position:relative;padding:9px 13px;border-radius:14px;font-size:13px;line-height:1.5;letter-spacing:-.005em;word-break:break-word}.bubble-user{background:#252831;color:#f3f4f6;border:1px solid rgba(255,255,255,.12);border-bottom-right-radius:4px;margin-left:auto}.bubble-ai{background:#ffffff0d;color:#e5e7eb;border:1px solid rgba(255,255,255,.08);border-bottom-left-radius:4px}.msg-text-content strong{color:#fff;font-weight:600}.msg-copy-btn{position:absolute;top:6px;right:6px;background:#0006;border:1px solid rgba(255,255,255,.1);color:#9ca3af;width:20px;height:20px;border-radius:5px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:all .15s ease}.msg-bubble:hover .msg-copy-btn{opacity:1}.msg-copy-btn:hover{background:#fff3;color:#fff}.chat-bullet-row{display:flex;gap:5px;margin-top:3px;margin-bottom:2px}.chat-bullet-dot{color:#9ca3af;font-weight:700}.chat-empty-line{height:6px}.chat-inline-code{background:#00000080;border:1px solid rgba(255,255,255,.1);border-radius:4px;padding:1px 4px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11.5px;color:#e2e8f0}.chat-link{color:#60a5fa;text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;gap:2px;transition:color .15s ease}.chat-link:hover{color:#93c5fd}.inline-icon{opacity:.7}.streaming-cursor{display:inline-block;color:#fff;animation:cursorBlink .7s infinite;margin-left:2px}@keyframes cursorBlink{0%,to{opacity:0}50%{opacity:1}}.msg-sources-container{display:flex;flex-direction:column;gap:3px;padding-left:2px}.sources-title{display:flex;align-items:center;gap:4px;font-size:9.5px;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;font-weight:600}.sources-pills{display:flex;flex-wrap:wrap;gap:4px}.source-tag{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);padding:2px 6px;border-radius:5px;font-size:10px;color:#cbd5e1;font-weight:500}.agent-chat-input-bar{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#12141af2;border-top:1px solid rgba(255,255,255,.08)}.input-prompt-char{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;font-weight:700;color:#9ca3af;padding-left:2px}.agent-chat-input{flex:1;background:none;border:none;outline:none;font-size:12.5px;color:#f3f4f6;padding:5px 0;font-family:inherit}.agent-chat-input::placeholder{color:#6b7280}.agent-send-btn{background:#f3f4f6;border:none;color:#111827;width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;flex-shrink:0}.agent-send-btn:hover:not(:disabled){background:#fff;transform:scale(1.05)}.agent-send-btn:disabled{background:#ffffff1a;color:#6b7280;cursor:not-allowed}@media (max-width: 480px){.agent-pet-widget-container{bottom:14px;right:14px}.agent-pet-chat-card{width:calc(100vw - 28px);height:calc(100vh - 75px)}.agent-pet-speech-bubble{max-width:220px}}:root{font-family:DM Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;--surface: #14151a;--text: #f3f4f6;--muted: #9ca3af;--muted-lede: #a1a1aa;--line: #23252d;--bg: #0d0e12;--card-bg: #14151a;--tag-bg: #1c1f26;--hover-border: #4b5563;--hero-scrim-rgb: 7, 7, 7;--hero-bg-color: #0d0e12;--hero-ambient-bg: rgba(0, 0, 0, .45);--hero-ambient-color: #e5e5e5;--hero-ambient-border: rgba(255, 255, 255, .18);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}[data-theme=light]{--surface: #f7f7f7;--text: #111111;--muted: #525252;--muted-lede: #4b5563;--line: #e5e5e5;--bg: #ffffff;--card-bg: #ffffff;--tag-bg: #f4f4f5;--hover-border: #111111}[data-theme=dark]{--surface: #14151a;--text: #f3f4f6;--muted: #9ca3af;--muted-lede: #a1a1aa;--line: #23252d;--bg: #0d0e12;--card-bg: #14151a;--tag-bg: #1c1f26;--hover-border: #4b5563}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--text);transition:background-color .25s ease,color .25s ease}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--text);outline-offset:3px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}.container{width:min(1560px,calc(100% - 64px));margin-inline:auto}@media (max-width: 800px){.container{width:min(100% - 32px,640px)}}.skip-link{position:fixed;top:-60px;left:16px;z-index:200;background:#111;color:#fff;padding:12px 16px;border-radius:4px;transition:top .2s ease}.skip-link:focus{top:16px}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:1px solid transparent;color:#fff;transition:background-color .3s cubic-bezier(.16,1,.3,1),backdrop-filter .3s cubic-bezier(.16,1,.3,1),border-color .3s cubic-bezier(.16,1,.3,1)}.site-header.is-scrolled{background:#0d0e12d9;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}.header-inner{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:24px}.header-left{display:flex;align-items:center;gap:44px}.site-header .wordmark{font-size:15px;font-weight:600;letter-spacing:-.02em;color:#fff;text-decoration:none;transition:opacity .2s ease}.site-header .wordmark:hover{opacity:.85}.site-header nav{display:flex;gap:28px;align-items:center}.site-header nav a{color:#cbd5e1;font-size:14.5px;font-weight:500;text-decoration:none;transition:color .2s ease}.site-header nav a:hover{color:#fff;text-decoration:none}.header-right{display:flex;align-items:center;gap:14px}.header-contact-btn{background:#fff;color:#111;border-radius:9999px;padding:8px 22px;font-size:13.5px;font-weight:600;text-decoration:none;line-height:1.2;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #00000026;transition:background .2s ease,transform .15s ease}.header-contact-btn:hover{background:#f1f5f9;text-decoration:none;transform:translateY(-1px)}.header-theme-btn{width:38px;height:38px;border-radius:50%;background:#ffc86424;border:1px solid rgba(255,200,100,.25);color:#fbbf24;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .15s ease}.header-theme-btn:hover{background:#ffc86438;border-color:#ffc86466;transform:scale(1.05)}.hero-workbench-section{--hero-scrim-rgb: 7, 7, 7;--hero-bg-color: #0d0e12;--hero-ambient-bg: rgba(0, 0, 0, .45);--hero-ambient-color: #e5e5e5;--hero-ambient-border: rgba(255, 255, 255, .18);position:relative;background-color:#0d0e12;color:#f3f4f6;overflow:hidden;min-height:100svh;display:flex;align-items:center;border-bottom:1px solid var(--line)}.hero-workbench-media{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden}.hero-workbench-poster{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center center;background-repeat:no-repeat;transition:opacity .3s ease}.hero-workbench-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center center}@media (prefers-reduced-motion: reduce){.hero-workbench-video{display:none}}.hero-scrim-base{position:absolute;top:0;right:0;bottom:0;left:0;background:#0707072e}.hero-scrim-horizontal{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#070707eb,#070707d1 36%,#0707076b,#07070714)}.hero-scrim-vertical{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(7,7,7,.22) 0%,transparent 42%,rgba(7,7,7,.88) 100%)}.hero-ambient-toggle{display:none}.hero-workbench-container{position:relative;z-index:10;width:min(1560px,calc(100% - 64px));margin-inline:auto;padding:96px 0 64px}.hero-content-column{max-width:44rem;display:flex;flex-direction:column}.hero-avatar{margin-bottom:18px}.hero-avatar img{width:76px;height:76px;border-radius:50%;object-fit:cover;object-position:center 25%;border:2px solid rgba(255,255,255,.28);filter:grayscale(100%) contrast(108%);box-shadow:0 4px 20px #00000073;background:#18191e;transition:transform .25s ease,filter .25s ease,border-color .2s ease}.hero-avatar img:hover{transform:scale(1.04);filter:grayscale(0%) contrast(100%);border-color:#fff6}.hero-eyebrow{color:#cbd5e1;font-size:15px;font-weight:500;letter-spacing:-.01em;margin:0 0 14px}.hero-workbench-section h1{font-size:clamp(32px,3.6vw,50px);font-weight:700;line-height:1.15;letter-spacing:-.035em;color:#fff;margin:0;max-width:680px;text-wrap:balance}.hero-workbench-section .hero-lede{margin-top:18px;color:#cbd5e1;font-size:clamp(15px,1.12vw,17px);line-height:1.62;max-width:620px}.hero-building{margin-top:16px;color:#9ca3af;font-size:14.5px;line-height:1.6}.hero-building a{color:#fff;text-decoration:underline;text-underline-offset:4px;font-weight:500;transition:opacity .2s ease}.hero-building a:hover{opacity:.8}.hero-availability{color:#a1a1aa;font-weight:400}.hero-actions-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px 14px;margin-top:28px}.hero-btn-primary{display:inline-flex;align-items:center;gap:8px;background:#fff;color:#111;font-size:14px;font-weight:600;padding:10px 22px;border-radius:9px;text-decoration:none;box-shadow:0 1px 3px #0000001f;transition:background .2s ease,transform .15s ease}.hero-btn-primary:hover{background:#f1f5f9;text-decoration:none;transform:translateY(-1px)}.hero-btn-secondary{display:inline-flex;align-items:center;gap:8px;background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:14px;font-weight:600;padding:10px 22px;border-radius:9px;text-decoration:none;transition:background .2s ease,border-color .2s ease,transform .15s ease}.hero-btn-secondary:hover{background:#ffffff24;border-color:#ffffff52;text-decoration:none;transform:translateY(-1px)}.hero-socials{display:flex;align-items:center;gap:8px;margin-left:6px}.hero-social-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:6px;color:#cbd5e1;text-decoration:none;transition:color .2s ease,background .2s ease,transform .15s ease}.hero-social-btn:hover{color:#fff;background:#ffffff1f;text-decoration:none;transform:translateY(-1px)}.hero-heatmap-container{margin-top:32px;max-width:600px}.hero-heatmap-grid{display:grid;grid-template-rows:repeat(7,10.5px);grid-auto-flow:column;grid-auto-columns:10.5px;gap:3.5px;overflow-x:auto;padding-bottom:2px;-ms-overflow-style:none;scrollbar-width:none}.hero-heatmap-grid::-webkit-scrollbar{display:none}.heatmap-cell{width:10.5px;height:10.5px;border-radius:2px;background:#1c1f26;transition:transform .15s ease}.heatmap-cell:hover{transform:scale(1.3);z-index:2}.heatmap-cell.lvl-0{background:#1c1f26}.heatmap-cell.lvl-1{background:#0e4429}.heatmap-cell.lvl-2{background:#006d32}.heatmap-cell.lvl-3{background:#26a641}.heatmap-cell.lvl-4{background:#39d353;box-shadow:0 0 6px #39d35366}.hero-heatmap-footer{display:flex;align-items:center;justify-content:space-between;margin-top:10px;font-size:13px;color:#94a3b8}.hero-heatmap-footer strong{color:#fff;font-weight:600}.hero-heatmap-footer a{color:#94a3b8;text-decoration:none}.hero-heatmap-footer a:hover{color:#fff;text-decoration:underline}.heatmap-pause-btn{background:none;border:none;color:#9ca3af;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:color .2s ease,background .2s ease}.heatmap-pause-btn:hover{color:#f3f4f6;background:#ffffff14}.work-filter-pills{display:flex;gap:8px;overflow-x:auto;padding-bottom:24px;-ms-overflow-style:none;scrollbar-width:none}.work-filter-pills::-webkit-scrollbar{display:none}.work-filter-pill{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 14px;border-radius:9999px;font-size:13.5px;font-weight:500;border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .1s ease}.work-filter-pill:hover{color:var(--text);border-color:var(--hover-border)}.work-filter-pill:active{transform:scale(.98)}.work-filter-pill.is-active{background:var(--text);color:var(--bg);border-color:var(--text);font-weight:600}.filter-pill-count{font-size:11px;opacity:.75;font-variant-numeric:tabular-nums}.eyebrow{color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.section{padding:88px 0;border-top:1px solid var(--line)}.work-section{padding-top:48px}.section-muted{background:var(--surface)}.section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:40px}.section-intro h2{max-width:670px;margin-top:15px;font-size:clamp(30px,3.8vw,46px);line-height:1.1;letter-spacing:-.04em}.section-intro>p{max-width:360px;color:var(--muted);font-size:16px;line-height:1.65}.project-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid var(--line);background:var(--line)}.project-card,.project-row{display:flex;flex-direction:column;min-width:0;padding:32px 28px;border:0;background:var(--card-bg);border-radius:0}.project-list>:only-child{grid-column:1 / -1}.project-info{display:flex;flex-direction:column;height:100%;flex:1}.project-meta{display:flex;flex-direction:column;gap:4px;width:100%;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.project-meta span:first-child{color:var(--text);font-weight:600}.project-info h3{margin-top:18px;font-size:24px;letter-spacing:-.03em;line-height:1.2;color:var(--text)}.project-info h3 a:hover{text-decoration:underline;text-underline-offset:4px}.project-tagline{margin-top:8px;font-size:15.5px;line-height:1.45;font-weight:500;color:var(--text)}.project-info>p:not(.project-tagline){margin-top:12px;color:var(--muted);font-size:14.5px;line-height:1.6}.tag-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.tag-list span{border:1px solid var(--line);padding:5px 10px;border-radius:4px;background:var(--tag-bg);color:var(--text);font-size:12px}.project-actions{display:flex;flex-wrap:wrap;gap:16px 20px;margin-top:auto;padding-top:24px}.inline-link{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:13.5px;transition:opacity .15s ease}.inline-link:hover{text-decoration:underline;text-underline-offset:4px;opacity:.85}.github-link{display:inline-flex;align-items:center;gap:8px;margin-top:36px;font-weight:600;font-size:14px}.github-link:hover{text-decoration:underline;text-underline-offset:4px}.experience-list{display:grid;gap:0}.experience-item{display:grid;grid-template-columns:280px 1fr;gap:48px;padding:32px 0;border-top:1px solid var(--line)}.experience-item:first-child{border-top:0;padding-top:0}.experience-period{color:var(--muted);font-size:13px}.experience-item h3{margin-top:8px;font-size:20px;letter-spacing:-.02em}.experience-item>a,.experience-item>div>span{display:inline-block;margin-top:6px;font-size:14px;text-decoration:underline;text-underline-offset:4px}.experience-item ul{margin:0;padding-left:20px;color:var(--muted);font-size:15.5px;line-height:1.7}.experience-item li+li{margin-top:8px}.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden}.expertise-card{min-height:190px;padding:24px;background:var(--card-bg);color:var(--text)}.expertise-card h3{font-size:17px;letter-spacing:-.02em;color:var(--text)}.expertise-card .tag-list{margin-top:18px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:0;overflow:hidden}.service-grid article{padding:28px;background:var(--card-bg);color:var(--text);min-height:190px}.service-number{color:var(--muted);font-size:13px}.service-grid h3{margin-top:30px;font-size:20px}.service-grid p{margin-top:10px;color:var(--muted);font-size:14.5px;line-height:1.6}.shared-footer{background:var(--bg);color:var(--text);transition:background-color .25s ease,color .25s ease}.footer-writing{padding-block:32px 36px}.footer-writing>.eyebrow{margin-bottom:12px}.footer-writing-panel{display:flex;align-items:center;gap:32px;padding:24px 32px;border:1px solid var(--line);border-radius:0;background:var(--card-bg)}.footer-writing-icon{flex-shrink:0}.footer-writing-panel>div{flex:1;min-width:0}.footer-writing-panel .eyebrow{font-size:10px;margin-bottom:10px}.footer-writing-panel h2{font-size:21px;line-height:1.35;letter-spacing:-.025em}.footer-writing-panel>div>p:last-child{color:var(--muted);font-size:14px;line-height:1.6;margin-top:3px}.footer-writing-panel>a{min-height:44px;white-space:nowrap}.footer-contact{background:#111;color:#fff;padding-block:56px 44px;border-top:1px solid var(--line)}[data-theme=dark] .footer-contact{background:#111215;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.footer-contact-inner{display:flex;align-items:center;justify-content:space-between;gap:48px}.footer-contact .eyebrow{color:#a1a1aa;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.footer-contact h2{margin-top:16px;font-size:clamp(28px,3.5vw,44px);line-height:1.15;letter-spacing:-.035em;color:#fff}.footer-contact-description{margin-top:10px;color:#a1a1aa;font-size:17px;line-height:1.5}.footer-contact-actions{flex:0 0 240px}.footer-contact-button{width:100%;background:#fff;color:#111;border:1px solid #ffffff;border-radius:2px;gap:8px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;text-decoration:none;transition:background .2s ease,opacity .2s ease}.footer-contact-button:hover{background:#e5e5e5;text-decoration:none}.footer-social-links{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:18px}.footer-social-links a{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:13.5px;font-weight:500;transition:opacity .2s ease}.footer-social-links a:hover{opacity:.8;text-decoration:underline;text-underline-offset:4px}.footer-contact a:focus-visible{outline-color:#fff}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:28px 36px;color:var(--muted);font-size:13.5px}.footer-bottom span{color:var(--muted)}.back-to-top-btn{background:transparent;border:none;padding:0;margin:0;font-family:inherit;font-size:13.5px;font-weight:400;color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:color .15s ease}.back-to-top-btn:hover{color:var(--text);text-decoration:underline;text-underline-offset:4px}.project-detail{padding-top:88px;padding-bottom:88px}.project-detail>h1{margin-top:18px;font-size:clamp(40px,7vw,76px);letter-spacing:-.06em;line-height:1.05}.project-detail>.project-tagline{max-width:720px;margin-top:20px;font-size:clamp(22px,2.6vw,32px)}.project-detail-summary{max-width:700px;margin-top:16px;color:var(--muted);font-size:17px;line-height:1.65}.project-status{margin-top:14px;font-size:14px;color:var(--muted)}.project-detail-actions{display:flex;align-items:center;gap:12px;margin-top:24px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:500;border-radius:4px;border:1px solid var(--line);text-decoration:none;cursor:pointer;transition:opacity .15s ease,background .15s ease,border-color .15s ease}.button-primary{color:var(--bg);background:var(--text);border-color:var(--text)}.button-primary:hover{opacity:.85;text-decoration:none}.button-secondary{color:var(--text);background:var(--surface);border-color:var(--line)}.button-secondary:hover{border-color:var(--hover-border);text-decoration:none}.detail-image{margin:48px 0 0;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.detail-image img{width:100%;max-height:680px;object-fit:contain}.detail-image figcaption{padding:14px 2px 0;color:var(--muted);font-size:13px}.detail-image a{text-decoration:underline;text-underline-offset:4px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px;padding:88px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:88px}.detail-grid h2,.detail-capabilities h2{margin-top:14px;font-size:clamp(28px,4vw,44px);letter-spacing:-.05em}.detail-grid h3{margin-top:32px;font-size:18px}.detail-grid section>p:not(.eyebrow),.detail-steps,.detail-capabilities article p{margin-top:14px;color:var(--muted);font-size:16px;line-height:1.7}.detail-steps{padding-left:20px}.detail-steps li{padding:12px 0}.detail-steps strong,.detail-steps span{display:block}.detail-capabilities{padding:88px 0}.detail-capabilities .expertise-grid{margin-top:32px}.detail-capabilities .expertise-card{min-height:0}.detail-capabilities>.tag-list{margin-top:22px}.next-project{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.next-project h2{margin-top:12px;font-size:30px;letter-spacing:-.04em}.next-project p{margin-top:6px;color:var(--muted)}.tools-marquee-section{position:relative;padding:64px 0;border-bottom:1px solid var(--line);background:var(--bg);overflow:hidden}.tools-marquee-intro{margin-bottom:32px}.tools-marquee-wrapper{position:relative;width:100%;display:flex;flex-direction:column;gap:16px;padding:8px 0 38px;overflow:hidden;mask-image:linear-gradient(to right,transparent 0%,black 6%,black 94%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 6%,black 94%,transparent 100%)}.tools-marquee-row{display:flex;width:100%;overflow:visible;-webkit-user-select:none;user-select:none}.tools-marquee-track{display:flex;align-items:center;gap:16px;width:max-content;will-change:transform}.track-scroll-left{animation:marquee-left 36s linear infinite}.track-scroll-right{animation:marquee-right 34s linear infinite}.tools-marquee-row:hover .tools-marquee-track{animation-play-state:paused}@keyframes marquee-left{0%{transform:translate(0)}to{transform:translate(calc(-100% / 3))}}@keyframes marquee-right{0%{transform:translate(calc(-100% / 3))}to{transform:translate(0)}}.tool-marquee-item{position:relative;display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.09);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);text-decoration:none;cursor:pointer;flex-shrink:0;transition:transform .22s cubic-bezier(.16,1,.3,1),background .2s ease,border-color .2s ease,box-shadow .22s ease}.tool-marquee-item:hover{transform:translateY(-4px) scale(1.08);background:#ffffff1a;border-color:#ffffff42;box-shadow:0 12px 28px -6px #0000008c,0 0 16px #ffffff14;z-index:20}.tool-marquee-item:after{content:attr(data-tooltip);position:absolute;bottom:-32px;left:50%;transform:translate(-50%) translateY(4px);padding:4px 10px;border-radius:6px;background:#18181b;color:#f4f4f5;font-size:11.5px;font-weight:500;white-space:nowrap;letter-spacing:-.01em;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease;border:1px solid rgba(255,255,255,.12);box-shadow:0 4px 14px #0006;z-index:50}.tool-marquee-item:hover:after{opacity:1;transform:translate(-50%) translateY(0)}[data-theme=light] .tool-marquee-item{background:#00000009;border-color:#00000014}[data-theme=light] .tool-marquee-item:hover{background:#00000014;border-color:#00000038;box-shadow:0 12px 24px -6px #00000024}[data-theme=light] .tool-marquee-item:after{background:#fff;color:#0f172a;border-color:#0000001f;box-shadow:0 4px 14px #0000001a}.vercel-triangle-path{fill:#f8fafc;transition:fill .2s ease}[data-theme=light] .vercel-triangle-path{fill:#09090b}@media (prefers-reduced-motion: reduce){.tools-marquee-track{animation:none}.tools-marquee-row{overflow-x:auto}}@media (max-width: 1024px){.project-list{grid-template-columns:repeat(2,minmax(0,1fr))}.project-list>:last-child:nth-child(odd){grid-column:1 / -1}}@media (max-width: 800px){.header-inner{min-height:56px;gap:14px}.site-header nav{display:none}.hero-workbench-section{min-height:auto;padding:36px 0 44px}.hero-workbench-container{padding:16px 0 24px}.hero-avatar img{width:64px;height:64px}.hero-workbench-section h1{font-size:30px;line-height:1.18}.hero-workbench-section .hero-lede{font-size:15.5px}.hero-actions-row{gap:10px}.hero-heatmap-grid{grid-template-rows:repeat(7,8px);grid-auto-columns:8px;gap:2.5px}.heatmap-cell{width:8px;height:8px}.tools-marquee-section{padding:48px 0}.tools-marquee-wrapper{gap:12px;padding:6px 0 30px}.tool-marquee-item{width:52px;height:52px;border-radius:13px}.tool-marquee-item svg{width:26px!important;height:26px!important}.section{padding:64px 0}.section-intro{display:block;margin-bottom:28px}.section-intro>p{margin-top:16px}.project-list{grid-template-columns:1fr}.project-card,.project-row{padding:24px 20px}.project-info h3{margin-top:14px;font-size:22px}.experience-item{grid-template-columns:1fr;gap:16px;padding:24px 0}.expertise-grid,.service-grid{grid-template-columns:1fr}.expertise-card{min-height:0}.footer-writing-panel{gap:20px;padding:20px;flex-wrap:wrap}.footer-writing-panel>div{flex-basis:calc(100% - 58px)}.footer-writing-panel>a{margin-left:58px}.footer-contact-inner{align-items:stretch;flex-direction:column;gap:24px}.footer-contact-actions{flex-basis:auto;max-width:280px}.footer-contact-description{font-size:17px}.footer-bottom{font-size:12px;gap:12px;flex-direction:column;align-items:flex-start}.detail-grid{grid-template-columns:1fr;gap:44px;padding:60px 0;margin-top:60px}.detail-capabilities{padding:60px 0}.project-detail{padding-top:36px}.detail-image{margin-top:36px}}.about-page{--bg: #090909;--text: #f5f5f5;--muted: #a3a3a3;--surface: #171717;--line: #303030;min-height:100vh;background:var(--bg);color:var(--text)}[data-theme=light] .about-page{--bg: #fff;--text: #171717;--muted: #616161;--surface: #f5f5f5;--line: #dedede}.about-main{padding-block:144px 96px}.about-content{max-width:1020px}.about-portrait{width:120px;height:120px;object-fit:cover;border-radius:50%;filter:grayscale(1)}.about-content h1{margin-block:36px 38px;font-size:clamp(38px,4.4vw,58px);line-height:1.12;letter-spacing:-.045em;font-weight:650}.about-bio,.about-focus{color:var(--muted);font-size:clamp(18px,1.8vw,24px);line-height:1.65;letter-spacing:-.015em}.about-bio p+p{margin-top:28px}.about-content strong{font-weight:500;color:var(--text)}.about-bio a{color:var(--text);text-decoration:underline;text-underline-offset:4px}.about-actions{display:flex;flex-wrap:wrap;gap:18px;margin-top:40px}.about-button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:10px 18px;border-radius:13px;border:1px solid var(--line);font-size:19px;font-weight:500;transition:opacity .2s ease}.about-button:hover{opacity:.8}.about-button-primary{color:var(--bg);background:var(--text);border-color:var(--text)}.about-button-secondary{color:var(--text);background:var(--surface)}.about-focus{margin-top:72px;padding-top:56px;border-top:1px solid var(--line)}.about-focus h2{color:var(--text);font-size:clamp(28px,3vw,36px);letter-spacing:-.035em}.about-focus dl{margin:32px 0 40px;display:grid;gap:28px}.about-focus dt{color:var(--text);font-weight:600;font-size:20px}.about-focus dd{margin:6px 0 0;font-size:18px}.about-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;padding-block:28px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}.about-footer a:hover{color:var(--text)}@media (max-width: 800px){.about-main{padding-block:108px 64px}.about-portrait{width:96px;height:96px}.about-content h1{margin-block:28px}.about-bio p+p{margin-top:24px}.about-focus{margin-top:52px;padding-top:36px}}.hero-workbench-media,.hero-workbench-container{filter:blur(var(--hero-scroll-blur, 0px))}.header-portrait{display:grid;width:0;flex-shrink:0;opacity:0;overflow:hidden;margin-inline:-22px;transform:translateY(8px) scale(.85);transition:width .24s ease,margin .24s ease,opacity .24s ease,transform .24s ease}.header-portrait.is-visible{width:32px;margin-inline:-22px -20px;opacity:1;transform:translateY(0) scale(1)}.header-portrait img{width:32px;height:32px;max-width:none;border-radius:50%;object-fit:cover;filter:grayscale(1)}@media (max-width: 800px){.header-left{gap:12px;min-width:0}.header-portrait{margin-inline:-6px}.header-portrait.is-visible{margin-inline:0}.header-right{gap:8px}}@media (max-width: 380px){.site-header .wordmark{font-size:12px}.header-contact-btn{padding-inline:14px}.header-inner{gap:8px}}@media (prefers-reduced-motion: reduce){.hero-workbench-media,.hero-workbench-container{filter:none}.header-portrait{transition:none;transform:none}}.about-content{max-width:none}.about-introduction{max-width:800px;margin-inline:auto}.about-content .about-bio{font-size:clamp(18px,1.5vw,22px)}.about-tech{min-width:0;margin-top:88px;text-align:center}.about-tech h2{margin-top:14px;font-size:clamp(26px,2.4vw,34px);letter-spacing:-.035em;line-height:1.2}.about-tech-description{margin-top:16px;color:var(--muted);font-size:16px;line-height:1.65}.about-tech-marquee{margin-top:32px;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)}.about-tech-marquee::-webkit-scrollbar{display:none}.about-tech-track{display:flex;width:max-content;animation:about-tech-scroll 150s linear infinite}.about-tech-list{display:flex;flex:0 0 auto;align-items:center;gap:56px;margin:0;padding:24px 56px 24px 0;list-style:none}.about-tech-item{display:flex;flex:0 0 auto;align-items:center;gap:12px;white-space:nowrap;color:var(--text);font-size:17px;font-weight:500}.about-tech-icon{display:flex;flex-shrink:0}.about-tech-icon img,.about-tech-icon svg{width:36px;height:36px;object-fit:contain}.about-tech-marquee:hover .about-tech-track,.about-tech-marquee:focus-within .about-tech-track,.about-tech-marquee.is-paused .about-tech-track{animation-play-state:paused}.about-tech-pause{margin-top:16px;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}.about-tech-pause:hover{color:var(--text)}@keyframes about-tech-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.about-tech-monochrome{filter:brightness(0) invert(1)}.about-tech-nextjs{filter:invert(1)}[data-theme=light] .about-tech-monochrome,[data-theme=light] .about-tech-nextjs{filter:none}@media (max-width: 600px){.about-tech{margin-top:56px}.about-tech-list{gap:36px;padding-right:36px}.about-tech-item{font-size:15px}.about-tech-icon img,.about-tech-icon svg{width:30px;height:30px}}@media (prefers-reduced-motion: reduce){.about-tech-track{animation:none}.about-tech-list[aria-hidden=true],.about-tech-pause{display:none}}html[data-theme=light]{color-scheme:light}
