@font-face{font-family:NeueHaasDisplay;src:url(/fonts/NeueHaasDisplayRoman.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:NeueHaasDisplay;src:url(/fonts/NeueHaasDisplayMediu.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:NeueHaasDisplay;src:url(/fonts/NeueHaasDisplayBold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:TimesNow;src:url(/fonts/TimesNow-Light.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}:root{--font-serif:"TimesNow","Times New Roman",Georgia,serif;--font-sans:"NeueHaasDisplay","Helvetica Neue",Helvetica,Arial,sans-serif;--bg:oklch(0.965 0 0);--card:oklch(1 0 0);--text:oklch(0.145 0 0);--text-muted:oklch(0.5 0 0);--border:oklch(0.93 0 0);--radius:1rem;--radius-sm:0.5rem;--radius-md:0.75rem;--radius-xl:1.5rem;--shadow-card:0 1px 3px oklch(0 0 0/0.04),0 4px 12px oklch(0 0 0/0.03);--shadow-card-hover:0 2px 8px oklch(0 0 0/0.08),0 8px 24px oklch(0 0 0/0.06)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;touch-action:pan-y}body{background:var(--bg);color:var(--text);font-size:1rem;line-height:1.6;width:100vw;overflow-x:hidden}body,h1,h2,h3{font-family:var(--font-sans)}h1,h2,h3{font-weight:700;line-height:1.2}a{color:inherit;text-decoration:none}.page-shell{max-width:1024px;margin:0 auto;padding:1.25rem}@media (min-width:640px){.page-shell{padding:2rem}}.card{width:100%;overflow:hidden;background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-card);transition:box-shadow .2s ease}.card:hover{box-shadow:var(--shadow-card-hover)}.label{text-transform:uppercase;letter-spacing:.12em;font-family:var(--font-sans)}.badge,.label{font-size:.65rem;color:var(--text-muted)}.badge{padding:.2rem .6rem;border-radius:9999px;background:var(--bg)}.btn-primary{background:var(--text);color:var(--card);border:none;border-radius:9999px;padding:.625rem 1.25rem;font-family:var(--font-sans);font-size:.9rem;cursor:pointer}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-secondary{background:transparent;color:var(--text-muted);border:none;border-radius:9999px;padding:.625rem 1.25rem;font-family:var(--font-sans);font-size:.9rem;cursor:pointer}hr{border:none;border-top:1px solid var(--border);margin:1.5rem 0}