:root{--bg:#fff;--bg-soft:#faf9f7;--bg-soft2:#f4f2ee;--ink:#16130e;--ink-2:#433e36;--muted:#857d71;--line:#ece8e2;--line-2:#e0dbd2;--red:#ff3131;--red-ink:#dd1f1f;--red-soft:rgba(255,49,49,.1);--red-soft-2:rgba(255,49,49,.16);--card:#fff;--shadow-sm:0 1px 2px rgba(22,19,14,.04),0 4px 14px rgba(22,19,14,.05);--shadow-md:0 8px 30px rgba(22,19,14,.08),0 2px 8px rgba(22,19,14,.05);--shadow-lg:0 24px 60px rgba(22,19,14,.12),0 6px 18px rgba(22,19,14,.06);--r-lg:26px;--r-md:18px;--r-sm:12px;--pill:999px;--maxw:1180px}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}::selection{background:var(--red);color:#fff}.container{max-width:var(--maxw);margin:0 auto;padding:0 26px}.section{padding:96px 0;position:relative}.section--soft{background:var(--bg-soft)}h1,h2,h3,h4{font-family:Space Grotesk,sans-serif;font-weight:600;letter-spacing:-.02em;line-height:1.04;margin:0}.display{font-size:clamp(2.6rem,6.2vw,4.55rem);font-weight:600;letter-spacing:-.035em;line-height:1}.h2{font-size:clamp(2rem,4.3vw,3.15rem);letter-spacing:-.03em}.h3{font-size:clamp(1.2rem,2vw,1.42rem);letter-spacing:-.02em}.lead{font-size:clamp(1.02rem,1.5vw,1.18rem);color:var(--ink-2);line-height:1.62}.hl,.hl-u{color:var(--red)}.hl-u{position:relative;white-space:nowrap}.hl-u svg{position:absolute;left:0;right:0;bottom:-.16em;width:100%;height:.32em;overflow:visible}.eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-family:JetBrains Mono,monospace;font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.eyebrow .slash{color:var(--red);font-weight:500}.eyebrow.on-dark{color:hsla(0,0%,100%,.7)}.muted{color:var(--muted)}.mono{font-family:JetBrains Mono,monospace}.btn{display:inline-flex;align-items:center;gap:.5rem;font-family:Space Grotesk,sans-serif;font-weight:500;font-size:.96rem;letter-spacing:-.01em;padding:.82rem 1.35rem;border-radius:var(--pill);cursor:pointer;border:1px solid transparent;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease,color .18s ease;white-space:nowrap}.btn svg{width:16px;height:16px;flex:none}.btn-red{background:var(--red);color:#fff;box-shadow:0 6px 18px rgba(255,49,49,.28)}.btn-red:hover{background:var(--red-ink);transform:translateY(-2px);box-shadow:0 12px 26px rgba(255,49,49,.34)}.btn-ghost{background:#fff;color:var(--ink);border-color:var(--line-2)}.btn-ghost:hover{border-color:var(--ink);transform:translateY(-2px)}.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.nav{position:-webkit-sticky;position:sticky;top:14px;z-index:50;padding:0 18px;margin-top:14px}.nav-inner{max-width:var(--maxw);margin:0 auto;justify-content:space-between;gap:18px;padding:11px 12px 11px 20px;border:1px solid var(--line);border-radius:var(--pill);background:hsla(0,0%,100%,.72);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);box-shadow:var(--shadow-sm)}.brand,.nav-inner{display:flex;align-items:center}.brand{gap:.6rem;font-family:Space Grotesk,sans-serif;font-weight:600;font-size:1.06rem;letter-spacing:-.02em}.brand .mark{width:26px;height:26px;border-radius:8px;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:.72rem;font-family:JetBrains Mono,monospace;font-weight:500;position:relative}.brand .mark:after{content:"";position:absolute;right:-3px;bottom:-3px;width:9px;height:9px;border-radius:50%;background:var(--red);border:2px solid #fff}.nav-links{display:flex;align-items:center;gap:6px}.nav-links a{font-size:.92rem;color:var(--ink-2);padding:.5rem .8rem;border-radius:var(--pill);transition:color .15s,background .15s}.nav-links a:hover{color:var(--ink);background:var(--bg-soft2)}.nav-cta{display:flex;align-items:center;gap:10px}.hero{position:relative;padding:72px 0 84px;overflow:hidden}.hero:before{background:radial-gradient(680px 460px at 88% 6%,rgba(255,49,49,.13),transparent 62%),radial-gradient(560px 420px at 6% 30%,rgba(255,49,49,.05),transparent 60%)}.hero:after,.hero:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none}.hero:after{opacity:.55;background-image:radial-gradient(rgba(22,19,14,.05) 1px,transparent 0);background-size:24px 24px;-webkit-mask-image:radial-gradient(120% 90% at 50% 0,#000 35%,transparent 78%);mask-image:radial-gradient(120% 90% at 50% 0,#000 35%,transparent 78%)}.hero .container{position:relative;z-index:1}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:54px;gap:54px}.avail,.hero-grid{align-items:center}.avail{display:inline-flex;gap:.55rem;padding:.4rem .8rem .4rem .65rem;border:1px solid var(--line-2);border-radius:var(--pill);background:#fff;font-family:JetBrains Mono,monospace;font-size:.74rem;letter-spacing:.02em;color:var(--ink-2);box-shadow:var(--shadow-sm)}.dot{width:8px;height:8px;background:var(--red);position:relative}.dot,.dot:after{border-radius:50%}.dot:after{content:"";position:absolute;inset:-5px;border:1px solid var(--red);opacity:.5;animation:ping 2.2s ease-out infinite}@keyframes ping{0%{transform:scale(.6);opacity:.6}80%,to{transform:scale(1.7);opacity:0}}.hero .lead,.hero h1{margin:22px 0 0}.hero .lead{max-width:38ch}.hero-cta{margin-top:30px;gap:12px}.hero-cta,.hero-stats{display:flex;flex-wrap:wrap}.hero-stats{gap:30px;margin-top:38px}.stat .n{font-family:Space Grotesk,sans-serif;font-weight:600;font-size:1.92rem;letter-spacing:-.03em;line-height:1}.stat .n b{color:var(--red);font-weight:600}.stat .l{font-family:JetBrains Mono,monospace;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:8px}.stat{position:relative;padding-right:30px}.stat:not(:last-child):after{content:"";position:absolute;right:0;top:6px;bottom:6px;width:1px;background:var(--line-2)}.portrait,.portrait-frame{position:relative}.portrait-frame{border-radius:var(--r-lg);padding:10px;background:linear-gradient(150deg,#fff,#fbeaea 48%,#fff);border:1px solid var(--line);box-shadow:var(--shadow-lg)}.portrait-frame img{border-radius:18px;width:100%;aspect-ratio:1/1;object-fit:cover}.portrait-frame:before{content:"";position:absolute;inset:0;border-radius:var(--r-lg);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.6);pointer-events:none}.badge-chip{position:absolute;left:-18px;bottom:26px;z-index:2;display:flex;align-items:center;gap:.7rem;background:#fff;border:1px solid var(--line);border-radius:14px;padding:.7rem .9rem;box-shadow:var(--shadow-md)}.badge-chip .ico{width:34px;height:34px;border-radius:10px;background:var(--red-soft);display:grid;place-items:center;color:var(--red);flex:none}.badge-chip .ico svg{width:18px;height:18px}.badge-chip .t{font-family:Space Grotesk,sans-serif;font-weight:600;font-size:.84rem;line-height:1.1}.badge-chip .s{font-size:.66rem;color:var(--muted);letter-spacing:.04em;margin-top:2px}.badge-chip .s,.tag-float{font-family:JetBrains Mono,monospace}.tag-float{position:absolute;right:-14px;top:22px;z-index:2;font-size:.68rem;letter-spacing:.08em;background:var(--ink);color:#fff;padding:.42rem .7rem;border-radius:10px;box-shadow:var(--shadow-md)}.tag-float b{color:var(--red)}.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg-soft)}.strip-inner{display:flex;align-items:center;gap:34px;flex-wrap:wrap;justify-content:center;padding:26px}.strip-label{font-family:JetBrains Mono,monospace;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.strip-items{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:center}.strip-items span{font-family:Space Grotesk,sans-serif;font-weight:500;font-size:1rem;color:var(--ink-2);opacity:.92}.strip-items i{width:5px;height:5px;border-radius:50%;background:var(--line-2)}.about-head{max-width:880px}.about-statement{font-family:Space Grotesk,sans-serif;font-weight:500;font-size:clamp(1.5rem,3vw,2.25rem);letter-spacing:-.025em;line-height:1.18;margin:22px 0 0}.about-statement .hl{color:var(--red)}.about-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;margin-top:48px}.tile{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:26px;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.tile:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--line-2)}.tile .ico{width:44px;height:44px;border-radius:12px;background:var(--red-soft);color:var(--red);display:grid;place-items:center;margin-bottom:16px}.tile .ico svg{width:22px;height:22px}.tile h3{font-size:1.1rem}.tile p{margin:.5rem 0 0;color:var(--ink-2);font-size:.95rem}.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;flex-wrap:wrap}.sec-head .left{max-width:620px}.sec-head h2{margin-top:16px}.sec-head .right{max-width:340px;color:var(--muted);font-size:.96rem;padding-bottom:6px}.impact-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:18px;gap:18px;margin-top:46px}.impact-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:26px 24px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.impact-card:before{content:"";position:absolute;left:0;top:0;height:3px;width:46px;background:var(--red);border-bottom-right-radius:3px}.impact-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.impact-card .metric{font-family:Space Grotesk,sans-serif;font-weight:600;font-size:2.1rem;letter-spacing:-.035em;color:var(--red);line-height:1;margin-bottom:14px}.impact-card h3{font-size:1.04rem;margin-bottom:8px}.impact-card p{margin:0;color:var(--ink-2);font-size:.9rem;line-height:1.55}.stack-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;margin-top:46px}.scard{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:24px;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.scard:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--line-2)}.scard .top{display:flex;align-items:center;gap:12px;margin-bottom:16px}.scard .ico{width:40px;height:40px;border-radius:11px;background:var(--ink);color:#fff;display:grid;place-items:center;flex:none}.scard .ico svg{width:20px;height:20px}.scard h3{font-size:1.06rem}.scard .idx{margin-left:auto;font-family:JetBrains Mono,monospace;font-size:.72rem;color:var(--muted)}.tags{display:flex;flex-wrap:wrap;gap:7px}.tags span{font-family:JetBrains Mono,monospace;font-size:.74rem;color:var(--ink-2);background:var(--bg-soft);border:1px solid var(--line);border-radius:8px;padding:.28rem .55rem;letter-spacing:.01em}.tags span.hot{color:var(--red);border-color:var(--red-soft-2);background:var(--red-soft)}.timeline{margin-top:54px;position:relative;padding-left:0}.tl-line{position:absolute;left:140px;top:6px;bottom:6px;width:2px;background:linear-gradient(180deg,var(--red),var(--line-2) 16%,var(--line-2))}.tl-item{position:relative;display:grid;grid-template-columns:124px 1fr;grid-gap:40px;gap:40px;padding-bottom:38px}.tl-item:last-child{padding-bottom:0}.tl-date{font-family:JetBrains Mono,monospace;font-size:.76rem;color:var(--muted);text-align:right;padding-top:20px;letter-spacing:.01em}.tl-date b{display:block;color:var(--ink);font-weight:500}.tl-node{position:absolute;left:140px;top:24px;transform:translate(-50%);width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid var(--line-2);z-index:2}.tl-item.current .tl-node{border-color:var(--red);background:var(--red);box-shadow:0 0 0 5px var(--red-soft)}.tl-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:22px 24px;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.tl-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--line-2)}.tl-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:4px}.tl-company{font-family:Space Grotesk,sans-serif;font-weight:600;font-size:1.18rem;letter-spacing:-.02em}.tl-badge{font-family:JetBrains Mono,monospace;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--red);background:var(--red-soft);border-radius:7px;padding:.22rem .5rem}.tl-role{font-size:.92rem;color:var(--ink-2);font-weight:500}.tl-proj{font-size:.86rem;color:var(--muted);margin:.2rem 0 .85rem}.tl-card ul{margin:0 0 14px;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.tl-card li{position:relative;padding-left:20px;font-size:.92rem;color:var(--ink-2);line-height:1.5}.tl-card li:before{content:"";position:absolute;left:2px;top:.62em;width:6px;height:6px;border-radius:2px;background:var(--red);opacity:.85}.tl-edu{display:grid;grid-template-columns:124px 1fr;grid-gap:40px;gap:40px}.tl-edu .tl-card{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:space-between}.tl-edu .e-main{display:flex;align-items:center;gap:14px}.tl-edu .ico{width:40px;height:40px;border-radius:11px;background:var(--red-soft);color:var(--red);display:grid;place-items:center;flex:none}.tl-edu .ico svg{width:20px;height:20px}.reviews-grid{column-count:3;column-gap:18px;margin-top:48px}.review{page-break-inside:avoid;break-inside:avoid;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:24px;box-shadow:var(--shadow-sm);margin-bottom:18px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.review:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--line-2)}.quote-mark{font-family:Space Grotesk,sans-serif;font-weight:700;font-size:2.6rem;line-height:.6;color:var(--red);height:.5em;display:block;margin-bottom:14px}.review p{margin:0 0 18px;font-size:.95rem;color:var(--ink-2);line-height:1.6}.reviewer{display:flex;align-items:center;gap:12px}.avatar{width:42px;height:42px;border-radius:11px;background:var(--red-soft);color:var(--red);display:grid;place-items:center;font-family:JetBrains Mono,monospace;font-weight:500;font-size:.86rem;flex:none}.reviewer .who{font-family:Space Grotesk,sans-serif;font-weight:600;font-size:.95rem;letter-spacing:-.01em}.reviewer .meta{font-size:.78rem;color:var(--muted)}.contact,.contact-card{position:relative;overflow:hidden}.contact-card{background:var(--ink);color:#fff;border-radius:var(--r-lg);padding:64px 56px;box-shadow:var(--shadow-lg)}.contact-card:before{background:radial-gradient(620px 440px at 88% 10%,rgba(255,49,49,.34),transparent 60%)}.contact-card:after,.contact-card:before{content:"";position:absolute;inset:0;pointer-events:none}.contact-card:after{opacity:.4;background-image:radial-gradient(hsla(0,0%,100%,.06) 1px,transparent 0);background-size:26px 26px;-webkit-mask-image:radial-gradient(100% 100% at 90% 0,#000,transparent 70%);mask-image:radial-gradient(100% 100% at 90% 0,#000,transparent 70%)}.contact-card>*{position:relative;z-index:1}.contact-card h2{color:#fff;max-width:18ch}.contact-card .lead{color:hsla(0,0%,100%,.74);margin-top:18px;max-width:46ch}.contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.contact-card .btn-ghost{background:transparent;color:#fff;border-color:hsla(0,0%,100%,.28)}.contact-card .btn-ghost:hover{border-color:#fff;background:hsla(0,0%,100%,.06)}.contact-loc{margin-top:30px;font-family:JetBrains Mono,monospace;font-size:.76rem;letter-spacing:.06em;color:hsla(0,0%,100%,.6);display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.contact-loc .dot{background:#39d98a}footer{padding:40px 0 56px}.foot-inner{justify-content:space-between;gap:18px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:28px}.foot-inner,.foot-inner .b{display:flex;align-items:center}.foot-inner .b{gap:.6rem;font-family:Space Grotesk,sans-serif;font-weight:600}.foot-inner .b .mark{width:22px;height:22px;border-radius:7px;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:.62rem}.foot-inner .b .mark,.foot-inner .c{font-family:JetBrains Mono,monospace}.foot-inner .c{font-size:.74rem;color:var(--muted);letter-spacing:.04em}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}.stagger>*{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.stagger.is-visible>*{opacity:1;transform:none}.stagger.is-visible>:nth-child(2){transition-delay:.07s}.stagger.is-visible>:nth-child(3){transition-delay:.14s}.stagger.is-visible>:nth-child(4){transition-delay:.21s}.stagger.is-visible>:nth-child(5){transition-delay:.28s}.stagger.is-visible>:nth-child(6){transition-delay:.35s}.hero-anim>*{animation:rise .8s cubic-bezier(.2,.7,.2,1) both}.hero-anim>:first-child{animation-delay:.05s}.hero-anim>:nth-child(2){animation-delay:.13s}.hero-anim>:nth-child(3){animation-delay:.21s}.hero-anim>:nth-child(4){animation-delay:.29s}.hero-anim>:nth-child(5){animation-delay:.37s}.portrait{animation:rise 1s cubic-bezier(.2,.7,.2,1) both;animation-delay:.2s}@keyframes rise{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}[id]{scroll-margin-top:96px}@media (max-width:1080px){.impact-grid{grid-template-columns:repeat(2,1fr)}.reviews-grid{column-count:2}}@media (max-width:920px){.nav-links{display:none}.hero-grid{grid-template-columns:1fr;gap:46px}.portrait{max-width:420px;margin:0 auto}.stack-grid{grid-template-columns:repeat(2,1fr)}.about-grid{grid-template-columns:1fr;gap:14px}}@media (max-width:680px){.section{padding:70px 0}.hero{padding:46px 0 60px}.impact-grid,.stack-grid{grid-template-columns:1fr}.reviews-grid{column-count:1}.tl-line,.tl-node{left:8px}.tl-item{grid-template-columns:1fr;gap:14px;padding-left:30px}.tl-date{text-align:left;padding-top:0;padding-left:0}.tl-edu{grid-template-columns:1fr;gap:14px;padding-left:30px}.contact-card{padding:40px 26px}.hero-stats{gap:20px}.stat{padding-right:20px}.badge-chip{left:6px}.tag-float{right:6px}.brand span.full{display:none}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal,.stagger>*{opacity:1!important;transform:none!important}html{scroll-behavior:auto}.dot:after{display:none}}