@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;700&display=swap";
@font-face{font-family:"Caslon 540";src:url(/fonts/Caslon540.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--brand-purple-500:#321058;--brand-purple-600:#4d1f80;--brand-purple-300:#9180b8;--brand-cream-500:#f0e6cf;--brand-walnut-900:#3d2817;--brand-walnut-700:#6b5640;--brand-walnut-500:#8a7560;--brand-walnut-400:#a89580;--brand-sand-500:#c8b896;--brand-sand-300:#dccdb0;--neutral-white:#fff;--semantic-success-500:#2d6149;--semantic-success-700:#1f4733;--semantic-success-50:#dceee6;--semantic-warning-500:#9d6b1c;--semantic-warning-700:#7a5114;--semantic-warning-50:#f3e8d2;--semantic-danger-500:#7b1f25;--semantic-danger-700:#5e161b;--semantic-danger-50:#f0d8d8;--semantic-info-500:#321058;--semantic-info-50:#ece7f3;--bg-page:var(--brand-cream-500);--bg-card:var(--neutral-white);--bg-elevated:var(--brand-cream-500);--fg-1:var(--brand-walnut-900);--fg-2:var(--brand-walnut-700);--fg-3:var(--brand-walnut-500);--fg-disabled:var(--brand-walnut-400);--fg-on-purple:var(--neutral-white);--border-default:var(--brand-sand-500);--border-soft:var(--brand-sand-300);--link:var(--brand-purple-500);--link-hover:var(--brand-purple-600);--focus-ring:var(--brand-purple-500);--font-display:"Caslon 540", "Libre Caslon Display", Georgia, serif;--font-sans:"Inter", "SF Pro Display", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", ui-monospace, monospace;--display-xl-size:72px;--display-xl-lh:1.05;--display-xl-tracking:-.02em;--display-lg-size:56px;--display-lg-lh:1.05;--display-lg-tracking:-.02em;--h1-size:48px;--h1-lh:1.1;--h1-tracking:-.02em;--h2-size:36px;--h2-lh:1.15;--h2-tracking:-.015em;--h3-size:24px;--h3-lh:1.25;--h3-tracking:-.01em;--h4-size:20px;--h4-lh:1.3;--h4-tracking:-.005em;--h5-size:14px;--h5-lh:1.3;--h5-tracking:.08em;--h6-size:13px;--h6-lh:1.3;--h6-tracking:0;--body-lg-size:18px;--body-lg-lh:1.65;--body-md-size:15px;--body-md-lh:1.55;--body-sm-size:13px;--body-sm-lh:1.5;--caption-size:12px;--caption-lh:1.4;--caption-tracking:.01em;--code-md-size:13px;--code-md-lh:1.5;--radius-sm:2px;--radius-md:4px;--radius-lg:8px;--radius-pill:999px;--shadow-sm:0 1px 2px #3d28170f;--shadow-md:0 4px 12px #3d281714, 0 1px 3px #3d28170d;--shadow-lg:0 16px 40px #3d28171f, 0 4px 12px #3d28170f;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--measure-prose:65ch;--grain:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='g'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.18 0 0 0 0 0.11 0 0 0 0 0.06 0.5 0.5 0.5 0 -0.4'/></filter><rect width='240' height='240' filter='url(%23g)' opacity='0.35'/></svg>")}.t-display-xl,.display-xl{font-family:var(--font-display);font-weight:400;font-size:var(--display-xl-size);line-height:var(--display-xl-lh);letter-spacing:var(--display-xl-tracking);color:var(--fg-1)}.t-display-lg,.display-lg{font-family:var(--font-display);font-weight:400;font-size:var(--display-lg-size);line-height:var(--display-lg-lh);letter-spacing:var(--display-lg-tracking);color:var(--fg-1)}.t-h1,h1{font-family:var(--font-display);font-weight:400;font-size:var(--h1-size);line-height:var(--h1-lh);letter-spacing:var(--h1-tracking);color:var(--fg-1);margin:0}.t-h2,h2{font-family:var(--font-display);font-weight:400;font-size:var(--h2-size);line-height:var(--h2-lh);letter-spacing:var(--h2-tracking);color:var(--fg-1);margin:0}.t-h3,h3{font-family:var(--font-sans);font-weight:600;font-size:var(--h3-size);line-height:var(--h3-lh);letter-spacing:var(--h3-tracking);color:var(--fg-1);margin:0}.t-h4,h4{font-family:var(--font-sans);font-weight:600;font-size:var(--h4-size);line-height:var(--h4-lh);letter-spacing:var(--h4-tracking);color:var(--fg-1);margin:0}.t-eyebrow,.t-h5{font-family:var(--font-sans);font-weight:600;font-size:var(--h5-size);line-height:var(--h5-lh);letter-spacing:var(--h5-tracking);text-transform:uppercase;color:var(--fg-2)}.t-h6{font-family:var(--font-sans);font-weight:600;font-size:var(--h6-size);line-height:var(--h6-lh);color:var(--fg-1)}.t-body-lg{font-family:var(--font-sans);font-weight:400;font-size:var(--body-lg-size);line-height:var(--body-lg-lh);color:var(--fg-1)}.t-body-md,body{font-family:var(--font-sans);font-weight:400;font-size:var(--body-md-size);line-height:var(--body-md-lh);color:var(--fg-1)}.t-body-sm{font-family:var(--font-sans);font-weight:400;font-size:var(--body-sm-size);line-height:var(--body-sm-lh);color:var(--fg-2)}.t-caption{font-family:var(--font-sans);font-weight:500;font-size:var(--caption-size);line-height:var(--caption-lh);letter-spacing:var(--caption-tracking);color:var(--fg-3)}.t-code,code,kbd,samp{font-family:var(--font-mono);font-weight:400;font-size:var(--code-md-size);line-height:var(--code-md-lh)}.citorum-wordmark{font-family:var(--font-display);font-weight:400;font-size:var(--display-lg-size);line-height:var(--display-lg-lh);letter-spacing:var(--display-lg-tracking);color:var(--brand-purple-500)}.surface-grain{background-color:var(--brand-cream-500);position:relative}.surface-grain:after{content:"";background-image:var(--grain);pointer-events:none;mix-blend-mode:multiply;background-repeat:repeat;position:absolute;inset:0}.measure-prose{max-width:var(--measure-prose)}
*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}img,svg,video,canvas,iframe{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}ul,ol{margin:0;padding:0}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6,p{margin:0}
html,body{background:var(--bg-page);color:var(--fg-1);font-family:var(--font-sans);font-size:var(--body-md-size);line-height:var(--body-md-lh)}body{flex-direction:column;min-height:100vh;display:flex}body>main{flex:1}a{color:var(--link);text-decoration:none}a:hover{color:var(--link-hover);text-decoration:underline}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}::selection{background:var(--brand-purple-500);color:var(--neutral-white)}
