html,body.home-page{max-width:100%;overflow-x:hidden}body.home-page main{padding-top:0}.home-hero{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:minmax(0,1fr) auto;grid-auto-flow:dense;gap:52px var(--gutter);align-items:center;min-height:100svh;margin-inline:calc(-1 * var(--page-margin));padding:clamp(92px,14vh,164px) var(--page-margin) 0;isolation:isolate;overflow:hidden;border-bottom:2px dotted var(--line);background:linear-gradient(var(--home-grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--home-grid-line) 1px,transparent 1px),#fff;background-size:32px 32px}.home-hero:before,.home-hero:after{content:"";position:absolute;pointer-events:none}.home-hero:before{display:none}.home-hero:after{display:none}.home-hero__copy{position:relative;z-index:1;grid-column:1 / span 8;max-width:1180px;padding-top:0}.home-hero__copy h3{margin:0;color:var(--home-ink);font-family:var(--display);font-weight:400;line-height:1.04;letter-spacing:-.035em}.home-hero__copy h3 a{color:var(--home-ink);font-style:normal}.home-hero__copy h3 a[data-archive-filter=Writing]{color:var(--archive-writing)}.home-hero__copy h3 a[data-archive-filter=Gear]{color:var(--archive-stuff)}.home-hero__copy h3 a[data-archive-filter=Resume]{color:#1f2328}.home-filter-phrase{white-space:nowrap}.home-filter{display:inline-block;outline-offset:.14em}.wave-hand{display:inline-block;transform-origin:75% 75%;cursor:default}.wave-hand:hover{animation:home-wave-hand 1.8s ease-in-out infinite}@media(min-width:901px){.home-hero a{text-decoration-color:currentColor;text-decoration-thickness:.06em}.home-hero__portrait:hover{transform-origin:50% 100%;animation:home-portrait-wave 1.8s ease-in-out infinite}}@keyframes home-wave-hand{0%,to{transform:translate(0) rotate(0)}20%{transform:translate(.04em) rotate(14deg)}40%{transform:translate(-.04em) rotate(-10deg)}60%{transform:translate(.03em) rotate(12deg)}80%{transform:translate(-.02em) rotate(-6deg)}}@keyframes home-portrait-wave{0%,to{transform:translate(0) rotate(.8deg)}20%{transform:translate(7px) rotate(3deg)}40%{transform:translate(-7px) rotate(-1.8deg)}60%{transform:translate(5px) rotate(2.4deg)}80%{transform:translate(-4px) rotate(-.8deg)}}@media(prefers-reduced-motion:reduce){.wave-hand:hover,.home-hero__portrait:hover{animation:none}}.mobile-line{display:none}.home-portrait-trigger{appearance:none;display:inline;margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer}.mobile-home-deck,.home-portrait-overlay{display:none}.rotating-line{display:block;color:var(--home-animated-ink);font-family:var(--display);font-style:normal;font-weight:400;line-height:inherit;letter-spacing:inherit}.rotating-line .phrases{display:inline-grid;grid-template-rows:1fr;height:1.4em;overflow:hidden;vertical-align:bottom}.rotating-line .phrase{grid-row:1;grid-column:1;display:flex;align-items:center;opacity:0;transform:translateY(12px) scale(.96);transition:opacity .5s ease,transform .5s ease;white-space:nowrap}.rotating-line .phrase.active{opacity:1;transform:translateY(0) scale(1)}.rotating-line .phrase.leaving{opacity:0;transform:translateY(-12px) scale(.96)}.archive-portrait{position:relative;width:min(100%,280px);margin:12px 0 0 auto;padding:0;border:0;background:transparent;transform:rotate(1.8deg)}.archive-portrait:before{content:"";position:absolute;inset:20px -14px -14px 20px;z-index:-1;border:0;background:var(--surface-low)}.archive-portrait:after{content:"";position:absolute;inset:-4px;background:var(--pencil-frame) center / 100% 100% no-repeat;opacity:.9;pointer-events:none}.archive-portrait img{aspect-ratio:4 / 5;height:auto;object-fit:cover;object-position:50% 42%;filter:saturate(.92) contrast(.98)}.home-hero__portrait{z-index:1;grid-column:10 / span 3;justify-self:end;margin:12px 0 0}.home-archive{position:relative;z-index:1;grid-column:1 / -1;align-self:end;display:block;width:100%;height:clamp(210px,22vh,300px);padding-top:0}.home-archive__title{margin:0 0 20px;color:var(--outline);font-family:var(--label);font-size:.75rem;font-weight:700;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase}.archive-grid{display:flex;align-items:flex-start;justify-content:center;gap:clamp(4px,.7vw,12px);width:100%;padding:0 clamp(34px,3vw,58px)}.archive-card{--card-accent: var(--line);--card-accent-soft: rgba(223, 192, 184, .42);--card-accent-text: var(--muted);--card-bg: var(--surface-low);--deck-rotate: -4deg;--deck-lift: clamp(120px, 16vh, 180px);position:relative;z-index:1;grid-column:span 3;flex:0 0 clamp(245px,20vw,360px);display:flex;flex-direction:column;gap:10px;min-width:0;margin-right:clamp(-58px,-2.3vw,-34px);padding:12px;border:0;border-radius:14px;background:var(--card-bg);box-shadow:0 18px 40px #3031291f;transform:translateY(0) rotate(var(--deck-rotate));transform-origin:50% 100%;transition:opacity .18s ease,filter .18s ease,transform .26s ease,box-shadow .26s ease}.archive-card[data-archive-section=Writing]{--card-accent: var(--archive-writing);--card-accent-soft: color-mix(in srgb, var(--archive-writing-soft) 72%, transparent);--card-accent-text: var(--archive-writing);--card-bg: color-mix(in srgb, var(--archive-writing-soft) 76%, white)}.archive-card[data-archive-section=Gear]{--card-accent: #32617d;--card-accent-soft: rgba(50, 97, 125, .28);--card-accent-text: #214d66;--card-bg: #d5dce1}.archive-card[data-archive-section=Resume]{--card-accent: #9a6a8f;--card-accent-soft: rgba(154, 106, 143, .3);--card-accent-text: #714b69;--card-bg: #e2d6df}.archive-card:nth-child(1){--deck-rotate: -3.8deg;z-index:1}.archive-card:nth-child(2){--deck-rotate: 2.8deg;z-index:2}.archive-card:nth-child(3){--deck-rotate: -1.7deg;z-index:3}.archive-card:nth-child(4){--deck-rotate: 3.6deg;z-index:4}.archive-card:nth-child(5){--deck-rotate: -2.6deg;z-index:5;margin-right:0}.archive-card:nth-child(6){--deck-rotate: 2deg;z-index:6}.archive-card:nth-child(7){--deck-rotate: -1.1deg;z-index:7;margin-right:0}.home-hero:has(.home-filter:is(:hover,:focus-visible)) .archive-card{opacity:1;filter:saturate(.45) brightness(.92)}.home-hero:has(.home-filter[data-archive-filter=Writing]:is(:hover,:focus-visible)) .archive-card[data-archive-section=Writing],.home-hero:has(.home-filter[data-archive-filter=Gear]:is(:hover,:focus-visible)) .archive-card[data-archive-section=Gear],.home-hero:has(.home-filter[data-archive-filter=Resume]:is(:hover,:focus-visible)) .archive-card[data-archive-section=Resume]{z-index:20;opacity:1;filter:none;box-shadow:0 22px 54px #30312929;transform:translateY(calc(-1 * var(--deck-lift))) rotate(0)}.archive-card--wide,.archive-card--tall{grid-column:span 3}.archive-card__media{position:relative;order:2;display:block;overflow:hidden;border:0;border-radius:10px;background:var(--surface-low);aspect-ratio:5 / 3}.archive-card__media:after{content:"";position:absolute;inset:3px;background:var(--pencil-frame) center / 100% 100% no-repeat;opacity:.86;pointer-events:none}.archive-card--wide .archive-card__media,.archive-card--tall .archive-card__media{aspect-ratio:5 / 3}.archive-card__media img{height:100%;object-fit:cover;filter:grayscale(88%) contrast(.92);transition:filter .22s ease,transform .5s ease}.archive-card:hover .archive-card__media img{filter:grayscale(0%) contrast(1);transform:scale(1.04)}.archive-card__fallback{display:flex;flex-direction:column;justify-content:space-between;height:100%;padding:16px;border-radius:inherit;background:linear-gradient(180deg,var(--surface-lowest) 0%,var(--surface-low) 100%)}.archive-card__fallback .eyebrow{margin-bottom:0}.archive-card__fallback-mark{margin:auto 0 0;color:var(--primary);font-family:var(--display);font-size:clamp(1.8rem,2.6vw,2.8rem);line-height:1}.archive-card__copy{order:1;display:flex;flex-direction:column;gap:8px;min-width:0}.archive-card__meta{order:4;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.archive-card .badge{border-color:var(--card-accent);background:var(--card-accent);color:#fff}.archive-card .meta{color:var(--card-accent-text)}.archive-card__description{order:3;margin:0}.archive-card h3{margin-bottom:0;color:var(--card-accent-text);font-size:clamp(1.08rem,1.35vw,1.42rem);text-align:center}.archive-card h3 a{text-decoration:none;text-transform:uppercase}.archive-card h3 a:hover{text-decoration:none}.archive-card p{color:var(--card-accent-text);font-size:.95rem;line-height:1.45}.archive-card__description{max-width:42ch}@media(max-width:900px){body.home-page .page-shell{padding-inline:0}.home-hero{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:clamp(18px,3svh,30px);width:100%;max-width:100%;min-height:100svh;margin-inline:0;padding:0 20px max(18px,env(safe-area-inset-bottom));overflow-x:clip;overflow-y:visible}.home-hero__copy,.archive-portrait,.home-hero__portrait,.archive-card,.page-intro>*{grid-column:auto}.archive-grid{grid-template-columns:1fr}.archive-portrait{position:absolute;top:clamp(112px,21svh,190px);right:-154px;z-index:1;width:148px;float:none;order:2;justify-self:center;margin:0;padding:0;pointer-events:none;transform:rotate(5deg) translate(0);transition:right .26s ease,transform .26s ease,opacity .18s ease}.home-hero.is-portrait-open .archive-portrait{right:50%;transform:translate(50%) rotate(1.5deg) scale(1.55);pointer-events:auto}.home-portrait-overlay{display:block;position:fixed;inset:0;z-index:4;border:0;background:#30312900;opacity:0;pointer-events:none;transition:background .22s ease,opacity .22s ease}.home-hero.is-portrait-open .home-portrait-overlay{background:#3031295c;opacity:1;pointer-events:auto}.home-hero.is-portrait-open .archive-portrait{z-index:5}.home-hero__copy{position:relative;z-index:2;align-self:center;justify-self:center;width:100%;order:initial;margin-block:0;padding-top:0;text-align:center}.home-portrait-trigger{position:relative;z-index:3;color:var(--home-animated-ink);font-style:italic;text-decoration:underline;text-decoration-thickness:.06em;text-underline-offset:.1em}.home-filter.is-mobile-active{color:var(--surface-lowest);border-radius:.18em;background:currentColor;box-shadow:0 0 0 .08em currentColor}.home-filter.is-mobile-active[data-archive-filter=Writing]{color:var(--surface-lowest);background:var(--archive-writing);box-shadow:0 0 0 .08em var(--archive-writing)}.home-filter.is-mobile-active[data-archive-filter=Gear]{color:var(--surface-lowest);background:var(--archive-stuff);box-shadow:0 0 0 .08em var(--archive-stuff)}.home-filter.is-mobile-active[data-archive-filter=Resume]{color:var(--surface-lowest);background:var(--archive-resume);box-shadow:0 0 0 .08em var(--archive-resume)}body.home-page main{padding-top:0;overflow-x:hidden}.home-archive{display:none}.mobile-home-deck{display:block;position:relative;z-index:2;width:100%;align-self:end;justify-self:center;order:initial;margin-top:0;padding-top:0}.mobile-home-deck__label{margin:0 0 16px;color:var(--outline);font-family:var(--label);font-size:.75rem;font-weight:700;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase}.mobile-home-deck__stack{position:relative;min-height:clamp(258px,31svh,292px);margin-inline:auto;width:min(calc(100% - 54px),360px)}.mobile-deck-card{--mobile-card-accent: var(--line);--mobile-card-bg: var(--surface-low);position:absolute;inset:0;display:flex;flex-direction:column;gap:10px;min-height:0;align-items:center;padding:18px;border:1px solid color-mix(in srgb,var(--mobile-card-accent) 34%,var(--line));border-radius:14px;background:var(--mobile-card-bg);box-shadow:0 16px 34px #3031292e,0 2px color-mix(in srgb,var(--mobile-card-accent) 18%,transparent);color:var(--mobile-card-accent);text-decoration:none;transform-origin:50% 100%;transition:transform .32s ease,opacity .22s ease,filter .22s ease}.mobile-deck-card[data-mobile-section=Writing]{--mobile-card-accent: var(--archive-writing);--mobile-card-bg: color-mix(in srgb, var(--archive-writing-soft) 78%, white)}.mobile-deck-card[data-mobile-section=Gear]{--mobile-card-accent: var(--archive-stuff);--mobile-card-bg: color-mix(in srgb, var(--archive-stuff-soft) 80%, white)}.mobile-deck-card[data-mobile-section=Resume]{--mobile-card-accent: var(--archive-resume);--mobile-card-bg: color-mix(in srgb, var(--archive-resume-soft) 80%, white)}.mobile-deck-card.is-active{z-index:3;opacity:1;filter:none;transform:translate(0) rotate(-.6deg)}.mobile-deck-card.is-next{z-index:2;opacity:.86;filter:saturate(.78) brightness(.98);transform:translate(14px,8px) rotate(3deg)}.mobile-deck-card.is-back{z-index:1;opacity:.72;filter:saturate(.62) brightness(.96);transform:translate(-12px,14px) rotate(-3deg)}.mobile-deck-card__topline{display:none}.mobile-deck-card .badge{border-color:var(--mobile-card-accent);background:var(--mobile-card-accent);color:#fff}.mobile-deck-card strong{display:block;width:100%;color:var(--mobile-card-accent);font-family:var(--display);font-size:clamp(2rem,10.5vw,3.25rem);font-weight:500;line-height:.92;letter-spacing:-.04em;text-align:center}.mobile-deck-card__description{color:var(--mobile-card-accent);font-size:1rem;line-height:1.45;text-align:center}.mobile-deck-card__cta{margin-top:auto;color:var(--mobile-card-accent);font-family:var(--label);font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.home-archive__title{margin-bottom:18px}.archive-grid{display:grid;gap:28px;padding:0}.archive-card,.archive-card--wide,.archive-card--tall{grid-column:span 1;flex-basis:auto;margin-right:0;transform:none}.home-hero:has(.home-filter[data-archive-filter=Writing]:is(:hover,:focus-visible)) .archive-card[data-archive-section=Writing],.home-hero:has(.home-filter[data-archive-filter=Gear]:is(:hover,:focus-visible)) .archive-card[data-archive-section=Gear],.home-hero:has(.home-filter[data-archive-filter=Resume]:is(:hover,:focus-visible)) .archive-card[data-archive-section=Resume]{transform:none}.archive-card__media{aspect-ratio:16 / 10}.archive-card--tall .archive-card__media{aspect-ratio:4 / 3}.archive-card__fallback-mark{font-size:clamp(1.6rem,7vw,2.2rem)}.mobile-line{display:block}.desktop-line,.pre-rotating-break{display:none}.rotating-line{display:flex;justify-content:center;width:100%;margin-top:0;min-height:0;text-align:center}.rotating-line .phrases{display:grid;justify-items:center;width:100%;grid-template-rows:auto;height:auto;overflow:visible}.rotating-line .phrase{justify-content:center;width:100%;text-align:center;white-space:normal}}body.home-page{--home-animated-ink: #0057c8;--home-ink: var(--home-animated-ink);--home-grid-line: oklch(39% .16 275 / .08);--home-rothko-yellow: #faeb92;--home-rothko-orange: oklch(66% .15 53);--home-rothko-burnt: oklch(54% .16 41);--home-rothko-haze: oklch(82% .08 70);--home-rothko-yellow-bloom: color-mix(in srgb, var(--home-rothko-yellow) 76%, white);--home-rothko-orange-bloom: oklch(72% .13 57 / .58);--home-rothko-yellow-wash: color-mix(in srgb, var(--home-rothko-yellow) 56%, transparent);--home-rothko-gold-wash: oklch(74% .095 62 / .28);--home-rothko-light-wash: oklch(91% .035 82 / .4);--home-rothko-boundary: oklch(72% .09 57 / .3);--home-rothko-drybrush: oklch(24% .055 42 / .038);--home-rothko-canvas-stain: oklch(20% .045 42 / .06);--home-rothko-rule: oklch(50% .1 45 / .24);--primary: var(--archive-home);--primary-strong: #3f5d42;--primary-soft: var(--archive-home-soft)}.archive-portrait{box-shadow:none;transform:rotate(.8deg)}.archive-portrait:before{display:none}.archive-card{box-shadow:var(--archive-paper-shadow)}.archive-card[data-archive-section=Writing]{--card-accent: var(--archive-writing);--card-accent-text: var(--archive-writing);--card-bg: color-mix(in srgb, var(--archive-writing-soft) 76%, white)}.archive-card[data-archive-section=Gear]{--card-accent: var(--archive-stuff);--card-accent-text: var(--archive-stuff);--card-bg: color-mix(in srgb, var(--archive-stuff-soft) 78%, white)}.archive-card[data-archive-section=Resume]{--card-accent: var(--archive-resume);--card-accent-text: var(--archive-resume);--card-bg: color-mix(in srgb, var(--archive-resume-soft) 78%, white)}.home-hero:has(.home-filter[data-archive-filter=Writing]:is(:hover,:focus-visible)) .archive-card[data-archive-section=Writing],.home-hero:has(.home-filter[data-archive-filter=Gear]:is(:hover,:focus-visible)) .archive-card[data-archive-section=Gear],.home-hero:has(.home-filter[data-archive-filter=Resume]:is(:hover,:focus-visible)) .archive-card[data-archive-section=Resume]{box-shadow:var(--archive-lift-shadow)}
