.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#main{overflow-x:clip}.hero{background:radial-gradient(1100px 700px at 22% 8%, var(--hero-glow-1), transparent 60%), radial-gradient(900px 640px at 82% 88%, var(--hero-glow-2), transparent 62%), var(--bg);flex-direction:column;justify-content:center;min-height:100svh;display:flex;position:relative;overflow:hidden}.hero__canvas{z-index:0;width:100%;height:100%;position:absolute;inset:0}.hero__scrim{z-index:1;background:linear-gradient(180deg, color-mix(in oklch, var(--bg) 10%, transparent) 0%, transparent 40%, color-mix(in oklch, var(--bg) 60%, transparent) 100%);pointer-events:none;position:absolute;inset:0}.hero__content{z-index:2;padding-block:calc(var(--gutter) * 3) calc(var(--gutter) * 2);position:relative}.hero__content:before{content:"";z-index:0;background:radial-gradient(720px 560px at 18% 45%, color-mix(in oklch, var(--bg) 55%, transparent), transparent 68%);pointer-events:none;position:absolute;inset:-8% -6%}.hero__inner{z-index:1;position:relative}@media (width<=640px){.hero__content{padding-top:108px}}.hero__cmdk{flex:none}@media (width<=780px),(pointer:coarse){.hero__cmdk{display:none}}.hero__top{flex-wrap:wrap;align-items:center;gap:18px;margin-bottom:28px;display:flex}.hero__title{font-family:var(--font-serif);letter-spacing:-.02em;max-width:18ch;margin:0 0 28px;font-size:clamp(56px,9vw,150px);font-weight:400;line-height:.92;overflow:hidden}.hero__sub{max-width:46ch;color:var(--ink-2);margin:0 0 36px;font-size:clamp(16px,1.6vw,19px)}.hero__cta{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:64px;display:flex}.hero__facts{border-top:1px solid var(--hairline);grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;max-width:760px;margin:0;padding-top:28px;display:grid}.hero__facts dt{font-family:var(--font-serif);color:var(--ink);font-variant-numeric:tabular-nums;font-size:clamp(26px,3vw,38px)}.hero__facts dd{font-family:var(--font-mono);color:var(--ink-3);text-transform:uppercase;letter-spacing:.08em;margin:6px 0 0;font-size:12px}.hero__scrollcue{z-index:2;opacity:.5;width:1px;height:46px;position:absolute;bottom:28px;left:50%;overflow:hidden;transform:translate(-50%)}.hero__scrollcue span{background:var(--ink);width:1px;height:100%;display:block}@media (prefers-reduced-motion:no-preference){.hero__scrollcue span{animation:scrollcue 2s var(--ease-out-power3) infinite}}@keyframes scrollcue{0%{transform:translateY(-100%)}60%,to{transform:translateY(100%)}}@media (width<=640px){.hero__facts{grid-template-columns:repeat(2,minmax(0,1fr))}}.about__layout{flex-direction:column;gap:64px;display:flex}.about__statement{font-family:var(--font-serif);width:100%;max-width:28ch;margin:0;font-size:clamp(32px,4.2vw,60px);font-weight:400;line-height:1.2}.about__statement .word{opacity:.2}.about__meta{grid-template-columns:minmax(220px,.5fr) minmax(0,1fr);align-items:start;gap:48px;display:grid}.about__avatar{flex-direction:column;gap:12px;display:flex}.about__avatar picture,.about__avatar img{object-fit:cover;border-radius:999px;width:120px;height:120px}.about__columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;display:grid}.about__col ul{flex-direction:column;gap:10px;margin:16px 0 0;padding:0;list-style:none;display:flex}.about__col li{color:var(--ink-2);border-top:1px solid var(--hairline);padding-block:10px;font-size:15px}.about__mentoring{color:var(--accent);margin-top:20px;font-size:14px;text-decoration:none;display:inline-block}@media (width<=860px){.about__meta,.about__columns{grid-template-columns:1fr}}.work__head{justify-content:space-between;align-items:baseline;margin-bottom:40px;display:flex}.work__heading{font-family:var(--font-serif);margin:0;font-size:clamp(32px,4vw,48px)}.work__counter{font-variant-numeric:tabular-nums}.work__pin{position:relative}.work__progress{background:var(--hairline);height:1px;position:relative}.work__progress span{transform-origin:0;background:var(--accent);position:absolute;inset:0;transform:scaleX(0)}.work__track{will-change:transform;flex-direction:column;display:flex}.panel{border-bottom:1px solid var(--hairline);padding-block:56px}.panel__inner{grid-template-columns:minmax(0,1fr);gap:32px;display:grid}.panel__meta{align-items:center;gap:10px;margin-bottom:18px;display:flex}.panel__company{font-family:var(--font-serif);margin:0 0 8px;font-size:clamp(32px,4vw + 2vh,80px);line-height:1}.panel__roles{color:var(--ink-2);margin-bottom:4px;font-size:15px}.panel__tenure{color:var(--accent);margin-bottom:18px}.panel__lede{font-family:var(--font-serif);max-width:34ch;margin:18px 0;font-size:clamp(18px,1.4vw + 1.2vh,28px);line-height:1.3}.panel__bullets{flex-direction:column;gap:10px;max-width:56ch;margin:0 0 24px;padding:0;list-style:none;display:flex}.panel__bullets li{color:var(--ink-2);padding-left:20px;font-size:clamp(13px,.8vw + .8vh,15px);position:relative}.panel__bullets li:before{content:"→";color:var(--accent);position:absolute;left:0}.panel__stack{flex-wrap:wrap;gap:8px;display:flex}.panel__visual{justify-content:center;align-items:center;min-height:260px;display:flex;position:relative}.panel__b2t{width:100%}.panel__phones{justify-content:center;align-items:center;width:100%;display:flex;position:relative}.panel__phones:before{content:"";z-index:0;filter:blur(30px);pointer-events:none;background:radial-gradient(closest-side,oklch(0% 0 0/.45),#0000 72%);position:absolute;inset:12% 18%}.panel__phones img{border-radius:28px;width:min(230px,42vw);height:auto}.panel__phones img:first-child{z-index:1;transform:translate(18%)rotate(-4deg)}.panel__phones img:last-child{z-index:2;transform:translate(-18%)rotate(3deg)}.panel__metrics{border-top:1px solid var(--hairline);grid-template-columns:repeat(3,minmax(0,auto));gap:24px;margin-top:24px;padding-top:20px;display:grid}.panel__metrics dt{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin:0 0 4px;font-size:12px}.panel__metrics dd{font-family:var(--font-serif);white-space:nowrap;margin:0;font-size:clamp(22px,2.4vw,30px)}.panel__vehicle{border-radius:20px;width:100%}.panel__vehicle-figure{width:100%;margin:0;position:relative}.panel__vehicle-figure figcaption{font-family:var(--font-mono);color:var(--ink);background:color-mix(in oklch, var(--bg-elev) 92%, transparent);border:1px solid var(--hairline);box-shadow:var(--shadow-2);border-radius:999px;padding:7px 12px;font-size:12px;line-height:1.3;position:absolute;top:calc(100% + 14px);left:16px}.panel__visual-phone{width:130px;height:auto;box-shadow:var(--shadow-2);border-radius:22px;position:absolute;bottom:-20px;right:-12px}.panel__metric-visual{text-align:center}.panel__charge-row{align-items:flex-end;gap:24px;margin-top:20px;display:flex;position:relative}.panel__charge-row:before{content:"";z-index:0;filter:blur(26px);pointer-events:none;background:radial-gradient(closest-side,oklch(0% 0 0/.4),#0000 72%);position:absolute;inset:15% 10% 0}.panel__charge-row img{z-index:1;border-radius:28px;width:min(200px,40vw);height:auto;position:relative}.panel__metric-big{font-family:var(--font-serif);color:var(--ink);font-size:clamp(48px,9vw,140px);line-height:1}.panel__metric-big .serif-accent{font-style:normal}.panel__metric-label{color:var(--ink-3);margin-top:12px}.work__earlier{padding-top:64px}.earlier-list{margin:20px 0 0;padding:0;list-style:none}.earlier-row{border-top:1px solid var(--hairline);grid-template-columns:minmax(120px,160px) minmax(0,1fr);gap:20px;padding-block:18px;display:grid}.earlier-row__top{color:var(--ink);align-items:baseline;gap:8px;font-size:15px;display:flex}.earlier-row__top span:first-child{font-weight:500}.earlier-row details summary{cursor:pointer;color:var(--ink-3);margin-top:6px;font-size:13px}.earlier-row details p{color:var(--ink-2);margin:8px 0 0;font-size:14px}.work--horizontal .work__track{flex-flow:row;width:max-content}.work--horizontal .panel{width:100vw;height:calc(100svh - var(--work-header-h,110px));border-bottom:none;flex:none;align-items:center;padding-block:0;display:flex;overflow:hidden}.work--horizontal .panel__inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;width:100%;max-height:100%}@media (height<=820px){.work--horizontal .panel__stack{display:none}}.panel__vehicle-figure figcaption{border-radius:14px;max-width:calc(100% - 150px);margin-top:14px;display:inline-block;position:static}.work--horizontal .panel__vehicle-figure figcaption{border-radius:999px;max-width:none;margin-top:0;position:absolute}.work--horizontal .panel__vehicle-figure{max-height:min(50vh,420px)}.work--horizontal .panel__vehicle{width:auto;max-width:100%;max-height:min(50vh,420px)}@media (width>=1024px){.panel__phones img{width:220px}}.projects__head{margin-bottom:40px}.projects__heading{font-family:var(--font-serif);margin:0 0 12px;font-size:clamp(32px,4vw,48px)}.projects__sub{color:var(--ink-2);max-width:60ch;margin:0}.projects__grid{background:var(--hairline);border:1px solid var(--hairline);border-radius:20px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.project-card{background:var(--bg-elev);transform-style:preserve-3d;padding:32px;position:relative;overflow:hidden}.project-card:hover{will-change:transform}.project-card__spotlight{opacity:0;transition:opacity var(--dur-fast) ease;background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%), color-mix(in oklch, var(--accent) 16%, transparent), transparent 70%);pointer-events:none;position:absolute;inset:0}.project-card:hover .project-card__spotlight{opacity:1}.project-card__icon{width:44px;height:44px;color:var(--ink-2);justify-content:center;align-items:center;margin-bottom:20px;display:flex}.project-card__icon img{border-radius:10px;width:100%;height:100%}.project-card__name{font-family:var(--font-serif);margin:0 0 6px;font-size:24px}.project-card__tagline{color:var(--ink-2);margin:0 0 12px;font-size:14px}.project-card__desc{color:var(--ink-3);margin:0 0 20px;font-size:14px}.project-card__meta{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);margin-bottom:6px;font-size:12px}.project-card__meta--metric{color:var(--accent)}.project-card__links{gap:16px;margin-top:20px;font-size:13px;display:flex}.project-card__links a{color:var(--ink);text-decoration:none}.project-card__links a:hover{color:var(--accent)}@media (width<=780px){.projects__grid{grid-template-columns:1fr}}.writing__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:32px;display:flex}.writing__heading{font-family:var(--font-serif);margin:0;font-size:clamp(32px,4vw,48px)}.writing__count{flex:none}.writing__hn-link{color:var(--ink-2);font-size:13px;text-decoration:none}.writing__list{border-top:1px solid var(--hairline)}.writing__foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:28px;display:flex}.writing__all{color:var(--accent);font-size:14px;text-decoration:none;display:inline-block}.writing-preview{z-index:300;background:var(--bg-elev);border:1px solid var(--hairline);width:260px;box-shadow:var(--shadow-2);opacity:0;pointer-events:none;transition:opacity var(--dur-fast) ease;border-radius:14px;padding:16px;position:fixed;top:0;left:0;transform:translate(0,0)}.writing-preview.is-visible{opacity:1}.writing-preview__meta{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);margin-bottom:8px;font-size:12px}.writing-preview__summary{color:var(--ink-2);margin:0;font-size:13px}.contact{position:relative;overflow:hidden}.contact__marquee{white-space:nowrap;border-block:1px solid var(--hairline);padding-block:20px;overflow:hidden}.contact__marquee-track{width:max-content;display:inline-flex}.contact__marquee-track span{font-family:var(--font-serif);color:var(--ink-3);padding-right:1ch;font-size:clamp(32px,7vw,84px);font-style:italic}@media (prefers-reduced-motion:no-preference){.contact__marquee-track{animation:26s linear infinite marquee}.contact__marquee-track--reverse{animation-direction:reverse}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.contact__body{flex-direction:column;align-items:flex-start;gap:40px;padding-block:80px;display:flex}.contact__mailto{font-family:var(--font-serif);color:var(--ink);border-bottom:1px solid var(--hairline);padding-bottom:6px;font-size:clamp(28px,5.5vw,64px);text-decoration:none;display:inline-flex}.contact__mailto:hover{color:var(--accent)}.contact__links{flex-wrap:wrap;gap:24px;font-size:14px;display:flex}.contact__links a{color:var(--ink-2);text-decoration:none}.contact__links a:hover{color:var(--ink)}
