:root{--color-page:#f6f2f3;--color-surface:#fff;--color-surface-soft:#dbc5ca;--color-text:#270c0f;--color-text-muted:#6b5f62;--color-wine:#79242f;--color-accent:#79242f;--color-accent-hover:#b63a46;--color-border:#dfd5d8;--color-border-strong:#270c0f;--color-focus:#79242f;--color-obsidian:var(--color-page);--color-basalt:var(--color-surface);--color-charcoal:var(--color-border);--color-ivory:var(--color-text);--color-ash:var(--color-text-muted);--color-stone:var(--color-border);--color-sandstone:var(--color-wine);--color-oxidized-red:var(--color-accent-hover);--color-sulfur:var(--color-accent);--color-muted-text:var(--color-text-muted);--font-display:"Lora", "Georgia", "Times New Roman", serif;--font-body:"Inter", system-ui, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SFMono-Regular", "Menlo", "Monaco", "Consolas", "Liberation Mono", monospace;--width-reading:46rem;--width-content:72rem;--width-wide:88rem;--content-max-width:var(--width-content);--content-padding-inline:clamp(1rem, 3vw, 3rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--transition-duration:.175s;--transition-easing:ease;--focus-outline-width:2px;--focus-outline-offset:3px;--focus-outline-color:var(--color-focus)}*,:before,:after{box-sizing:border-box}html{font-family:var(--font-body);background-color:var(--color-page);color:var(--color-text);-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:4.5rem;font-size:100%;line-height:1.65}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{background-color:var(--color-page);min-height:100vh;color:var(--color-text);margin:0}:focus-visible{outline:var(--focus-outline-width) solid var(--focus-outline-color);outline-offset:var(--focus-outline-offset);border-radius:var(--radius-sm)}:focus:not(:focus-visible){outline:none}.skip-link{top:var(--space-2);left:var(--space-2);padding:var(--space-2) var(--space-4);background-color:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);z-index:10000;transition:transform var(--transition-duration) var(--transition-easing);font-size:.875rem;font-weight:600;text-decoration:none;position:absolute;transform:translateY(-200%);box-shadow:0 2px 8px #270c0f26}.skip-link:focus-visible{transform:translateY(0)}a{color:var(--color-wine);text-underline-offset:.2em;transition:color var(--transition-duration) var(--transition-easing), background-color var(--transition-duration) var(--transition-easing), text-decoration-color var(--transition-duration) var(--transition-easing);text-decoration-line:underline;text-decoration-color:#0000}a:hover{color:var(--color-accent-hover);background-color:var(--color-surface-soft);text-decoration-color:currentColor}.prose a:hover,.section-more a:hover,.inline-link:hover{border-radius:2px}.layout-reading,.layout-content,.layout-wide{width:100%;padding-inline:var(--content-padding-inline);margin-inline:auto}.layout-reading{max-width:var(--width-reading)}.layout-content{max-width:var(--width-content)}.layout-wide{max-width:var(--width-wide)}.layout-full{width:100%}.content-wrapper{width:100%;max-width:var(--width-content);padding-inline:var(--content-padding-inline);margin-inline:auto}.site-header{z-index:100;background-color:var(--color-page);border-bottom:1px solid var(--color-border);padding-block:0;position:sticky;top:0}.site-header__inner{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;min-height:3.5rem;display:flex}.site-header__branding{font-family:var(--font-display);color:var(--color-text);letter-spacing:-.01em;padding-block:var(--space-3);font-size:1.0625rem;font-weight:600;text-decoration:none}.site-header__branding:hover{color:var(--color-wine);background-color:#0000}.site-nav__list{flex-wrap:wrap;gap:2px;margin:0;padding:0;list-style:none;display:flex}.site-nav__link{color:var(--color-text);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);transition:color var(--transition-duration) var(--transition-easing), background-color var(--transition-duration) var(--transition-easing);font-size:.875rem;font-weight:500;text-decoration:none;display:block}.site-nav__link:hover{color:var(--color-accent-hover);background-color:var(--color-surface-soft);border-radius:var(--radius-md);text-decoration:none}.site-nav__link[aria-current=page]{color:var(--color-wine);background-color:var(--color-surface-soft);border-radius:var(--radius-md);font-weight:600}.site-main{padding-block:var(--space-16)}.site-main--fluid{padding-block:0}.site-footer{padding-block:var(--space-12);border-top:1px solid var(--color-border);color:var(--color-text-muted);background-color:var(--color-page);font-size:.8125rem}.site-footer__inner{gap:var(--space-6);grid-template-columns:1fr auto;align-items:start;display:grid}@media (width<=600px){.site-footer__inner{grid-template-columns:1fr}}.site-footer__name{font-family:var(--font-display);color:var(--color-text);margin:0 0 var(--space-1);font-size:.9375rem;font-weight:600}.site-footer__tagline{color:var(--color-text-muted);margin:0;font-size:.8125rem}.site-footer__links{gap:var(--space-2);text-align:right;flex-direction:column;display:flex}@media (width<=600px){.site-footer__links{text-align:left;gap:var(--space-4);flex-flow:wrap}}.site-footer__link{color:var(--color-text-muted);font-size:.8125rem;text-decoration:none}.site-footer__link:hover{color:var(--color-accent-hover);background-color:#0000}.site-footer__copy{margin:var(--space-4) 0 0;color:var(--color-text-muted);border-top:1px solid var(--color-border);padding-top:var(--space-4);grid-column:1/-1;font-size:.75rem}.prose{max-width:70ch;color:var(--color-text);font-size:.9375rem;line-height:1.8}.prose h2{font-family:var(--font-display);color:var(--color-text);margin:var(--space-12) 0 var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);font-size:1.125rem;font-weight:600}.prose h2:first-child{margin-top:0}.prose h3{font-family:var(--font-display);color:var(--color-text);margin:var(--space-8) 0 var(--space-2);font-size:1rem;font-weight:600}.prose p{margin:0 0 var(--space-4)}.prose p:last-child{margin-bottom:0}.prose ul,.prose ol{margin:0 0 var(--space-4);padding-left:var(--space-6)}.prose li{margin-bottom:var(--space-1)}.prose strong{color:var(--color-text);font-weight:600}.prose a{color:var(--color-wine)}.page-section{margin-bottom:var(--space-16)}.page-section:last-child{margin-bottom:0}.section-label{font-family:var(--font-mono);color:var(--color-wine);letter-spacing:.1em;text-transform:uppercase;margin:0 0 var(--space-2);font-size:.6875rem}.section-heading{font-family:var(--font-display);color:var(--color-text);margin:0 0 var(--space-8);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border);font-size:1.5rem;font-weight:600}.btn-primary{font-family:var(--font-body);color:#fff;background-color:var(--color-wine);border:1.5px solid var(--color-wine);border-radius:var(--radius-md);padding:var(--space-3) var(--space-6);cursor:pointer;transition:background-color var(--transition-duration) var(--transition-easing), border-color var(--transition-duration) var(--transition-easing), box-shadow var(--transition-duration) var(--transition-easing);font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-block}.btn-primary:hover{background-color:var(--color-accent-hover);border-color:var(--color-accent-hover);color:#fff;text-decoration:none;box-shadow:0 2px 6px #b63a464d}.btn-primary:focus-visible{outline:var(--focus-outline-width) solid var(--color-focus);outline-offset:var(--focus-outline-offset)}.btn-secondary{font-family:var(--font-body);color:var(--color-text);border:1.5px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-6);transition:color var(--transition-duration) var(--transition-easing), border-color var(--transition-duration) var(--transition-easing), background-color var(--transition-duration) var(--transition-easing);background-color:#0000;font-size:.9375rem;font-weight:500;text-decoration:none;display:inline-block}.btn-secondary:hover{color:var(--color-accent-hover);border-color:var(--color-accent-hover);background-color:var(--color-surface-soft);text-decoration:none}
