:root {
  color-scheme: dark;
  --night: #080c12;
  --panel: #0e151e;
  --panel-2: #111b25;
  --ink: #e8edf0;
  --muted: #91a0aa;
  --dim: #53626c;
  --line: #26343d;
  --acid: #b6f36b;
  --cyan: #69e6f4;
  --serif: Georgia, "Times New Roman", serif;
  --mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --sans: "Manrope", Inter, Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; position: relative; overflow-x: hidden; background: var(--night); color: var(--ink); font-family: var(--sans); -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
.grid-glow { position: absolute; z-index: -1; inset: 0 0 auto; height: 680px; pointer-events: none; background: radial-gradient(ellipse at 73% 46%, rgba(35,104,119,.19), transparent 45%), linear-gradient(rgba(105,230,244,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(105,230,244,.025) 1px, transparent 1px); background-size: auto, 48px 48px, 48px 48px; mask-image: linear-gradient(#000 0%, transparent 90%); }
.shell { width: min(1120px, calc(100% - 64px)); margin-inline: auto; }
.site-header { height: 88px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); }
.wordmark { display: inline-flex; align-items: center; gap: 11px; font-size: 13px; font-weight: 800; letter-spacing: .16em; }
.wordmark-mark { width: 28px; height: 28px; display: grid; place-items: center; border: 1px solid var(--acid); color: var(--acid); font: 600 11px var(--mono); letter-spacing: -.08em; }
.site-header nav { display: flex; align-items: center; gap: 34px; color: #a5b2bb; font: 12px var(--mono); text-transform: uppercase; letter-spacing: .08em; }
.site-header nav a:hover, .book-link:hover { color: var(--acid); }
.nav-contact { color: var(--ink); }
.nav-contact span { color: var(--acid); margin-left: 7px; }
.hero { position: relative; min-height: 590px; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 45px; padding-block: 75px 100px; }
.hero-copy { padding-bottom: 8px; }
.eyebrow { display: flex; align-items: center; gap: 9px; color: var(--cyan); font: 11px/1.6 var(--mono); letter-spacing: .15em; text-transform: uppercase; }
.status-dot { width: 6px; height: 6px; display: inline-block; border-radius: 50%; background: var(--acid); box-shadow: 0 0 11px rgba(182,243,107,.75); }
.slash { color: var(--dim); padding-inline: 3px; }
h1, h2, h3, p { margin-top: 0; }
h1, h2 { font-weight: 600; letter-spacing: -.055em; }
h1 { margin: 23px 0 24px; font-size: clamp(48px, 5.8vw, 72px); line-height: 1.04; }
h1 em, h2 em { color: var(--acid); font-style: normal; }
.hero-intro { max-width: 390px; color: #9daab4; font-size: 14px; line-height: 1.9; margin-bottom: 27px; }
.primary-link { display: inline-flex; align-items: center; gap: 25px; padding: 13px 16px; background: var(--acid); color: #11170e; font: 600 12px var(--mono); letter-spacing: .04em; text-transform: uppercase; transition: background .2s ease; }
.primary-link:hover { background: #d1ffa1; }
.primary-link span { font-size: 15px; }
.hero-visual { height: 380px; max-width: 500px; width: 100%; justify-self: end; overflow: hidden; position: relative; border: 1px solid #30424c; background: radial-gradient(ellipse at 50% 54%, rgba(54,128,136,.19), transparent 44%), #0a1118; box-shadow: inset 0 0 80px rgba(36,110,118,.08), 0 25px 85px rgba(0,0,0,.28); }
.visual-top, .visual-bottom { position: absolute; inset-inline: 18px; display: flex; justify-content: space-between; color: #7b929c; font: 10px var(--mono); letter-spacing: .1em; }
.visual-top { top: 16px; }.visual-bottom { bottom: 15px; color: #9aaab0; }
.radar { position: absolute; left: 50%; top: 52%; aspect-ratio: 1; border: 1px solid rgba(105,230,244,.16); border-radius: 50%; transform: translate(-50%,-50%); }
.radar-a { width: 150px; }.radar-b { width: 255px; }.radar-c { width: 360px; border-style: dashed; border-color: rgba(105,230,244,.12); }
.signal-line { position: absolute; left: 14%; right: 10%; top: 52%; height: 1px; background: linear-gradient(90deg, transparent, rgba(105,230,244,.38), var(--acid), rgba(105,230,244,.2), transparent); transform: rotate(-26deg); box-shadow: 0 0 12px rgba(105,230,244,.35); }
.signal-node { position: absolute; width: 9px; height: 9px; border: 1px solid var(--cyan); border-radius: 50%; background: #091118; box-shadow: 0 0 13px rgba(105,230,244,.75); }
.signal-node span { position: absolute; top: -18px; left: 6px; color: #7e959f; font: 9px var(--mono); }
.node-a { left: 23%; top: 66%; }.node-b { left: 50%; top: 53%; border-color: var(--acid); box-shadow: 0 0 13px rgba(182,243,107,.7); }.node-c { right: 19%; top: 38%; }
.visual-center { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; flex-direction: column; text-align: center; pointer-events: none; }
.visual-center span { margin-bottom: 10px; color: #96a8ae; font: 10px var(--mono); letter-spacing: .22em; }
.visual-center strong { color: #d6e2e4; font: 700 21px/1.05 var(--sans); letter-spacing: .12em; }
.visual-center i { position: absolute; margin: 0 0 207px 184px; color: var(--acid); font: normal 18px var(--mono); }
.crosshair { position: absolute; color: #a6c0c4; font: 14px var(--mono); }.crosshair-a { left: 20px; top: 42%; }.crosshair-b { right: 20px; bottom: 34%; }
.hero-index { position: absolute; left: 0; right: 0; bottom: 39px; display: flex; align-items: center; gap: 12px; color: var(--dim); font: 10px var(--mono); letter-spacing: .16em; }
.hero-index > span:first-child { color: var(--acid); }.index-rule { width: 54px; height: 1px; background: var(--line); }
.books { padding-block: 41px 109px; }
.section-top { display: flex; align-items: baseline; justify-content: space-between; padding-bottom: 15px; border-bottom: 1px solid var(--line); }
.section-top .eyebrow { margin-bottom: 0; }
.section-aside { color: #72818b; font: 12px var(--mono); }
.book-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; padding-top: 30px; }
.book-card { min-width: 0; display: grid; grid-template-columns: .88fr 1fr; gap: 25px; align-items: center; padding: 18px; border: 1px solid #23333d; background: linear-gradient(140deg, rgba(22,35,45,.9), rgba(12,19,27,.93)); }
.cover-art { min-height: 295px; position: relative; overflow: hidden; display: flex; justify-content: center; align-items: center; padding: 0; background: #05080d; box-shadow: 11px 12px 28px rgba(0,0,0,.34); }
.cover-art img { display: block; width: 100%; height: 100%; min-height: 295px; object-fit: contain; }
.cover-shadows { color: #e0f4e9; background: radial-gradient(circle at 80% 25%, rgba(49,201,169,.28), transparent 32%), linear-gradient(155deg,#101c27 5%,#0b1119 58%,#12251f); border: 1px solid #31594f; }
.cover-upload { color: #e1e8f5; background: radial-gradient(circle at 30% 58%, rgba(118,88,244,.3), transparent 38%), linear-gradient(145deg,#111729,#0b101b 65%,#1c1830); border: 1px solid #46416e; }
.cover-index, .cover-eyebrow, .cover-author, .cover-code, .upload-readout { z-index: 1; font-family: var(--mono); }
.cover-index { position: absolute; top: 13px; left: 13px; color: rgba(189,219,214,.66); font-size: 9px; letter-spacing: .1em; }
.cover-eyebrow { color: rgba(176,226,215,.75); font-size: 8px; letter-spacing: .2em; margin-bottom: 18px; }
.cover-art h2 { position: relative; z-index: 1; margin: 0; font: 700 clamp(22px,2.5vw,32px)/.96 var(--sans); letter-spacing: -.045em; }
.cover-art h2 i { color: var(--acid); font-style: normal; font-weight: 500; }
.cover-gridline { position: absolute; inset: 0; opacity: .25; background: linear-gradient(rgba(105,230,244,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(105,230,244,.1) 1px,transparent 1px); background-size: 24px 24px; mask-image: linear-gradient(135deg,#000,transparent 76%); }
.cover-circuit { position: absolute; height: 1px; background: #69e6f4; opacity: .45; transform-origin: left; }
.circuit-one { width: 115px; right: -21px; top: 34%; transform: rotate(138deg); }.circuit-two { width: 105px; left: -10px; bottom: 24%; transform: rotate(-35deg); background: var(--acid); }
.cover-code { position: absolute; right: 10px; bottom: 37px; color: rgba(182,243,107,.35); font-size: 8px; line-height: 1.55; text-align: right; }
.cover-author { position: absolute; bottom: 16px; left: 0; right: 0; color: rgba(206,226,226,.7); font-size: 9px; letter-spacing: .2em; }
.upload-bar { width: 63%; height: 3px; position: relative; z-index: 1; margin-top: 25px; background: rgba(190,198,255,.18); }.upload-bar span { display: block; width: 58%; height: 100%; background: #b6a3ff; box-shadow: 0 0 12px #8d79ff; }
.upload-readout { margin-top: 9px; color: rgba(200,192,255,.64); font-size: 7px; letter-spacing: .13em; }
.upload-glitch { position: absolute; bottom: 56px; color: rgba(152,139,255,.12); font: 700 35px var(--sans); letter-spacing: .05em; }
.book-info { align-self: center; }
.book-meta { display: flex; align-items: center; gap: 9px; color: #7d9099; font: 9px var(--mono); letter-spacing: .1em; }
.book-meta > span:first-child { color: var(--acid); }
.meta-line { width: 22px; height: 1px; background: #40505a; }
.book-info h3 { margin: 21px 0 10px; font-size: clamp(17px,1.8vw,22px); letter-spacing: -.04em; }
.book-info > p:not(.book-meta) { color: #87949b; font: 13px/1.65 var(--mono); }
.book-info em { color: #cbd7da; font-style: normal; }
.audio-sample { margin: 20px 0 13px; padding: 14px; border: 1px solid rgba(105,230,244,.42); background: linear-gradient(120deg,rgba(28,78,88,.5),rgba(12,25,34,.94) 72%); box-shadow: inset 3px 0 0 var(--cyan), 0 8px 22px rgba(0,0,0,.18); }
.audio-heading { display: flex; flex-direction: column; gap: 6px; margin-bottom: 10px; }
.audio-kicker { display: flex; align-items: center; gap: 8px; color: var(--cyan); font: 9px var(--mono); letter-spacing: .13em; }
.audio-kicker .status-dot { width: 6px; height: 6px; }
.audio-heading strong { color: #edf6f5; font-size: 15px; letter-spacing: -.02em; }
.audio-sample audio { display: block; width: 100%; height: 42px; accent-color: var(--cyan); }
.audible-link { display: inline-flex; align-items: center; gap: 8px; margin-top: 10px; color: var(--acid); font: 9px var(--mono); letter-spacing: .07em; text-transform: uppercase; border-bottom: 1px solid rgba(182,243,107,.45); padding-bottom: 4px; }
.audible-link span { font-size: 13px; }
.book-link { display: inline-flex; align-items: center; gap: 12px; border-bottom: 1px solid #4b6068; padding: 8px 0; color: var(--cyan); font: 10px var(--mono); letter-spacing: .07em; text-transform: uppercase; }
.book-link span { color: var(--acid); font-size: 14px; }
.reviews { padding-block: 15px 100px; }
.reviews-heading { padding-bottom: 22px; border-bottom: 1px solid var(--line); }
.reviews-heading .eyebrow { margin-bottom: 14px; }
.reviews-heading h2 { margin-bottom: 0; font-size: clamp(30px,4vw,44px); }
.review-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; padding-top: 22px; }
.review-card { position: relative; margin: 0; padding: 26px 25px 22px; border: 1px solid #23333d; background: linear-gradient(140deg, rgba(22,35,45,.72), rgba(12,19,27,.82)); }
.quote-mark { position: absolute; top: 12px; right: 20px; color: rgba(105,230,244,.22); font: 56px/.9 var(--serif); }
.review-card blockquote { position: relative; margin: 0 0 24px; color: #c2cdd1; font: 16px/1.75 var(--serif); }
.review-card blockquote em { color: var(--ink); }
.review-card figcaption { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; color: var(--cyan); font: 10px var(--mono); letter-spacing: .06em; text-transform: uppercase; }
.review-card figcaption a { color: var(--acid); border-bottom: 1px solid #52654e; padding-bottom: 4px; }
.review-card figcaption a:hover { color: #d1ffa1; }
.about { min-height: 420px; position: relative; display: grid; grid-template-columns: .65fr 1.15fr .8fr; gap: 38px; align-items: center; padding-block: 45px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.about-label { align-self: start; color: var(--cyan); font: 10px/2 var(--mono); letter-spacing: .12em; }
.about-label .status-dot { margin-right: 8px; }.profile-id { margin-left: 14px; color: #62727d; }
.about-copy { max-width: 590px; }.about-copy h2 { margin: 18px 0; font-size: clamp(38px,4.4vw,57px); line-height: 1.08; }
.about-copy > p:not(.eyebrow) { max-width: 510px; color: #8c9aa2; font-size: 14px; line-height: 1.9; }
.about-portrait { position: relative; min-height: 340px; height: 100%; max-height: 390px; overflow: hidden; border: 1px solid rgba(105,230,244,.35); background: #08111a; box-shadow: 0 16px 40px rgba(0,0,0,.28); }
.about-portrait::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg,rgba(6,12,18,.26),transparent 42%),linear-gradient(90deg,rgba(8,12,18,.12),transparent 40%); pointer-events: none; }
.about-portrait img { display: block; width: 100%; height: 100%; min-height: 340px; object-fit: cover; object-position: center 23%; }
.contact { margin-top: 88px; background: #0e1820; border-top: 1px solid #253b45; border-bottom: 1px solid #253b45; }
.contact-inner { min-height: 305px; position: relative; padding-block: 53px; }
.contact h2 { margin: 17px 0 13px; font-size: clamp(38px,4.5vw,57px); line-height: 1.05; }.contact-inner > p:not(.eyebrow) { color: #91a0a8; font-size: 13px; }
.contact-link { display: inline-flex; align-items: center; gap: 18px; margin-top: 9px; color: var(--acid); font: 11px var(--mono); letter-spacing: .09em; text-transform: uppercase; border-bottom: 1px solid #52654e; padding-bottom: 8px; }
.contact-link span { font-size: 14px; }.contact-code { position: absolute; right: 15px; bottom: 45px; color: rgba(105,230,244,.34); font: 10px var(--mono); letter-spacing: .14em; }
.site-footer { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.site-footer > p { margin: 0; color: #62717a; font: 10px var(--mono); }
@media (max-width: 900px) {
  .book-grid { grid-template-columns: 1fr; }.book-card { grid-template-columns: minmax(180px,.8fr) 1fr; }.cover-art { min-height: 320px; }
  .about { grid-template-columns: .55fr 1fr .75fr; gap: 22px; }.about-portrait { min-height: 300px; }
}
@media (max-width: 700px) {
  .shell { width: min(100% - 40px, 560px); }.site-header { height: 72px; }.site-header nav { gap: 16px; font-size: 10px; }
  .hero { grid-template-columns: 1fr; gap: 36px; padding-block: 63px 92px; }.hero-visual { justify-self: center; height: 330px; }.hero-index { bottom: 33px; }
  .visual-center i { margin-left: 170px; margin-bottom: 177px; }.books { padding-bottom: 75px; }.section-top { align-items: flex-start; flex-direction: column; gap: 9px; }.section-aside { margin-bottom: 0; }.reviews { padding-bottom: 70px; }.review-grid { grid-template-columns: 1fr; }
  .book-card { grid-template-columns: minmax(120px,.8fr) 1fr; gap: 17px; padding: 13px; }.cover-art { min-height: 260px; }.book-info h3 { margin-top: 14px; }.book-info > p:not(.book-meta) { font-size: 13px; }
  .about { grid-template-columns: 1fr; gap: 27px; padding-block: 40px; }.about-label { order: 0; }.about-copy { order: 1; }.about-portrait { order: 2; min-height: 300px; height: 340px; max-height: none; }.about-portrait img { min-height: 300px; }.contact { margin-top: 60px; }.contact-code { bottom: 20px; right: 0; font-size: 8px; }.site-footer { flex-wrap: wrap; padding-block: 20px; }.site-footer > p:nth-child(2) { order: 3; width: 100%; }
}
@media (max-width: 410px) {
  .site-header nav { gap: 10px; }.wordmark { gap: 7px; font-size: 13px; }.book-card { grid-template-columns: 1fr; }.cover-art { min-height: 310px; }.book-info { padding: 5px 3px 8px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *,*::before,*::after { transition-duration: .01ms !important; } }

.cover-origins { border: 1px solid #6c2c0e; background: #210c05; }
.coming-soon { color: #ff9d21; border-bottom-color: #774117; cursor: default; }

.social-links { display: flex; align-items: center; gap: 18px; }
.social-links a { color: #91a0a8; font: 10px var(--mono); letter-spacing: .04em; }
.social-links a span { color: var(--cyan); margin-left: 4px; }
.social-links a:hover span { color: var(--acid); }
@media (max-width: 700px) { .social-links { order: 2; width: 100%; justify-content: flex-start; } .site-footer > p:nth-child(4) { order: 4; width: 100%; } }
