*,*:before,*:after{box-sizing:border-box}:root{--font-display: "Fraunces", Georgia, serif;--font-sans: "Syne", system-ui, sans-serif}html{scroll-behavior:smooth;color-scheme:dark;--bg-deep: #0c0a12;--bg-mid: #161222;--text: #ffc400;--heading: #ffffff;--muted: #e6ac00;--accent: #ff4d8d;--accent-soft: #7c5cff;--glow: rgba(124, 92, 255, .45);--glow-pink: rgba(255, 77, 141, .22);--glow-floor: rgba(124, 92, 255, .15);--header-btn-bg: rgba(255, 255, 255, .08);--header-btn-border: rgba(255, 255, 255, .14);--header-btn-hover: rgba(255, 255, 255, .14);--footer-border: rgba(255, 255, 255, .06);--noise-opacity: .04;--theme-toggle-bg: rgba(255, 255, 255, .08);--theme-toggle-border: rgba(255, 255, 255, .14);--theme-toggle-hover: rgba(255, 255, 255, .14)}html[data-theme=light]{color-scheme:light;--bg-deep: #f8f6ff;--bg-mid: #efe8ff;--text: #5c4300;--heading: #1a0f24;--muted: #8a6a12;--accent: #d4146e;--accent-soft: #5b3fd4;--glow: rgba(91, 63, 212, .2);--glow-pink: rgba(212, 20, 110, .12);--glow-floor: rgba(91, 63, 212, .08);--header-btn-bg: rgba(20, 15, 31, .06);--header-btn-border: rgba(20, 15, 31, .1);--header-btn-hover: rgba(20, 15, 31, .1);--footer-border: rgba(20, 15, 31, .08);--noise-opacity: .025;--theme-toggle-bg: rgba(20, 15, 31, .06);--theme-toggle-border: rgba(20, 15, 31, .1);--theme-toggle-hover: rgba(20, 15, 31, .1)}body{margin:0;min-height:100dvh;font-family:var(--font-sans);font-weight:500;color:var(--text);background:var(--bg-deep);background-image:radial-gradient(ellipse 120% 80% at 20% -20%,var(--glow),transparent 55%),radial-gradient(ellipse 90% 70% at 100% 40%,var(--glow-pink),transparent 50%),radial-gradient(ellipse 60% 50% at 50% 100%,var(--glow-floor),transparent 45%);overflow-x:hidden;transition:background-color .35s ease,color .25s ease}.noise{pointer-events:none;position:fixed;inset:0;opacity:var(--noise-opacity);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");z-index:0}.site-header{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem clamp(1.25rem,4vw,2.5rem);max-width:72rem;margin:0 auto}.header-actions{display:flex;align-items:center;gap:.65rem;flex-shrink:0}.theme-toggle{position:relative;display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;padding:0;border-radius:999px;border:1px solid var(--theme-toggle-border);background:var(--theme-toggle-bg);color:var(--heading);cursor:pointer;backdrop-filter:blur(10px);transition:background .2s ease,border-color .2s ease,transform .2s ease,color .2s ease}.theme-toggle:hover{background:var(--theme-toggle-hover);transform:translateY(-1px)}.theme-icon{position:absolute;width:20px;height:20px}html:not([data-theme=light]) .theme-icon-moon{display:none}html:not([data-theme=light]) .theme-icon-sun{display:block}html[data-theme=light] .theme-icon-sun{display:none}html[data-theme=light] .theme-icon-moon{display:block}.brand{font-family:var(--font-sans);font-weight:800;font-size:clamp(.85rem,2vw,1rem);letter-spacing:.06em;text-transform:uppercase;color:var(--heading);text-decoration:none;opacity:.92}.brand:hover{color:var(--accent)}main{position:relative;z-index:1;max-width:72rem;margin:0 auto;padding:clamp(2rem,8vw,5rem) clamp(1.25rem,4vw,2.5rem) 3rem}main.page-main{min-height:calc(100dvh - 5rem)}.hero{min-height:calc(100dvh - 8rem);display:flex;flex-direction:column;justify-content:center;padding-bottom:3rem}@media(min-width:768px){.hero{transform:translateY(-4.5rem)}}.eyebrow{margin:0 0 1rem;font-size:.8125rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}.hero-title{margin:0 0 1.5rem;font-family:var(--font-display);font-size:clamp(2.5rem,7vw,4.25rem);font-weight:650;line-height:1.05;letter-spacing:-.02em;font-optical-sizing:auto;color:var(--heading)}.hero-title-accent{font-style:italic;font-weight:500;background:linear-gradient(105deg,var(--heading) 0%,rgba(255,255,255,.88) 45%,var(--accent-soft) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}html[data-theme=light] .hero-title-accent{background:linear-gradient(105deg,var(--heading) 0%,var(--muted) 45%,var(--accent-soft) 100%);-webkit-background-clip:text;background-clip:text}.lede{margin:0 0 2.5rem;max-width:34rem;font-size:clamp(1.05rem,2.2vw,1.2rem);font-weight:500;line-height:1.65;color:var(--muted)}.hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem}.hero-secondary{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;font-size:.9375rem}.dot{color:var(--muted);opacity:.5}.blog-section{margin-top:2rem;padding-top:2.5rem;border-top:1px solid var(--footer-border);max-width:36rem}.blog-section-title{margin:0 0 1.25rem;font-family:var(--font-display);font-size:clamp(1.25rem,3vw,1.5rem);font-weight:650;letter-spacing:-.02em;color:var(--heading)}.blog-section-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.blog-section-item{display:block;padding:.85rem 1rem;border-radius:.65rem;text-decoration:none;color:var(--text);border:1px solid var(--header-btn-border);background:var(--header-btn-bg);transition:background .15s ease,border-color .15s ease,transform .15s ease}.blog-section-item:hover{background:var(--header-btn-hover);border-color:var(--accent-soft);transform:translate(4px)}.blog-section-item-title{display:block;font-weight:700;font-size:.9375rem;color:var(--heading)}.blog-section-item-desc{display:block;margin-top:.35rem;font-size:.8125rem;font-weight:500;color:var(--muted);line-height:1.45}.blog-section-all-wrap{margin:1.25rem 0 0}.blog-section-all{font-size:.875rem;font-weight:700;color:var(--accent-soft);text-decoration:none}.blog-section-all:hover{color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 1.5rem;font-family:var(--font-sans);font-weight:700;font-size:.9375rem;letter-spacing:.02em;text-decoration:none;border-radius:999px;border:none;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn-header{background:var(--header-btn-bg);color:var(--heading);border:1px solid var(--header-btn-border);backdrop-filter:blur(10px)}.btn-header:hover{background:var(--header-btn-hover);transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--accent) 0%,#c44dff 100%);color:#fff;box-shadow:0 0 0 1px #ffffff1f,0 12px 40px -12px #ff4d8da6}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 0 1px #ffffff2e,0 18px 48px -10px #ff4d8dbf}.btn-primary:active{transform:translateY(0)}.link-pill{color:var(--text);text-decoration:none;font-weight:600;border-bottom:2px solid var(--accent-soft);padding-bottom:.1em;transition:color .15s ease,border-color .15s ease}.link-pill:hover{color:var(--accent);border-color:var(--accent)}.site-footer{margin-top:auto;padding-top:2rem;border-top:1px solid var(--footer-border)}.footer-email{font-size:.9375rem;color:var(--muted);text-decoration:none;font-weight:600}.footer-email:hover{color:var(--accent-soft)}.book-back{display:inline-block;margin-bottom:1.5rem;font-size:.875rem;font-weight:700;color:var(--muted);text-decoration:none;letter-spacing:.04em}.book-back:hover{color:var(--accent)}.book-index-title{margin:0 0 .5rem;font-family:var(--font-display);font-size:clamp(2rem,5vw,2.75rem);font-weight:650;letter-spacing:-.02em;color:var(--heading)}.book-index-lede{margin:0 0 2rem;max-width:36rem;color:var(--muted);line-height:1.6}.chapter-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.chapter-list a{display:block;padding:.85rem 1rem;border-radius:.65rem;text-decoration:none;color:var(--text);font-weight:600;border:1px solid var(--header-btn-border);background:var(--header-btn-bg);transition:background .15s ease,border-color .15s ease,transform .15s ease}.chapter-list a:hover{background:var(--header-btn-hover);border-color:var(--accent-soft);transform:translate(4px)}.chapter-list .chapter-desc{display:block;margin-top:.25rem;font-size:.875rem;font-weight:500;color:var(--muted)}.book-source{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--footer-border);font-size:.8125rem;color:var(--muted)}.book-source a{color:var(--accent-soft);font-weight:600}.book-source a:hover{color:var(--accent)}.book-chapter-header{margin-bottom:2rem}.book-chapter-title{margin:0 0 .5rem;font-family:var(--font-display);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:650;line-height:1.15;letter-spacing:-.02em;color:var(--heading)}.book-chapter-meta{margin:0;font-size:.9375rem;color:var(--muted)}.book-nav-row{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--footer-border)}.book-nav-row a{font-weight:700;color:var(--accent-soft);text-decoration:none}.book-nav-row a:hover{color:var(--accent)}.prose{max-width:42rem;font-size:1.0625rem;line-height:1.75;color:var(--text)}.prose>:first-child{margin-top:0}.prose h1,.prose h2,.prose h3,.prose h4{font-family:var(--font-display);color:var(--heading);line-height:1.25;margin-top:2rem;margin-bottom:.75rem}.prose h1{font-size:clamp(1.65rem,3.5vw,2rem);font-weight:650}.prose>h1:first-child{margin-top:0}.prose h2{font-size:1.5rem;font-weight:650}.prose h3{font-size:1.2rem;font-weight:600}.prose p{margin:.85em 0}.prose ul,.prose ol{margin:.85em 0;padding-left:1.35em}.prose li{margin:.35em 0}.prose blockquote{margin:1.25em 0;padding:.5rem 0 .5rem 1.1rem;border-left:3px solid var(--accent-soft);color:var(--muted);font-style:italic}.prose a{color:var(--accent-soft);font-weight:600;text-decoration:underline;text-underline-offset:.15em}.prose a:hover{color:var(--accent)}.prose hr{border:none;border-top:1px solid var(--footer-border);margin:2rem 0}.prose strong{font-weight:700;color:var(--text)}.prose .footnotes{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--footer-border);font-size:.9375rem;color:var(--muted)}.prose .footnotes ol{padding-left:1.25rem}.prose .data-footnote-backref{text-decoration:none}.prose sup a{font-weight:700}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
