@import"https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght,SOFT@0,9..144,300..900,0..100;1,9..144,300..900,0..100&family=Instrument+Sans:ital,wght@0,400..700;1,400..700&family=JetBrains+Mono:wght@400..600&display=swap";:root{--paper: #EFEAE2;--paper-2: #E8E2D8;--stone: #D6CFC2;--ink: #1B1612;--ink-soft: #2A241E;--umber: #3E2F23;--ochre: #A67B45;--bg-base: var(--paper);--bg-shadow: var(--paper-2);--bg-elevated: #FFFFFF;--bg-card: var(--paper-2);--text-primary: var(--ink);--text-secondary: var(--ink-soft);--text-tertiary: var(--umber);--text-inverse: var(--paper);--accent: var(--ochre);--accent-deep: var(--umber);--accent-glow: rgba(166, 123, 69, .18);--rule: rgba(27, 22, 18, .18);--rule-soft: rgba(27, 22, 18, .08);--border-subtle: var(--rule-soft);--border-prominent: var(--rule);--media-border: var(--rule-soft);--media-shadow: rgba(27, 22, 18, .08);--backdrop: rgba(239, 234, 226, .78);--grain: rgba(27, 22, 18, .04);--hero-gradient: radial-gradient(120% 80% at 78% 28%, rgba(166, 123, 69, .28) 0%, transparent 60%), radial-gradient(80% 60% at 18% 82%, rgba(62, 47, 35, .22) 0%, transparent 55%), linear-gradient(180deg, #E8E1D2 0%, #D6C9B4 100%);--section-gradient: linear-gradient(180deg, transparent 0%, rgba(27, 22, 18, .04) 100%);--font-display: "Fraunces", "Cormorant Garamond", Georgia, "Times New Roman", serif;--font-body: "Instrument Sans", -apple-system, "Segoe UI", "Helvetica Neue", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Cascadia Code", Consolas, monospace;--fs-xs: .7rem;--fs-sm: .85rem;--fs-base: 1rem;--fs-md: 1.15rem;--fs-lg: 1.55rem;--fs-xl: 2rem;--fs-2xl: clamp(1.85rem, 3.3vw, 3rem);--fs-3xl: clamp(2.2rem, 4.5vw, 4rem);--fs-hero: clamp(3.2rem, 9.2vw, 9.4rem);--fs-section: clamp(1.55rem, 2.8vw, 2.4rem);--fs-section-num: clamp(2.6rem, 5vw, 4.5rem);--lh-tight: .92;--lh-snug: 1.05;--lh-comfy: 1.18;--lh-body: 1.55;--lh-loose: 1.7;--ls-tight: -.022em;--ls-snug: -.012em;--ls-normal: 0;--ls-wide: .16em;--ls-wider: .18em;--ls-widest: .22em;--fw-light: 300;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fraunces-opsz-display: 144;--fraunces-opsz-text: 14;--fraunces-soft: 20;--fraunces-soft-italic: 30;--fraunces-wonk: 0;--space-px: 1px;--space-0-5: .25rem;--space-1: .5rem;--space-2: 1rem;--space-3: 1.5rem;--space-4: 2rem;--space-5: 2.5rem;--space-6: 3rem;--space-8: 4rem;--space-10: 5rem;--space-12: 6rem;--space-16: 8rem;--space-20: 10rem;--section-y: clamp(4rem, 8vw, 7rem);--section-y-tight: clamp(2.5rem, 5vw, 5rem);--max-content: 1680px;--max-prose: 65ch;--max-narrow: 880px;--gutter: clamp(1.25rem, 4vw, 4.25rem);--pad-x: var(--gutter);--max-w: var(--max-content);--ease-out: cubic-bezier(.2, .7, .2, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-snappy: cubic-bezier(.4, 0, .2, 1);--dur-fast: .14s;--dur-base: .35s;--dur-slow: .6s;--dur-reveal: 1.1s;--dur-stagger-step: .2s;--shadow-sm: 0 2px 6px rgba(27, 22, 18, .05);--shadow-md: 0 8px 24px rgba(27, 22, 18, .08);--shadow-lg: 0 25px 60px rgba(27, 22, 18, .18);--shadow-soft: 0 8px 30px rgba(27, 22, 18, .04);--radius-xs: 2px;--radius-sm: 4px;--radius-md: 10px;--radius-lg: 16px;--radius-card: 12px;--radius-pill: 999px;--z-base: 0;--z-elevated: 10;--z-sticky: 50;--z-overlay: 60;--z-modal: 70;--z-toast: 90}[data-theme=dark]{--paper: #1B1612;--paper-2: #2A241E;--stone: #3E2F23;--bg-base: var(--paper);--bg-shadow: var(--paper-2);--bg-elevated: var(--paper-2);--bg-card: var(--paper-2);--text-primary: #EFEAE2;--text-secondary: rgba(239, 234, 226, .78);--text-tertiary: rgba(239, 234, 226, .5);--text-inverse: var(--ink);--accent: #C49563;--accent-deep: var(--ochre);--accent-glow: rgba(196, 149, 99, .16);--rule: rgba(239, 234, 226, .18);--rule-soft: rgba(239, 234, 226, .08);--border-subtle: var(--rule-soft);--border-prominent: var(--rule);--media-border: var(--rule-soft);--media-shadow: rgba(0, 0, 0, .45);--backdrop: rgba(27, 22, 18, .78);--grain: rgba(239, 234, 226, .06);--hero-gradient: radial-gradient(120% 80% at 78% 28%, rgba(196, 149, 99, .18) 0%, transparent 60%), radial-gradient(80% 60% at 18% 82%, rgba(62, 47, 35, .32) 0%, transparent 55%), linear-gradient(180deg, #1B1612 0%, #2A241E 100%);--section-gradient: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, .4) 100%);--shadow-sm: 0 2px 6px rgba(0, 0, 0, .32);--shadow-md: 0 8px 24px rgba(0, 0, 0, .42);--shadow-lg: 0 25px 60px rgba(0, 0, 0, .55);--shadow-soft: 0 8px 30px rgba(0, 0, 0, .18)}@media(prefers-reduced-motion:reduce){:root{--dur-fast: 0ms;--dur-base: 0ms;--dur-slow: 0ms;--dur-reveal: 0ms;--dur-stagger-step: 0ms}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}html,body{min-height:100%}body{background:var(--bg-base);color:var(--text-primary);font-family:var(--font-body);font-size:var(--fs-base);line-height:var(--lh-body);overflow-x:hidden;transition:background-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out)}img,picture,svg,video{max-width:100%;height:auto;display:block}button,input,textarea,select{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer;padding:0}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-xs)}::selection{background:var(--ink);color:var(--paper)}ul{list-style:none}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--fw-regular);line-height:var(--lh-tight);color:var(--text-primary);font-variation-settings:"opsz" var(--fraunces-opsz-display),"SOFT" var(--fraunces-soft)}h1{font-size:var(--fs-hero);letter-spacing:var(--ls-tight)}h2{font-size:var(--fs-2xl);letter-spacing:var(--ls-tight);line-height:var(--lh-snug)}h3{font-size:var(--fs-xl);line-height:var(--lh-comfy)}h4{font-size:var(--fs-lg);line-height:var(--lh-comfy)}h1 em,h2 em,h3 em,h4 em{font-style:normal;font-variation-settings:"opsz" var(--fraunces-opsz-display),"SOFT" var(--fraunces-soft);color:var(--ochre);font-weight:var(--fw-medium)}p{line-height:var(--lh-body);max-width:var(--max-prose)}p+p{margin-top:var(--space-2)}small{font-size:var(--fs-sm);color:var(--text-secondary)}.label,.kicker{font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:500;letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--text-secondary);display:inline-block}.eyebrow{font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:500;letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--text-primary);display:inline-block;padding-bottom:.45rem;border-bottom:1px solid var(--text-primary)}.lead{font-family:var(--font-body);font-size:var(--fs-md);font-style:normal;font-weight:var(--fw-regular);line-height:1.55;color:var(--text-primary);max-width:38em}.meta{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--text-secondary)}.section-num{font-family:var(--font-mono);font-style:normal;font-weight:500;font-size:var(--fs-sm);letter-spacing:var(--ls-wider);text-transform:uppercase;line-height:1;color:var(--ochre);padding-top:.4rem}.section-header{display:grid;grid-template-columns:auto 1fr;gap:var(--space-6);padding:var(--section-y) 0 var(--space-6);align-items:end;border-bottom:1px solid var(--rule);margin-bottom:var(--space-8)}.section-title-block{display:flex;flex-direction:column;gap:var(--space-1)}.section-title{font-family:var(--font-display);font-size:var(--fs-section);line-height:1.12;letter-spacing:var(--ls-snug);font-variation-settings:"opsz" 60,"SOFT" var(--fraunces-soft);max-width:38ch;font-weight:var(--fw-regular)}.section-title em{font-style:normal;color:var(--ochre);font-variation-settings:"opsz" 60,"SOFT" var(--fraunces-soft);font-weight:var(--fw-medium)}.section-meta{display:flex;gap:var(--space-3);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--text-secondary);flex-wrap:wrap}.container{width:100%;max-width:var(--max-content);margin-inline:auto;padding-inline:var(--gutter)}.container-narrow{width:100%;max-width:var(--max-narrow);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:var(--section-y)}.section-tight{padding-block:var(--section-y-tight)}.divider{border:0;border-top:1px solid var(--rule);margin:0}.media-soft{border:1px solid var(--media-border);box-shadow:var(--shadow-md);border-radius:var(--radius-sm);overflow:hidden;background:var(--stone);transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.media-bare{border:0;box-shadow:none;border-radius:0;background:var(--stone);overflow:hidden}.media-soft img,.media-bare img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-out)}.media-soft:hover img,.media-bare:hover img{transform:scale(1.04)}.btn{display:inline-flex;align-items:center;gap:var(--space-1);padding:.75rem var(--space-3);font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:500;letter-spacing:var(--ls-wider);text-transform:uppercase;border:1px solid var(--rule);background:transparent;color:var(--text-primary);border-radius:var(--radius-pill);transition:background-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.btn:hover{background:var(--text-primary);color:var(--text-inverse);border-color:var(--text-primary);transform:translateY(-1px)}.btn-primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}.btn-primary:hover{background:var(--accent-deep);border-color:var(--accent-deep);color:var(--paper)}.link-arrow{display:inline-flex;align-items:center;gap:.75rem;font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:500;letter-spacing:var(--ls-wider);text-transform:uppercase;border-bottom:1px solid var(--text-primary);padding-bottom:.4rem;transition:gap .4s var(--ease-out)}.link-arrow:after{content:"→"}.link-arrow:hover{gap:1.3rem}.link-underline{position:relative;display:inline-block}.link-underline:after{content:"";position:absolute;left:0;right:100%;bottom:-2px;height:1px;background:var(--text-primary);transition:right .45s var(--ease-out)}.link-underline:hover:after{right:0}@keyframes rise{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.rise{opacity:0;animation:rise var(--dur-reveal) var(--ease-out) forwards}.rise-delay-1{animation-delay:calc(var(--dur-stagger-step) * 1)}.rise-delay-2{animation-delay:calc(var(--dur-stagger-step) * 2)}.rise-delay-3{animation-delay:calc(var(--dur-stagger-step) * 3)}[data-reveal]{transition:opacity var(--dur-reveal) var(--ease-out),transform var(--dur-reveal) var(--ease-out)}html[data-js-reveal-active] [data-reveal]{opacity:0;transform:translateY(32px)}html[data-js-reveal-active] [data-reveal].is-visible{opacity:1;transform:translateY(0)}[data-reveal][data-reveal-delay="1"]{transition-delay:calc(var(--dur-stagger-step) * 1)}[data-reveal][data-reveal-delay="2"]{transition-delay:calc(var(--dur-stagger-step) * 2)}[data-reveal][data-reveal-delay="3"]{transition-delay:calc(var(--dur-stagger-step) * 3)}.grain-overlay{position:relative;isolation:isolate}.grain-overlay:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.1  0 0 0 0 0.08  0 0 0 0 0.06  0 0 0 0.42 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");opacity:.55;mix-blend-mode:multiply;pointer-events:none;z-index:1}[data-theme=dark] .grain-overlay:after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.95  0 0 0 0 0.91  0 0 0 0 0.85  0 0 0 0.06 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");mix-blend-mode:normal;opacity:.4}.dropcap{float:left;font-family:var(--font-display);font-style:normal;font-variation-settings:"opsz" 144,"SOFT" var(--fraunces-soft),"wght" 400;font-size:4.2em;line-height:.92;padding-right:.12em;margin-top:.08em;color:var(--ochre)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:0;left:50%;transform:translate(-50%,-120%);padding:var(--space-1) var(--space-2);background:var(--bg-elevated);color:var(--text-primary);font-size:var(--fs-sm);border:1px solid var(--border-prominent);z-index:var(--z-toast);transition:transform var(--dur-base) var(--ease-out)}.skip-link:focus{transform:translate(-50%,1rem)}.lang-toggle[data-astro-cid-bvxdwma5]{display:inline-flex;align-items:center;border:1px solid var(--rule);border-radius:var(--radius-pill);padding:.22rem .28rem;gap:.15rem}.lang-item[data-astro-cid-bvxdwma5]{background:transparent;border:none;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.18em;color:var(--ink-soft);cursor:pointer;padding:.35rem .7rem;border-radius:var(--radius-pill);text-transform:uppercase;transition:all .35s ease;text-decoration:none;display:inline-block;line-height:1;user-select:none}.lang-item[data-astro-cid-bvxdwma5]:not(.active):hover{color:var(--ink)}.lang-item[data-astro-cid-bvxdwma5].active{background:var(--ink);color:var(--paper);pointer-events:none}.nav[data-astro-cid-5blmo7yk]{position:fixed;top:0;left:0;right:0;z-index:var(--z-sticky);background:transparent;border-bottom:1px solid transparent;transition:background var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out)}.nav[data-astro-cid-5blmo7yk].is-scrolled{background:var(--backdrop);backdrop-filter:blur(16px) saturate(1.05);-webkit-backdrop-filter:blur(16px) saturate(1.05);border-bottom-color:var(--rule-soft)}.nav-inner[data-astro-cid-5blmo7yk]{max-width:var(--max-w);margin:0 auto;padding:1.05rem var(--pad-x);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem}.brand[data-astro-cid-5blmo7yk]{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;font-weight:500;white-space:nowrap;color:var(--ink);text-decoration:none}.brand[data-astro-cid-5blmo7yk] .dot[data-astro-cid-5blmo7yk]{display:inline-block;width:5px;height:5px;background:var(--ochre);border-radius:50%;vertical-align:middle;margin:0 .45em .18em}.nav-links[data-astro-cid-5blmo7yk]{display:flex;gap:2.25rem;justify-content:center}.nav-link[data-astro-cid-5blmo7yk]{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;position:relative;padding:.25rem 0;color:var(--ink);text-decoration:none}.nav-link[data-astro-cid-5blmo7yk]:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease-out)}.nav-link[data-astro-cid-5blmo7yk]:hover:after,.nav-link--active[data-astro-cid-5blmo7yk]:after{transform:scaleX(1)}.nav-meta[data-astro-cid-5blmo7yk]{display:flex;align-items:center;gap:1.4rem;justify-content:flex-end}.contact-pill[data-astro-cid-5blmo7yk]{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);text-decoration:none;position:relative}.contact-pill[data-astro-cid-5blmo7yk]:before{content:"↗";display:inline-block;margin-right:.5em;transition:transform .4s ease}.contact-pill[data-astro-cid-5blmo7yk]:hover:before{transform:translate(2px,-2px)}@media(max-width:900px){.nav-inner[data-astro-cid-5blmo7yk]{grid-template-columns:1fr auto;gap:1rem}.nav-links[data-astro-cid-5blmo7yk]{display:none}}@media(max-width:560px){.nav-meta[data-astro-cid-5blmo7yk]{gap:.85rem}.contact-pill[data-astro-cid-5blmo7yk]{display:none}}.footer[data-astro-cid-sz7xmlte]{background:var(--paper);padding:6rem var(--pad-x) 2.5rem;border-top:1px solid var(--rule)}.footer[data-astro-cid-sz7xmlte] .container[data-astro-cid-sz7xmlte]{padding-inline:0}.footer-top[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:4rem;padding-bottom:4rem;border-bottom:1px solid var(--rule-soft)}.footer-pitch[data-astro-cid-sz7xmlte]{font-family:var(--font-display);font-variation-settings:"opsz" 144,"SOFT" 30,"wght" 320;font-size:var(--fs-2xl);line-height:1.05;letter-spacing:-.018em;max-width:none;color:var(--ink)}.footer-pitch[data-astro-cid-sz7xmlte] em[data-astro-cid-sz7xmlte]{font-style:normal;color:var(--ochre);font-variation-settings:"opsz" 144,"SOFT" 20,"wght" 500}.footer-pitch[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{display:inline-flex;gap:.4rem;align-items:end;border-bottom:1px solid var(--ink);padding-bottom:.2rem;text-decoration:none;color:inherit}.footer-pitch[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:after{content:"↗";font-family:var(--font-mono);font-size:.5em;margin-bottom:.5em;transition:transform .4s ease;font-style:normal}.footer-pitch[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover:after{transform:translate(2px,-2px)}.footer-col[data-astro-cid-sz7xmlte] h4[data-astro-cid-sz7xmlte]{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);font-weight:500;margin-bottom:1.3rem}.footer-col[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte]{list-style:none;display:flex;flex-direction:column;gap:.65rem;padding:0}.footer-col[data-astro-cid-sz7xmlte] li[data-astro-cid-sz7xmlte]{font-family:var(--font-display);font-variation-settings:"opsz" 14,"wght" 380;font-size:1rem;color:var(--ink)}.footer-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{display:inline-block;position:relative;color:var(--ink);text-decoration:none}.footer-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:after{content:"";position:absolute;left:0;bottom:-2px;right:100%;height:1px;background:var(--ink);transition:right .45s var(--ease-out)}.footer-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover:after{right:0}.footer-static[data-astro-cid-sz7xmlte]{color:var(--ink-soft);font-style:normal}.footer-bottom[data-astro-cid-sz7xmlte]{display:flex;justify-content:space-between;gap:2rem;padding-top:2rem;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);flex-wrap:wrap}.footer-bottom[data-astro-cid-sz7xmlte] .colophon[data-astro-cid-sz7xmlte]{font-family:var(--font-body);font-style:normal;text-transform:none;letter-spacing:0;font-size:.82rem;color:var(--ink-soft);font-weight:400}@media(max-width:1100px){.footer-top[data-astro-cid-sz7xmlte]{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2.5rem}}@media(max-width:900px){.footer-top[data-astro-cid-sz7xmlte]{grid-template-columns:1fr 1fr;gap:2.5rem}.footer-pitch[data-astro-cid-sz7xmlte]{grid-column:1 / -1}.footer-bottom[data-astro-cid-sz7xmlte]{flex-direction:column;gap:.75rem}}@media(max-width:560px){.footer-top[data-astro-cid-sz7xmlte]{grid-template-columns:1fr}}
