:root{--color-bg:#1a0d1a;--color-bg-soft:#221226;--color-bg-elevated:#2c1828;--color-fg:#f4ece4;--color-fg-muted:#c5b5ad;--color-fg-dim:#8b7a85;--color-accent:#c9a96e;--color-accent-soft:#8b6f4e;--color-accent-bright:#e0c189;--color-rose:#b06a7a;--color-rose-soft:#6a3845;--color-line:#3a2538;--color-line-soft:#c9a96e2e;--color-danger:#c25450;--color-shadow:#0000008c;--font-display:"Playfair Display", Georgia, "Times New Roman", serif;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2.5rem;--space-6:4rem;--space-7:6rem;--space-8:8rem;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-xl:24px;--shadow-card:0 8px 24px #00000059;--shadow-elevated:0 16px 48px #0000008c;--shadow-glow:0 0 80px #c9a96e26;--max-w:1140px;--max-w-prose:65ch;--header-h:72px;--ease:cubic-bezier(.2, .8, .2, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--dur:.24s;--dur-slow:.6s}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--color-bg);color:var(--color-fg);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(80% 50% at 50% -10%,#b06a7a1a,#0000 60%),radial-gradient(60% 40% at 90% 110%,#c9a96e0f,#0000 70%);background-attachment:fixed;margin:0;font-size:17px;line-height:1.65;overflow-x:hidden}body.is-locked{overflow:hidden}img,svg{max-width:100%;height:auto;display:block}a{color:inherit;transition:color var(--dur) var(--ease);text-decoration:none}a:hover{color:var(--color-accent-bright)}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:0}input,textarea,select{font:inherit;color:inherit}ul{margin:0;padding:0;list-style:none}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-weight:700;line-height:1.15}p{margin:0 0 var(--space-3)}::selection{background:var(--color-accent);color:var(--color-bg)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container{width:100%;max-width:var(--max-w);padding-left:var(--space-4);padding-right:var(--space-4);margin:0 auto}.icon{vertical-align:-.15em;object-fit:contain;filter:brightness(0)invert();width:1.1em;height:1.1em;display:inline-block}.icon-inline{opacity:.8;margin-left:.4em}.btn{--btn-bg:transparent;--btn-fg:var(--color-fg);--btn-border:var(--color-line);--btn-bg-hover:#c9a96e14;border:1px solid var(--btn-border);background:var(--btn-bg);color:var(--btn-fg);font-family:var(--font-body);letter-spacing:.02em;transition:background var(--dur) var(--ease), color var(--dur) var(--ease), border-color var(--dur) var(--ease), transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:.5em;padding:.85em 1.5em;font-size:.95rem;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover{background:var(--btn-bg-hover);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.btn-primary{--btn-bg:var(--color-accent);--btn-fg:var(--color-bg);--btn-border:var(--color-accent);--btn-bg-hover:var(--color-accent-bright);font-weight:600;box-shadow:0 6px 24px #c9a96e40}.btn-primary:hover{color:var(--color-bg);box-shadow:0 10px 32px #c9a96e59}.btn-ghost{--btn-bg:transparent;--btn-border:var(--color-line);--btn-bg-hover:#f4ece40a}.btn-ghost:hover{color:var(--color-accent-bright);border-color:var(--color-accent-soft)}.btn-link{--btn-bg:transparent;--btn-border:transparent;--btn-bg-hover:transparent;color:var(--color-fg-muted);text-decoration:underline;-webkit-text-decoration-color:var(--color-line);-webkit-text-decoration-color:var(--color-line);text-decoration-color:var(--color-line);text-underline-offset:4px;padding:.5em .75em;font-size:.85rem}.btn-link:hover{color:var(--color-fg);-webkit-text-decoration-color:var(--color-accent);-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent)}.btn-small{padding:.55em 1.1em;font-size:.85rem}.section_eyebrow{font-family:var(--font-body);letter-spacing:.25em;text-transform:uppercase;color:var(--color-accent);margin:0 0 var(--space-3);font-size:.75rem;font-weight:600}.section_title{margin:0 0 var(--space-3);color:var(--color-fg);font-size:clamp(1.85rem,4vw,2.75rem);font-weight:700;line-height:1.15}.section_sub{color:var(--color-fg-muted);max-width:var(--max-w-prose);margin:0 0 var(--space-5);font-size:1.05rem}.section_header{text-align:center;margin-bottom:var(--space-6)}.section_header .section_sub{margin-left:auto;margin-right:auto}.age-gate{z-index:1000;padding:var(--space-4);-webkit-backdrop-filter:blur(16px)saturate(1.2);animation:fade-in var(--dur-slow) var(--ease-out);background:#0a050ae0;place-items:center;display:grid;position:fixed;inset:0}.age-gate[hidden]{display:none}.age-gate_card{width:min(440px,100%);padding:var(--space-6) var(--space-5);background:linear-gradient(180deg, var(--color-bg-elevated) 0%, var(--color-bg-soft) 100%);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-elevated), var(--shadow-glow);text-align:center;animation:rise-in .6s var(--ease-out);position:relative;overflow:hidden}.age-gate_card:before{content:"";pointer-events:none;background:radial-gradient(at top,#b06a7a2e,#0000 60%);position:absolute;inset:0}.age-gate_eyebrow{letter-spacing:.3em;text-transform:uppercase;color:var(--color-accent);margin:0 0 var(--space-3);font-size:.7rem;font-weight:600;position:relative}.age-gate_title{font-family:var(--font-display);margin:0 0 var(--space-3);color:var(--color-fg);font-size:2rem;font-style:italic;font-weight:700;position:relative}.age-gate_rule{width:60px;height:1px;margin:0 auto var(--space-4);background:linear-gradient(90deg, transparent, var(--color-accent), transparent);position:relative}.age-gate_body{color:var(--color-fg-muted);margin:0 0 var(--space-5);font-size:.95rem;line-height:1.6;position:relative}.age-gate_actions{gap:var(--space-2);margin-bottom:var(--space-4);flex-direction:column;align-items:center;display:flex;position:relative}.age-gate_actions .btn-primary{justify-content:center;width:100%}.age-gate_remember{color:var(--color-fg-dim);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5em;font-size:.85rem;display:inline-flex;position:relative}.age-gate_remember input{width:16px;height:16px;accent-color:var(--color-accent);cursor:pointer}.site-header{z-index:50;-webkit-backdrop-filter:blur(12px)saturate(1.4);border-bottom:1px solid var(--color-line-soft);transition:background var(--dur) var(--ease);background:#1a0d1abf;position:sticky;top:0}.site-header_inner{min-height:var(--header-h);padding-top:var(--space-2);padding-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.brand{color:var(--color-fg);font-family:var(--font-display);letter-spacing:.02em;align-items:center;gap:.65em;font-size:1.15rem;font-weight:700;text-decoration:none;display:inline-flex}.brand_mark{border:1px solid var(--color-accent);width:32px;height:32px;font-family:var(--font-display);color:var(--color-accent);letter-spacing:0;background:radial-gradient(circle at 30% 30%,#c9a96e2e,#0000 70%);border-radius:50%;flex-shrink:0;place-items:center;font-size:.85rem;font-style:italic;display:inline-grid}.brand:hover .brand_mark{border-color:var(--color-accent-bright);color:var(--color-accent-bright)}.brand:hover{color:var(--color-fg)}.nav_links{gap:var(--space-5);align-items:center;display:flex}.nav_links a{color:var(--color-fg-muted);letter-spacing:.03em;padding:.4em 0;font-size:.9rem;font-weight:500;position:relative}.nav_links a:after{content:"";background:var(--color-accent);transform-origin:0;height:1px;transition:transform var(--dur) var(--ease);position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}.nav_links a:hover{color:var(--color-fg)}.nav_links a:hover:after,.nav_links a.is-active:after{transform:scaleX(1)}.nav_links a.is-active{color:var(--color-accent-bright)}@media (width<=640px){.brand_word{display:none}.nav_links{gap:var(--space-3)}.nav_links a{font-size:.8rem}}@media (width<=380px){.nav_links{gap:var(--space-2)}}.hero{padding:var(--space-8) 0 var(--space-7);position:relative;overflow:hidden}.hero_inner{z-index:2;text-align:center;max-width:880px;position:relative}.hero_eyebrow{letter-spacing:.3em;text-transform:uppercase;color:var(--color-accent);margin:0 0 var(--space-4);align-items:center;gap:.75em;font-size:.7rem;font-weight:600;display:inline-flex}.hero_eyebrow:before,.hero_eyebrow:after{content:"";background:linear-gradient(90deg, transparent, var(--color-accent), transparent);width:28px;height:1px}.hero_eyebrow:before{background:linear-gradient(90deg, transparent, var(--color-accent))}.hero_eyebrow:after{background:linear-gradient(90deg, var(--color-accent), transparent)}.hero_title{margin:0 0 var(--space-4);letter-spacing:-.02em;font-size:clamp(2.5rem,7vw,4.75rem);font-weight:700;line-height:1.05}.hero_title-line{display:block}.hero_title-line--accent{color:var(--color-accent);background:linear-gradient(135deg, var(--color-accent) 0%, var(--color-rose) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-style:italic}.hero_tagline{color:var(--color-fg-muted);max-width:36em;margin:0 auto var(--space-5);font-size:clamp(1.05rem,1.6vw,1.2rem);line-height:1.65}.hero_ctas{gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap;justify-content:center;display:flex}.hero_scroll{align-items:center;gap:var(--space-2);color:var(--color-fg-dim);letter-spacing:.3em;text-transform:uppercase;flex-direction:column;font-size:.7rem;display:inline-flex}.hero_scroll:hover{color:var(--color-accent)}.hero_scroll-line{background:linear-gradient(180deg, var(--color-accent), transparent);width:1px;height:36px;position:relative;overflow:hidden}.hero_scroll-line:after{content:"";background:linear-gradient(180deg, transparent, var(--color-accent-bright), transparent);animation:scroll-pulse 2.4s var(--ease) infinite;position:absolute;inset:0}.hero_glow{z-index:1;pointer-events:none;background:radial-gradient(50% 40% at 50% 30%,#b06a7a26,#0000 60%),radial-gradient(70% 50% at 50% 90%,#c9a96e1a,#0000 60%);position:absolute;inset:0}.hero_glow:after{content:"";opacity:.5;background-image:radial-gradient(circle at 1px 1px,#c9a96e14 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(60% 50%,#000 30%,#0000 80%);mask-image:radial-gradient(60% 50%,#000 30%,#0000 80%)}@keyframes scroll-pulse{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@media (width<=640px){.hero{padding:var(--space-6) 0 var(--space-5)}.hero_ctas{flex-direction:column;align-items:stretch}.hero_ctas .btn{justify-content:center}}.books{padding:var(--space-7) 0;position:relative}.books:before{content:"";background:linear-gradient(90deg, transparent, var(--color-line), transparent);width:200px;height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}.series_link{color:var(--color-accent);border-bottom:1px solid var(--color-line-soft);align-items:center;gap:.3em;padding-bottom:.1em;font-weight:500;display:inline-flex}.series_link:hover{color:var(--color-accent-bright);border-bottom-color:var(--color-accent)}.book_grid{gap:var(--space-5);margin-top:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.book_card{background:linear-gradient(180deg, var(--color-bg-soft) 0%, var(--color-bg) 100%);border:1px solid var(--color-line);border-radius:var(--radius-lg);transition:transform var(--dur) var(--ease), border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);flex-direction:column;display:flex;overflow:hidden}.book_card:hover{border-color:var(--color-accent-soft);box-shadow:var(--shadow-card);transform:translateY(-4px)}.book_cover_wrap{aspect-ratio:2/3;background:var(--color-bg-elevated);position:relative;overflow:hidden}.book_cover{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-out)}.book_card:hover .book_cover{transform:scale(1.04)}.book_cover--placeholder{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-4);background:linear-gradient(135deg, var(--color-bg-elevated) 0%, var(--color-bg) 100%), radial-gradient(circle at 30% 20%, #c9a96e33, transparent 60%);text-align:center;flex-direction:column;display:flex}.book_cover--placeholder:before{content:"";border:1px solid var(--color-accent-soft);border-radius:var(--radius-sm);opacity:.4;pointer-events:none;position:absolute;inset:12px}.book_cover_glyph{font-family:var(--font-display);color:var(--color-accent);font-size:3.5rem;font-style:italic;font-weight:700;line-height:1}.book_cover_label{font-family:var(--font-display);color:var(--color-fg-muted);max-width:14ch;font-size:.95rem;font-style:italic;line-height:1.3}.book_meta{gap:var(--space-2);padding:var(--space-4);flex-direction:column;flex:1;display:flex}.book_series{letter-spacing:.2em;text-transform:uppercase;color:var(--color-rose);margin:0;font-size:.7rem;font-weight:600}.book_title{font-family:var(--font-display);color:var(--color-fg);margin:0;font-size:1.4rem;font-style:italic;font-weight:700;line-height:1.2}.book_blurb{color:var(--color-fg-muted);flex:1;margin:0;font-size:.9rem;line-height:1.55}.book_actions{margin-top:var(--space-3)}.book_actions .btn{justify-content:center;width:100%}@media (width<=480px){.book_grid{grid-template-columns:1fr}}.about{padding:var(--space-7) 0;background:linear-gradient(#0000 0%,#22122666 50%,#0000 100%)}.about_inner{gap:var(--space-6);grid-template-columns:1.4fr 1fr;align-items:start;display:grid}.about_text .section_title{font-size:clamp(2.25rem,5vw,3.5rem)}.about_lede{font-family:var(--font-display);color:var(--color-fg);margin:0 0 var(--space-4);border-left:2px solid var(--color-accent);padding-left:var(--space-4);font-size:1.2rem;font-style:italic;line-height:1.55}.about_body{color:var(--color-fg-muted);font-size:1rem;line-height:1.7}.about_meta{gap:var(--space-3);flex-direction:column;display:flex}.about_card{padding:var(--space-4);background:var(--color-bg-soft);border:1px solid var(--color-line);border-radius:var(--radius-md);transition:border-color var(--dur) var(--ease), transform var(--dur) var(--ease)}.about_card:hover{border-color:var(--color-accent-soft);transform:translate(2px)}.about_card-label{letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);margin:0 0 var(--space-1);font-size:.7rem;font-weight:600}.about_card-value{font-family:var(--font-display);color:var(--color-fg);margin:0;font-size:1.05rem}@media (width<=768px){.about_inner{gap:var(--space-5);grid-template-columns:1fr}}.newsletter{padding:var(--space-7) 0;position:relative}.newsletter:before{content:"";background:linear-gradient(90deg, transparent, var(--color-line), transparent);width:200px;height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}.newsletter_inner{text-align:center;max-width:720px;margin:0 auto}.newsletter_copy{margin-bottom:var(--space-5)}.newsletter_blurb{color:var(--color-fg-muted);max-width:50ch;margin:0 auto;font-size:1.05rem}.newsletter_form{margin:0 auto}.newsletter_field{gap:var(--space-2);background:var(--color-bg-soft);border:1px solid var(--color-line);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);border-radius:999px;max-width:520px;margin:0 auto;padding:6px;display:flex}.newsletter_field:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 4px #c9a96e1f}.newsletter_field input{color:var(--color-fg);background:0 0;border:0;outline:none;flex:1;min-width:0;padding:.7em 1.1em;font-size:1rem}.newsletter_field input::placeholder{color:var(--color-fg-dim)}.newsletter_field .btn{flex-shrink:0}.newsletter_fine{margin:var(--space-3) auto 0;color:var(--color-fg-dim);max-width:40ch;font-size:.8rem}.newsletter_status{margin:var(--space-3) auto 0;min-height:1.3em;color:var(--color-accent);font-size:.9rem}.newsletter_status[data-state=error]{color:var(--color-danger)}.newsletter_fallback{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-bg-soft);border:1px solid var(--color-line);border-radius:var(--radius-md);color:var(--color-fg-muted);font-size:.9rem}.newsletter_fallback a{color:var(--color-accent);border-bottom:1px solid var(--color-line-soft)}@media (width<=540px){.newsletter_field{border-radius:var(--radius-md);padding:var(--space-2);flex-direction:column}.newsletter_field input{padding:.7em .9em}.newsletter_field .btn{justify-content:center;width:100%}}.contact{padding:var(--space-7) 0 var(--space-6)}.contact_inner{text-align:center;max-width:720px;margin:0 auto}.contact_copy{margin:0 auto}.contact_blurb{color:var(--color-fg-muted);max-width:50ch;margin:0 auto var(--space-4);font-size:1.05rem}.contact_email{padding:.9em 1.6em;font-size:1.05rem}.site-footer{padding:var(--space-5) 0;background:var(--color-bg-soft);border-top:1px solid var(--color-line-soft);margin-top:var(--space-6)}.site-footer_inner{align-items:center;gap:var(--space-3);text-align:center;flex-direction:column;display:flex}.site-footer_copy{color:var(--color-fg-muted);margin:0;font-size:.85rem}.site-footer_note{color:var(--color-fg-dim);letter-spacing:.02em;margin:0;font-size:.78rem}.site-footer_note a{color:var(--color-fg-muted);text-decoration:underline;-webkit-text-decoration-color:var(--color-line);-webkit-text-decoration-color:var(--color-line);text-decoration-color:var(--color-line);text-underline-offset:3px}.site-footer_note a:hover{color:var(--color-accent);-webkit-text-decoration-color:var(--color-accent);-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent)}.social{gap:var(--space-3);align-items:center;display:flex}.social a{border:1px solid var(--color-line);width:38px;height:38px;color:var(--color-fg-muted);transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease), transform var(--dur) var(--ease);border-radius:50%;place-items:center;display:inline-grid}.social a:hover{color:var(--color-accent);border-color:var(--color-accent-soft);transform:translateY(-2px)}.social .icon{width:18px;height:18px}.reveal{opacity:0;transition:opacity .7s var(--ease-out), transform .7s var(--ease-out);will-change:opacity, transform;transform:translateY(20px)}.reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}.hero_scroll-line:after{animation:none}html{scroll-behavior:auto}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:none}}
/*# sourceMappingURL=repo.9f96a047.css.map */
