.hero{--name-em:7.62;grid-template-rows:auto 1fr auto;min-height:100svh;padding-top:max(14svh,88px);padding-bottom:40px;display:grid;position:relative}.hero-name{font-size:min(calc((100vw - 2 * var(--margin)) / var(--name-em)), 300px);line-height:.8}.hero-line{margin-block:-.02em -.04em;padding-block:.02em .04em;display:block;overflow:clip}.hero-line>span{display:block}.hero-foot{grid-row:3;align-items:end;gap:40px;display:grid}.hero-facts{gap:18px;max-width:30ch;line-height:1.35;display:grid}.hero-say{max-width:34rem}.hero-title{font-size:var(--step-lead);letter-spacing:-.01em;max-width:30ch;font-weight:650;line-height:1.15}.hero-lede{max-width:38ch;margin-top:12px}@media (min-width:768px){.hero-foot{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr))}.hero-facts{grid-area:1/1/auto/span 4}.hero-say{grid-area:1/8/auto/span 5}}@media (max-width:767px){.hero{--name-em:5.4;padding-top:max(16svh,80px);padding-bottom:24px}.hero-name{font-stretch:100%}.hero-foot{gap:28px}.hero-facts{order:2}}@media (prefers-reduced-motion:no-preference){.js .hero [data-line]{animation:hero-line .9s var(--ease-expo) forwards;animation-delay:calc(.1s + var(--i) * .11s);transform:translateY(105%)}.js .hero [data-load]{opacity:0;animation:hero-rise .6s var(--ease-out) forwards;animation-delay:var(--d);transform:translateY(16px)}}@media (prefers-reduced-motion:reduce){.js .hero [data-load],.js .hero [data-line]{animation:.4s ease-out both hero-fade}}@keyframes hero-line{to{transform:none}}@keyframes hero-rise{to{opacity:1;transform:none}}@keyframes hero-fade{0%{opacity:0}}.giant-column{width:min(100%,880px);margin-inline:auto;container-type:inline-size}.giant-word{--word-em:8.15;font-size:calc(100cqw / var(--word-em));white-space:nowrap;line-height:.8}.bars{gap:6px;display:grid}.bar{background:var(--tone)}.bar summary{cursor:pointer;min-height:60px;font-weight:600;font-size:var(--step-lead);transition:background-color var(--t-hover) ease;align-items:center;gap:16px;padding:10px 18px;list-style:none;display:flex}.bar summary::-webkit-details-marker{display:none}.bar summary:after{content:"+";transition:transform var(--t-ui) var(--ease-out);margin-left:auto;font-size:1.25em;font-weight:400;line-height:1}.bar[open] summary:after{transform:rotate(45deg)}@media (hover:hover) and (pointer:fine){.bar summary:hover{background:var(--tone-2)}}.bar-name{flex-wrap:wrap;align-items:baseline;gap:4px 16px;display:flex}.bar-aside{font-size:var(--step-body);color:var(--ink-2);font-weight:400}.bar-panel{padding:4px 18px 24px}.bar:not([open])>.bar-panel{display:none}.skill-rows{gap:10px;display:grid}.skill-rows>div{grid-template-columns:8.5rem 1fr;gap:16px;display:grid}.skill-rows dt{color:var(--ink-2)}@media (prefers-reduced-motion:no-preference){.bar[open] .bar-panel{animation:panel-in .42s var(--ease-out)}}@keyframes panel-in{0%{opacity:0;transform:translateY(-6px)}}.tear-track{view-timeline-name:--tear;height:175svh}.tear-stage{background:#0b0c10;grid-template-columns:1fr 1fr;height:100svh;display:grid;position:sticky;top:0;overflow:clip}.tear-pane{position:relative;overflow:clip}.tear-media{place-items:center;display:grid;position:absolute;inset:-22svh 0}.tear-fill{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.tear-pane[data-kind=screen]{background:#14161b}.tear-pane[data-kind=screen]+.tear-pane[data-kind=screen]{background:#1c1f26}.tear-screen{object-fit:contain;width:min(375px,78%);height:auto;max-height:80svh}.tear-scrim{pointer-events:none;background:radial-gradient(60% 38%,#00000080,#0000 70%);position:absolute;inset:0}.tear-center{text-align:center;color:#eef0f3;pointer-events:none;padding-inline:var(--margin);place-content:center;justify-items:center;display:grid;position:absolute;inset:0}.tear-title{max-width:12ch;font-size:clamp(64px,10vw,160px);line-height:.82;position:relative}.tear-sub{margin-top:22px;font-weight:600}.tear-info{padding-block:clamp(48px,6vw,96px) clamp(44px,7vw,112px)}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.tear-pane-left .tear-media{animation:linear both tear-up;animation-timeline:--tear;animation-range:cover}.tear-pane-right .tear-media{animation:linear both tear-down;animation-timeline:--tear;animation-range:cover}}}@keyframes tear-up{0%{transform:translateY(20svh)}50%{transform:none}to{transform:translateY(-20svh)}}@keyframes tear-down{0%{transform:translateY(-20svh)}50%{transform:none}to{transform:translateY(20svh)}}@media (max-width:767px){.tear-track{height:125svh}.tear-title{font-size:12.5vw}}.about{gap:28px var(--gutter);display:grid}.about-photo{background:var(--tone);max-width:30rem}.about-photo img{aspect-ratio:1122/1402;object-fit:cover;width:100%;height:auto;display:block}.about-facts>div{grid-template-columns:10rem 1fr}@media (max-width:520px){.about-facts>div{grid-template-columns:1fr}}@media (min-width:900px){.about{grid-template-rows:auto 1fr;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end}.about-title{grid-area:1/7/auto/span 6;align-self:start}.about-photo{grid-area:1/1/span 2/span 5;max-width:none}.about-text{grid-area:2/7/auto/span 6}}.contact{background:var(--ink);color:var(--paper);gap:clamp(72px,12vh,140px);padding-block:clamp(72px,8vw,128px) 32px;display:grid}.contact-mail{--mail-em:10.9;font-size:calc((100vw - 2 * var(--margin)) / var(--mail-em));letter-spacing:-.045em;white-space:nowrap;transition:color var(--t-hover) ease;font-weight:400;line-height:.95}.contact-mail-line{display:inline}@media (hover:hover) and (pointer:fine){.contact-mail:hover{color:var(--field-2)}}@media (hover:hover) and (pointer:fine) and (prefers-color-scheme:dark){.contact-mail:hover{color:var(--field)}}.contact-foot{flex-wrap:wrap;justify-content:space-between;gap:12px 24px;display:flex}@media (max-width:767px){.contact-mail{--mail-em:8.2}.contact-mail-line{display:block}}
