.hero{isolation:isolate;align-items:center;min-height:clamp(430px,27.5vw,580px);display:flex;position:relative;overflow:hidden}.hero__media{z-index:-1;position:absolute;inset:0 0 0 max(33%,500px);-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 26%);mask-image:linear-gradient(90deg,#0000 0%,#000 26%)}.hero__media img{object-fit:cover;object-position:62% center}.hero__content{max-width:640px;padding-block:22px 34px;position:relative}.hero__kicker{margin-bottom:22px}.hero__name{letter-spacing:-.022em;font-variation-settings:"opsz" 72;margin:0 0 20px;font-size:clamp(52px,4.75vw,92px);line-height:.9}.hero__name span{display:block}.hero__tagline{max-width:15.6em;font-family:var(--font-serif);margin-bottom:14px;font-size:clamp(21px,1.62vw,28px);font-style:italic;line-height:1.22}.hero__intro{max-width:35em;color:var(--ink-2);margin-bottom:28px;font-size:clamp(15px,.98vw,16.5px);line-height:1.6}.hero__actions{flex-wrap:wrap;gap:16px 24px;display:flex}.hero__actions .btn{min-width:178px}@media (max-width:900px){.hero{flex-direction:column;align-items:stretch;min-height:0}.hero__media{order:-1;height:clamp(240px,58vw,420px);position:relative;inset:auto;-webkit-mask-image:linear-gradient(#000 60%,#0000 100%);mask-image:linear-gradient(#000 60%,#0000 100%)}.hero__media img{object-position:68% center}.hero__content{margin-top:-28px;padding-block:0 48px}}@keyframes rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes settle{0%{transform:scale(1.07)}to{transform:scale(1)}}@keyframes word-in{0%{opacity:0;filter:blur(4px);transform:translateY(.45em)}to{opacity:1;filter:none;transform:none}}.hero__content>*{animation:rise .9s var(--ease) both}.hero__content>:first-child{animation-delay:50ms}.hero__content>:nth-child(2){animation-delay:.15s}.hero__content>:nth-child(3){animation-delay:.3s}.hero__content>:nth-child(4){animation-delay:.42s}.hero__content>:nth-child(5){animation-delay:.54s}.hero__media img{animation:2.4s cubic-bezier(.2,.6,.2,1) both settle}.hero__tagline-line{display:block}.rotator{color:var(--accent);display:inline-block;position:relative}.rotator__word{animation:word-in .55s var(--ease) both;display:inline-block}.rotator:after{content:"";opacity:.45;background:currentColor;height:1px;position:absolute;bottom:.06em;left:0;right:0}.js-motion [data-reveal]{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);transform:translateY(26px)}.js-motion [data-reveal].is-visible{opacity:1;transform:none}.stats-band{border-bottom:1px solid var(--line)}.stats-band__list{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0 auto;list-style:none;display:grid}.stats-band__list li{padding:clamp(24px,2.6vw,36px) clamp(14px,2vw,30px)}.stats-band__list li+li{border-left:1px solid var(--line)}.stats-band__list li:first-child{padding-left:0}.stats-band__value{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--accent);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:clamp(38px,3.6vw,60px);line-height:1;display:block}.stats-band__label{max-width:18em;color:var(--ink-2);margin-top:12px;font-size:14px;line-height:1.5;display:block}@media (max-width:760px){.stats-band__list{grid-template-columns:1fr 1fr}.stats-band__list li{padding-left:0}.stats-band__list li+li{border-left:0}.stats-band__list li:nth-child(2n){border-left:1px solid var(--line);padding-left:18px}}.interests{border-block:1px solid var(--line);background:var(--bg-soft)}.interests__inner{grid-template-columns:auto repeat(6,minmax(0,1fr));align-items:center;min-height:84px;display:grid}.interests__title{white-space:nowrap;padding-right:clamp(24px,4vw,76px);font-size:clamp(21px,1.6vw,25px)}.interests__list{margin:0;padding:0;list-style:none;display:contents}.interest{border-left:1px solid var(--line);letter-spacing:-.005em;justify-content:center;align-items:center;gap:14px;min-width:0;min-height:36px;padding-inline:12px;font-size:15px;font-weight:500;line-height:1.2;display:flex}.interest svg{color:var(--ink);transition:transform .35s var(--ease), color .35s var(--ease);flex:none}.interest:hover svg{color:var(--accent);transform:translateY(-3px)}@media (max-width:1280px){.interest{gap:12px;font-size:14px}.interest svg{width:22px;height:22px}}@media (max-width:1100px){.interests__inner{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:6px;padding-block:22px}.interests__title{grid-column:1/-1;margin-bottom:12px}.interest{justify-content:flex-start;min-height:46px;padding-inline:18px}.interest:nth-of-type(3n+1){border-left:0;padding-left:0}}@media (max-width:600px){.interests__inner{grid-template-columns:repeat(2,minmax(0,1fr))}.interest:nth-of-type(3n+1){border-left:1px solid var(--line);padding-left:18px}.interest:nth-of-type(odd){border-left:0;padding-left:0}}.home-split{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,39fr) minmax(0,61fr);display:grid}.home-exp{min-height:226px;padding:36px 24px 38px var(--edge);border-right:1px solid var(--line);isolation:isolate;position:relative;overflow:hidden}.home-exp__text{max-width:300px;position:relative}.home-exp__text p{color:var(--ink-2);margin:20px 0 22px;font-size:15px;line-height:1.6}.home-exp__media{z-index:-1;width:min(40%,270px);position:absolute;top:0;bottom:0;right:0;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 38%);mask-image:linear-gradient(90deg,#0000 0%,#000 38%)}.home-exp__media img{object-fit:cover;object-position:60% center;filter:var(--img-filter)}.home-projects{padding:36px var(--edge) 38px clamp(28px, 3.3vw, 54px)}.home-projects__head{justify-content:space-between;align-items:center;gap:24px;display:flex}.pcards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.pcard{border-radius:var(--radius);isolation:isolate;min-height:124px;color:var(--card-on-dark);background:var(--card-olive);transition:transform .3s var(--ease), box-shadow .3s var(--ease);flex-direction:column;justify-content:flex-end;padding:20px 22px;display:flex;position:relative;overflow:hidden}.pcard:hover{transform:translateY(-2px);box-shadow:0 10px 28px #0000001f}.pcard--umber{background:var(--card-umber)}.pcard--light{background:var(--card-light);color:var(--card-on-light);border:1px solid color-mix(in srgb, var(--card-on-light) 8%, transparent)}.pcard__bg{z-index:-1;position:absolute;inset:0}.pcard__bg img{object-fit:cover;filter:var(--card-dark-filter)}.pcard--light .pcard__bg:after{content:"";background:linear-gradient(90deg,#efe7dff2 0%,#efe7dfd1 42%,#efe7df00 92%);position:absolute;inset:0}.pcard:not(.pcard--light) .pcard__bg:after{content:"";background:linear-gradient(#0000,#0a0a0826 30%,#0a0a08c7);position:absolute;inset:0}.pcard--light .pcard__bg img{filter:var(--card-light-filter)}.pcard__name{font-family:var(--font-serif);letter-spacing:.17em;text-transform:uppercase;font-size:clamp(14px,1vw,17px);line-height:1.2}.pcard__sub{font-family:var(--font-serif);opacity:.92;margin-top:6px;padding-right:42px;font-size:clamp(14px,1vw,16px);line-height:1.3}.pcard .circle-arrow{width:32px;height:32px;position:absolute;bottom:20px;right:20px}@media (max-width:1100px){.home-split{grid-template-columns:1fr}.home-exp{padding-right:var(--edge);border-right:0;border-bottom:1px solid var(--line)}.home-exp__text{max-width:60%}.home-projects{padding-left:var(--edge)}}@media (max-width:760px){.pcards{grid-template-columns:1fr}.pcard{min-height:112px}.home-exp__text{max-width:100%}.home-exp__media{opacity:.28;width:46%}.home-projects__head{flex-wrap:wrap;row-gap:14px}.hero__kicker{letter-spacing:.2em;font-size:11px}}.home-notes{border-bottom:1px solid var(--line)}.home-notes__inner{grid-template-columns:minmax(0,22fr) minmax(0,78fr);align-items:center;gap:24px;padding-block:34px;display:grid}.home-notes__intro p{max-width:300px;color:var(--ink-2);margin-top:18px;font-size:15px;line-height:1.55}.notes-row{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:center;display:grid}.note{border-left:1px solid var(--line);align-items:center;gap:clamp(14px,1.3vw,22px);min-width:0;padding-inline:clamp(14px,1.6vw,30px);display:flex}.note:first-child{border-left:0;padding-left:0}.note__thumb{aspect-ratio:110/84;background:color-mix(in srgb, var(--ink) 8%, transparent);border-radius:3px;flex:none;width:clamp(78px,6.2vw,110px);position:relative;overflow:hidden}.note__thumb img{object-fit:cover;filter:var(--img-filter);transition:transform .4s var(--ease)}.note:hover .note__thumb img{transform:scale(1.04)}.note__title{-webkit-line-clamp:3;font-family:var(--font-serif);-webkit-box-orient:vertical;font-size:clamp(15.5px,1.12vw,19px);line-height:1.28;display:-webkit-box;overflow:hidden}.note:hover .note__title{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.note__date{letter-spacing:.12em;color:var(--ink-2);margin-top:10px;font-size:11px;font-weight:500;display:block}.notes-row__more{padding-left:clamp(16px,2vw,32px)}.notes-row__more .circle-arrow{width:38px;height:38px}.notes-empty{font-family:var(--font-serif);color:var(--muted);justify-content:space-between;align-items:center;gap:24px;padding:26px 0;font-size:20px;font-style:italic;display:flex}@media (max-width:1360px){.home-notes__inner{grid-template-columns:1fr;gap:26px}.home-notes__intro{justify-content:space-between;align-items:baseline;gap:24px;display:flex}.home-notes__intro p{text-align:right;max-width:420px;margin-top:0}}@media (max-width:1100px){.home-notes__intro{display:block}.home-notes__intro p{text-align:left;margin-top:14px}.notes-row{grid-template-columns:1fr;row-gap:0}.note{border-left:0;border-top:1px solid var(--line);padding:16px 0}.note:first-child{border-top:0}.notes-row__more{padding:18px 0 0}}.home-cta{padding-block:clamp(56px,6.5vw,100px)}.home-cta__inner{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:end;gap:32px clamp(32px,6vw,112px);display:grid}.home-cta__title{letter-spacing:-.012em;margin-top:22px;font-size:clamp(32px,3.4vw,54px);line-height:1.08}.home-cta__side p{max-width:30em;color:var(--ink-2);margin-bottom:28px;font-size:16px}.home-cta__actions{flex-wrap:wrap;gap:16px 24px;display:flex}@media (max-width:900px){.home-cta__inner{grid-template-columns:1fr}}.js-motion [data-stagger]{transform:none}.js-motion [data-stagger]:not(.is-visible)>*{opacity:0}.js-motion [data-stagger].is-visible>*{animation:stagger-in .7s var(--ease) backwards;animation-delay:calc(var(--i,0) * 70ms)}@keyframes stagger-in{0%{opacity:0;transform:translateY(18px)}}@media (prefers-reduced-motion:reduce){.js-motion [data-stagger]:not(.is-visible)>*{opacity:1}.js-motion [data-stagger].is-visible>*{animation:none}}
