:root{--ink-950:#0b0a18;--ink-900:#100e22;--ink-800:#16132c;--ink-700:#1d1838;--gold-300:#f0d3a0;--gold-400:#e6bd7e;--gold-500:#d4a45f;--gold-600:#b98a47;--cream-100:#f4eee1;--cream-200:#ddd6c6;--cream-300:#b9b2a4;--violet-400:#a99bd4;--font-display:"Cormorant Garamond", "Playfair Display", Georgia, "Times New Roman", serif;--font-body:"Jost", "Avenir Next", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--header-h:3.9rem;--container:77.5rem;--container-narrow:46rem;--radius:.75rem;--shadow-glow-gold:0 0 22px #d4a45f47;--line-gold:#d4a45f59;--line-gold-soft:#d4a45f2e}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 1.25rem);-webkit-text-size-adjust:100%}body{background-color:var(--ink-900);color:var(--cream-200);font-family:var(--font-body);letter-spacing:.012em;-webkit-font-smoothing:antialiased;margin:0;font-size:1.125rem;font-weight:300;line-height:1.75}h1,h2,h3{font-family:var(--font-display);color:var(--cream-100);margin:0;font-weight:500;line-height:1.12}p{margin:0}em{font-style:italic}a{color:var(--gold-400)}::selection{color:var(--cream-100);background:#d4a45f59}:focus-visible{outline:2px solid var(--gold-300);outline-offset:3px;border-radius:2px}.container{width:min(100% - 2.5rem, var(--container));margin-inline:auto}.container--narrow{max-width:var(--container-narrow)}.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}.skip-link{z-index:100;background:var(--ink-800);color:var(--cream-100);border:1px solid var(--line-gold);border-radius:var(--radius);padding:.6em 1.1em;font-size:.95rem;text-decoration:none;transition:transform .25s;position:fixed;top:.75rem;left:.75rem;transform:translateY(-300%)}.skip-link:focus-visible{transform:translateY(0)}.placeholder{color:var(--gold-300);background:#d4a45f12;border:1px dashed #d4a45f80;border-radius:.4em;padding:.15em .55em;font-style:italic;display:inline-block}.site-header{z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line-gold-soft);background:#0d0c1ac7;position:fixed;top:0;left:0;right:0}.nav{width:min(100% - 2.5rem, var(--container));min-height:var(--header-h);flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:1rem;margin-inline:auto;display:flex}.brand{font-family:var(--font-display);letter-spacing:.02em;color:var(--cream-100);white-space:nowrap;padding:.55rem 0;font-size:1.5rem;font-weight:600;text-decoration:none;transition:color .3s}.brand:hover,.brand:focus-visible{color:var(--gold-400)}.nav-toggle{border:1px solid var(--line-gold-soft);border-radius:var(--radius);cursor:pointer;background:0 0;flex-direction:column;justify-content:center;gap:5px;width:2.75rem;height:2.75rem;padding:.55rem;display:none}.nav-toggle-bar{background:var(--cream-200);border-radius:1px;width:100%;height:1.5px;transition:transform .3s,opacity .3s;display:block}.nav-toggle[aria-expanded=true] .nav-toggle-bar:first-child{transform:translateY(6.5px)rotate(45deg)}.nav-toggle[aria-expanded=true] .nav-toggle-bar:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] .nav-toggle-bar:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.nav-menu{align-items:center;gap:clamp(1.1rem,3vw,2.5rem);margin:0;padding:0;list-style:none;display:flex}.nav-link{color:var(--cream-200);letter-spacing:.14em;text-transform:uppercase;padding:.35rem 0;font-size:1.02rem;font-weight:400;text-decoration:none;transition:color .3s;display:inline-block;position:relative}.nav-link:after{content:"";background:linear-gradient(90deg, transparent, var(--gold-400), transparent);height:1px;transition:transform .35s;position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}.nav-link:hover,.nav-link:focus-visible,.nav-link.is-active{color:var(--gold-400)}.nav-link:hover:after,.nav-link:focus-visible:after,.nav-link.is-active:after{transform:scaleX(1)}@media (width<=40rem){.nav-toggle{display:flex}.nav-menu{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line-gold-soft);background:#0d0c1af5;flex-direction:column;align-items:stretch;gap:0;padding:.5rem 1.25rem 1.25rem;display:none;position:absolute;top:100%;left:0;right:0}.nav-menu.open{animation:.3s both menu-drop;display:flex}.nav-link{border-bottom:1px solid #d4a45f1a;padding:.85rem .25rem;font-size:1.08rem}.nav-menu li:last-child .nav-link{border-bottom:none}}@keyframes menu-drop{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.section{scroll-margin-top:var(--header-h);padding:clamp(4.5rem,12vh,7.5rem) 0}.section-title{text-align:center;letter-spacing:.01em;margin-bottom:1.75rem;font-size:clamp(2.35rem,6vw,3.65rem)}.section-eyebrow{text-align:center;color:var(--gold-400);letter-spacing:.32em;text-transform:uppercase;margin-bottom:.9rem;font-size:.95rem;font-weight:400}.btn{font-family:var(--font-body);letter-spacing:.18em;text-transform:uppercase;border:1px solid #0000;border-radius:2.25em;padding:.85em 1.9em;font-size:.92rem;font-weight:500;text-decoration:none;transition:background-color .3s,border-color .3s,box-shadow .3s,transform .3s,color .3s;display:inline-block}.btn--primary{color:#2a1e0c;background:linear-gradient(#eecb8a,#c8974f)}.btn--primary:hover,.btn--primary:focus-visible{transform:translateY(-2px);box-shadow:0 0 26px #d4a45f73,0 4px 14px #00000059}.btn--ghost{border-color:var(--line-gold);color:var(--cream-100);background:#d4a45f0d}.btn--ghost:hover,.btn--ghost:focus-visible{border-color:var(--gold-400);background:#d4a45f1f;transform:translateY(-2px)}.text-link{color:var(--cream-100);border-bottom:1px solid var(--line-gold);padding-bottom:.15em;text-decoration:none;transition:color .3s,border-color .3s}.text-link:hover,.text-link:focus-visible{color:var(--gold-400);border-color:var(--gold-400)}.text-link-arrow{color:var(--gold-400);transition:transform .3s;display:inline-block}.text-link:hover .text-link-arrow{transform:translate(2px,-2px)}.text-link-sub{color:var(--cream-300);margin-left:.35em;font-size:.85em}.badge{justify-content:center;margin-bottom:2.5rem;display:flex}.badge--inline{margin:0;display:inline-flex}.badge-text{border:1px solid var(--line-gold);color:var(--gold-400);letter-spacing:.26em;text-transform:uppercase;background-color:#d4a45f0f;background-image:linear-gradient(110deg,#0000 42%,#f0d3a029 50%,#0000 58%);background-position:0 0;background-repeat:repeat;background-size:260% 100%,auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;border-radius:2em;padding:.45em 1.4em;font-size:.88rem;font-weight:500;display:inline-block;box-shadow:0 0 18px #d4a45f1f}.site-footer{text-align:center;border-top:1px solid var(--line-gold-soft);background:linear-gradient(#0000,#0b0a188c);padding:2.5rem 0 3rem}.footer-line{font-family:var(--font-display);color:var(--cream-200);margin-bottom:.5rem;font-size:1.25rem}.footer-small{color:var(--cream-300);letter-spacing:.06em;font-size:.95rem}.reveal{opacity:0;transition:opacity .85s,transform .85s;transform:translateY(20px)}.reveal.visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transition:none;transform:none}}@media (width>=64rem){:root{--header-h:4.25rem}body{font-size:1.1875rem}}.eclipse-moment{width:var(--moment-size,120px);aspect-ratio:1;position:relative}.eclipse-moment-halo{background:radial-gradient(circle at 50% 50%, rgba(238, 201, 139, calc(var(--halo-alpha,.5) * .55)) 0%, rgba(212, 164, 95, calc(var(--halo-alpha,.5) * .28)) 34%, rgba(212, 164, 95, calc(var(--halo-alpha,.5) * .08)) 55%, transparent 74%);border-radius:50%;animation:36s ease-in-out infinite moment-breathe;position:absolute;inset:-35%}.eclipse-moment-ring{width:100%;height:100%;display:block;position:relative;overflow:visible}.eclipse-moment-disc{fill:#060510}.eclipse-moment-arc{fill:none;stroke:rgba(238, 201, 139, var(--ring-alpha,1));stroke-width:1.6px;stroke-linecap:round;filter:drop-shadow(0 0 3px rgba(238, 201, 139, calc(var(--ring-alpha,1) * .9)))}.eclipse-moment--forming .eclipse-moment-arc{animation:2.4s cubic-bezier(.33,0,.2,1) .35s both ring-form}@keyframes ring-form{0%{stroke-dashoffset:100px;opacity:0}15%{opacity:1}to{stroke-dashoffset:0;opacity:1}}@keyframes moment-breathe{0%,to{opacity:.92;transform:scale(1)}50%{opacity:1;transform:scale(1.04)}}.hero{min-height:100svh;padding:calc(var(--header-h) + 3rem) 1.25rem 6rem;text-align:center;background:radial-gradient(120% 55% at 50% 108%,#261e3e80,#0000 70%),linear-gradient(#080713 0%,#060510 60%,#050409 100%);place-items:center;display:grid;position:relative;overflow:hidden}.hero-horizon{background:linear-gradient(90deg,#0000 0%,#d4a45f38 22%,#eec98b66 50%,#d4a45f38 78%,#0000 100%);height:1px;position:absolute;bottom:9%;left:8%;right:8%}.hero-inner{flex-direction:column;align-items:center;width:100%;display:flex}.hero-eclipse{opacity:0;animation:1.2s .2s both moment-appear;position:absolute;top:clamp(5.5rem,20vh,11rem);left:50%;transform:translate(-50%)}@keyframes moment-appear{0%{opacity:0}to{opacity:1}}.hero-atmosphere{max-width:30ch;font-family:var(--font-display);color:var(--cream-100);flex-wrap:wrap;justify-content:center;gap:0 .5ch;margin:0 auto 1.6rem;font-size:clamp(1.35rem,3.4vw,1.85rem);font-style:italic;line-height:1.5;display:flex}.hero-word{opacity:0;animation:1.1s both word-in;display:inline-block}.hero-kicker{opacity:0;color:var(--violet-400);letter-spacing:.38em;text-transform:uppercase;margin-bottom:1.1rem;font-size:.92rem;font-weight:400;animation:1.1s both word-in}.hero-title{opacity:0;letter-spacing:.015em;text-shadow:0 0 40px #d4a45f2e;margin-bottom:2.25rem;font-size:clamp(3.25rem,9.5vw,6.05rem);font-weight:600;animation:1.1s both word-in}.hero-actions{opacity:0;flex-wrap:wrap;justify-content:center;gap:1rem;animation:1.1s both word-in;display:flex}.section--series{background:linear-gradient(#050409 0%,#040307 50%,#0b0918 100%);position:relative;overflow:hidden}.series-ring{margin:0 auto 2.25rem}.section--series .container{text-align:center;max-width:64rem}.pitch{max-width:60ch;margin:0 auto;position:relative}.pitch p{font-family:var(--font-display);color:var(--cream-100);font-size:clamp(1.4rem,3vw,1.8rem);line-height:1.55}.pitch:before{content:"“";font-family:var(--font-display);color:var(--gold-500);opacity:.55;margin-bottom:1.4rem;font-size:5rem;line-height:.6;display:block}.section--about{background:linear-gradient(#0b0918 0%,#131028 45%,#16132c 100%);position:relative;overflow:hidden}.crescent-glow{pointer-events:none;background:radial-gradient(at 100% 30%,#a99bd41a 0%,#a99bd40b 40%,#0000 70%);width:55vw;position:absolute;top:0;bottom:0;right:-22vw}.about-body{text-align:center;font-size:1.25rem}.about-body p{max-width:58ch;margin-inline:auto}.about-body p+p{margin-top:1.6rem}.section--books,#books{background:linear-gradient(#16132c 0%,#100e22 100%)}.books-grid{grid-template-columns:min(100%,24rem);justify-content:center;gap:2.75rem 2.25rem;max-width:72rem;margin:0 auto 3rem;display:grid}.book-card{text-align:center;border-radius:var(--radius);background:linear-gradient(#1d183880,#100e2259);border:1px solid #d4a45f24;flex-direction:column;align-items:center;padding:1.85rem 1.35rem 2.1rem;transition:border-color .35s,transform .35s,box-shadow .35s;display:flex;box-shadow:0 18px 40px #05040c59}.book-card:hover{border-color:var(--line-gold);transform:translateY(-4px);box-shadow:0 24px 48px #05040c73,0 0 30px #d4a45f12}.book-card:hover .cover-eclipse{box-shadow:0 0 16px 2px #eec98bbf,0 0 44px 8px #d4a45f52,0 0 90px 22px #6e54a833}.book-card:hover .cover-motif{border-color:var(--gold-400);box-shadow:0 0 18px #e6bd7ea6}.book-cover{aspect-ratio:2/3;border-radius:calc(var(--radius) - 2px);place-items:center;width:min(100%,14rem);margin-bottom:1.5rem;padding:1rem;display:grid}.book-cover--eclipse{border:1px solid var(--line-gold-soft);background:radial-gradient(circle at 50% 42%,#d4a45f24,#0000 55%),linear-gradient(#191435 0%,#100e22 70%,#0c0b1a 100%);transition:box-shadow .35s;position:relative;overflow:hidden;box-shadow:inset 0 0 40px #05040c99}.cover-eclipse{aspect-ratio:1;background:radial-gradient(circle at 40% 34%,#221c40 0%,#120f26 60%,#0b0a18 100%);border-radius:50%;width:5.75rem;transition:box-shadow .35s;position:relative;box-shadow:0 0 12px 1px #eec98b99,0 0 36px 6px #d4a45f40,0 0 80px 20px #6e54a82e}.book-cover--slot{background:linear-gradient(#1d18388c,#0d0c1a8c);border:1px dashed #d4a45f73;align-content:center;gap:1rem}.cover-motif{aspect-ratio:1;border:1px solid var(--line-gold);border-radius:50%;width:2.4rem;transition:border-color .35s,box-shadow .35s;position:relative;box-shadow:0 0 12px #e6bd7e66}.cover-motif:after{content:"";background:var(--ink-950);border-radius:50%;position:absolute;inset:6px}.book-cover--slot .placeholder{font-size:.92rem;line-height:1.5}.book-cover-note{text-align:center;color:var(--cream-300);letter-spacing:.22em;text-transform:uppercase;font-size:.82rem;position:absolute;bottom:.9rem;left:0;right:0}.book-title{margin-bottom:.35rem;font-size:1.7rem}.book-subtitle{color:var(--gold-400);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.9rem;font-size:1rem}.book-meta{color:var(--cream-300);margin-bottom:1rem;font-size:1.05rem}.books-note{text-align:center;color:var(--cream-300);max-width:58ch;margin-inline:auto;font-size:1.15rem}#contact{background:linear-gradient(#100e22 0%,#0b0a18 100%)}.contact-lede{text-align:center;color:var(--cream-300);margin:-.75rem auto 2.5rem;font-size:1.22rem}.contact-email{text-align:center;margin-bottom:3rem;font-size:1.3rem;font-style:normal;display:block}.social-list{flex-wrap:wrap;justify-content:center;gap:1rem 3rem;margin:0 auto;padding:0;font-size:1.2rem;list-style:none;display:flex}.footer-eclipse{margin:0 auto 1.5rem}.site-footer .footer-eclipse .eclipse-moment-halo{animation:none}@keyframes word-in{0%{opacity:0}to{opacity:1}}.hero,.section--series,.section--about,#books,#contact{isolation:isolate}#books,#contact{position:relative}.starfield{pointer-events:none;z-index:-1;position:absolute;inset:0;overflow:hidden}.star{opacity:var(--star-alpha,.3);background:#ece4cf;border-radius:50%;position:absolute}@keyframes star-twinkle{0%,to{opacity:var(--star-alpha,.3)}50%{opacity:calc(var(--star-alpha,.3) * .4)}}@media (prefers-reduced-motion:reduce){.hero-word,.hero-kicker,.hero-title,.hero-actions,.hero-eclipse{opacity:1!important;transition:none!important;animation:none!important}.eclipse-moment--forming .eclipse-moment-arc{stroke-dashoffset:0!important;animation:none!important}.eclipse-moment-halo,.star{animation:none!important}}
