@import"https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=JetBrains+Mono:wght@400;500&display=swap";.ridge-bg[data-astro-cid-4pc6zxmi]{position:fixed;inset:0;z-index:0;pointer-events:none;background:url(/ridge-bg.svg) no-repeat center bottom / 100% auto,linear-gradient(to bottom,#d8ccc0,#d0c4b8,#c8b8a8,#c0b0a0,#b8a898)}:root{--bg-primary: #C8B8A8;--bg-secondary: #BEB0A0;--bg-card: #EDE8E0;--bg-elevated: #FDFCFA;--text-primary: #2E2A26;--text-secondary: #4A4540;--text-muted: #7A7368;--border: #A89888;--border-light: #C8BBA8;--accent: #5A7B7B;--accent-muted: rgba(90, 123, 123, .15);--green: #6B8B6B;--yellow: #C4A86A;--red: #A87070;--purple: #7A6B8A;--creek: #5A7B7B;--ridge: #8B7B9B;--mist: #A8A0B0;--wood: #8A7A68;--gold: #9A7B35;--gold-light: #C4A86A;--font-serif: "EB Garamond", Garamond, "Times New Roman", serif;--font-mono: "JetBrains Mono", monospace;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 2rem;--space-xl: 4rem;--space-2xl: 8rem}*{box-sizing:border-box;margin:0;padding:0}html{font-size:18px;scroll-behavior:smooth}body{font-family:var(--font-serif);font-weight:400;background:transparent;color:var(--text-primary);line-height:1.7;min-height:100vh;font-feature-settings:"liga" 1,"kern" 1;font-variant-numeric:oldstyle-nums proportional-nums}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:500;line-height:1.3;color:var(--text-primary)}h1{font-size:2.6rem;letter-spacing:.05em;font-variant-caps:small-caps;margin-bottom:var(--space-lg)}h2{font-size:1.5rem;font-style:italic;color:var(--text-secondary);margin-top:var(--space-xl);margin-bottom:var(--space-md);position:relative}h2:after{content:"";position:absolute;bottom:-.4rem;left:.15em;width:3rem;height:1px;background:linear-gradient(to right,var(--border) 0%,var(--border) 60%,transparent 100%);transform:skew(-15deg)}h3{font-size:1.15rem;font-variant:small-caps;text-transform:lowercase;letter-spacing:.08em;color:var(--text-secondary);margin-top:var(--space-lg);margin-bottom:var(--space-sm)}p{margin-bottom:var(--space-lg);text-indent:0}h1+p,h2+p,h3+p{margin-top:var(--space-md)}p+p{text-indent:1.5em;margin-top:calc(-1 * var(--space-sm))}.lead,section>p:first-of-type{font-size:1.1rem;line-height:1.8;color:var(--text-secondary)}em,i,.italic{letter-spacing:.01em}.text-small em,.text-small i,small em,small i,figcaption{letter-spacing:.015em;color:var(--text-secondary)}section{margin-bottom:var(--space-2xl)}section:last-child{margin-bottom:0}hr,.divider{border:none;height:1px;background:transparent;margin:var(--space-xl) 0;position:relative}hr:before,.divider:before{content:"";position:absolute;left:50%;top:0;transform:translate(-50%);width:4rem;height:1px;background:var(--border);clip-path:polygon(0 0,45% 0,50% 100%,55% 0,100% 0)}a{color:var(--accent);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease}a:hover{border-bottom-color:var(--accent)}code{font-family:var(--font-mono);font-size:.85em;background:var(--bg-secondary);padding:.1em .3em;border-radius:2px}pre{font-family:var(--font-mono);font-size:.85rem;background:var(--bg-secondary);padding:var(--space-md);border-radius:2px;overflow-x:auto;border:1px solid var(--border-light)}blockquote{border-left:none;padding:var(--space-lg) var(--space-xl);margin:var(--space-xl) calc(-1 * var(--space-md));font-style:italic;font-size:1.15rem;line-height:1.9;color:var(--text-secondary);position:relative;background:linear-gradient(to right,rgba(154,123,53,.04) 0%,transparent 100%)}blockquote:before{content:'"';position:absolute;left:.5rem;top:.5rem;font-size:3rem;line-height:1;color:var(--gold);opacity:.25;font-family:var(--font-serif)}em{font-style:italic;color:var(--text-primary)}strong{font-weight:600;letter-spacing:.01em}small,.text-small{font-size:.85rem;color:var(--text-muted)}figcaption{font-size:.85rem;font-style:italic;color:var(--text-muted);margin-top:var(--space-sm);text-align:center}ul,ol{margin:var(--space-md) 0 var(--space-lg) var(--space-lg)}li{margin-bottom:var(--space-sm);line-height:1.7}li::marker{color:var(--text-muted)}.container{position:relative;z-index:2;max-width:95ch;margin:0 auto;padding:1.8rem 3.6rem;background:var(--bg-card);min-height:100vh;box-shadow:0 0 60px #2e2a2614}.container-wide{max-width:90ch;margin:0 auto;padding:var(--space-lg)}.font-mono{font-family:var(--font-mono)}.text-muted{color:var(--text-muted)}.text-small{font-size:.85rem}.italic{font-style:italic}.small-caps{font-variant:small-caps;text-transform:lowercase;letter-spacing:.08em}.laboratory{--mode-bg: var(--bg-card);--mode-accent: var(--accent)}.laboratory .drop-cap{display:none}.illuminated{--mode-bg: var(--bg-elevated);--mode-accent: var(--gold)}.illuminated h1,.illuminated h2{color:var(--text-primary)}.drop-cap{float:left;font-size:3.5rem;line-height:1;padding-right:.1em;color:var(--text-primary);font-weight:400}.drop-cap-frame{display:inline-block;border:2px solid var(--gold);padding:.2em .3em;margin-right:.2em;background:var(--bg-elevated)}nav{display:flex;gap:var(--space-lg);padding:var(--space-md) 0;border-bottom:1px solid var(--border-light);margin-bottom:var(--space-md)}nav a{font-variant:small-caps;text-transform:lowercase;letter-spacing:.06em;color:var(--text-secondary);border-bottom:none}nav a:hover,nav a.active{color:var(--text-primary)}.card{background:var(--bg-elevated);border:1px solid var(--border-light);padding:var(--space-lg);border-radius:2px;box-shadow:2px 3px 8px #2e2a2614}.tag{font-family:var(--font-mono);font-size:.75rem;background:var(--bg-secondary);padding:.2em .5em;border-radius:2px;color:var(--text-muted)}footer{margin-top:var(--space-2xl);padding:var(--space-lg) 0;border-top:1px solid var(--border-light);color:var(--text-muted);font-size:.85rem}@media (max-width: 768px){html{font-size:17px}.container{padding:1.2rem 1.25rem}h1{font-size:2rem}h2{font-size:1.3rem;margin-top:var(--space-lg)}nav{justify-content:space-evenly;gap:var(--space-sm)}blockquote{padding:var(--space-md) var(--space-lg);margin-left:0;margin-right:0}section{margin-bottom:var(--space-xl)}}@media (max-width: 480px){html{font-size:16px}.container{padding:1rem}h1{font-size:1.75rem}nav{justify-content:space-evenly;gap:var(--space-xs)}}
