@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/inter-normal-400.Dx4kXJAl.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_astro/inter-normal-400.Dx4kXJAl.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_astro/inter-normal-400.Dx4kXJAl.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_astro/inter-normal-400.Dx4kXJAl.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/fraunces-normal-400.DihXLNYH.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(/_astro/fraunces-normal-400.DihXLNYH.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(/_astro/fraunces-italic-400.BHpzg9ad.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/ibm-plex-mono-normal-400.DMJ8VG8y.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_astro/ibm-plex-mono-normal-500.DSY6xOcd.woff2) format("woff2")}:root{--bg: #ffffff;--black: #090909;--ink: #111111;--on-dark: #f4f2ee;--muted: #77736d;--muted-dark: #a6a29a;--line: rgba(17, 17, 17, .14);--line-strong: rgba(17, 17, 17, .28);--line-dark: rgba(244, 242, 238, .16);--line-dark-strong: rgba(244, 242, 238, .32);--accent: #7a2e33;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-serif: "Fraunces", Georgia, "Times New Roman", serif;--font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", monospace;--container: 1440px;--gutter: clamp(1.25rem, 5vw, 6rem);--section-y: clamp(5rem, 12vw, 11rem);--ease: cubic-bezier(.16, 1, .3, 1);--dur: .9s;--header-h: 76px}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:var(--header-h)}body{font-family:var(--font-sans);background:var(--bg);color:var(--ink);font-size:clamp(1rem,.96rem + .2vw,1.125rem);line-height:1.6;font-weight:400;letter-spacing:-.006em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:none;border:none}ul,ol{list-style:none;padding:0}h1,h2,h3,h4{font-weight:600;line-height:1.02;letter-spacing:-.03em;text-wrap:balance}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:var(--section-y)}.section--tight{padding-block:clamp(3.5rem,8vw,7rem)}.surface-dark{background:var(--black);color:var(--on-dark)}.surface-dark .muted{color:var(--muted-dark)}.muted{color:var(--muted)}.accent{color:var(--accent)}.label{font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}.surface-dark .label{color:var(--muted-dark)}.display{font-size:clamp(2.75rem,9.5vw,9rem);line-height:.94;letter-spacing:-.045em;font-weight:600}.h-xl{font-size:clamp(2rem,5.2vw,4.25rem);line-height:1;letter-spacing:-.035em}.h-lg{font-size:clamp(1.6rem,3.4vw,2.75rem);line-height:1.04;letter-spacing:-.03em}.h-md{font-size:clamp(1.3rem,2.2vw,1.9rem);line-height:1.1;letter-spacing:-.02em}.serif{font-family:var(--font-serif);font-weight:400;letter-spacing:-.02em;font-optical-sizing:auto}.lead{font-size:clamp(1.1rem,.9rem + .8vw,1.5rem);line-height:1.5;color:var(--muted);letter-spacing:-.01em}.eyebrow{display:inline-flex;align-items:center;gap:.6rem}.eyebrow:before{content:"";width:1.75rem;height:1px;background:currentColor;opacity:.5}.btn{display:inline-flex;align-items:center;gap:.65rem;padding:1rem 1.7rem;font-size:.9rem;font-weight:500;letter-spacing:.01em;border:1px solid var(--ink);background:var(--ink);color:var(--bg);transition:background .4s var(--ease),color .4s var(--ease),transform .4s var(--ease)}.btn .arrow{transition:transform .4s var(--ease)}.btn:hover{background:transparent;color:var(--ink)}.btn:hover .arrow{transform:translate(4px)}.surface-dark .btn{border-color:var(--on-dark);background:var(--on-dark);color:var(--black)}.surface-dark .btn:hover{background:transparent;color:var(--on-dark)}.btn--ghost{background:transparent;color:var(--ink);border-color:var(--line-strong)}.btn--ghost:hover{background:var(--ink);color:var(--bg)}.surface-dark .btn--ghost{background:transparent;color:var(--on-dark);border-color:var(--line-dark-strong)}.surface-dark .btn--ghost:hover{background:var(--on-dark);color:var(--black)}.link-underline{display:inline-flex;align-items:center;gap:.5rem;font-weight:500;font-size:.95rem;padding-bottom:2px;background-image:linear-gradient(currentColor,currentColor);background-size:0% 1px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .45s var(--ease)}.link-underline .arrow{transition:transform .4s var(--ease)}.link-underline:hover{background-size:100% 1px}.link-underline:hover .arrow{transform:translate(4px)}.rule{height:1px;background:var(--line);border:0}.surface-dark .rule{background:var(--line-dark)}:where(a,button,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:1px}.reveal{opacity:0;transform:translateY(24px);transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease);transition-delay:var(--reveal-delay, 0ms);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:none}.reveal-line{display:block;overflow:hidden}.reveal-line>span{display:block;transform:translateY(105%);transition:transform 1s var(--ease);transition-delay:var(--reveal-delay, 0ms)}.reveal-line.is-visible>span{transform:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:1rem;top:-100%;z-index:200;background:var(--ink);color:var(--bg);padding:.75rem 1.25rem;font-size:.85rem;transition:top .3s var(--ease)}.skip-link:focus{top:1rem}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.reveal,.reveal-line>span{opacity:1;transform:none}}
