*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--container-max:80rem;--gutter:clamp(1.25rem, 5vw, 3.5rem);--section-y:clamp(4.5rem, 10vw, 8.75rem);--section-y-small:clamp(3.5rem, 8vw, 7rem);--intro-y:clamp(3.5rem, 8vw, 7.5rem);--gap-split:clamp(2.5rem, 6vw, 6rem);--gap-grid:clamp(1.5rem, 3vw, 2.5rem);--space-head:clamp(2.5rem, 5vw, 4.5rem);--header-height:4.75rem;--control-height:3.25rem;--control-size:2.75rem;--tile-height:3.5rem;--radius-badge:.125rem;--radius:.25rem;--radius-card:.375rem;--radius-panel:.5rem;--font-serif:var(--font-newsreader), Georgia, serif;--font-body:var(--font-albert), system-ui, sans-serif;--font-mono:var(--font-dm-mono), ui-monospace, Menlo, monospace;--fs-hero:clamp(2.75rem, 6.4vw, 6rem);--fs-h1:clamp(2.5rem, 5.2vw, 4.75rem);--fs-h1-case:clamp(2.5rem, 5.6vw, 5.25rem);--fs-h2:clamp(2rem, 4vw, 3.5rem);--fs-h2-small:clamp(1.75rem, 3.2vw, 2.75rem);--fs-statement:clamp(1.625rem, 3vw, 2.75rem);--fs-statement-small:clamp(1.5rem, 2.4vw, 2.125rem);--fs-quote:clamp(1.375rem, 2vw, 1.75rem);--fs-lead-serif:clamp(1.375rem, 2.2vw, 1.875rem);--fs-number:2.75rem;--fs-number-large:3.5rem;--fs-title-lg:1.875rem;--fs-title:1.75rem;--fs-title-md:1.625rem;--fs-title-sm:1.375rem;--fs-body-large:1.125rem;--fs-lead:1.0625rem;--fs-body:1rem;--fs-small:.9375rem;--fs-xs:.875rem;--fs-2xs:.8125rem;--fs-mono:.75rem;--fs-mono-small:.6875rem;--fw-light:300;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--ease:cubic-bezier(.22, .61, .36, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--color-on-photo:#f7f4ee;--color-on-photo-line:#f7f4ee99;--color-on-photo-ink:#1e1d1b;--color-on-photo-hover:#ede8df;--color-glass:#f7f4ee24;--color-glass-hover:#f7f4ee3d;--color-glass-line:#f7f4ee47;--color-glint:#ffffffe6;--shadow-on-photo:0 .25rem 1.25rem #0000004d;--shadow-on-dark-pressed:inset .0625rem .0625rem .625rem #00000080;--color-scrim-top:#1e1d1b8c;--color-scrim-bottom:#1e1d1bc7;--color-photo-dark:#2a2927;--photo-grade:saturate(.88) sepia(.06);--shadow-raised:var(--shadow-outer), var(--shadow-inner-none);--shadow-pressed:var(--shadow-outer-none), var(--shadow-inner)}:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#f7f4ee;--color-bg-alt:#ede8df;--color-card:#fff;--color-text:#1e1d1b;--color-text-soft:#3a3935;--color-muted:#6e685f;--color-line:#d8cdbb;--color-line-strong:#1e1d1b;--color-line-field:#9c958a;--color-line-tile:#c9c0b1;--color-accent:#5e6b55;--color-accent-strong:#37402f;--color-photo:#d8cdbb;--color-header:#f7f4eef7;--color-header-line:#e2dbcf;--color-primary:#1e1d1b;--color-primary-text:#f7f4ee;--color-primary-hover:#37402f;--color-error:#8a3b2e;--color-selection:#c5cdb8;--color-ink:#1e1d1b;--color-ink-text:#f7f4ee;--color-ink-muted:#cfc9be;--color-ink-line:#3a3935;--color-ink-label:#a9b59c;--color-ink-outline:#55524c;--color-moss:#37402f;--color-moss-text:#f7f4ee;--color-moss-muted:#dce0d3;--color-moss-line:#5e6b55;--color-moss-label:#c5cdb8;--color-moss-box:#2c3326;--color-surface:#fffdf9;--color-surface-2:#f1ece3;--color-context:var(--color-bg);--pressed-shade:5%;--color-overlay:#1e1d1b66;--color-shadow-line:#1e1d1b2e;--shadow-outer:.0625rem .0625rem .625rem #1e1d1b2e;--shadow-outer-none:0 0 0 0 #1e1d1b00;--shadow-inner:inset .0625rem .0625rem .625rem #1e1d1b2e;--shadow-inner-active:inset .125rem .125rem .75rem #1e1d1b47;--shadow-inner-none:inset 0 0 0 0 #1e1d1b00;--shadow-float:.125rem .25rem 1.5rem #1e1d1b24;--shadow-overlay:0 1.5rem 3.5rem #1e1d1b33;--shadow-up:0 -.0625rem .625rem #1e1d1b1f}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#161513;--color-bg-alt:#1e1d1a;--color-card:#24231f;--color-text:#efebe3;--color-text-soft:#cfc9be;--color-muted:#a39d92;--color-line:#36332e;--color-line-strong:#8a847a;--color-line-field:#6e685f;--color-line-tile:#4a4640;--color-accent:#a9b59c;--color-accent-strong:#c5cdb8;--color-photo:#2a2927;--color-header:#161513f0;--color-header-line:#2c2a26;--color-primary:#efebe3;--color-primary-text:#161513;--color-primary-hover:#c5cdb8;--color-error:#e0917f;--color-selection:#4a5543;--color-ink:#0d0d0c;--color-ink-text:#efebe3;--color-ink-muted:#bdb7ac;--color-ink-line:#2c2a26;--color-ink-label:#a9b59c;--color-ink-outline:#55524c;--color-moss:#242b20;--color-moss-text:#efebe3;--color-moss-muted:#c9d0bf;--color-moss-line:#46513f;--color-moss-label:#a9b59c;--color-moss-box:#1b2118;--color-surface:#211f1c;--color-surface-2:#2a2824;--color-context:var(--color-bg);--pressed-shade:35%;--color-overlay:#0000008c;--color-shadow-line:#000c;--shadow-outer:.0625rem .0625rem .625rem #000c;--shadow-outer-none:0 0 0 0 #0000;--shadow-inner:inset .0625rem .0625rem .625rem #000c;--shadow-inner-active:inset .125rem .125rem .75rem #000;--shadow-inner-none:inset 0 0 0 0 #0000;--shadow-float:.125rem .25rem 1.5rem #0000008c;--shadow-overlay:0 1.5rem 3.5rem #0009;--shadow-up:0 -.0625rem .625rem #000000b3}@media (prefers-color-scheme:dark){:root:not([data-theme]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#161513;--color-bg-alt:#1e1d1a;--color-card:#24231f;--color-text:#efebe3;--color-text-soft:#cfc9be;--color-muted:#a39d92;--color-line:#36332e;--color-line-strong:#8a847a;--color-line-field:#6e685f;--color-line-tile:#4a4640;--color-accent:#a9b59c;--color-accent-strong:#c5cdb8;--color-photo:#2a2927;--color-header:#161513f0;--color-header-line:#2c2a26;--color-primary:#efebe3;--color-primary-text:#161513;--color-primary-hover:#c5cdb8;--color-error:#e0917f;--color-selection:#4a5543;--color-ink:#0d0d0c;--color-ink-text:#efebe3;--color-ink-muted:#bdb7ac;--color-ink-line:#2c2a26;--color-ink-label:#a9b59c;--color-ink-outline:#55524c;--color-moss:#242b20;--color-moss-text:#efebe3;--color-moss-muted:#c9d0bf;--color-moss-line:#46513f;--color-moss-label:#a9b59c;--color-moss-box:#1b2118;--color-surface:#211f1c;--color-surface-2:#2a2824;--color-context:var(--color-bg);--pressed-shade:35%;--color-overlay:#0000008c;--color-shadow-line:#000c;--shadow-outer:.0625rem .0625rem .625rem #000c;--shadow-outer-none:0 0 0 0 #0000;--shadow-inner:inset .0625rem .0625rem .625rem #000c;--shadow-inner-active:inset .125rem .125rem .75rem #000;--shadow-inner-none:inset 0 0 0 0 #0000;--shadow-float:.125rem .25rem 1.5rem #0000008c;--shadow-overlay:0 1.5rem 3.5rem #0009;--shadow-up:0 -.0625rem .625rem #000000b3}}@media (min-width:96em){:root{--container-max:86rem;--gutter:clamp(1.25rem, 5vw, 4rem)}}@media (min-width:120em) and (min-height:56.25em){:root{--container-max:92rem;--gutter:clamp(1.25rem, 5vw, 4.5rem)}}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 1rem);-webkit-text-size-adjust:100%}@supports ((-moz-appearance:none)){html{scrollbar-color:var(--color-accent) var(--color-bg);scrollbar-width:thin}}html::-webkit-scrollbar{background-color:var(--color-bg);width:.875rem}html::-webkit-scrollbar-track{background:linear-gradient(var(--color-line), var(--color-line)) center / 1px 100% no-repeat}html::-webkit-scrollbar-thumb{border:.25rem solid var(--color-bg);background:radial-gradient(ellipse 30% .4rem at 50% 50%, var(--color-surface) 92%, transparent 100%), linear-gradient(90deg, var(--color-accent), var(--color-accent-strong));border-radius:1rem;min-height:3.5rem}html::-webkit-scrollbar-thumb:hover{background:radial-gradient(ellipse 30% .4rem at 50% 50%, var(--color-surface) 92%, transparent 100%), var(--color-accent-strong)}body{background-color:var(--color-bg);min-height:100dvh;color:var(--color-text);font-family:var(--font-body);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;flex-direction:column;line-height:1.6;display:flex}body.menu-open{overflow:hidden}main{flex:1}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:var(--fw-regular);text-wrap:balance;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;line-height:1.15}p{text-wrap:pretty}a{color:inherit;text-underline-offset:.25em;text-decoration-thickness:1px}ul,ol{list-style:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;border-radius:0}::selection{background-color:var(--color-selection);color:var(--color-text)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}@keyframes fade-in{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:none}}[data-reveal-ready] [data-reveal]:not([data-revealed]){opacity:0;transform:translateY(1.5rem)}[data-reveal-ready] [data-reveal]{transition:opacity .9s var(--ease-out), transform .9s var(--ease-out)}[data-reveal-ready] [data-reveal=stagger]:not([data-revealed]){opacity:1;transform:none}[data-reveal-ready] [data-reveal=stagger]:not([data-revealed])>*{opacity:0;transform:translateY(1.5rem)}[data-reveal-ready] [data-reveal=stagger]>*{transition:opacity .9s var(--ease-out), transform .9s var(--ease-out)}[data-reveal-ready] [data-reveal=stagger]>*:nth-child(2){transition-delay:80ms}[data-reveal-ready] [data-reveal=stagger]>*:nth-child(3){transition-delay:.16s}[data-reveal-ready] [data-reveal=stagger]>*:nth-child(4){transition-delay:.24s}[data-reveal-ready] [data-reveal=stagger]>*:nth-child(5){transition-delay:.32s}[data-reveal-ready] [data-reveal=stagger]>*:nth-child(n+6){transition-delay:.4s}[data-reveal-ready] [data-reveal=line]:not([data-revealed]){opacity:1;transform:scaleX(0)}[data-reveal=line]{transform-origin:0}[data-reveal-ready] [data-reveal=line]{transition:transform 1.4s var(--ease-out)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}[data-reveal-ready] [data-reveal]:not([data-revealed]),[data-reveal-ready] [data-reveal=stagger]:not([data-revealed])>*{opacity:1;transform:none}}.hover_in_shadow{isolation:isolate;position:relative}.hover_in_shadow:before,.hover_in_shadow:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0}.hover_in_shadow:before{z-index:-1;box-shadow:var(--shadow-outer);background-color:#0000;transition:box-shadow .3s,background-color .3s}.hover_in_shadow:after{z-index:2;box-shadow:var(--shadow-inner);opacity:0;transition:opacity .3s,box-shadow .15s}:is(.hover_in_shadow:hover,.hover_in_shadow:focus-visible,.hover_in_shadow[aria-expanded=true],.hover_in_shadow[aria-pressed=true]):before{box-shadow:var(--shadow-outer-none);background-color:color-mix(in srgb, var(--color-context), black var(--pressed-shade))}:is(.hover_in_shadow:hover,.hover_in_shadow:focus-visible,.hover_in_shadow[aria-expanded=true],.hover_in_shadow[aria-pressed=true]):after{opacity:1}.hover_in_shadow:active:after{box-shadow:var(--shadow-inner-active)}.container{width:100%;max-width:calc(var(--container-max) + 2 * var(--gutter));padding-inline:var(--gutter);margin:0 auto}.visually_hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hero_title{font-size:var(--fs-hero);letter-spacing:-.02em;line-height:.95}.page_title{font-size:var(--fs-h1);letter-spacing:-.02em;line-height:.95}.section_title{font-size:var(--fs-h2);letter-spacing:-.015em;line-height:1}.section_title_small{font-size:var(--fs-h2-small);letter-spacing:-.01em;line-height:1.05}.statement{font-family:var(--font-serif);font-size:var(--fs-statement);font-weight:var(--fw-regular);letter-spacing:-.01em;line-height:1.18}.label{color:var(--color-accent);font-family:var(--font-body);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.01em;align-self:flex-start;align-items:center;gap:.5rem;line-height:1.3;display:inline-flex}.label:before{content:"";background-color:currentColor;border-radius:50%;flex-shrink:0;width:.4375rem;height:.4375rem}.mono{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--fs-mono);letter-spacing:.06em;text-transform:uppercase}.lead{max-width:30rem;color:var(--color-text-soft);font-size:var(--fs-lead);line-height:1.6}.text_link{font-size:var(--fs-small);text-underline-offset:.25em;align-self:flex-start;text-decoration:underline;text-decoration-thickness:1px;transition:color .2s}.text_link:after{content:" →";transition:transform .3s var(--ease-out);display:inline-block}.text_link:hover{color:var(--color-accent)}.text_link:hover:after{transform:translate(.25rem)}.photo{background-color:var(--color-photo);object-fit:cover;filter:var(--photo-grade)}
