
/* Layout: candlelit single column of full-bleed bands. v2.4: every band sits on a real texture or painting instead of a flat colour; each series keeps its own world (Blairville walnut and feathers, Unreachable ink blue). Deliberately dark-only, like the covers. */
:root{
  --night:#060404; --walnut:#301D16; --line:#3A2A22;
  --ivory:#EDE3D6; --ash:#B8A898; --rose:#C7A79B; --candle:#D9A25F;
  --ink:#1A1F35; --ink-2:#1B293F; --ink-hi:#98AFE2; --ink-mute:#A9B6CF; --ink-text:#DCE3F0;
  --moss:#1D3A33; --moss-hi:#5FB3A1;
  --f-display:'Cinzel', 'Trajan Pro', Georgia, serif;
  --f-body:'EB Garamond', Garamond, Georgia, 'Times New Roman', serif;
  --f-sub:'Alice', Georgia, serif;
  --f-ur-sub:'Anaktoria', 'EB Garamond', Georgia, serif;
  --f-label:'Tenor Sans', 'Gill Sans', 'Trebuchet MS', sans-serif;
  --f-ink:'Bebas Neue', 'Oswald', Impact, sans-serif;
  --wrap:1180px; --gut:clamp(16px,4vw,40px);
  color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--night);color:var(--ivory);font-family:var(--f-body);font-size:18px;line-height:1.6}
img{max-width:100%;height:auto;display:block}
a{color:var(--rose)}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--candle);outline-offset:3px}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gut)}
.lbl{font-family:var(--f-label);font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--rose);margin:0}
.ttl{font-family:var(--f-display);font-weight:400;letter-spacing:.12em;text-transform:uppercase;margin:0;text-wrap:balance;line-height:1.25}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;font-family:var(--f-label);font-size:13px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;border:1px solid var(--rose);background:var(--rose);color:var(--night);transition:background .25s,color .25s,border-color .25s,box-shadow .35s,transform .25s;cursor:pointer}
.btn[aria-disabled="true"]{opacity:.55;pointer-events:none}
.todo{font-family:var(--f-label);font-size:10px;letter-spacing:.1em;color:var(--candle);vertical-align:super}

/* shared: a band with a photographic ground behind a tinted veil */
.ground{position:relative;overflow:hidden;isolation:isolate}
.ground>.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;max-width:none}
.ground::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}

.probe{background:var(--candle);color:var(--night);font-family:var(--f-label);font-size:12px;letter-spacing:.06em;text-align:center;padding:8px var(--gut)}

/* header */
header.site{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:rgba(6,4,4,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(6px)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px}
.bar .brand{padding-block:6px;display:flex;align-items:center;gap:10px;text-decoration:none}
.bar .brand img{height:34px;width:auto;display:block}
.bar .brand img.word{height:17px;opacity:.95}
@media (max-width:820px){.bar .brand{gap:9px}.bar .brand img{height:30px}.bar .brand img.word{height:15px}}
nav.main ul{list-style:none;margin:0;padding:0;display:flex;gap:28px}
nav.main a{font-family:var(--f-display);font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--ivory);text-decoration:none;padding:12px 0;display:inline-block}
nav.main a:hover,nav.main a[aria-current]{color:var(--rose)}
details.menu{display:none}
details.menu summary{list-style:none;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer}
details.menu summary::-webkit-details-marker{display:none}
details.menu ul{position:absolute;left:0;right:0;top:100%;background:var(--night);border-bottom:1px solid var(--line);list-style:none;margin:0;padding:8px var(--gut) 20px}
details.menu a{display:block;padding:14px 0;font-family:var(--f-display);letter-spacing:.18em;text-transform:uppercase;font-size:14px;color:var(--ivory);text-decoration:none;border-bottom:1px solid var(--line)}
@media (max-width:820px){nav.main{display:none}details.menu{display:block}}

/* stage: Maezosverse painting */
.stage{position:relative;overflow:hidden;isolation:isolate;text-align:center}
.stage picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%;z-index:-2}
.stage::after{content:"";position:absolute;inset:0;z-index:-1;background:
  radial-gradient(ellipse at 50% 42%,rgba(6,4,4,.35) 0%,rgba(6,4,4,.72) 70%),
  linear-gradient(180deg,rgba(6,4,4,.55) 0%,rgba(6,4,4,.25) 35%,rgba(6,4,4,.7) 72%,var(--night) 100%)}
.stage .inner{min-height:min(60vh,540px);padding-block:clamp(56px,7vw,96px) clamp(72px,8vw,112px);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:clamp(16px,2.4vw,28px)}
.stage .eyebrow{color:var(--ivory);opacity:.85;text-shadow:0 2px 12px rgba(0,0,0,.8)}
.stage h1{font-size:clamp(38px,6.6vw,88px);letter-spacing:.14em;line-height:1.1;color:var(--ivory);text-shadow:0 4px 30px rgba(0,0,0,.85),0 1px 3px rgba(0,0,0,.9);max-width:9em}
.stage .lead{margin:0;max-width:32em;font-size:clamp(18px,2vw,23px);line-height:1.55;text-shadow:0 2px 14px rgba(0,0,0,.95)}
.credit{position:absolute;right:var(--gut);bottom:14px;margin:0;font-family:var(--f-label);font-size:11px;letter-spacing:.12em;color:var(--ash);opacity:.8}
.credit a{color:var(--ash)}
.row{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.ku{font-family:var(--f-label);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ash);margin:0}
@media (max-width:700px){.stage .inner{min-height:0}.stage h1{letter-spacing:.08em}.credit{left:var(--gut);text-align:center}}

/* timeline on fine dust */
.verse{padding-block:0 clamp(72px,9vw,112px);text-align:center}
.verse>.bg{opacity:.9}
.verse::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.35) 22%,rgba(6,4,4,.35) 78%,var(--night) 100%)}
.verse .ttl{font-size:clamp(20px,2.4vw,28px);margin-top:10px}
.tl{list-style:none;margin:40px 0 36px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:relative}
.tl::before{content:"";position:absolute;left:0;right:0;top:28px;height:1px;background:var(--line)}
.tl li{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;padding-inline:12px;min-width:0}
.node{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;font-family:var(--f-display);font-size:16px;margin-bottom:14px;background:var(--night)}
.n1{border:1px solid var(--moss-hi);background:var(--moss);color:var(--ivory)}
.n2{border:1px solid var(--rose);background:var(--walnut);color:var(--ivory)}
.n3{border:1px dashed var(--ash);color:var(--ash)}
.tl .name{font-family:var(--f-display);font-size:clamp(17px,2vw,24px);letter-spacing:.1em;text-transform:uppercase;text-wrap:balance}
.tl .era{font-family:var(--f-label);font-size:11px;letter-spacing:.2em;text-transform:uppercase}
.tl .line{font-size:16px;color:var(--ash);margin:0}
/* v698 (07.11.2026): the three era lines carry the colour of their series: Botanink green, Blairville Legacies brown, Project O blue (same tones as the hover glow of the names) */
.e1{color:var(--moss-hi)} .e2{color:#D9A070} .e3{color:#A9C2F5}
@media (max-width:720px){
  .tl{grid-template-columns:1fr;gap:36px;text-align:left;margin-inline:auto;max-width:420px}
  .tl::before{left:27px;right:auto;top:0;bottom:0;width:1px;height:auto}
  .tl li{display:grid;grid-template-columns:56px 1fr;column-gap:20px;align-items:start;padding:0}
  .tl .node{grid-row:span 3;margin:0}
  .tl li>*:not(.node){justify-self:start}
}

/* new release: Book III painting, cover sits in the right half of the artwork */
.release{min-height:clamp(520px,52vw,720px);display:flex;align-items:center;padding-block:clamp(72px,8vw,112px)}
.release>.bg{object-position:70% 50%}
.release::before{background:linear-gradient(90deg,rgba(6,4,4,.82) 0%,rgba(6,4,4,.55) 38%,rgba(6,4,4,0) 60%),linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,0) 14%,rgba(6,4,4,0) 86%,var(--night) 100%)}
.release .wrap{width:100%}
.release .copy{display:flex;flex-direction:column;gap:18px;max-width:30em;min-width:0}
.release .copy>img{display:none}
.date{font-family:var(--f-display);font-size:clamp(34px,5vw,60px);letter-spacing:.06em;color:var(--candle);margin:0;line-height:1.1}
@media (max-width:820px){
  .release{min-height:0;text-align:center}
  .release{background:var(--walnut) url("https://static.wixstatic.com/media/5e8914_ce405eb8963b4fd88bed81f468414637~mv2.webp") center/cover}
  .release::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.35) 20%,rgba(6,4,4,.35) 80%,var(--night) 100%)}
  .release .copy{margin-inline:auto;align-items:center}
  .release .copy>img{display:block;width:min(240px,62vw);box-shadow:0 30px 60px rgba(0,0,0,.6)}
}

/* series: feathers from Book I */
.series{padding-block:clamp(80px,10vw,128px)}
.series>.bg{object-position:50% 30%}
.series::before{background:linear-gradient(180deg,var(--night) 0%,rgba(48,29,22,.78) 18%,rgba(48,29,22,.78) 82%,var(--night) 100%)}
.series .head{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}
.series .head img{width:min(600px,88vw)}
.series .tag{margin:0;max-width:32em;font-style:italic;font-size:clamp(18px,2vw,21px)}
.books{list-style:none;margin:56px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,4vw,48px)}
.books li{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;min-width:0}
.books a.cover{display:block;width:100%;max-width:280px}
.books a.cover img{width:100%;aspect-ratio:2/3;object-fit:cover;box-shadow:0 24px 48px rgba(0,0,0,.6);transition:transform .45s ease}
.books .name{font-size:21px;line-height:1.3}
.meta{font-family:var(--f-label);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ash);font-variant-numeric:tabular-nums}
.meta.soon{color:var(--candle)}
.cw{margin:48px auto 0;max-width:40em;text-align:center;font-size:15px;color:var(--ash)}
@media (max-width:640px){.books{gap:12px}.books .name{font-size:15px}.meta{font-size:9px;letter-spacing:.1em}}

/* unreachable: its own ink-blue night */
.unreach{color:var(--ink-text);padding-block:clamp(80px,10vw,128px);background:var(--ink)}
.unreach::before{background:linear-gradient(180deg,var(--night) 0%,rgba(26,31,53,.45) 16%,rgba(26,31,53,.55) 84%,var(--night) 100%)}
.unreach .grid{display:grid;grid-template-columns:minmax(0,360px) minmax(0,1fr);gap:clamp(32px,6vw,72px);align-items:center}
.unreach .mock{filter:drop-shadow(0 30px 40px rgba(0,0,0,.55));width:100%}
.unreach .copy{display:flex;flex-direction:column;gap:18px;min-width:0}
.unreach .lbl{color:var(--ink-mute)}
.unreach .wm{width:100%;max-width:440px}
.unreach .genre{font-family:var(--f-ink);font-size:22px;letter-spacing:.28em;color:var(--ink-hi);margin:0}
.unreach .ur-quote{width:min(300px,70vw);height:auto;opacity:.92;margin:4px 0}
.unreach .tag{font-size:clamp(19px,2vw,22px);font-style:italic;margin:0}
.syms{display:flex;gap:22px;align-items:flex-end}
.syms img{height:52px;width:auto;opacity:.85}
.btn.ink{background:var(--ink-hi);border-color:var(--ink-hi);color:var(--ink);font-family:var(--f-ink);font-size:19px;letter-spacing:.2em}
.unreach .ku{color:var(--ink-mute)}
@media (max-width:720px){.unreach .grid{grid-template-columns:1fr;justify-items:center;text-align:center}.unreach .mock{max-width:240px}.unreach .copy{align-items:center}.syms{justify-content:center}}

/* join: books by candlelight */
.join{padding-block:clamp(80px,10vw,128px)}
.join>.bg{object-position:60% 50%}
.join::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.45) 20%,rgba(6,4,4,.45) 80%,var(--night) 100%)}
.join .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.panel{background:rgba(6,4,4,.8);border:1px solid var(--line);padding:clamp(24px,4vw,44px);display:flex;flex-direction:column;gap:16px;min-width:0;backdrop-filter:blur(2px)}
.panel .ttl{font-size:clamp(22px,2.6vw,30px)}
.panel p{margin:0}
.panel .small{font-size:15px;color:var(--ash)}
form.nl{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
form.nl label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
form.nl input{flex:1 1 220px;min-width:0;min-height:48px;padding:0 16px;background:var(--night);border:1px solid var(--line);color:var(--ivory);font-family:var(--f-body);font-size:17px}
form.nl input::placeholder{color:var(--ash)}
.note{font-family:var(--f-label);font-size:12px;letter-spacing:.08em;color:var(--candle);min-height:1em;margin:0}
@media (max-width:760px){.join .grid{grid-template-columns:1fr}}

/* footer on dark leather */
footer.site{padding-block:64px 40px;text-align:center;border-top:1px solid var(--line);background:var(--walnut)}
footer.site::before{background:rgba(26,15,11,.82)}
footer .inner{display:flex;flex-direction:column;align-items:center;gap:24px}
footer .inner>img{height:26px;width:auto}
footer ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 26px}
footer a{font-family:var(--f-label);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ivory);text-decoration:none;display:inline-block;padding:8px 0}
footer a:hover{color:var(--rose)}
footer .legal{font-family:var(--f-label);font-size:12px;letter-spacing:.12em;color:var(--ash);margin:0}
footer .legal a{font-size:12px;color:var(--ash)}

.release .row,.unreach .row{justify-content:flex-start}
@media (max-width:820px){.release .row{justify-content:center}}
@media (max-width:720px){
  .unreach .row{justify-content:center}
  .unreach .genre{font-size:18px;letter-spacing:.18em}
  .btn.ink{font-size:17px;letter-spacing:.14em}
  .syms img{height:44px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ---------- subpages ---------- */
/* nav dropdown for Books */
nav.main li{position:relative}
nav.main .sub{position:absolute;left:-18px;top:100%;min-width:260px;background:var(--night);border:1px solid var(--line);padding:8px 18px;display:none;flex-direction:column;gap:0}
nav.main li:hover>.sub,nav.main li:focus-within>.sub{display:flex}
nav.main .sub a{padding:10px 0;font-size:12px;border-bottom:1px solid var(--line)}
nav.main .sub li:last-child a{border-bottom:0}
details.menu .indent a{padding-left:18px;font-size:13px;color:var(--ash)}

/* page head */
.phead{padding-block:clamp(72px,9vw,120px) clamp(48px,6vw,72px);text-align:center}
.phead>.bg{opacity:.55}
.phead::before{background:linear-gradient(180deg,rgba(6,4,4,.4) 0%,var(--night) 100%)}
.phead .wrap{display:flex;flex-direction:column;align-items:center;gap:18px}
.phead h1{font-size:clamp(34px,5.4vw,64px)}
.phead .lead{margin:0;max-width:34em;font-size:clamp(18px,2vw,21px);color:var(--ivory)}

/* video header placeholder (series pages) */
.vhead{aspect-ratio:16/7;min-height:280px;max-height:640px;width:100%;display:grid;place-items:center;text-align:center}
.vhead>.bg{opacity:.9}
.vhead::before{background:radial-gradient(ellipse at 50% 50%,rgba(6,4,4,.15) 0%,rgba(6,4,4,.65) 80%),linear-gradient(180deg,rgba(6,4,4,0) 70%,var(--night) 100%)}
.vhead .play{width:76px;height:76px;border-radius:50%;border:1px solid var(--ivory);display:grid;place-items:center;background:rgba(6,4,4,.45);margin-inline:auto}
.vhead .vnote{margin:14px 0 0;font-family:var(--f-label);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--candle)}
@media (max-width:700px){.vhead{aspect-ratio:4/5;max-height:none}}

/* generic content band */
.band{padding-block:clamp(64px,8vw,104px)}
.band.tight{padding-block:clamp(40px,5vw,64px)}
.band .center{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}
.band h2.ttl{font-size:clamp(24px,3.2vw,36px)}
.prose{max-width:36em;margin-inline:auto}
.prose p{margin:0 0 1em}

/* book rows */
.blist{list-style:none;margin:48px 0 0;padding:0;display:flex;flex-direction:column;gap:clamp(48px,6vw,80px)}
.brow{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:clamp(24px,5vw,64px);align-items:center}
.brow img.cv{width:100%;box-shadow:0 26px 52px rgba(0,0,0,.6)}
.brow .copy{display:flex;flex-direction:column;gap:14px;min-width:0}
.brow h3{font-family:var(--f-display);font-weight:400;font-size:clamp(24px,3vw,34px);letter-spacing:.08em;margin:0;text-wrap:balance}
.brow .tagline{margin:0;font-style:italic;font-size:clamp(18px,2vw,21px)}
.brow .row{justify-content:flex-start}
@media (max-width:720px){.brow{grid-template-columns:1fr;justify-items:center;text-align:center}.brow img.cv{max-width:220px}.brow .copy{align-items:center}.brow .row{justify-content:center}}

/* series cards on books page */
.scards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:48px}
.scard{border:1px solid var(--line);padding:clamp(24px,4vw,40px);display:flex;flex-direction:column;gap:16px;min-width:0;background:rgba(6,4,4,.72)}
.scard.ink{background:rgba(26,31,53,.85);border-color:#2B3A5C;color:var(--ink-text)}
.scard.ink .lbl{color:var(--ink-mute)}
.scard .covers{display:flex;gap:12px;align-items:flex-end}
.scard .covers img{width:calc((100% - 24px)/3);box-shadow:0 14px 28px rgba(0,0,0,.55)}
.scard.ink .covers img{width:46%}
.scard h2{font-family:var(--f-display);font-weight:400;font-size:clamp(22px,2.6vw,30px);letter-spacing:.1em;text-transform:uppercase;margin:0}
.scard p{margin:0}
.scard .row{justify-content:flex-start;margin-top:auto}
@media (max-width:760px){.scards{grid-template-columns:1fr}}

.someday{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px}
.sd{padding:clamp(24px,4vw,36px);border:1px solid var(--line);display:flex;flex-direction:column;gap:10px;min-width:0}
.sd.moss{background:var(--moss);border-color:#2C5A4F}
.sd.moss .lbl{color:var(--moss-hi)}
.sd.dark{border-style:dashed;color:var(--ash)}
.sd h3{font-family:var(--f-display);font-weight:400;font-size:clamp(22px,2.4vw,28px);letter-spacing:.12em;text-transform:uppercase;margin:0}
.sd p{margin:0}
@media (max-width:640px){.someday{grid-template-columns:1fr}}

/* content warnings */
details.cwbox{max-width:44em;margin:40px auto 0;border:1px solid var(--line);background:rgba(6,4,4,.6)}
details.cwbox summary{cursor:pointer;padding:16px 20px;font-family:var(--f-label);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--rose);list-style:none;display:flex;justify-content:space-between;gap:12px}
details.cwbox summary::-webkit-details-marker{display:none}
details.cwbox summary::after{content:"+";font-size:16px}
details.cwbox[open] summary::after{content:"−"}
details.cwbox p{margin:0;padding:0 20px 20px;font-size:16px;color:var(--ash)}

/* art gallery */
.gal{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:40px;align-items:start}
.gal.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.gal figure{margin:0;display:flex;flex-direction:column;gap:8px;min-width:0}
.gal img{width:100%;aspect-ratio:4/5;object-fit:cover;box-shadow:0 18px 36px rgba(0,0,0,.5)}
.gal figcaption{font-family:var(--f-label);font-size:11px;letter-spacing:.12em;color:var(--ash)}
.gal figcaption a{color:var(--ash)}
@media (max-width:820px){.gal,.gal.three{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* crest strip */
.crest{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:clamp(24px,5vw,56px);align-items:center;max-width:820px;margin-inline:auto}
.crest img{width:100%;opacity:.9}
.crest .copy{display:flex;flex-direction:column;gap:12px;min-width:0}
.crest .copy p{margin:0}
@media (max-width:640px){.crest{grid-template-columns:1fr;justify-items:center;text-align:center}.crest img{max-width:150px}}

/* unreachable page: whole page in ink */
body.ur{background:#0E1424}
.ur .phead::before,.ur .vhead::before{background:radial-gradient(ellipse at 50% 50%,rgba(14,20,36,.1) 0%,rgba(14,20,36,.6) 80%),linear-gradient(180deg,rgba(14,20,36,0) 70%,#0E1424 100%)}
.ur .band{color:var(--ink-text)}
.ur .lbl{color:var(--ink-mute)}
.ur .ttl{color:var(--ink-text)}
.parts{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.parts li{border:1px solid #2B3A5C;background:rgba(26,31,53,.7);padding:28px 20px;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;min-width:0}
.parts img{height:80px;width:auto;opacity:.9}
.parts .pn{font-family:var(--f-ink);font-size:24px;letter-spacing:.2em;color:var(--ink-hi)}
@media (max-width:640px){.parts{grid-template-columns:1fr}}
.ur .gal figcaption,.ur .gal figcaption a{color:var(--ink-mute)}
.ur details.cwbox{border-color:#2B3A5C;background:rgba(14,20,36,.7)}
.ur details.cwbox summary{color:var(--ink-hi)}

/* FAQ */
.faq{max-width:46em;margin:40px auto 0;display:flex;flex-direction:column;gap:12px}
.faq details{border:1px solid var(--line);background:rgba(48,29,22,.45)}
.faq summary{cursor:pointer;padding:18px 22px;font-family:var(--f-display);font-size:clamp(16px,1.8vw,19px);letter-spacing:.06em;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--rose)}
.faq details[open] summary::after{content:"−"}
.faq .a{padding:0 22px 20px}
.faq .a p{margin:0 0 .8em}

/* about */
.about{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:clamp(32px,6vw,72px);align-items:center}
.about figure{margin:0;display:flex;flex-direction:column;gap:8px}
.about figure img{width:100%;box-shadow:0 26px 52px rgba(0,0,0,.6)}
.about figcaption{font-family:var(--f-label);font-size:11px;letter-spacing:.12em;color:var(--ash)}
.about figcaption a{color:var(--ash)}
.about .copy{display:flex;flex-direction:column;gap:18px;min-width:0}
.about .bio{font-size:clamp(18px,1.9vw,21px);margin:0}
.about .bio strong{font-family:var(--f-display);font-weight:400;letter-spacing:.1em}
.links{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.links a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid var(--line);font-family:var(--f-label);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ivory);text-decoration:none}
.links a:hover{border-color:var(--rose);color:var(--rose)}
@media (max-width:760px){.about{grid-template-columns:1fr;justify-items:center;text-align:center}.about figure{max-width:300px}.about .copy{align-items:center}.links{justify-content:center}}

/* contact */
form.cf{max-width:36em;margin:40px auto 0;display:flex;flex-direction:column;gap:16px}
form.cf label{font-family:var(--f-label);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--rose);display:flex;flex-direction:column;gap:8px}
form.cf input,form.cf textarea{min-height:48px;padding:12px 16px;background:var(--night);border:1px solid var(--line);color:var(--ivory);font-family:var(--f-body);font-size:17px;text-transform:none;letter-spacing:0;width:100%}
form.cf textarea{min-height:160px;resize:vertical}
form.cf .btn{align-self:flex-start}

/* legal */
.legalbox{max-width:40em;margin:24px auto 0;border:1px dashed var(--line);padding:24px;color:var(--ash)}
.legalbox p{margin:0}

/* ---------- footer v2 (structure after nicolefiorina.com: brand + two link columns + newsletter, rule, socials, legal) ---------- */
footer.site{background:#0a0706;text-align:left;padding-block:clamp(64px,8vw,96px) 32px;border-top:1px solid var(--line);box-shadow:inset 0 28px 48px -24px rgba(0,0,0,.85)}
footer.site>.bg{opacity:.35}
footer.site::before{background:linear-gradient(180deg,rgba(6,4,4,.2) 0%,rgba(6,4,4,.75) 100%)}
.ft-top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1.2fr);gap:clamp(32px,5vw,64px);align-items:start}
.ft-brand{display:flex;flex-direction:column;gap:20px;min-width:0}
.ft-brand .logo{display:flex;align-items:center;gap:12px}
.ft-brand .logo img{height:38px;width:auto}
.ft-brand .logo img.word{height:18px}
.ft-brand p{margin:0;font-family:var(--f-label);font-size:12px;letter-spacing:.08em;color:var(--ash);line-height:1.9}
.ft-col{display:flex;flex-direction:column;gap:14px;min-width:0}
.ft-h{margin:0;font-family:var(--f-body);font-style:italic;font-size:20px;color:var(--rose);letter-spacing:.01em}
.ft-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
footer.site .ft-col a,footer.site .ft-legal a{font-family:var(--f-label);font-size:13px;letter-spacing:.06em;text-transform:none;color:var(--ivory);text-decoration:underline;text-decoration-color:rgba(199,167,155,.45);text-underline-offset:5px;padding:2px 0;display:inline}
footer.site .ft-col a:hover,footer.site .ft-legal a:hover{color:var(--rose);text-decoration-color:var(--rose)}
.ft-col .muted{color:var(--ash);font-family:var(--f-label);font-size:13px;letter-spacing:.06em}
.ft-nl{grid-column:1 / -1;display:flex;flex-direction:column;gap:14px;padding-left:clamp(0px,3vw,40px);border-left:1px solid var(--line);max-width:520px;margin-top:8px}
.ft-nl form{display:flex;gap:0;background:var(--ivory);padding:6px;box-shadow:0 14px 30px rgba(0,0,0,.45)}
.ft-nl label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.ft-nl input{flex:1 1 auto;min-width:0;min-height:46px;border:0;background:transparent;padding:0 14px;font-family:var(--f-label);font-size:14px;color:var(--night)}
.ft-nl input::placeholder{color:#6B5A50}
.ft-nl button{min-height:46px;padding:0 22px;border:0;background:var(--night);color:var(--ivory);font-family:var(--f-label);font-size:12px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.ft-nl .note{margin:0}
.ft-rule{height:1px;background:var(--line);margin:clamp(40px,5vw,64px) 0 32px;border:0}
.ft-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}
.ft-social{list-style:none;margin:0;padding:0;display:flex;gap:6px}
footer.site .ft-social a{display:grid;place-items:center;width:44px;height:44px;padding:0;color:var(--ivory)}
footer.site .ft-social a:hover{color:var(--rose)}
.ft-social svg{width:20px;height:20px}
.ft-legal{margin:0;font-family:var(--f-label);font-size:12px;color:var(--ash);display:flex;flex-wrap:wrap;gap:6px 18px}
footer.site .ft-legal a{font-size:12px;color:var(--ash)}
@media (max-width:860px){.ft-top{grid-template-columns:repeat(2,minmax(0,1fr))}.ft-brand{grid-column:1 / -1}}
@media (max-width:560px){.ft-top{grid-template-columns:1fr}.ft-nl{padding-left:16px}.ft-bottom{flex-direction:column;align-items:flex-start}}

/* legal texts */
.legal-doc{max-width:44em;margin-inline:auto;text-align:left}
.legal-doc h2{font-family:var(--f-display);font-weight:400;font-size:clamp(20px,2.4vw,26px);letter-spacing:.08em;text-transform:uppercase;margin:2.2em 0 .6em;text-wrap:balance}
.legal-doc h3{font-family:var(--f-label);font-weight:400;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--rose);margin:1.8em 0 .5em}
.legal-doc p,.legal-doc li{font-size:17px;line-height:1.65}
.legal-doc p{margin:0 0 1em}
.legal-doc ul{margin:0 0 1em;padding-left:1.2em}
.legal-doc address{font-style:normal;margin:0 0 1em;line-height:1.7}
.legal-doc .stamp{font-family:var(--f-label);font-size:12px;letter-spacing:.12em;color:var(--ash)}
.legal-doc .todo-note{color:var(--candle)}
.legal-toc{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:8px}

/* home hero v2.9: Blairville arrival. Taller painting, light veil only behind the text, Umbra sigil, embers, staged reveal */
.stage.hero{min-height:min(92vh,940px);display:flex}
.stage.hero picture img{object-position:50% 30%;animation:drift 26s ease-in-out infinite alternate;transform-origin:50% 62%}
@keyframes drift{from{transform:scale(1.02)}to{transform:scale(1.09) translateY(-1%)}}
.stage.hero::after{background:
  radial-gradient(ellipse 58% 50% at 50% 30%,rgba(3,2,2,.82) 0%,rgba(3,2,2,.55) 45%,rgba(3,2,2,.18) 75%,rgba(3,2,2,0) 100%),
  linear-gradient(180deg,rgba(6,4,4,.7) 0%,rgba(6,4,4,.3) 32%,rgba(6,4,4,.1) 55%,rgba(6,4,4,.25) 80%,var(--night) 100%)}
.stage.hero .inner{position:relative}
.stage.hero .inner::before{content:"";position:absolute;left:50%;top:44%;width:min(1000px,96vw);height:78%;transform:translate(-50%,-50%);z-index:-1;pointer-events:none;
  background:radial-gradient(closest-side,rgba(2,1,1,.62),rgba(2,1,1,.32) 55%,rgba(2,1,1,0));filter:blur(8px)}
.stage.hero .inner{min-height:0;width:100%;padding-block:clamp(28px,3.6vw,48px) clamp(170px,26vh,280px);gap:clamp(10px,1.3vw,16px)}
.stage.hero .sigil{width:clamp(66px,6.4vw,92px);position:relative;margin-bottom:4px}
.stage.hero .sigil::before{content:"";position:absolute;inset:-60%;background:radial-gradient(circle,rgba(152,175,226,.32) 0%,rgba(152,175,226,0) 62%);animation:breathe 4.5s ease-in-out infinite;z-index:-1}
.stage.hero .sigil img{width:100%;opacity:.88;filter:drop-shadow(0 0 10px rgba(152,175,226,.55)) drop-shadow(0 2px 6px rgba(0,0,0,.9))}
@keyframes breathe{0%,100%{opacity:.55;transform:scale(.92)}50%{opacity:1;transform:scale(1.06)}}
.stage.hero .lead{font-style:italic;letter-spacing:.02em;text-shadow:0 0 18px rgba(0,0,0,1),0 2px 4px rgba(0,0,0,1)}
.stage.hero .lead span{display:inline-block}
.stage.hero h1.wm-bv{margin:0;max-width:none;letter-spacing:0;line-height:0}
.stage.hero h1.wm-bv img{width:clamp(250px,36vw,520px);filter:drop-shadow(0 0 18px rgba(0,0,0,.95)) drop-shadow(0 2px 3px rgba(0,0,0,.9))}
.stage.hero .motto{margin:0;font-family:var(--f-label);font-size:clamp(11px,1.05vw,13px);letter-spacing:.26em;text-transform:uppercase;color:var(--ivory);opacity:.9;text-shadow:0 0 12px rgba(0,0,0,1),0 1px 3px rgba(0,0,0,1)}
.stage.hero .motto span{display:inline-block;margin:0 .9em;color:var(--candle)}
.stage.hero .cta{margin-top:clamp(6px,1vw,14px)}
.stage.hero .ku{text-shadow:0 1px 8px rgba(0,0,0,1);color:var(--ivory);opacity:.75}
/* embers: echo the glowing flowers in the painting */
.embers{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.embers i{position:absolute;bottom:-10px;width:4px;height:4px;border-radius:50%;background:#FFE3B0;box-shadow:0 0 8px 2px rgba(217,162,95,.8);opacity:0;animation:rise 10s linear infinite}
.embers i:nth-child(1){left:8%;animation-delay:0s}.embers i:nth-child(2){left:17%;animation-delay:5s;animation-duration:17s}
.embers i:nth-child(3){left:26%;animation-delay:9s}.embers i:nth-child(4){left:34%;animation-delay:2s;animation-duration:19s}
.embers i:nth-child(5){left:41%;animation-delay:11s;width:3px;height:3px}.embers i:nth-child(6){left:47%;animation-delay:6.5s;animation-duration:16s}
.embers i:nth-child(7){left:55%;animation-delay:1s;width:3px;height:3px}.embers i:nth-child(8){left:61%;animation-delay:8s;animation-duration:18s}
.embers i:nth-child(9){left:68%;animation-delay:3.5s}.embers i:nth-child(10){left:74%;animation-delay:12s;animation-duration:15s}
.embers i:nth-child(11){left:81%;animation-delay:7s;width:3px;height:3px}.embers i:nth-child(12){left:88%;animation-delay:4s;animation-duration:20s}
.embers i:nth-child(13){left:93%;animation-delay:10s}.embers i:nth-child(14){left:3%;animation-delay:13s;animation-duration:17s}
@keyframes rise{0%{transform:translate(0,0);opacity:0}10%{opacity:.9}50%{transform:translate(18px,-38vh)}80%{opacity:.6}100%{transform:translate(-10px,-72vh);opacity:0}}
/* scroll cue: a thin line that drips down */
.descend{position:absolute;left:50%;bottom:22px;width:24px;height:54px;margin-left:-12px;display:flex;justify-content:center}
.descend span{width:1px;height:100%;background:linear-gradient(180deg,rgba(237,227,214,0),rgba(237,227,214,.8));animation:drip 2.6s ease-in-out infinite;transform-origin:top}
@keyframes drip{0%{transform:scaleY(0);opacity:1}60%{transform:scaleY(1);opacity:1}100%{transform:scaleY(1);opacity:0}}
/* staged reveal: told like a story */
@keyframes rv{from{opacity:0;transform:translateY(10px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
.stage.hero .sigil,.stage.hero .lead span,.stage.hero h1.wm-bv,.stage.hero .motto,.stage.hero .cta,.stage.hero .ku{animation:rv .8s cubic-bezier(.2,.7,.2,1) both}
.stage.hero .sigil{animation-delay:.05s}
.stage.hero .lead span:nth-child(1){animation-delay:.3s}.stage.hero .lead span:nth-child(2){animation-delay:.65s}
.stage.hero h1.wm-bv{animation:rvw 1.1s cubic-bezier(.2,.7,.2,1) 1.15s both}
@keyframes rvw{from{opacity:0;letter-spacing:.2em;filter:blur(10px);transform:scale(1.06)}to{opacity:1;filter:none;transform:none}}
.stage.hero .motto{animation-delay:1.85s}.stage.hero .cta{animation-delay:2.1s}.stage.hero .ku{animation-delay:2.25s}
@media (max-width:700px){
  .stage.hero{min-height:min(88vh,760px)}
  .stage.hero picture img{object-position:50% 60%}
  .stage.hero .inner{padding-block:28px 120px}
  .stage.hero .motto span{display:block;height:0;overflow:hidden;margin:0}
  .stage.hero .motto{line-height:2}
  .stage.hero .cta .btn{width:100%;max-width:320px}
  .descend{display:none}
}
@media (prefers-reduced-motion:reduce){
  .stage.hero *,.stage.hero picture img,.stage.hero .sigil::before{animation:none!important}
  .embers{display:none}
}

/* v3.1 atmosphere: Umbra edge ornaments (added by fx.js; never on or next to Unreachable). .sky-embers and .orn-divider are parked for later, currently unused. */
.sky-embers{position:fixed;inset:0;z-index:5;pointer-events:none;overflow:hidden}
.sky-embers i{position:absolute;bottom:-12px;border-radius:50%;background:#FFE3B0;box-shadow:0 0 7px 2px rgba(217,162,95,.7);opacity:0;animation:skyrise linear infinite}
.sky-embers.ink i{background:#DCE6FF;box-shadow:0 0 7px 2px rgba(152,175,226,.7)}
@keyframes skyrise{0%{transform:translate(0,0);opacity:0}8%{opacity:.75}50%{transform:translate(var(--sway),-55vh);opacity:.55}100%{transform:translate(calc(var(--sway)*-0.5),-108vh);opacity:0}}
section.has-orn{position:relative;isolation:isolate;overflow:hidden}
.orn-edge{position:absolute;z-index:-1;pointer-events:none;max-width:none;opacity:0;transition:opacity 2.4s ease,transform 2.4s ease}
.orn-edge.in{opacity:.13}
.orn-edge.l{left:clamp(-90px,-4vw,-20px);top:12%;transform:translateY(24px)}
.orn-edge.r{right:clamp(-90px,-4vw,-20px);bottom:8%;transform:translateY(24px)}
.orn-edge.in.l,.orn-edge.in.r{transform:none;animation:orn-float 14s ease-in-out infinite alternate}
@keyframes orn-float{from{translate:0 0;rotate:-1.5deg}to{translate:0 -16px;rotate:1.5deg}}
.orn-edge.orn-umbra-glyph-v{height:min(78%,560px);width:auto}
.orn-edge.orn-umbra-vortex-v{height:min(80%,520px);width:auto}
.orn-edge.orn-umbra-glyph-d{height:min(60%,420px);width:auto}
.orn-edge.orn-umbra-swirl,.orn-edge.orn-umbra-sun-eye{width:clamp(220px,28vw,440px);height:auto}
.orn-divider{display:flex;justify-content:center;padding:0;margin:-14px 0;position:relative;z-index:2;pointer-events:none;height:28px;overflow:visible}
.orn-divider img{width:clamp(180px,26vw,340px);height:auto;margin-top:-30px;opacity:0;transition:opacity 2s ease,transform 2s ease;transform:scaleX(.6)}
.orn-divider.in img{opacity:.42;transform:none;filter:drop-shadow(0 0 6px rgba(217,162,95,.35))}
@media (max-width:700px){.orn-edge.in{opacity:.08}.orn-edge.orn-umbra-swirl,.orn-edge.orn-umbra-sun-eye{width:200px}}
@media (prefers-reduced-motion:reduce){.orn-edge.in.l,.orn-edge.in.r{animation:none}}

/* ---------- buttons v3.2: one system, readable in every state ----------
   primary: rose fill, dark text -> hover candle fill, dark text, warm glow
   ghost:   dark glass, ivory text -> hover candle border + candle text, faint warm fill (never dark-on-dark)
   ink:     Unreachable blue fill, dark ink text -> hover ivory fill, ink text, blue glow
   all:     light sweep across on hover, 1px lift, press-down; still under reduced motion */
.btn{position:relative;overflow:hidden;isolation:isolate;gap:10px}
.btn::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(110deg,transparent 30%,rgba(255,244,225,.45) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s ease}
.btn:hover::after,.btn:focus-visible::after{transform:translateX(120%)}
.btn:hover,.btn:focus-visible{background:var(--candle);border-color:var(--candle);color:var(--night);transform:translateY(-1px);box-shadow:0 8px 24px rgba(217,162,95,.28),0 0 0 1px rgba(217,162,95,.35)}
.btn:active{transform:translateY(0);box-shadow:0 2px 8px rgba(217,162,95,.25)}
.btn.ghost{background:rgba(6,4,4,.45);color:var(--ivory);border-color:rgba(199,167,155,.8);backdrop-filter:blur(3px)}
.btn.ghost::after{background:linear-gradient(110deg,transparent 30%,rgba(217,162,95,.22) 50%,transparent 70%)}
.btn.ghost:hover,.btn.ghost:focus-visible{background:rgba(217,162,95,.14);border-color:var(--candle);color:#F3C98B;box-shadow:0 8px 24px rgba(0,0,0,.35),0 0 18px rgba(217,162,95,.22)}
.btn.ink:hover,.btn.ink:focus-visible{background:var(--ivory);border-color:var(--ivory);color:var(--ink);box-shadow:0 8px 24px rgba(152,175,226,.3),0 0 0 1px rgba(152,175,226,.4)}
.btn.ink::after{background:linear-gradient(110deg,transparent 30%,rgba(220,230,255,.6) 50%,transparent 70%)}
.btn[aria-disabled="true"]{box-shadow:none;transform:none}
.ft-nl button{transition:background .25s,color .25s}
.ft-nl button:hover,.ft-nl button:focus-visible{background:var(--candle);color:var(--night)}
@media (prefers-reduced-motion:reduce){.btn,.btn::after{transition:background .2s,color .2s,border-color .2s}.btn:hover,.btn:focus-visible{transform:none}.btn::after{display:none}}

/* ---------- timeline "verse" v3.3: mysterious mode (fog, turning Umbra, the line burns in, nodes wake one by one, Project O flickers) ---------- */
.verse.mys{isolation:isolate}
/* Umbra swirl sits behind Project O: its inner circle is centred on the "?" node (circle centre in the image at 56.1% / 54.5%) */
.tl .umbra-o{position:absolute;left:50%;top:28px;width:0;height:0;z-index:-1;pointer-events:none}
.tl .umbra-o img{position:absolute;left:0;top:0;width:560px;max-width:none;height:auto;translate:-56.1% calc(-53.9% - 7px);transform-origin:56.1% 53.9%;
  opacity:0;filter:drop-shadow(0 0 10px rgba(152,175,226,.35));transition:opacity 3s ease 1.6s}
.verse.lit .tl .umbra-o img{opacity:.22;animation:umbraO 40s ease-in-out infinite}
@keyframes umbraO{0%,100%{transform:rotate(0deg) scale(1)}25%{transform:rotate(-4deg) scale(1.02)}50%{transform:rotate(2deg) scale(1.035)}75%{transform:rotate(4deg) scale(1.015)}}
@media (max-width:700px){.tl .umbra-o{left:28px}.tl .umbra-o img{width:460px}}
@keyframes turn{to{rotate:360deg}}
.verse .fog{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.verse .fog i{position:absolute;width:70%;height:55%;border-radius:50%;filter:blur(40px);opacity:.55;
  background:radial-gradient(closest-side,rgba(152,160,190,.16),rgba(152,160,190,0))}
.verse .fog i:nth-child(1){left:-20%;top:30%;animation:fogA 28s ease-in-out infinite alternate}
.verse .fog i:nth-child(2){right:-25%;top:50%;animation:fogB 34s ease-in-out infinite alternate}
.verse .fog i:nth-child(3){left:20%;top:62%;width:60%;opacity:.4;animation:fogA 40s ease-in-out infinite alternate-reverse}
@keyframes fogA{from{transform:translateX(0)}to{transform:translateX(35%)}}
@keyframes fogB{from{transform:translateX(0)}to{transform:translateX(-40%)}}
/* the line burns in (travelling spark removed v3.4) */
.verse.mys .tl::before{background:linear-gradient(90deg,rgba(95,179,161,.6),rgba(199,167,155,.7) 50%,rgba(184,168,152,.25));transform:scaleX(0);transform-origin:left;transition:transform 1.6s cubic-bezier(.6,0,.2,1) .2s}
.verse.lit .tl::before{transform:scaleX(1)}
/* nodes wake one by one */
.verse.mys .tl li>*{opacity:0;transform:translateY(10px);transition:opacity .9s ease,transform .9s ease}
.verse.lit .tl li>*{opacity:1;transform:none}
.verse.lit .tl li:nth-child(1)>*{transition-delay:.5s}.verse.lit .tl li:nth-child(2)>*{transition-delay:1s}.verse.lit .tl li:nth-child(3)>*{transition-delay:1.5s}
.verse.lit .n1{animation:glowMoss 4.5s ease-in-out 1.4s infinite}
.verse.lit .n2{animation:glowRose 4.5s ease-in-out 2.1s infinite}
@keyframes glowMoss{0%,100%{box-shadow:0 0 0 rgba(95,179,161,0)}50%{box-shadow:0 0 22px 2px rgba(95,179,161,.45)}}
@keyframes glowRose{0%,100%{box-shadow:0 0 0 rgba(199,167,155,0)}50%{box-shadow:0 0 22px 2px rgba(199,167,155,.45)}}
.tl .node{position:relative;z-index:1;transition:transform .3s ease}
.tl li:hover .node{transform:scale(1.08)}
/* Project O: turning dashed ring, flickering mark and name */
.verse.mys .n3{position:relative;border-color:transparent}
.verse.mys .n3::before{content:"";position:absolute;inset:-1px;border-radius:50%;border:1px dashed var(--ash);animation:turn 18s linear infinite}
.verse.lit .n3{animation:flick 7s steps(1) 2.5s infinite}
.verse.lit .tl li:nth-child(3) .name{animation:glitch 7s steps(1) 2.6s infinite}
@keyframes flick{0%,100%{opacity:1}61%{opacity:.25}62%{opacity:1}64%{opacity:.4}65%{opacity:1}}
@keyframes glitch{0%,100%{text-shadow:none;transform:none;filter:none}
  61%{text-shadow:-2px 0 rgba(152,175,226,.7),2px 0 rgba(199,167,155,.6);transform:translateX(1px);filter:blur(.6px)}
  62%{text-shadow:none;transform:none;filter:none}
  64%{text-shadow:2px 0 rgba(152,175,226,.6),-1px 0 rgba(199,167,155,.5);transform:translateX(-2px);filter:blur(1px)}
  65%{text-shadow:none;transform:none;filter:none}}
.verse.lit .tl li:nth-child(3) .era{position:relative}
.verse.lit .tl li:nth-child(3) .era::after{content:"";position:absolute;left:-4px;right:-4px;top:50%;height:1.1em;translate:0 -50%;background:linear-gradient(90deg,rgba(6,4,4,0),rgba(237,227,214,.18),rgba(6,4,4,0));background-size:200% 100%;animation:scan 3.5s linear infinite}
@keyframes scan{from{background-position:100% 0}to{background-position:-100% 0}}
@media (max-width:700px){
  .verse.mys .tl::before{transform:scaleY(0);transform-origin:top;background:linear-gradient(180deg,rgba(95,179,161,.6),rgba(199,167,155,.7) 50%,rgba(184,168,152,.25))}
  .verse.lit .tl::before{transform:scaleY(1)}
}
@media (prefers-reduced-motion:reduce){
  .verse .tl .umbra-o img,.verse .fog i,.verse.lit .n1,.verse.lit .n2,.verse.lit .n3,.verse.lit .tl li:nth-child(3) .name,.verse.mys .n3::before,.verse.lit .tl li:nth-child(3) .era::after{animation:none!important}
  .verse.mys .tl li>*,.verse.mys .tl::before{transition:none}
}

/* v3.7: fog removed from the starry timeline (no light patches) */
.verse .fog{display:none}

/* ---------- v3.8 hover layer: text, icons, covers, art. Only transform/opacity/colour/shadow; all calm under reduced motion ---------- */
:root{--ease-out:cubic-bezier(.2,.7,.2,1)}
/* main nav: candle line grows from the centre, word lifts a hair */
nav.main>ul>li>a{position:relative;transition:color .3s,transform .3s var(--ease-out),letter-spacing .4s var(--ease-out)}
nav.main>ul>li>a::after{content:"";position:absolute;left:50%;right:50%;bottom:6px;height:1px;background:var(--candle);box-shadow:0 0 8px rgba(217,162,95,.7);transition:left .35s var(--ease-out),right .35s var(--ease-out)}
nav.main>ul>li>a:hover,nav.main>ul>li>a:focus-visible{color:#F3C98B;transform:translateY(-1px);letter-spacing:.22em}
nav.main>ul>li>a:hover::after,nav.main>ul>li>a:focus-visible::after,nav.main>ul>li>a[aria-current]::after{left:0;right:0}
nav.main .sub{animation:none}
nav.main li:hover>.sub,nav.main li:focus-within>.sub{animation:subIn .28s var(--ease-out)}
@keyframes subIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
nav.main .sub a{transition:color .25s,padding-left .3s var(--ease-out)}
nav.main .sub a:hover{color:#F3C98B;padding-left:8px}
details.menu a{transition:color .25s,padding-left .3s var(--ease-out)}
details.menu a:hover{color:#F3C98B;padding-left:8px}
/* brand: the pen "writes" a tiny stroke, wordmark glows */
.bar .brand img,.ft-brand .logo img{transition:transform .5s var(--ease-out),filter .4s}
.bar .brand:hover img:first-child,.ft-brand .logo:hover img:first-child{animation:pen 1s ease-in-out}
@keyframes pen{0%,100%{transform:none}25%{transform:rotate(-9deg) translate(-1px,1px)}50%{transform:rotate(6deg) translate(1px,-1px)}75%{transform:rotate(-4deg)}}
.bar .brand:hover img.word,.ft-brand .logo:hover img.word{filter:drop-shadow(0 0 8px rgba(217,162,95,.6))}
/* footer links: slide right, a small candle mark appears */
footer.site .ft-col a{display:inline-block;position:relative;transition:color .25s,transform .3s var(--ease-out),text-decoration-color .25s}
footer.site .ft-col a::before{content:"";position:absolute;left:-12px;top:50%;width:5px;height:5px;border-radius:50%;background:var(--candle);box-shadow:0 0 6px rgba(217,162,95,.8);opacity:0;transform:translate(-4px,-50%);transition:opacity .25s,transform .3s var(--ease-out)}
footer.site .ft-col a:hover{transform:translateX(6px);color:#F3C98B;text-decoration-color:var(--candle)}
footer.site .ft-col a:hover::before{opacity:1;transform:translate(0,-50%)}
footer.site .ft-legal a{transition:color .25s}
footer.site .ft-legal a:hover{color:#F3C98B}
/* social icons: ring draws in, icon lifts and tilts */
footer.site .ft-social a{position:relative;border-radius:50%;transition:color .25s,transform .35s var(--ease-out)}
footer.site .ft-social a::before{content:"";position:absolute;inset:4px;border-radius:50%;border:1px solid var(--candle);opacity:0;transform:scale(.6);transition:opacity .3s,transform .35s var(--ease-out);box-shadow:0 0 12px rgba(217,162,95,.35)}
footer.site .ft-social a:hover{color:#F3C98B;transform:translateY(-3px) rotate(-6deg)}
footer.site .ft-social a:hover::before{opacity:1;transform:scale(1)}
/* about page link chips */
.links a{transition:border-color .25s,color .25s,transform .3s var(--ease-out),box-shadow .3s}
.links a:hover{border-color:var(--candle);color:#F3C98B;transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,.4),0 0 12px rgba(217,162,95,.2)}
/* inline text links (content warnings, prose, credits): underline sweeps in */
.cw a,.prose a,.credit a,.gal figcaption a,.sd a,.verse a:not(.btn){text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .35s var(--ease-out),color .25s;padding-bottom:1px}
.cw a,.prose a{background-image:linear-gradient(rgba(199,167,155,.45),rgba(199,167,155,.45));background-size:100% 1px;transition:color .4s,background-image .4s,text-shadow .4s}
.cw a:hover,.prose a:hover,.credit a:hover,.gal figcaption a:hover,.sd a:hover{background-size:100% 1px;color:#F3C98B}
.cw a:hover,.prose a:hover,.cw a:focus-visible,.prose a:focus-visible{background-image:linear-gradient(var(--candle),var(--candle));color:#F3C98B;text-shadow:0 0 12px rgba(217,162,95,.35)}
@keyframes ul{0%{background-size:100% 1px;background-position:100% 100%}49%{background-size:0 1px;background-position:100% 100%}50%{background-position:0 100%}100%{background-size:100% 1px;background-position:0 100%}}
/* book covers: lift with a slight 3D tilt and warm halo */
.scard .covers{perspective:900px}
.books a.cover img,.brow img.cv,.scard .covers img,.release .copy>img{transition:transform .5s var(--ease-out),box-shadow .5s,filter .5s}
.release .copy>img:hover{transform:translateY(-6px) rotateY(-5deg);box-shadow:18px 30px 54px rgba(0,0,0,.65),0 0 30px rgba(217,162,95,.18);filter:brightness(1.05)}
.scard .covers img:hover{transform:translateY(-8px) scale(1.04);box-shadow:0 22px 40px rgba(0,0,0,.6),0 0 22px rgba(217,162,95,.2);position:relative;z-index:1}
.scard.ink .covers img:hover{box-shadow:0 22px 40px rgba(0,0,0,.6),0 0 24px rgba(152,175,226,.3)}
.books .name{transition:color .3s,letter-spacing .4s var(--ease-out)}
.books li:hover .name{color:#F3C98B;letter-spacing:.02em}
/* artist gallery: gentle zoom inside the frame, caption brightens */
.gal figure{overflow:visible}
.gal img{transition:transform .6s var(--ease-out),filter .5s,box-shadow .5s}
.gal figure:hover img{transform:scale(1.03) translateY(-4px);filter:brightness(1.08) saturate(1.05);box-shadow:0 26px 46px rgba(0,0,0,.6)}
.gal figure:hover figcaption{color:var(--ivory)}
/* wordmarks and crests breathe light on hover */
.series .head h2 img,.unreach .wm,.crest>img,.blist~* h1 img,.band h1 img,.stage.hero h1.wm-bv img{transition:filter .5s,transform .6s var(--ease-out)}
.series .head h2 img:hover,.band h1 img:hover,.crest>img:hover{filter:drop-shadow(0 0 16px rgba(217,162,95,.45));transform:scale(1.02)}
.stage.hero h1.wm-bv:hover img{filter:drop-shadow(0 0 18px rgba(0,0,0,.95)) drop-shadow(0 0 22px rgba(243,201,139,.45))}
.unreach .wm:hover,.ur .band h1 img:hover{filter:drop-shadow(0 0 16px rgba(152,175,226,.55));transform:scale(1.02)}
/* hero sigil: brighter pulse and a slow quarter turn on hover */
.stage.hero .sigil img{transition:transform 1.2s var(--ease-out),filter .5s}
.stage.hero .sigil:hover img{transform:rotate(8deg) scale(1.08);filter:drop-shadow(0 0 16px rgba(152,175,226,.9)) drop-shadow(0 2px 6px rgba(0,0,0,.9))}
/* Unreachable symbols and mockup: each hops and tints blue */
.syms img{transition:transform .4s var(--ease-out),filter .4s,opacity .3s}
.syms img:hover{transform:translateY(-6px) rotate(-6deg) scale(1.08);opacity:1;filter:drop-shadow(0 0 10px rgba(152,175,226,.7))}
.unreach .mock{transition:transform .6s var(--ease-out),filter .6s}
.unreach .mock:hover{transform:translateY(-6px) rotate(-1.5deg);filter:drop-shadow(0 36px 46px rgba(0,0,0,.6)) drop-shadow(0 0 22px rgba(152,175,226,.25))}
/* timeline entries: whole column brightens, name glows in its era colour */
.tl li .name{transition:text-shadow .4s,color .3s}
.tl li:nth-child(1):hover .name{text-shadow:0 0 14px rgba(95,179,161,.55)}
.tl li:nth-child(2):hover .name{text-shadow:0 0 14px rgba(199,167,155,.55)}
.tl li:nth-child(3):hover .name{text-shadow:0 0 14px rgba(152,175,226,.55)}
.verse.lit .tl li:nth-child(3):hover .umbra-o img{opacity:.32;transition:opacity .6s}
/* panels and series cards rise slightly */
.panel,.scard,.sd{transition:transform .45s var(--ease-out),box-shadow .45s,border-color .3s}
.panel:hover,.scard:hover,.sd:hover{transform:translateY(-4px);box-shadow:0 24px 50px rgba(0,0,0,.45)}
/* labels: letter-spacing opens when their block is hovered */
.lbl{transition:letter-spacing .5s var(--ease-out),color .3s}
.panel:hover .lbl,.scard:hover .lbl,.sd:hover .lbl,.release .copy:hover .lbl,.head:hover .lbl{letter-spacing:.3em}
@media (hover:none){.books a.cover:hover img,.brow img.cv:hover,.gal figure:hover img,.panel:hover,.scard:hover,.sd:hover{transform:none}}
@media (prefers-reduced-motion:reduce){
  nav.main>ul>li>a,footer.site .ft-col a,footer.site .ft-social a,.links a,.books a.cover img,.brow img.cv,.scard .covers img,.gal img,.syms img,.unreach .mock,.panel,.scard,.sd,.lbl,.stage.hero .sigil img,.release .copy>img{transition:color .2s,filter .2s,box-shadow .2s!important;transform:none!important}
  .bar .brand:hover img:first-child,.ft-brand .logo:hover img:first-child,.cw a:hover,.prose a:hover,nav.main li:hover>.sub{animation:none!important}
}

/* ---------- v3.9 real books: covers become 3D volumes (fx.js wraps them). Hover: the book turns, shows its page block, the cover opens a little ---------- */
.b3{--d:64px;display:block;position:relative;z-index:1;perspective:1500px;perspective-origin:50% 30%;width:100%}
.brow .b3{--d:74px}
.books li:hover,.brow:hover{z-index:5}
.b3-inner{position:relative;display:block;transform-style:preserve-3d;transition:transform .9s var(--ease-out)}
.b3-cover{position:relative;z-index:2;display:block;transform-style:preserve-3d;transform-origin:left center;transform:translateZ(calc(var(--d)/2));transition:transform 1s cubic-bezier(.3,.7,.2,1)}
.b3 img.b3-front{display:block;width:100%;box-shadow:none!important;backface-visibility:hidden;transition:filter .6s}
.b3-cover-in{position:absolute;inset:0;transform:rotateY(180deg);backface-visibility:hidden;
  background:url(https://static.wixstatic.com/media/5e8914_ccff8a45cdfb4ca99a180fc094bf5f1e~mv2.webp) 50% 50%/70% auto no-repeat,linear-gradient(270deg,rgba(0,0,0,.5),rgba(0,0,0,0) 14%),#1c120d;box-shadow:inset 0 0 0 6px #2a1a12,inset 0 0 0 7px rgba(217,162,95,.35)}
.b3-cover-in::after{content:"";position:absolute;inset:0;background:rgba(28,18,13,.82)}
.b3-front-sheen{position:absolute;inset:0;pointer-events:none;backface-visibility:hidden;opacity:0;transition:opacity .5s;
  background:linear-gradient(100deg,rgba(255,240,215,0) 35%,rgba(255,240,215,.22) 50%,rgba(255,240,215,0) 65%)}
.b3-page{position:absolute;top:2px;bottom:2px;left:0;right:3px;transform:translateZ(calc(var(--d)/2 - 1px));overflow:hidden;
  background:linear-gradient(90deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,0) 12%),radial-gradient(ellipse 90% 80% at 55% 45%,#3b2a1f 0%,#2a1c14 55%,#170f0b 100%)}
.b3-page::before{content:"";position:absolute;inset:7% 9% 7% 13%;border:1px solid rgba(217,162,95,.45);box-shadow:inset 0 0 0 4px rgba(0,0,0,0),inset 0 0 0 5px rgba(217,162,95,.22)}
.b3-page::after{content:"";position:absolute;inset:11% 13% 11% 17%;
  background:url(https://static.wixstatic.com/media/5e8914_8704ee25abaa45adb80774a8d18a8cce~mv2.webp) 50% 0/62% auto no-repeat,url(https://static.wixstatic.com/media/5e8914_b2257586bfe548f4b0918710356867d1~mv2.webp) 2% 92%/22% auto no-repeat,url(https://static.wixstatic.com/media/5e8914_0f1707b916834c65bfeede05eead18e4~mv2.webp) 98% 95%/24% auto no-repeat;
  opacity:.85;filter:sepia(1) saturate(2.2) hue-rotate(-12deg) brightness(.95) drop-shadow(0 0 4px rgba(217,162,95,.35))}
.b3-pages{position:absolute;top:3px;bottom:3px;right:0;width:var(--d);transform:translateX(calc(var(--d)/2 - 3px)) rotateY(90deg);
  background:linear-gradient(180deg,rgba(243,201,139,.0) 0%,rgba(243,201,139,.28) 45%,rgba(243,201,139,.0) 100%),linear-gradient(90deg,rgba(0,0,0,.45),rgba(0,0,0,0) 25%,rgba(0,0,0,0) 75%,rgba(0,0,0,.5)),repeating-linear-gradient(90deg,#3a2419 0 1px,#24160f 1px 2px)}
.b3-top{position:absolute;left:0;right:3px;top:0;height:var(--d);transform:translateY(calc(var(--d)/-2 + 3px)) rotateX(90deg);background:linear-gradient(90deg,rgba(243,201,139,0),rgba(243,201,139,.22) 50%,rgba(243,201,139,0)),repeating-linear-gradient(180deg,#3a2419 0 1px,#24160f 1px 2px)}
.b3-spine{position:absolute;top:0;bottom:0;left:0;width:var(--d);transform:translateX(calc(var(--d)/-2)) rotateY(-90deg);background:linear-gradient(90deg,#1a0f0b,#3a241a 50%,#1a0f0b)}
.b3-back{position:absolute;inset:0;transform:translateZ(calc(var(--d)/-2));background:#24150f}
/* loose leaves that riffle when the book opens */
.b3-leaf{position:absolute;top:3px;bottom:3px;left:0;right:5px;transform-origin:left center;
  transform:translateZ(calc(var(--d)/2 - 1px - var(--i) * 1px));transition:transform .55s cubic-bezier(.4,.1,.2,1);
  background:linear-gradient(90deg,rgba(0,0,0,.5),rgba(0,0,0,0) 14%,rgba(0,0,0,0) 86%,rgba(0,0,0,.25)),repeating-linear-gradient(180deg,transparent 0 11px,rgba(217,162,95,.08) 11px 12px) 22% 16%/58% 68% no-repeat,#2e2018;
  border-right:1px solid rgba(243,201,139,.28)}
.b3-leaf:nth-of-type(odd){background-color:#33241b}
.b3::after{content:"";position:absolute;left:8%;right:8%;bottom:-18px;height:26px;border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.65),rgba(0,0,0,0));transition:transform .9s var(--ease-out),opacity .9s;z-index:-1}
.b3:hover .b3-inner,.b3:focus-visible .b3-inner{transform:translateY(-6px) rotateY(-22deg) rotateX(2deg)}
.b3-riffle:hover .b3-inner,.b3-riffle:focus-visible .b3-inner{transform:translateY(-8px) rotateY(-20deg) rotateX(3deg)}
.b3:hover .b3-cover,.b3:focus-visible .b3-cover{transform:translateZ(calc(var(--d)/2)) rotateY(-32deg)}
.b3-riffle:hover .b3-cover,.b3-riffle:focus-visible .b3-cover{transform:translateZ(calc(var(--d)/2)) rotateY(-114deg)}
.b3:hover img.b3-front{filter:brightness(1.07)}
.b3:hover .b3-front-sheen{opacity:1}
.b3:hover .b3-leaf,.b3:focus-visible .b3-leaf{transform:translateZ(calc(var(--d)/2 - 1px - var(--i) * 1px)) rotateY(var(--a));transition-delay:calc(.12s + var(--i) * .075s)}
.b3:hover::after{transform:translateX(-6%) scaleX(1.25);opacity:.85}
@media (hover:none){.b3:hover .b3-inner{transform:none}.b3:hover .b3-cover{transform:translateZ(calc(var(--d)/2))}.b3:hover .b3-leaf{transform:translateZ(calc(var(--d)/2 - 1px - var(--i) * 1px))}}
@media (prefers-reduced-motion:reduce){.b3-inner,.b3-cover,.b3-leaf{transition:none!important}.b3:hover .b3-inner{transform:none}.b3:hover .b3-cover{transform:translateZ(calc(var(--d)/2))}.b3:hover .b3-leaf{transform:translateZ(calc(var(--d)/2 - 1px - var(--i) * 1px))}}

/* ---------- v3.9 series band: dark candlelit ground, feathers float free ---------- */
.series>.bg{opacity:.35;mix-blend-mode:screen}
.series{background:radial-gradient(ellipse 60% 45% at 50% 68%,rgba(217,162,95,.16) 0%,rgba(120,70,40,.08) 45%,rgba(6,4,4,0) 75%),radial-gradient(ellipse 120% 90% at 50% 40%,#140d0b 0%,#090606 60%,#050303 100%)}
.series::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,0) 14%,rgba(6,4,4,0) 86%,var(--night) 100%)}
.feather{position:absolute;z-index:-1;pointer-events:none;max-width:none;height:auto;filter:drop-shadow(0 18px 24px rgba(0,0,0,.6));opacity:.95}
.feather.f1{left:clamp(-20px,4vw,80px);top:12%;width:clamp(90px,11vw,170px);animation:float1 14s ease-in-out infinite}
.feather.f2{right:clamp(-90px,-2vw,10px);bottom:-3%;width:clamp(220px,26vw,400px);animation:float2 17s ease-in-out infinite}
.feather.f3{right:12%;top:8%;width:clamp(50px,5vw,80px);opacity:.45;filter:blur(1.5px);transform:rotate(38deg);animation:float3 20s ease-in-out infinite}
@keyframes float1{0%,100%{transform:translate(0,0) rotate(-4deg)}50%{transform:translate(10px,18px) rotate(5deg)}}
@keyframes float2{0%,100%{transform:translate(0,0) rotate(0deg)}50%{transform:translate(-16px,-12px) rotate(-5deg)}}
@keyframes float3{0%,100%{transform:translate(0,0) rotate(38deg)}50%{transform:translate(-14px,22px) rotate(52deg)}}
.books{position:relative}
.books::after{content:"";position:absolute;left:-4%;right:-4%;top:calc(var(--shelf,0px));height:0;pointer-events:none}
@media (max-width:700px){.feather.f1{top:4%;width:70px}.feather.f2{width:220px;bottom:2%}}
@media (prefers-reduced-motion:reduce){.feather{animation:none!important}}

/* v4.0: labels above books always stay on top; books face front like the text below */
.books li>.lbl,.books li>.name,.books li>.meta,.brow .copy{position:relative;z-index:3;text-shadow:0 1px 6px rgba(0,0,0,.9)}
.books li{padding-top:4px}

/* v4.2 type system (Runde 5, 09.10.2026): EB Garamond for running text (real italics and weights), Alice kept for subtitles and quotes, Cinzel titles, Tenor Sans labels. Unreachable keeps its own voice: Bebas Neue titles, Anaktoria subtitles (self-hosted file fonts/Anaktoria.woff2 still missing, falls back to EB Garamond). */
@font-face{font-family:'Anaktoria';src:url('fonts/Anaktoria.woff2') format('woff2'),url('fonts/Anaktoria.woff') format('woff');font-display:swap}
body{font-size:19px;line-height:1.62;font-variant-numeric:oldstyle-nums;font-kerning:normal}
.meta,.date,.ft-legal,.ku{font-variant-numeric:lining-nums}
.tag,.tagline,.lead,.ft-h,blockquote,.quote{font-family:var(--f-sub)}
/* Unreachable: own voice inside the brown umbrella brand (header and footer stay brand) */
.ur main .ttl,.unreach .ttl,.scard.ink h2,.ur main h2,.ur main h3{font-family:var(--f-ink);font-weight:400;letter-spacing:.14em;text-transform:uppercase}
.ur main .ttl{font-size:clamp(30px,3.6vw,44px)}
.scard.ink h2{font-size:clamp(28px,3vw,38px)}
.ur main .tagline,.ur main .lead,.unreach .tag,.scard.ink>p:not(.lbl):not(.meta){font-family:var(--f-ur-sub);font-style:normal;letter-spacing:.01em}
/* v4.3 (comment owner): Umbra sigil sits clearly apart from the text, so it is not read as the Umbra spelling of the line below */
.stage.hero .sigil{margin-bottom:clamp(16px,2.5vh,32px);margin-top:calc(-1 * clamp(4px,2vh,24px))}
@media (max-width:700px){.stage.hero .sigil{margin-bottom:16px}}
/* v4.5 home books: the cover opens wide and shows a real page from the book (Book I Ruisangors, II Quatura, III Senseque without names) */
.books .b3-page{background-size:cover;background-position:50% 50%;background-repeat:no-repeat}
.books .b3-page::before{inset:0;border:0;box-shadow:none;background:linear-gradient(90deg,rgba(0,0,0,.5) 0%,rgba(0,0,0,.12) 7%,rgba(0,0,0,0) 14%,rgba(0,0,0,0) 90%,rgba(0,0,0,.18) 100%)}
.books .b3-page::after{display:none}
.books li:nth-child(1) .b3-page{background-image:url(https://static.wixstatic.com/media/5e8914_f499362d964146d088fc956eb86e9366~mv2.webp)}
.books li:nth-child(2) .b3-page{background-image:url(https://static.wixstatic.com/media/5e8914_59824e758df0466e847e930e59cc2ae2~mv2.webp)}
.books li:nth-child(3) .b3-page{background-image:url(https://static.wixstatic.com/media/5e8914_99139b53d9424e86b0d7dc425b7452fc~mv2.webp)}
.books .b3:hover .b3-inner,.books .b3:focus-visible .b3-inner{transform:translateY(-8px) rotateY(-6deg) rotateX(2deg)}
.books .b3:hover .b3-cover,.books .b3:focus-visible .b3-cover{transform:translateZ(calc(var(--d)/2)) rotateY(-118deg);transition-duration:1.1s}
/* v4.8 Maezos' signature centered behind the footer wordmark, quiet and dark (like nicolefiorina.com) */
.ft-brand .logo{position:relative;isolation:isolate;align-self:flex-start;gap:14px}
.ft-brand .logo img{height:48px}
.ft-brand .logo img.word{height:24px}
.ft-brand .logo img.sig{position:absolute;z-index:-1;height:66px;width:auto;left:calc(19px + 14px + 59px);top:50%;transform:translate(-50%,-50%);opacity:.22;filter:grayscale(1) brightness(.8);pointer-events:none;transition:opacity .5s}
.ft-brand .logo:hover img.sig{opacity:.38}
/* v4.9 logo hover (owner): no more wobble. The signature behind MAEZOS writes itself from left to right, the pen glides along a little */
.bar .brand:hover img:first-child,.ft-brand .logo:hover img:first-child{animation:none}
.bar .brand{position:relative;isolation:isolate}
.bar .brand img.sig{position:absolute;z-index:-1;height:46px;width:auto;left:calc(13px + 10px + 42px);top:50%;transform:translate(-50%,-50%);opacity:.2;filter:grayscale(1) brightness(.8);pointer-events:none}
@media (max-width:820px){.bar .brand img.sig{height:40px;left:calc(12px + 9px + 37px)}}
.bar .brand img.sig,.ft-brand .logo img.sig{clip-path:inset(0 0 0 0)}
.bar .brand:hover img.sig,.ft-brand .logo:hover img.sig{animation:sigwrite 1.15s cubic-bezier(.45,.05,.3,1) both;opacity:.42}
.ft-brand .logo:hover img:first-child{transform:translateX(2px)}
.bar .brand:hover img:first-child{transform:none}
@keyframes sigwrite{0%{clip-path:inset(0 100% 0 0)}100%{clip-path:inset(0 0 0 0)}}
@media (prefers-reduced-motion:reduce){.bar .brand:hover img.sig,.ft-brand .logo:hover img.sig{animation:none}}
/* v5.1 (owner): footer logo without motion. Instead of writing, the signature warms from grey ink to candle gold with a soft glow */
.ft-brand .logo:hover img:first-child{transform:none}
.ft-brand .logo img.sig{transition:opacity .8s ease,filter .8s ease}
.ft-brand .logo:hover img.sig{animation:none;opacity:.5;filter:sepia(1) saturate(2.2) hue-rotate(-12deg) brightness(.95) drop-shadow(0 0 6px rgba(217,162,95,.5))}
/* v5.2 (owner): footer hover = the little star above the pen nib flashes once; signature stays quiet */
.ft-brand .logo:hover img.sig{opacity:.3;filter:grayscale(1) brightness(.8)}
.ft-brand .logo::before{content:"";position:absolute;z-index:2;left:13px;top:calc(50% - 12.8px);width:26px;height:26px;margin:-13px 0 0 -13px;pointer-events:none;opacity:0;transform:scale(.2);
  background:radial-gradient(circle,rgba(255,244,220,1) 0 1.5px,rgba(243,201,139,.75) 3px,rgba(217,162,95,0) 9px),
    linear-gradient(90deg,transparent 0 47%,rgba(255,240,210,.95) 50%,transparent 53% 100%) 50% 50%/100% 100% no-repeat,
    linear-gradient(0deg,transparent 0 47%,rgba(255,240,210,.95) 50%,transparent 53% 100%) 50% 50%/100% 100% no-repeat;
  -webkit-mask:radial-gradient(circle,#000 0 30%,transparent 70%);mask:radial-gradient(circle,#000 0 30%,transparent 70%)}
.ft-brand .logo:hover::before{animation:starflash 1.1s ease-out both}
@keyframes starflash{0%{opacity:0;transform:scale(.2) rotate(0)}35%{opacity:1;transform:scale(1.15) rotate(20deg)}100%{opacity:.55;transform:scale(.75) rotate(45deg)}}
@media (prefers-reduced-motion:reduce){.ft-brand .logo:hover::before{animation:none;opacity:.6;transform:scale(.8)}}
/* v5.3 (owner): footer hover = a fine candle line grows from the middle under MAEZOS, like the menu. No star, no motion of the logo */
.ft-brand .logo::before{display:none}
.ft-brand .logo:hover img.word{filter:none}
.ft-brand .logo::after{content:"";position:absolute;left:92px;width:0;top:calc(50% + 15px);height:1px;background:var(--candle);box-shadow:0 0 8px rgba(217,162,95,.7);transition:left .4s var(--ease-out),width .4s var(--ease-out);pointer-events:none}
.ft-brand .logo:hover::after,.ft-brand .logo:focus-visible::after{left:37px;width:110px}
/* v5.4 (owner): footer signature glows softly on hover; header gets the same candle line under MAEZOS, no signature, no glow */
.ft-brand .logo:hover img.sig{opacity:.5;filter:grayscale(1) brightness(1.15) drop-shadow(0 0 5px rgba(237,227,214,.45))}
.bar .brand:hover img.word{filter:none}
.bar .brand::after{content:"";position:absolute;left:65px;width:0;top:calc(50% + 12px);height:1px;background:var(--candle);box-shadow:0 0 8px rgba(217,162,95,.7);transition:left .4s var(--ease-out),width .4s var(--ease-out);pointer-events:none}
.bar .brand:hover::after,.bar .brand:focus-visible::after{left:27px;width:76px}
@media (max-width:820px){.bar .brand::after{left:58px;top:calc(50% + 11px)}.bar .brand:hover::after,.bar .brand:focus-visible::after{left:24px;width:68px}}
/* v5.5 (owner): new-release band uses the Book 3 jacket (thorn branches on the back, cover on the right); phone uses the thorn side as texture */
.release>.bg{object-position:100% 45%}
.release::before{background:linear-gradient(90deg,rgba(6,4,4,.6) 0%,rgba(6,4,4,.3) 38%,rgba(6,4,4,0) 58%),linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,0) 14%,rgba(6,4,4,0) 86%,var(--night) 100%)}
@media (max-width:820px){.release{background:var(--walnut) url("https://static.wixstatic.com/media/5e8914_ba9a49068fd54a9f82b140e17492828a~mv2.webp") center/cover}}
@media (min-width:821px){.release{min-height:min(65vw,1100px)}.release>.bg{object-position:100% 50%}}
/* v6.0 (owner): timeline band taller, content vertically centred */
.verse{display:flex;align-items:center;min-height:clamp(560px,50vw,760px);padding-block:clamp(80px,9vw,128px)}
.verse>.wrap{width:100%}
@media (max-width:700px){.verse{min-height:0;padding-block:72px}}
/* v6.1 (owner): hero art credit sits higher, away from the timeline below */
.stage.hero .credit{bottom:clamp(48px,7vh,88px);text-shadow:0 1px 6px rgba(0,0,0,.9)}
@media (max-width:700px){.stage.hero .credit{bottom:36px}}
/* v6.4 (owner): timeline hover lights only the lettering in the era colour; circles stay still */
.tl li:hover .node{transform:none}
.tl .name{transition:color .45s,text-shadow .45s}
.tl li:nth-child(1):hover .name{color:#7FD9C0;text-shadow:0 0 10px rgba(95,179,161,.85),0 0 26px rgba(95,179,161,.5)}
.tl li:nth-child(2):hover .name{color:#D9A070;text-shadow:0 0 10px rgba(190,120,70,.85),0 0 26px rgba(160,95,55,.55)}
.tl li:nth-child(3):hover .name{color:#A9C2F5;text-shadow:0 0 10px rgba(120,150,230,.85),0 0 26px rgba(120,150,230,.5)}
/* v6.5 (owner): new release reads like the back of the jacket: the full Book 3 wrap fills the band, the text sits centred on the back half, the cover stays free on the right */
@media (min-width:821px){
  .release .wrap{max-width:none;display:grid;grid-template-columns:1fr 1fr;padding-inline:0}
  .release .copy{grid-column:1;justify-self:center;align-items:center;text-align:center;max-width:26em;padding-inline:var(--gut)}
  .release .row{justify-content:center}
  .release::before{background:radial-gradient(ellipse 30% 42% at 25% 50%,rgba(6,4,4,.55) 0%,rgba(6,4,4,.25) 60%,rgba(6,4,4,0) 100%),linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,0) 12%,rgba(6,4,4,0) 88%,var(--night) 100%)}
  .release>.bg{object-position:50% 50%}
}
@media (min-width:821px){.release .copy{max-width:36em}.release .date{white-space:nowrap;font-size:clamp(30px,3.8vw,54px)}.release .row{flex-wrap:nowrap}}
/* v6.6 (owner): series band on the back of the Book 1 jacket (dark texture with its own feathers), matching the floating feathers */
.series>.bg{opacity:.9;mix-blend-mode:normal;object-position:50% 40%}
.series::before{background:radial-gradient(ellipse 55% 50% at 50% 55%,rgba(6,4,4,.15) 0%,rgba(6,4,4,.45) 100%),linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,0) 14%,rgba(6,4,4,0) 86%,var(--night) 100%)}
/* v6.8 (owner): worn ring in the style of the covers (Book 1 inner circle, Book 2 rays) behind the books, under the feathers */
.series>.ring{position:absolute;z-index:-2;left:50%;top:60%;width:min(1180px,118vw);max-width:none;height:auto;transform:translate(-50%,-50%);opacity:.42;pointer-events:none;filter:sepia(.35) saturate(1.2)}
@media (max-width:700px){.series>.ring{top:55%;width:150vw}}
/* v6.9 probe only: switch between ring variants */
.probe-switch{position:absolute;top:14px;left:50%;transform:translateX(-50%);z-index:5;display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:center;padding:6px 10px;background:rgba(217,120,40,.92);color:#1a0f0b;font:12px/1.2 var(--f-label);letter-spacing:.06em}
.probe-switch button{font:inherit;padding:4px 8px;border:1px solid #1a0f0b;background:transparent;color:#1a0f0b;cursor:pointer}
.probe-switch button[aria-pressed="true"]{background:#1a0f0b;color:#F3C98B}
/* v7.1 (owner): softer hover glows - series wordmark and footer signature */
.series .head h2 img:hover{filter:drop-shadow(0 0 6px rgba(217,162,95,.18));transform:none}
.ft-brand .logo:hover img.sig{opacity:.32;filter:grayscale(1) brightness(.95) drop-shadow(0 0 3px rgba(237,227,214,.15))}
/* v7.2 (owner): home books open at about page 7 - no Umbra; the left side shows the same blank parchment, with a few turned pages fanned behind it; small page number on the right page */
.books .b3-cover-in{background:url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp) 50% 50%/cover no-repeat,#cdb08c;box-shadow:inset -10px 0 14px -8px rgba(0,0,0,.45)}
.books .b3-cover-in::after{display:none}
.books .b3-leaf{background:linear-gradient(270deg,rgba(0,0,0,.4),rgba(0,0,0,0) 12%,rgba(0,0,0,0) 88%,rgba(0,0,0,.18)),url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp) 50% 50%/cover no-repeat,#cdb08c;border-right:0;border-left:1px solid rgba(120,85,55,.55)}
.books .b3-leaf:nth-of-type(odd){background-color:#c8aa86;filter:brightness(.96)}
.books .b3:hover .b3-leaf,.books .b3:focus-visible .b3-leaf{transition-delay:calc(.05s + var(--i) * .045s)}
.books .b3-page::after{display:block;content:"7";position:absolute;left:0;right:0;bottom:4%;top:auto;inset:auto 0 3.5% 0;background:none;filter:none;opacity:.75;text-align:center;font:italic 11px/1 var(--f-body);color:#4a3322}
@media (hover:none){}
/* v7.3 (owner): turned pages carry illegible text and small diagrams, so the earlier pages do not look empty */
.books .b3-leaf.lf1{background-image:linear-gradient(270deg,rgba(0,0,0,.4),rgba(0,0,0,0) 12%,rgba(0,0,0,0) 88%,rgba(0,0,0,.18)),url(https://static.wixstatic.com/media/5e8914_d061a4ec454d43778bd4264d66fb0c14~mv2.webp)}
.books .b3-leaf.lf2{background-image:linear-gradient(270deg,rgba(0,0,0,.4),rgba(0,0,0,0) 12%,rgba(0,0,0,0) 88%,rgba(0,0,0,.18)),url(https://static.wixstatic.com/media/5e8914_c78a7f2fa44848509f06925eca02473a~mv2.webp)}
.books .b3-leaf.lf3{background-image:linear-gradient(270deg,rgba(0,0,0,.4),rgba(0,0,0,0) 12%,rgba(0,0,0,0) 88%,rgba(0,0,0,.18)),url(https://static.wixstatic.com/media/5e8914_29a38258b7984dd09df4bfeee7358698~mv2.webp)}
.books .b3-leaf{background-size:100% 100%,cover;background-position:0 0,50% 50%;background-repeat:no-repeat}
/* v7.5 (owner): a touch more air between the hero text blocks and buttons */
.stage.hero .inner{gap:clamp(14px,1.7vw,22px)}
.stage.hero .motto{margin-top:4px}
.stage.hero .cta{margin-top:8px}
/* v7.6 (owner): hero island effects */
.stage.hero .hero-art{position:absolute;inset:0;z-index:-2;overflow:hidden;animation:drift 26s ease-in-out infinite alternate;transform-origin:50% 62%}
.stage.hero .hero-art picture img{animation:none}
.hero-fx{position:absolute;inset:0;pointer-events:none}
.hero-fx i{position:absolute;display:block;transform:translate(-50%,-50%);border-radius:50%}
/* raven eyes: faint violet ember, breathing slowly */
.hero-fx .eye{width:calc(var(--u)*7);height:calc(var(--u)*7);background:radial-gradient(circle,rgba(255,190,255,.95) 0 14%,rgba(220,110,255,.55) 32%,rgba(170,80,255,0) 70%);mix-blend-mode:screen;animation:eyeGlow 5.5s ease-in-out infinite}
.hero-fx .eye-2{width:calc(var(--u)*9);height:calc(var(--u)*9);animation-delay:-2.2s}
@keyframes eyeGlow{0%,100%{opacity:.45}50%{opacity:.95}}
/* lighthouse: warm pulse, a slow faint sweeping beam, shimmering reflection */
.hero-fx .lamp{width:calc(var(--u)*34);height:calc(var(--u)*34);background:radial-gradient(circle,rgba(255,214,150,.75) 0 6%,rgba(255,170,90,.32) 26%,rgba(255,150,70,0) 66%);mix-blend-mode:screen;animation:lamp 4s ease-in-out infinite}
@keyframes lamp{0%,100%{opacity:.65;transform:translate(-50%,-50%) scale(.92)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.06)}}
.hero-fx .beam{width:calc(var(--u)*260);height:calc(var(--u)*260);background:conic-gradient(from 0deg,rgba(255,220,160,.16) 0deg,rgba(255,220,160,0) 14deg,rgba(255,220,160,0) 180deg,rgba(255,220,160,.12) 186deg,rgba(255,220,160,0) 200deg,rgba(255,220,160,0) 360deg);-webkit-mask:radial-gradient(circle,#000 0 8%,rgba(0,0,0,.5) 30%,transparent 62%);mask:radial-gradient(circle,#000 0 8%,rgba(0,0,0,.5) 30%,transparent 62%);mix-blend-mode:screen;animation:beam 14s linear infinite;opacity:.8}
@keyframes beam{to{transform:translate(-50%,-50%) rotate(360deg)}}
.hero-fx .lamp-ref{width:calc(var(--u)*10);height:calc(var(--u)*46);border-radius:50%;background:radial-gradient(ellipse 50% 50%,rgba(255,200,130,.5),rgba(255,170,90,0) 70%);mix-blend-mode:screen;filter:blur(1px);animation:shimmer 2.6s ease-in-out infinite}
@keyframes shimmer{0%,100%{opacity:.35;transform:translate(-50%,-50%) scaleX(1)}50%{opacity:.75;transform:translate(-50%,-50%) scaleX(1.5)}}
/* tower crystal: cold violet light */
.hero-fx .spire{width:calc(var(--u)*30);height:calc(var(--u)*30);background:radial-gradient(circle,rgba(220,200,255,.7) 0 6%,rgba(150,120,255,.28) 30%,rgba(140,110,255,0) 68%);mix-blend-mode:screen;animation:eyeGlow 7s ease-in-out infinite}
/* mist drifting low over the lake */
.hero-fx .mist{position:absolute;left:-20%;width:140%;height:calc(var(--u)*70);transform:translateY(-50%);background:radial-gradient(ellipse 30% 50% at 20% 50%,rgba(200,205,225,.16),transparent 70%),radial-gradient(ellipse 26% 45% at 62% 55%,rgba(200,205,225,.13),transparent 70%),radial-gradient(ellipse 22% 40% at 90% 45%,rgba(200,205,225,.12),transparent 70%);filter:blur(6px);animation:mist 48s linear infinite alternate}
@keyframes mist{from{margin-left:-6%}to{margin-left:6%}}
@media (prefers-reduced-motion:reduce){.hero-fx *{animation:none!important}.hero-fx .beam{display:none}}
/* v7.7 (owner): more island life - flickering city windows, blinking hover-ship lights, turning wheel lights, haunted mansion windows, glowing lilies, distant lightning */
.hero-fx .win{width:calc(var(--u)*7);height:calc(var(--u)*7);background:radial-gradient(circle,rgba(255,120,90,.95) 0 18%,rgba(255,60,40,.4) 45%,rgba(255,40,30,0) 72%);mix-blend-mode:screen;animation:winFlicker 7s steps(1,end) infinite}
.hero-fx .win.big{width:calc(var(--u)*14);height:calc(var(--u)*14)}
@keyframes winFlicker{0%{opacity:.85}12%{opacity:.4}14%{opacity:.9}46%{opacity:.75}48%{opacity:.15}52%{opacity:.8}80%{opacity:.95}83%{opacity:.5}100%{opacity:.85}}
.hero-fx .nav{width:calc(var(--u)*5);height:calc(var(--u)*5);background:radial-gradient(circle,#fff 0 22%,rgba(255,80,80,.6) 45%,rgba(255,80,80,0) 75%);mix-blend-mode:screen;animation:navBlink 1.8s steps(1,end) infinite}
.hero-fx .nav-2{animation-duration:2.3s}
@keyframes navBlink{0%,100%{opacity:0}8%,18%{opacity:1}22%{opacity:0}}
.hero-fx .wheel{width:calc(var(--u)*34);height:calc(var(--u)*34);border-radius:50%;background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="96.0" cy="50.0" r="2.6" fill="%23FFE2A8" opacity="0.55"/><circle cx="93.2" cy="65.7" r="1.8" fill="%23FFE2A8" opacity="0.95"/><circle cx="85.2" cy="79.6" r="2.6" fill="%23FFE2A8" opacity="0.95"/><circle cx="73.0" cy="89.8" r="1.8" fill="%23FFE2A8" opacity="0.55"/><circle cx="58.0" cy="95.3" r="2.6" fill="%23FFE2A8" opacity="0.95"/><circle cx="42.0" cy="95.3" r="1.8" fill="%23FFE2A8" opacity="0.95"/><circle cx="27.0" cy="89.8" r="2.6" fill="%23FFE2A8" opacity="0.55"/><circle cx="14.8" cy="79.6" r="1.8" fill="%23FFE2A8" opacity="0.95"/><circle cx="6.8" cy="65.7" r="2.6" fill="%23FFE2A8" opacity="0.95"/><circle cx="4.0" cy="50.0" r="1.8" fill="%23FFE2A8" opacity="0.55"/><circle cx="6.8" cy="34.3" r="2.6" fill="%23FFE2A8" opacity="0.95"/><circle cx="14.8" cy="20.4" r="1.8" fill="%23FFE2A8" opacity="0.95"/><circle cx="27.0" cy="10.2" r="2.6" fill="%23FFE2A8" opacity="0.55"/><circle cx="42.0" cy="4.7" r="1.8" fill="%23FFE2A8" opacity="0.95"/><circle cx="58.0" cy="4.7" r="2.6" fill="%23FFE2A8" opacity="0.95"/><circle cx="73.0" cy="10.2" r="1.8" fill="%23FFE2A8" opacity="0.55"/><circle cx="85.2" cy="20.4" r="2.6" fill="%23FFE2A8" opacity="0.95"/><circle cx="93.2" cy="34.3" r="1.8" fill="%23FFE2A8" opacity="0.95"/></svg>') center/100% no-repeat;mix-blend-mode:screen;opacity:.7;filter:drop-shadow(0 0 calc(var(--u)*1.2) rgba(255,210,140,.9));animation:wheelTurn 60s linear infinite}
@keyframes wheelTurn{from{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}
.hero-fx .mwin{width:calc(var(--u)*6);height:calc(var(--u)*8);border-radius:40%;background:radial-gradient(ellipse,rgba(255,200,120,.85) 0 20%,rgba(255,160,80,.35) 50%,rgba(255,150,70,0) 75%);mix-blend-mode:screen;opacity:0;animation:mansion 16s ease-in-out infinite}
.hero-fx .mwin-2{animation-duration:21s}.hero-fx .mwin-3{animation-duration:27s}
@keyframes mansion{0%,55%,100%{opacity:0}62%,80%{opacity:.85}66%{opacity:.55}72%{opacity:.9}}
.hero-fx .lily{width:calc(var(--u)*22);height:calc(var(--u)*22);background:radial-gradient(circle,rgba(255,240,215,.55) 0 8%,rgba(255,220,170,.22) 32%,rgba(255,210,160,0) 66%);mix-blend-mode:screen;animation:lily 6s ease-in-out infinite}
@keyframes lily{0%,100%{opacity:.25}50%{opacity:.9}}
.hero-fx .flash{width:calc(var(--u)*520);height:calc(var(--u)*300);border-radius:50%;background:radial-gradient(ellipse,rgba(210,215,255,.32),rgba(200,205,255,.1) 40%,rgba(200,205,255,0) 70%);mix-blend-mode:screen;opacity:0;animation:lightning 13s linear infinite}
@keyframes lightning{0%,88%,100%{opacity:0}89%{opacity:.9}90%{opacity:.1}91.5%{opacity:.7}93%{opacity:0}}
/* v7.8 (owner): ship lights much softer, more lightning, moving mist over the water */
.hero-fx .nav{width:calc(var(--u)*3);height:calc(var(--u)*3);background:radial-gradient(circle,rgba(255,235,230,.9) 0 25%,rgba(255,110,100,.25) 55%,rgba(255,80,80,0) 80%);animation-name:navBlinkSoft}
@keyframes navBlinkSoft{0%,100%{opacity:0}8%,16%{opacity:.5}20%{opacity:0}}
.hero-fx .win.big{width:calc(var(--u)*10);height:calc(var(--u)*10);opacity:.7}
.hero-fx .flash{animation-duration:9s}
.hero-fx .flash-2{width:calc(var(--u)*460);height:calc(var(--u)*260);animation:lightning2 11s linear infinite}
.hero-fx .flash-3{width:calc(var(--u)*380);height:calc(var(--u)*200);animation:lightning 15s linear infinite;animation-delay:-6s!important}
@keyframes lightning2{0%,40%,100%{opacity:0}41%{opacity:.75}42%{opacity:.05}43%{opacity:.55}44.5%{opacity:0}78%{opacity:0}79%{opacity:.5}80.5%{opacity:0}}
.hero-fx .mist{height:calc(var(--u)*80);background:radial-gradient(ellipse 30% 50% at 18% 50%,rgba(205,210,230,.24),transparent 70%),radial-gradient(ellipse 26% 45% at 55% 55%,rgba(205,210,230,.2),transparent 70%),radial-gradient(ellipse 24% 42% at 88% 45%,rgba(205,210,230,.2),transparent 70%);filter:blur(8px);animation:mist 34s ease-in-out infinite alternate}
.hero-fx .mist-2{height:calc(var(--u)*60);opacity:.85;background:radial-gradient(ellipse 22% 50% at 30% 50%,rgba(205,210,230,.2),transparent 70%),radial-gradient(ellipse 28% 45% at 72% 50%,rgba(205,210,230,.18),transparent 70%);animation:mist2 27s ease-in-out infinite alternate}
@keyframes mist{from{margin-left:-9%}to{margin-left:9%}}
@keyframes mist2{from{margin-left:8%}to{margin-left:-10%}}
/* v7.9 (owner): the white tower on the summit radiates softly, like a house of angels */
.hero-fx .halo{width:calc(var(--u)*90);height:calc(var(--u)*150);border-radius:50%;background:radial-gradient(ellipse 50% 50%,rgba(255,252,240,.55) 0%,rgba(255,246,225,.28) 25%,rgba(240,235,255,.12) 50%,rgba(240,235,255,0) 72%);mix-blend-mode:screen;filter:blur(2px);animation:halo 8s ease-in-out infinite!important;animation-delay:0s!important}
@keyframes halo{0%,100%{opacity:.7;transform:translate(-50%,-50%) scale(.96)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}}
.hero-fx .halo-rays{width:calc(var(--u)*260);height:calc(var(--u)*260);background:repeating-conic-gradient(from 0deg,rgba(255,250,235,.10) 0deg 2deg,rgba(255,250,235,0) 2deg 14deg);-webkit-mask:radial-gradient(circle,rgba(0,0,0,.9) 0 6%,rgba(0,0,0,.35) 26%,transparent 55%);mask:radial-gradient(circle,rgba(0,0,0,.9) 0 6%,rgba(0,0,0,.35) 26%,transparent 55%);mix-blend-mode:screen;animation:rays 90s linear infinite!important;opacity:.75}
@keyframes rays{from{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}
.hero-fx .spire{background:radial-gradient(circle,rgba(255,255,255,.85) 0 7%,rgba(220,210,255,.35) 30%,rgba(200,190,255,0) 68%)}
@media (prefers-reduced-motion:reduce){.hero-fx .halo,.hero-fx .halo-rays{animation:none!important}}
/* v8.0 (owner): new release rebuilt - thorn background without the cover, real cover on the left, text on the right */
@media (min-width:821px){
  .release{min-height:0;padding-block:clamp(90px,9vw,140px)}
  .release>.bg{object-position:50% 50%}
  .release::before{background:radial-gradient(ellipse 60% 70% at 50% 50%,rgba(6,4,4,.1) 0%,rgba(6,4,4,.45) 100%),linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,0) 14%,rgba(6,4,4,0) 86%,var(--night) 100%)}
  .release .wrap{max-width:var(--wrap);display:block;padding-inline:var(--gut)}
  .release .copy{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);column-gap:clamp(40px,6vw,96px);row-gap:18px;align-items:center;justify-items:start;text-align:left;max-width:980px;margin-inline:auto;padding-inline:0}
  .release .copy>img{display:block;grid-column:1;grid-row:1 / span 6;width:100%;align-self:center;box-shadow:0 34px 70px rgba(0,0,0,.7),0 0 40px rgba(217,162,95,.08)}
  .release .copy>:not(img){grid-column:2}
  .release .row{justify-content:flex-start;flex-wrap:wrap}
  .release .date{white-space:nowrap}
}
@media (min-width:821px){
  .release .copy{grid-template-rows:1fr repeat(5,auto) 1fr;row-gap:16px}
  .release .copy>img{grid-row:1 / -1}
  .release .copy>.lbl{grid-row:2}.release .copy>h2{grid-row:3}.release .copy>.date{grid-row:4}.release .copy>p:not(.lbl):not(.date){grid-row:5}.release .copy>.row{grid-row:6}
}
/* v8.1 (owner): release background without the printed thorns; thorn branches as separate, asymmetric layers (like the feathers below) */
.release>.bg{object-position:50% 50%}
.thorn{position:absolute;z-index:-1;pointer-events:none;max-width:none;height:auto;filter:drop-shadow(0 14px 18px rgba(0,0,0,.55));transform-origin:0 0}
.thorn.t1{right:-4%;top:-6%;width:clamp(260px,34vw,520px);transform:rotate(8deg);animation:thornA 22s ease-in-out infinite alternate}
.thorn.t2{left:-3%;bottom:-18%;width:clamp(160px,17vw,260px);transform:rotate(-24deg) scaleX(-1);transform-origin:50% 100%;animation:thornB 26s ease-in-out infinite alternate}
.thorn.t3{right:22%;bottom:-30%;width:clamp(90px,8vw,130px);opacity:.55;filter:blur(1.2px) drop-shadow(0 10px 12px rgba(0,0,0,.5));transform:rotate(38deg);transform-origin:50% 100%}
@keyframes thornA{from{transform:rotate(8deg)}to{transform:rotate(9.5deg)}}
@keyframes thornB{from{transform:rotate(-24deg) scaleX(-1)}to{transform:rotate(-22.5deg) scaleX(-1)}}
@media (max-width:820px){.thorn.t1{width:58vw;right:-14%;top:-4%}.thorn.t2{width:34vw;bottom:-12%}.release{background:none}.release>.bg{display:block}}
@media (prefers-reduced-motion:reduce){.thorn{animation:none!important}}
.thorn.t2{left:-1%;bottom:-4%;width:clamp(180px,19vw,290px)}
.thorn.t3{right:8%;bottom:-10%;width:clamp(100px,9vw,150px);opacity:.6}
/* v8.2 (owner): sharper background, deeper shadows, two more thorns, a feather drifting down, candle-like flicker on the thorn shadows */
.release::before{background:radial-gradient(ellipse 48% 60% at 42% 52%,rgba(6,4,4,0) 0%,rgba(6,4,4,.35) 60%,rgba(2,1,1,.8) 100%),linear-gradient(90deg,rgba(2,1,1,.55) 0%,rgba(2,1,1,0) 22%,rgba(2,1,1,0) 70%,rgba(2,1,1,.6) 100%),linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,0) 16%,rgba(6,4,4,0) 82%,var(--night) 100%)}
.thorn{filter:drop-shadow(0 22px 26px rgba(0,0,0,.75)) drop-shadow(0 6px 8px rgba(0,0,0,.5))}
.thorn.t1,.thorn.t2,.thorn.t4{animation-name:thornA,flick;animation-duration:22s,5s;animation-timing-function:ease-in-out,steps(1,end);animation-iteration-count:infinite,infinite;animation-direction:alternate,normal}
.thorn.t2{animation-name:thornB,flick;animation-duration:26s,6.5s}
.thorn.t4{left:-6%;top:-14%;width:clamp(200px,22vw,340px);opacity:.75;filter:blur(1px) drop-shadow(0 18px 22px rgba(0,0,0,.7));transform:rotate(-112deg) scaleY(-1);transform-origin:50% 50%;animation:thornC 30s ease-in-out infinite alternate}
.thorn.t5{right:-2%;top:38%;width:clamp(110px,10vw,170px);opacity:.85;transform:rotate(-62deg);transform-origin:100% 50%;animation:thornD 19s ease-in-out infinite alternate}
@keyframes thornA{from{transform:rotate(7deg)}to{transform:rotate(10deg)}}
@keyframes thornB{from{transform:rotate(-25deg) scaleX(-1)}to{transform:rotate(-21deg) scaleX(-1)}}
@keyframes thornC{from{transform:rotate(-112deg) scaleY(-1)}to{transform:rotate(-109deg) scaleY(-1)}}
@keyframes thornD{from{transform:rotate(-62deg)}to{transform:rotate(-58deg)}}
@keyframes flick{0%{filter:drop-shadow(0 22px 26px rgba(0,0,0,.75)) drop-shadow(0 6px 8px rgba(0,0,0,.5))}35%{filter:drop-shadow(3px 24px 28px rgba(0,0,0,.8)) drop-shadow(1px 7px 8px rgba(0,0,0,.55))}55%{filter:drop-shadow(-2px 21px 25px rgba(0,0,0,.7)) drop-shadow(0 5px 7px rgba(0,0,0,.45))}80%{filter:drop-shadow(1px 23px 27px rgba(0,0,0,.78)) drop-shadow(0 6px 8px rgba(0,0,0,.5))}}
.drift-feather{position:absolute;z-index:-1;left:62%;top:-20%;width:clamp(36px,3.4vw,54px);height:auto;max-width:none;opacity:.85;pointer-events:none;filter:drop-shadow(0 12px 14px rgba(0,0,0,.6));animation:featherFall 24s linear infinite}
@keyframes featherFall{0%{transform:translate(0,0) rotate(20deg);opacity:0}6%{opacity:.85}25%{transform:translate(-60px,30vh) rotate(-15deg)}50%{transform:translate(20px,60vh) rotate(25deg)}75%{transform:translate(-50px,90vh) rotate(-10deg)}92%{opacity:.85}100%{transform:translate(10px,120vh) rotate(15deg);opacity:0}}
@media (max-width:820px){}
@media (prefers-reduced-motion:reduce){.drift-feather{display:none}}
.release .thorn,.release .drift-feather{z-index:0}
.release .wrap{position:relative;z-index:1}
.release::before{background:radial-gradient(ellipse 55% 65% at 42% 52%,rgba(6,4,4,0) 0%,rgba(6,4,4,.3) 65%,rgba(2,1,1,.62) 100%),linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,0) 16%,rgba(6,4,4,0) 82%,var(--night) 100%)}
/* v8.3 (owner): no feather here; thorns grow in and bleed; deep shadow behind the text hides the soft texture */
.release .drift-feather{display:none}
.release span.thorn{display:block}
.release span.thorn>img{display:block;width:100%;height:auto;clip-path:inset(0 100% 100% 0);transition:clip-path 2.6s cubic-bezier(.3,.1,.2,1)}
.release span.thorn.t2>img,.release span.thorn.t3>img,.release span.thorn.t5>img{clip-path:inset(0 0 100% 0)}
.release.grown span.thorn>img{clip-path:inset(0 0 0 0)}
.release.grown span.t2>img{transition-delay:.5s}.release.grown span.t4>img{transition-delay:.9s}.release.grown span.t5>img{transition-delay:1.2s}.release.grown span.t3>img{transition-delay:1.5s}
.thorn .blood{position:absolute;width:5px;height:7px;margin:-2px 0 0 -2.5px;border-radius:50% 50% 50% 50%/40% 40% 60% 60%;background:radial-gradient(circle at 40% 35%,#c4473f 0 18%,#7a1410 55%,#3e0606 100%);box-shadow:0 0 3px rgba(120,10,10,.6);opacity:0;transform-origin:50% 0;animation:bleed 7.5s ease-in infinite}
.release:not(.grown) .thorn .blood{animation-play-state:paused;opacity:0}
@keyframes bleed{0%{opacity:0;transform:translateY(0) scale(.2,.2)}12%{opacity:1;transform:translateY(0) scale(1,1)}45%{opacity:1;transform:translateY(2px) scale(1,1.35)}58%{opacity:1;transform:translateY(16px) scale(.85,1.6)}80%{opacity:.85;transform:translateY(60px) scale(.7,1.5)}100%{opacity:0;transform:translateY(95px) scale(.6,1.4)}}
.release::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 38% 46% at 62% 50%,rgba(10,6,5,.55) 0%,rgba(10,6,5,.3) 50%,rgba(10,6,5,0) 80%)}
@media (prefers-reduced-motion:reduce){.thorn .blood{animation:none;opacity:.9}.release span.thorn>img{transition:none}}
/* v8.4 (owner): no blood; thorns grow organically - a slow reveal spreading from the branch base while the branch reaches in from the edge */
.thorn .blood{display:none}
.release span.thorn>img{clip-path:circle(0% at 4% 3%);opacity:.2;transform:translate(-6%,-8%) rotate(-7deg) scale(.92);transform-origin:4% 3%;transition:clip-path 5.5s cubic-bezier(.25,.6,.25,1),opacity 2.4s ease-out,transform 6s cubic-bezier(.2,.7,.2,1)}
.release span.thorn.t2>img,.release span.thorn.t3>img,.release span.thorn.t5>img{clip-path:circle(0% at 16% 1%);transform-origin:16% 1%;transform:translate(0,-10%) rotate(6deg) scale(.92)}
.release.grown span.thorn>img{clip-path:circle(150% at 4% 3%);opacity:1;transform:none}
.release.grown span.thorn.t2>img,.release.grown span.thorn.t3>img,.release.grown span.thorn.t5>img{clip-path:circle(150% at 16% 1%)}
.release.grown span.t1>img{transition-delay:.2s}.release.grown span.t2>img{transition-delay:1.1s}.release.grown span.t4>img{transition-delay:1.8s}.release.grown span.t5>img{transition-delay:2.4s}.release.grown span.t3>img{transition-delay:3s}
@media (prefers-reduced-motion:reduce){.release span.thorn>img{clip-path:none!important;opacity:1!important;transform:none!important;transition:none!important}}
/* v8.5 (owner): one more branch rising from below toward the buttons */
.thorn.t6{left:47%;bottom:-30%;width:clamp(150px,13vw,210px);transform:rotate(206deg);transform-origin:50% 50%;opacity:.95;animation:thornE 21s ease-in-out infinite alternate}
@keyframes thornE{from{transform:rotate(206deg)}to{transform:rotate(202deg)}}
.release span.thorn.t6>img{clip-path:circle(0% at 16% 1%);transform-origin:16% 1%;transform:translate(0,-10%) rotate(6deg) scale(.92)}
.release.grown span.thorn.t6>img{clip-path:circle(150% at 16% 1%);transform:none;transition-delay:2.1s}
@media (max-width:820px){}
.release .thorn.t6{z-index:1;bottom:-6%;left:45%;width:clamp(170px,15vw,240px)}
/* v8.6 (owner): Book 3 cover hover - thorns burst out from behind the book, blood (snake-blood red) splashes, the book is shoved askew */
.release .cover-stage{position:relative;display:block;width:100%;isolation:isolate}
.release .cover-stage>.cv3{position:relative;z-index:3;display:block;width:100%;height:auto;box-shadow:0 34px 70px rgba(0,0,0,.7),0 0 40px rgba(217,162,95,.08);transform-origin:40% 90%;transition:transform 1.1s cubic-bezier(.34,1.56,.64,1),box-shadow .8s}
.release .cover-stage:hover>.cv3{transform:rotate(-4.5deg) translate(-10px,-6px);box-shadow:20px 40px 70px rgba(0,0,0,.75),0 0 30px rgba(120,20,15,.25);transition-delay:.25s}
.release .ct{position:absolute;z-index:1;display:block;pointer-events:none;filter:drop-shadow(0 12px 14px rgba(0,0,0,.7))}
.release .ct img{display:block;width:100%;height:auto;clip-path:circle(0% at 4% 3%);transform-origin:4% 3%;transform:scale(.85);transition:clip-path 1.6s cubic-bezier(.25,.7,.25,1),transform 1.8s cubic-bezier(.2,.8,.2,1)}
.release .ct2 img,.release .ct3 img{clip-path:circle(0% at 16% 1%);transform-origin:16% 1%}
.release .cover-stage:hover .ct img{clip-path:circle(150% at 4% 3%);transform:none}
.release .cover-stage:hover .ct2 img,.release .cover-stage:hover .ct3 img{clip-path:circle(150% at 16% 1%)}
/* base of each branch sits behind the book, the branch reaches outward */
.release .ct1{left:62%;top:-4%;width:78%;transform:rotate(-58deg)}
.release .ct2{left:4%;top:58%;width:44%;transform:rotate(58deg)}
.release .ct3{left:56%;top:62%;width:40%;transform:rotate(-34deg)}
.release .ct4{left:30%;top:6%;width:62%;transform:rotate(-150deg) scaleY(-1)}
.release .cover-stage:hover .ct1 img{transition-delay:0s}.release .cover-stage:hover .ct2 img{transition-delay:.12s}.release .cover-stage:hover .ct3 img{transition-delay:.22s}.release .cover-stage:hover .ct4 img{transition-delay:.3s}
.release .cover-stage .ct img{transition-delay:0s}
.release .splat{position:absolute;z-index:2;display:block;pointer-events:none;background:center/contain no-repeat;opacity:0;transform:scale(.3);transition:opacity .25s,transform .45s cubic-bezier(.2,1.4,.4,1)}
.release .sp1{background-image:url(img/splat-1.webp);left:-26%;top:46%;width:52%;aspect-ratio:1}
.release .sp2{background-image:url(img/splat-2.webp);right:-30%;top:6%;width:46%;aspect-ratio:1}
.release .sp3{background-image:url(img/splat-3.webp);right:-14%;bottom:-16%;width:36%;aspect-ratio:1}
.release .cover-stage:hover .splat{opacity:.92;transform:scale(1)}
.release .cover-stage:hover .sp1{transition-delay:.55s}.release .cover-stage:hover .sp2{transition-delay:.7s}.release .cover-stage:hover .sp3{transition-delay:.85s}
.release .cover-stage .splat{transition-delay:0s}
@media (min-width:821px){.release .copy>.cover-stage{grid-column:1;grid-row:1 / -1;align-self:center}}
@media (max-width:820px){.release .copy>.cover-stage{width:min(240px,62vw);margin-inline:auto}}
@media (hover:none){}
@media (prefers-reduced-motion:reduce){.release .cover-stage>.cv3,.release .ct img,.release .splat{transition:none}}
/* v8.6b: branches pivot around their base inside the book and reach outward past the edges */
.release .ct1{left:68%;top:14%;width:105%;transform-origin:4% 3%;transform:rotate(-80deg)}
.release .ct4{left:24%;top:12%;width:80%;transform-origin:4% 3%;transform:rotate(172deg)}
.release .ct2{left:12%;top:70%;width:62%;transform-origin:16% 1%;transform:rotate(38deg)}
.release .ct3{left:70%;top:76%;width:58%;transform-origin:16% 1%;transform:rotate(-42deg)}
.release .sp1{left:-42%;top:62%;width:50%}
.release .sp2{right:-58%;top:-22%;width:48%}
.release .sp3{right:-40%;bottom:-26%;width:38%}
.release .sp1{left:-22%;top:64%;width:42%}
.release .sp2{right:-24%;top:-8%;width:36%}
.release .sp3{right:-20%;bottom:-10%;width:32%}
/* v8.7 (owner): no blood; ten branches of different sizes - some reach far, some stay close to the book */
.release .splat{display:none}
.release .ct5,.release .ct7,.release .ct9{transform-origin:16% 1%}
.release .ct5 img,.release .ct7 img,.release .ct9 img{clip-path:circle(0% at 16% 1%);transform-origin:16% 1%}
.release .cover-stage:hover .ct5 img,.release .cover-stage:hover .ct7 img,.release .cover-stage:hover .ct9 img{clip-path:circle(150% at 16% 1%)}
.release .ct6,.release .ct8,.release .ct10{transform-origin:4% 3%}
/* short ones hugging the edges */
.release .ct5{left:86%;top:30%;width:26%;transform:rotate(-70deg)}
.release .ct6{left:-4%;top:28%;width:30%;transform:rotate(150deg)}
.release .ct7{left:40%;top:92%;width:24%;transform:rotate(10deg)}
.release .ct8{left:78%;top:2%;width:32%;transform:rotate(-40deg)}
/* medium ones */
.release .ct9{left:-2%;top:44%;width:44%;transform:rotate(70deg)}
.release .ct10{left:88%;top:58%;width:52%;transform:rotate(10deg)}
.release .cover-stage:hover .ct5 img{transition-delay:.05s}.release .cover-stage:hover .ct6 img{transition-delay:.16s}.release .cover-stage:hover .ct7 img{transition-delay:.26s}.release .cover-stage:hover .ct8 img{transition-delay:.08s}.release .cover-stage:hover .ct9 img{transition-delay:.2s}.release .cover-stage:hover .ct10 img{transition-delay:.34s}
.release .ct5 img,.release .ct6 img,.release .ct7 img,.release .ct8 img{transition-duration:1.1s,1.3s}
.release .copy>:not(.cover-stage){position:relative;z-index:2}
.release .copy>.cover-stage{z-index:1}
/* v8.8 (owner): new release themed on Book 3 - heartbeat glow behind the cover, text bleeds in on scroll, blood-sheen date, thorn rule, blood-filled buttons, drifting ash */
.release .cover-stage::before{content:"";position:absolute;z-index:0;left:50%;top:58%;width:150%;height:120%;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;background:radial-gradient(ellipse 45% 45% at 50% 50%,rgba(140,34,22,.45) 0%,rgba(116,45,29,.18) 40%,rgba(116,45,29,0) 70%);opacity:.35;animation:heartbeat 2.4s ease-in-out infinite}
@keyframes heartbeat{0%,100%{opacity:.3;transform:translate(-50%,-50%) scale(.96)}10%{opacity:.75;transform:translate(-50%,-50%) scale(1.03)}20%{opacity:.4;transform:translate(-50%,-50%) scale(.98)}30%{opacity:.85;transform:translate(-50%,-50%) scale(1.05)}55%{opacity:.35;transform:translate(-50%,-50%) scale(.97)}}
.release .cover-stage:hover::before{animation-duration:1.2s}
/* text bleeds in when the band arrives */
.release .copy>:not(.cover-stage){opacity:0;transform:translateY(14px);filter:blur(6px);transition:opacity 1.2s ease,transform 1.2s cubic-bezier(.2,.7,.2,1),filter 1.4s ease}
.release.grown .copy>:not(.cover-stage){opacity:1;transform:none;filter:none}
.release.grown .copy>.lbl{transition-delay:.3s}.release.grown .copy>h2{transition-delay:.55s}.release.grown .copy>.date{transition-delay:.85s}.release.grown .copy>p:not(.lbl):not(.date){transition-delay:1.1s}.release.grown .copy>.row{transition-delay:1.35s}
/* title: ink-to-ivory reveal, blood glow on hover */
.release .copy>h2{background:linear-gradient(90deg,#EDE3D6 0 45%,#b8483a 50%,#EDE3D6 55% 100%) 100% 0/220% 100% no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent;transition:background-position 2.2s cubic-bezier(.4,0,.2,1) 1s,text-shadow .5s,opacity 1.2s ease .55s,transform 1.2s cubic-bezier(.2,.7,.2,1) .55s,filter 1.4s ease .55s}
.release.grown .copy>h2{background-position:0 0}
.release .copy>h2:hover{text-shadow:0 0 18px rgba(150,30,20,.55),0 0 2px rgba(150,30,20,.6)}
/* date: candle gold with a slow blood-red sheen */
.release .date{background:linear-gradient(100deg,#D9A25F 0%,#E8B877 30%,#9b3324 45%,#D9A25F 60%,#E2AE6C 100%) 0 0/300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:dateSheen 9s ease-in-out infinite}
@keyframes dateSheen{0%,100%{background-position:100% 0}50%{background-position:0 0}}
/* label: a thorn rule draws in before it */
.release .copy>.lbl{display:flex;align-items:center;gap:12px}
.release .copy>.lbl::before{content:"";flex:0 0 auto;width:0;height:9px;background:linear-gradient(#a8846a,#a8846a) 0 50%/100% 1px no-repeat,repeating-linear-gradient(90deg,transparent 0 9px,#a8846a 9px 10px,transparent 10px 14px) 0 0/100% 4px no-repeat,repeating-linear-gradient(90deg,transparent 0 15px,#a8846a 15px 16px,transparent 16px 20px) 0 100%/100% 4px no-repeat;transition:width 1.4s cubic-bezier(.3,.8,.2,1) .6s}
.release.grown .copy>.lbl::before{width:56px}
/* buttons: blood rises inside on hover, thorny edge glow */
.release .row .btn{position:relative;overflow:hidden;isolation:isolate}
.release .row .btn::before{content:"";position:absolute;inset:auto 0 0 0;height:0;z-index:-1;background:linear-gradient(180deg,#8e2a1c,#5a140d);transition:height .55s cubic-bezier(.5,0,.2,1)}
.release .row .btn:hover::before,.release .row .btn:focus-visible::before{height:100%}
.release .row .btn:hover,.release .row .btn:focus-visible{background:transparent;color:#F6E7D6;border-color:#b8483a;box-shadow:0 10px 28px rgba(90,20,13,.45),0 0 18px rgba(150,40,25,.3)}
.release .row .btn[aria-disabled="true"]{background:rgba(116,45,29,.35);border-color:rgba(184,72,58,.55);color:#E9CFC2;opacity:.85}
/* drifting ash */
.release .ash{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.release .ash i{position:absolute;bottom:-10px;width:3px;height:3px;border-radius:50%;background:rgba(230,190,160,.55);box-shadow:0 0 6px rgba(200,90,60,.5);animation:ashUp 18s linear infinite;opacity:0}
.release .ash i:nth-child(3n){width:2px;height:2px;background:rgba(190,70,50,.7)}
@keyframes ashUp{0%{transform:translate(0,0);opacity:0}10%{opacity:.8}50%{transform:translate(var(--dx),-45vh)}90%{opacity:.6}100%{transform:translate(calc(var(--dx) * -1),-95vh);opacity:0}}
@media (prefers-reduced-motion:reduce){.release .cover-stage::before,.release .date,.release .ash i{animation:none}.release .ash{display:none}.release .copy>:not(.cover-stage){opacity:1;transform:none;filter:none;transition:none}.release .copy>h2{background-position:0 0;transition:none}}
/* v8.9 (owner): no thorn rule before the label; label does not move on hover */
.release .copy>.lbl::before{display:none}
.release .copy:hover .lbl,.release .copy>.lbl{letter-spacing:.24em}
/* v9.0 (owner): softer, deeper shadow where the release band meets the timeline */
.release::before{background:radial-gradient(ellipse 55% 65% at 42% 52%,rgba(6,4,4,0) 0%,rgba(6,4,4,.3) 65%,rgba(2,1,1,.62) 100%),linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.92) 6%,rgba(6,4,4,.7) 13%,rgba(6,4,4,.38) 21%,rgba(6,4,4,.12) 29%,rgba(6,4,4,0) 36%,rgba(6,4,4,0) 82%,var(--night) 100%)}
.release .thorn.t1,.release .thorn.t4{-webkit-mask:linear-gradient(180deg,transparent 0,#000 22%);mask:linear-gradient(180deg,transparent 0,#000 22%)}
.release::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.92) 6%,rgba(6,4,4,.7) 13%,rgba(6,4,4,.38) 21%,rgba(6,4,4,.12) 29%,rgba(6,4,4,0) 36%,rgba(6,4,4,0) 80%,rgba(6,4,4,.6) 92%,var(--night) 100%),radial-gradient(ellipse 55% 65% at 42% 52%,rgba(6,4,4,0) 0%,rgba(6,4,4,.3) 65%,rgba(6,4,4,.6) 100%)}
/* v9.1 (owner): series band - sharper wordmark (vector-traced), clearer structure (label, wordmark, tagline / three books each with its own link / one call to action), softer entry from the band above */
.series .head img{width:min(640px,88vw)}
.series .books .buy{display:inline-block;margin-top:6px;font-family:var(--f-label);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--rose);text-decoration:none;position:relative;padding-bottom:3px}
.series .books .buy::after{content:"";position:absolute;left:50%;right:50%;bottom:0;height:1px;background:var(--candle);box-shadow:0 0 8px rgba(217,162,95,.7);transition:left .35s var(--ease-out),right .35s var(--ease-out)}
.series .books .buy:hover{color:#F3C98B}.series .books .buy:hover::after{left:0;right:0}
.series-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:clamp(40px,5vw,64px)}
.series .series-ku{text-align:center;margin-top:12px}
.series .cw{margin-top:18px}
.series::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.9) 7%,rgba(6,4,4,.6) 15%,rgba(6,4,4,.25) 24%,rgba(6,4,4,0) 32%,rgba(6,4,4,0) 84%,var(--night) 100%)}
.release::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.92) 6%,rgba(6,4,4,.7) 13%,rgba(6,4,4,.38) 21%,rgba(6,4,4,.12) 29%,rgba(6,4,4,0) 36%,rgba(6,4,4,0) 70%,rgba(6,4,4,.35) 82%,rgba(6,4,4,.8) 93%,var(--night) 100%),radial-gradient(ellipse 55% 65% at 42% 52%,rgba(6,4,4,0) 0%,rgba(6,4,4,.3) 65%,rgba(6,4,4,.6) 100%)}
/* v9.2 (owner): series label static; TBL wordmark gets ink reveal, ember breath and gold sheen */
.series .head:hover .lbl,.series .head .lbl{letter-spacing:.24em;transition:none}
.series .head .wm-fx{position:relative;display:inline-block;line-height:0;-webkit-mask:linear-gradient(90deg,#000 42%,transparent 58%) 100% 0/260% 100% no-repeat;mask:linear-gradient(90deg,#000 42%,transparent 58%) 100% 0/260% 100% no-repeat}
.series .head.lit .wm-fx{-webkit-mask-position:0 0;mask-position:0 0;transition:-webkit-mask-position 2.6s cubic-bezier(.4,.1,.2,1),mask-position 2.6s cubic-bezier(.4,.1,.2,1)}
.series .head .wm-fx img{filter:blur(5px);opacity:.4;transition:filter 2.2s ease .3s,opacity 2.2s ease .3s}
.series .head.lit .wm-fx img{filter:none;opacity:1}
.series .head .wm-fx::before,.series .head .wm-fx::after{content:"";position:absolute;inset:0;pointer-events:none;-webkit-mask:url(https://static.wixstatic.com/media/5e8914_9be90a8a638f4f25a7981c72279a2c05~mv2.webp) center/100% 100% no-repeat;mask:url(https://static.wixstatic.com/media/5e8914_9be90a8a638f4f25a7981c72279a2c05~mv2.webp) center/100% 100% no-repeat}
.series .head .wm-fx::before{background:rgba(232,150,80,.55);filter:blur(14px);opacity:0;mix-blend-mode:screen;z-index:-1}
.series .head.lit .wm-fx::before{animation:wmEmber 6s ease-in-out 2.4s infinite}
@keyframes wmEmber{0%,100%{opacity:.05}50%{opacity:.32}}
.series .head .wm-fx::after{background:linear-gradient(105deg,transparent 42%,rgba(255,226,170,.9) 50%,transparent 58%) 100% 0/250% 100% no-repeat;mix-blend-mode:screen;opacity:0}
.series .head.lit .wm-fx::after{animation:wmSheen 8s ease-in-out 2.6s infinite}
@keyframes wmSheen{0%{background-position:100% 0;opacity:1}40%{background-position:0 0;opacity:1}41%,100%{background-position:0 0;opacity:0}}
.series .head .wm-fx:hover::before{opacity:.4;transition:opacity .4s}
@media (prefers-reduced-motion:reduce){.series .head .wm-fx{-webkit-mask:none;mask:none}.series .head .wm-fx img{filter:none;opacity:1}.series .head .wm-fx::before,.series .head .wm-fx::after{animation:none!important}}
.series .head .wm-fx::before{z-index:1;background:rgba(224,140,70,.9);filter:blur(16px)}
@keyframes wmEmber{0%,100%{opacity:.08}50%{opacity:.42}}
.series .head .wm-fx::after{z-index:2;mix-blend-mode:normal;background:linear-gradient(105deg,transparent 40%,rgba(201,140,72,.75) 46%,rgba(240,196,128,.95) 50%,rgba(201,140,72,.75) 54%,transparent 60%) 100% 0/250% 100% no-repeat}
.series .head .wm-fx:hover::before{opacity:.55}

/* v9.3 (owner, Runde 5 "Bewegung"): keep the motion on desktop, but make it cheap; phones get a calmer, reduced set.
   1) Sections off screen pause all their animations (fx.js sets .fx-off). */
.fx-off,.fx-off *,.fx-off *::before,.fx-off *::after{animation-play-state:paused!important}
/* 2) Hero mist: moved by transform instead of margin (no relayout), blur rasterized once */
.hero-fx .mist{will-change:transform;animation-name:mistT}
.hero-fx .mist-2{animation-name:mistT2}
@keyframes mistT{from{transform:translate(-6.4%,-50%)}to{transform:translate(6.4%,-50%)}}
@keyframes mistT2{from{transform:translate(5.7%,-50%)}to{transform:translate(-7.1%,-50%)}}
/* 3) Thorns: static shadow on the branch itself, sway runs on the compositor; the candle flicker lives on a separate shadow copy (opacity only) */
.release span.thorn{filter:none!important;will-change:transform}
.release span.thorn>img.tmain{filter:drop-shadow(0 22px 26px rgba(0,0,0,.75)) drop-shadow(0 6px 8px rgba(0,0,0,.5))}
.release span.thorn.t4>img.tmain{filter:blur(1px) drop-shadow(0 18px 22px rgba(0,0,0,.7))}
.release span.thorn.t3>img.tmain{filter:blur(1.2px) drop-shadow(0 10px 12px rgba(0,0,0,.5))}
.release span.thorn>img.tsh{position:absolute;max-width:none;height:auto;translate:3px 26px;opacity:0;will-change:opacity}
.release.grown span.thorn>img.tsh{animation:shFlick 5.5s steps(1,end) infinite}
.release.grown span.thorn.t2>img.tsh{animation-duration:6.5s}.release.grown span.thorn.t4>img.tsh{animation-duration:7.3s}.release.grown span.thorn.t5>img.tsh{animation-duration:4.7s}
@keyframes shFlick{0%{opacity:.22}18%{opacity:.34}31%{opacity:.16}47%{opacity:.3}63%{opacity:.12}72%{opacity:.36}86%{opacity:.2}}
.thorn.t1,.thorn.t2,.thorn.t4{animation-name:thornA;animation-duration:22s;animation-timing-function:ease-in-out;animation-direction:alternate}
.thorn.t2{animation-name:thornB;animation-duration:26s}
.thorn.t4{animation-name:thornC;animation-duration:30s}
/* glows that only change opacity get their own layer */
.series .head .wm-fx::before,.release .cover-stage::before,.stage.hero .sigil::before{will-change:opacity,transform}
@media (prefers-reduced-motion:reduce){.release span.thorn>img.tsh{animation:none!important;opacity:.22}}

/* 4) Phones: calmer. One clear effect per screen, the rest still or gone. */
@media (max-width:700px){
  /* Hero: slow zoom, staged reveal, Umbra glow stay. A few embers, raven eyes, lighthouse and tower glow, one mist band. */
  /* Timeline: Umbra swirl and the Project O glitch stay; fog is one still layer, nodes glow without pulsing */
  /* New release: thorns grow in once, then rest; heartbeat behind the cover stays; no ash, no flicker, no sheen; text fades in without blur */
  /* Series: feathers rest, the small blurred one is gone; wordmark inks in once and keeps a still warm glow, no sheen */
}

/* v9.5 (owner: v9.4 sparks/smoke "too cheerful, too modern" - removed). TBL wordmark hover: a draught catches the candle - the warm glow gutters and almost dies, then struggles back; the letters sink into a deep ink shadow. Dark, old, quiet. Desktop/hover only. */
@media (hover:hover) and (prefers-reduced-motion:no-preference){
  .series .head.lit #tbl-title:hover .wm-fx::before{animation:wmGutter 3.2s ease-in-out infinite}
  .series .head .wm-fx img{transition:filter 1.6s ease}
  .series .head.lit #tbl-title:hover .wm-fx img{filter:brightness(.86) sepia(.25) drop-shadow(0 3px 4px rgba(0,0,0,.95)) drop-shadow(0 0 8px rgba(0,0,0,.85))}
}
@keyframes wmGutter{0%{opacity:.4}14%{opacity:.08}20%{opacity:.22}27%{opacity:.04}40%{opacity:.16}58%{opacity:.3}72%{opacity:.12}86%{opacity:.36}100%{opacity:.4}}

/* v9.6 (owner): book numbers as large Roman numerals in Cinzel Decorative instead of the "Book I" label */
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.books li>.bnum{position:relative;z-index:3;margin:0 0 14px;font-family:"Cinzel Decorative","Cinzel",serif;font-weight:400;font-size:clamp(34px,3.6vw,50px);line-height:1;letter-spacing:.06em;color:var(--candle);text-shadow:0 2px 10px rgba(0,0,0,.9),0 0 18px rgba(217,162,95,.18)}
@media (max-width:700px){.books li>.bnum{font-size:38px;margin-bottom:10px}}

/* v9.7 (owner): numerals like the reference - classic high-contrast serif, serifs joined, bone colour */
.books li>.bnum{font-family:"Playfair Display",Georgia,serif;font-weight:400;font-size:clamp(32px,3.2vw,44px);letter-spacing:-.05em;color:var(--bone,#EDE3D6);text-shadow:0 2px 10px rgba(0,0,0,.9)}
@media (max-width:700px){.books li>.bnum{font-size:36px}}
/* v9.8 (owner): numerals warmer/browner like the reference; quiet effects: ink reveal one after another, candle warmth when the book is hovered */
.books li>.bnum{color:#D8C2A2;opacity:0;filter:blur(6px);transform:translateY(8px);transition:opacity 1.4s ease,filter 1.6s ease,transform 1.6s cubic-bezier(.2,.7,.2,1),color .8s ease,text-shadow .8s ease}
.books.lit li>.bnum{opacity:1;filter:none;transform:none}
.books.lit li:nth-child(2)>.bnum{transition-delay:.35s,.35s,.35s,0s,0s}
.books.lit li:nth-child(3)>.bnum{transition-delay:.7s,.7s,.7s,0s,0s}
@media (hover:hover){
  .books li:hover>.bnum{color:#E7CFA8;text-shadow:0 2px 10px rgba(0,0,0,.9),0 0 16px rgba(201,140,72,.45);animation:bnumCandle 3s ease-in-out infinite}
}
@keyframes bnumCandle{0%,100%{text-shadow:0 2px 10px rgba(0,0,0,.9),0 0 16px rgba(201,140,72,.45)}23%{text-shadow:0 2px 10px rgba(0,0,0,.9),0 0 10px rgba(201,140,72,.25)}41%{text-shadow:0 2px 10px rgba(0,0,0,.9),0 0 20px rgba(201,140,72,.5)}67%{text-shadow:0 2px 10px rgba(0,0,0,.9),0 0 12px rgba(201,140,72,.3)}}
@media (prefers-reduced-motion:reduce){.books li>.bnum{opacity:1;filter:none;transform:none;transition:none}.books li:hover>.bnum{animation:none}}
@media (max-width:700px){}

/* v10.0 (owner): Street Team / Newsletter on a darker ground - a single wall lamp in the dark (stock-a-wall-lamp, Unsplash, website only); long soft fades into night at top and bottom; footer now starts in night too, so there is no edge */
.join>.bg{object-position:47% 42%;filter:brightness(.95) saturate(.85)}
.join::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.88) 10%,rgba(6,4,4,.45) 30%,rgba(6,4,4,.3) 55%,rgba(6,4,4,.55) 75%,rgba(6,4,4,.9) 90%,var(--night) 100%),radial-gradient(ellipse 60% 70% at 30% 55%,rgba(6,4,4,.5),rgba(6,4,4,0) 70%)}
footer.site::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.85) 18%,rgba(6,4,4,.75) 100%)}

/* v10.1 (owner): Unreachable band in a deeper blue (#1A1F35 / #1B293F from Maezos' Canva); longer, softer fades from night above and into night below */
.unreach>.bg{filter:brightness(.62) saturate(.9) hue-rotate(-6deg)}
.unreach::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.9) 7%,rgba(19,20,34,.78) 18%,rgba(26,31,53,.62) 34%,rgba(27,41,63,.5) 50%,rgba(26,31,53,.62) 66%,rgba(19,20,34,.78) 82%,rgba(6,4,4,.9) 93%,var(--night) 100%)}
/* the big feather at the bottom right of the series sat partly below the section edge and was cut off hard - moved up so it lies fully inside */
.series .feather.f2{bottom:9%}

/* v10.3 (owner): Unreachable band, second pass - own background from the cover cranes (mirrored drape left, cranes right, darkened, ink bloom, grain), paper cranes hanging on broken threads like on the cover, the three part covers fanned behind the book, quote on one line, the three part covers replace the symbols. Blue world only, nothing from Blairville. */
.unreach{position:relative;overflow:hidden;isolation:isolate}
.unreach>.bg{filter:none;object-position:50% 40%}
.unreach .ur-ink{position:absolute;inset:0;z-index:0;pointer-events:none}
.unreach .ur-ink i{position:absolute;border-radius:50%;filter:blur(40px);opacity:.5;will-change:transform}
.unreach .ur-ink i:nth-child(1){left:-8%;top:20%;width:50%;height:60%;background:radial-gradient(closest-side,rgba(52,74,128,.5),rgba(26,31,53,0));animation:urInkA 38s ease-in-out infinite alternate}
.unreach .ur-ink i:nth-child(2){right:-12%;top:10%;width:55%;height:66%;background:radial-gradient(closest-side,rgba(40,58,104,.42),rgba(26,31,53,0));animation:urInkB 46s ease-in-out infinite alternate}
.unreach .ur-ink i:nth-child(3){left:32%;bottom:-20%;width:44%;height:50%;background:radial-gradient(closest-side,rgba(8,12,26,.75),rgba(8,12,26,0));animation:urInkA 52s ease-in-out infinite alternate-reverse}
@keyframes urInkA{from{transform:translate(0,0) scale(1)}to{transform:translate(9%,-6%) scale(1.15)}}
@keyframes urInkB{from{transform:translate(0,0) scale(1.05)}to{transform:translate(-10%,7%) scale(.92)}}
.unreach .wrap{position:relative;z-index:2}
/* hanging cranes on broken threads */
.unreach .ur-hang{position:absolute;inset:0;z-index:1;pointer-events:none}
.unreach .hg{position:absolute;top:0;width:var(--w);height:var(--len);transform-origin:50% 0;will-change:transform;animation:hgSway var(--t) ease-in-out var(--d) infinite alternate}
.unreach .hg::before{content:"";position:absolute;left:50%;top:0;width:1px;height:calc(100% - var(--w)*.35);background:repeating-linear-gradient(180deg,rgba(190,205,240,.55) 0 14px,rgba(190,205,240,0) 14px 19px,rgba(190,205,240,.35) 19px 32px,rgba(190,205,240,0) 32px 36px);-webkit-mask:linear-gradient(180deg,transparent,#000 18%);mask:linear-gradient(180deg,transparent,#000 18%)}
.unreach .hg img{position:absolute;left:50%;bottom:0;width:100%;height:auto;transform:translateX(-46%);filter:grayscale(1) sepia(.35) hue-rotate(185deg) saturate(1.6) brightness(.78) drop-shadow(0 16px 18px rgba(0,0,0,.55));opacity:.92}
.unreach .hg.h1{left:41%;--w:clamp(58px,5.5vw,86px);--len:clamp(150px,17vw,250px);--t:7s;--d:-2s}
.unreach .hg.h2{left:56%;--w:clamp(44px,4vw,64px);--len:clamp(90px,10vw,140px);--t:9s;--d:-5s;opacity:.7}
.unreach .hg.h3{right:7%;--w:clamp(66px,6.5vw,100px);--len:clamp(230px,26vw,380px);--t:8s;--d:-1s}
.unreach .hg.h4{right:21%;--w:clamp(40px,3.4vw,54px);--len:clamp(60px,7vw,100px);--t:11s;--d:-7s;opacity:.55;filter:blur(1.5px)}
.unreach .hg.h5{left:4%;--w:clamp(46px,4vw,64px);--len:clamp(70px,8vw,120px);--t:10s;--d:-4s;opacity:.5;filter:blur(2px)}
.unreach .hg.h2 img,.unreach .hg.h4 img{transform:translateX(-54%) scaleX(-1)}
@keyframes hgSway{from{transform:rotate(-2.6deg)}to{transform:rotate(2.6deg)}}
/* stage: book, three part covers fanned behind, bunny, butterfly */
.unreach .ur-stage{position:relative;width:100%;max-width:360px;justify-self:center}
.unreach .ur-stage .mock{position:relative;z-index:2;display:block}
.unreach .ur-fan{position:absolute;z-index:1;width:92%;height:auto;max-width:none;right:-26%;top:16%;transform:rotate(6deg);transform-origin:20% 80%;filter:drop-shadow(0 24px 30px rgba(0,0,0,.6)) brightness(.85);transition:transform 1.1s cubic-bezier(.2,.7,.2,1),filter .8s,right 1.1s cubic-bezier(.2,.7,.2,1)}
.unreach .ur-bunny{position:absolute;z-index:3;left:-26%;bottom:-6%;width:52%;height:auto;max-width:none;filter:drop-shadow(0 18px 22px rgba(0,0,0,.6)) brightness(.9);transform-origin:50% 92%;transition:transform .9s cubic-bezier(.2,.7,.2,1),filter .6s}
.unreach .ur-bfly{position:absolute;z-index:4;right:-12%;top:-5%;width:36%;height:auto;max-width:none;filter:drop-shadow(0 10px 12px rgba(0,0,0,.6));transform:rotate(-8deg);transform-origin:50% 55%;transition:transform 1.4s cubic-bezier(.2,.7,.2,1),filter .6s}
.unreach .ur-stage .mock{transition:transform .9s cubic-bezier(.2,.7,.2,1),filter .9s}
@media (hover:hover){
  .unreach.lit .ur-stage:hover .mock{transform:translateY(-10px) rotate(-2.5deg) scale(1.02);filter:drop-shadow(0 40px 50px rgba(0,0,0,.65)) drop-shadow(0 0 30px rgba(152,175,226,.32))}
  .unreach .ur-stage:hover .ur-fan{right:-58%;transform:rotate(14deg) translateY(-4%);filter:drop-shadow(0 28px 34px rgba(0,0,0,.65)) brightness(1)}
  .unreach .ur-stage:hover .ur-bunny{transform:rotate(-7deg) translateX(-4px);filter:drop-shadow(0 18px 22px rgba(0,0,0,.6)) drop-shadow(0 0 16px rgba(152,175,226,.3)) brightness(1)}
  .unreach .ur-stage:hover .ur-bfly{transform:translate(38%,-70%) rotate(10deg);filter:drop-shadow(0 18px 18px rgba(0,0,0,.55)) drop-shadow(0 0 14px rgba(110,160,255,.45));animation:urFlap .5s ease-in-out .1s infinite}
  .unreach .ur-stage:hover~.copy .ur-parts img{filter:drop-shadow(0 10px 14px rgba(0,0,0,.6)) drop-shadow(0 0 10px rgba(152,175,226,.35))}
}
@keyframes urFlap{0%,100%{scale:1 1}50%{scale:.35 1}}
/* reveal on scroll */
.unreach .ur-stage .mock{opacity:0;filter:blur(8px) drop-shadow(0 30px 40px rgba(0,0,0,.55));transform:translateY(30px)}
.unreach.lit .ur-stage .mock{opacity:1;filter:drop-shadow(0 30px 40px rgba(0,0,0,.55));transform:none;transition:opacity 1.4s ease,filter 1.8s ease,transform 1.8s cubic-bezier(.2,.7,.2,1)}
.unreach .ur-bunny,.unreach .ur-bfly,.unreach .ur-fan{opacity:0}
.unreach.lit .ur-bunny,.unreach.lit .ur-bfly,.unreach.lit .ur-fan{opacity:1;transition-property:opacity,transform,filter,right;transition-duration:1.6s,1.1s,.8s,1.1s;transition-delay:1s,0s,0s,0s}
.unreach .ur-wm{display:inline-block;line-height:0;-webkit-mask:linear-gradient(90deg,#000 42%,transparent 58%) 100% 0/260% 100% no-repeat;mask:linear-gradient(90deg,#000 42%,transparent 58%) 100% 0/260% 100% no-repeat}
.unreach.lit .ur-wm{-webkit-mask-position:0 0;mask-position:0 0;transition:-webkit-mask-position 2.4s cubic-bezier(.4,.1,.2,1) .3s,mask-position 2.4s cubic-bezier(.4,.1,.2,1) .3s}
.unreach .wm{max-width:460px}
.unreach .ur-also,.unreach .copy>.genre,.unreach .copy>.tag,.unreach .ur-parts,.unreach .ur-vol,.unreach .copy>.row,.unreach .copy>.ku{opacity:0;transform:translateY(10px);transition:opacity 1.1s ease,transform 1.1s cubic-bezier(.2,.7,.2,1)}
.unreach.lit .ur-also{opacity:1;transform:none}
.unreach.lit .copy>.genre{opacity:1;transform:none;transition-delay:.9s}
.unreach.lit .copy>.tag{opacity:1;transform:none;transition-delay:3s}
.unreach.lit .ur-parts{opacity:1;transform:none;transition-delay:3.3s}
.unreach.lit .ur-vol{opacity:1;transform:none;transition-delay:3.6s}
.unreach.lit .copy>.row{opacity:1;transform:none;transition-delay:3.8s}
.unreach.lit .copy>.ku{opacity:1;transform:none;transition-delay:4s}
/* "Also by Maezos" - bigger and clearer */
.unreach .ur-also{display:flex;align-items:center;gap:14px;margin:0;font-family:var(--f-label);font-size:clamp(14px,1.3vw,17px);letter-spacing:.38em;text-transform:uppercase;color:var(--ink-hi);text-shadow:0 0 14px rgba(152,175,226,.35)}
.unreach .ur-also::before,.unreach .ur-also::after{content:"";height:1px;width:46px;background:linear-gradient(90deg,rgba(152,175,226,0),rgba(152,175,226,.8))}
.unreach .ur-also::after{transform:scaleX(-1)}
/* quote on one line, letters ink in one after another (fx.js splits them) */
.unreach .ur-line{margin:2px 0;font-family:"Playfair Display",Georgia,serif;font-size:clamp(20px,2.3vw,30px);letter-spacing:.32em;color:#F2F5FB;text-shadow:0 4px 10px rgba(0,0,0,.7),0 0 18px rgba(152,175,226,.22);white-space:nowrap}
.unreach .ur-line .a{font-style:italic}
.unreach .ur-line .b{margin-left:.6em}
.unreach .ur-line .ch{display:inline-block;opacity:0;filter:blur(5px);transform:translateY(4px);transition:opacity .6s ease,filter .8s ease,transform .8s ease}
.unreach.lit .ur-line .ch{opacity:1;filter:none;transform:none}
/* three part covers replace the symbols */
.unreach .ur-parts{list-style:none;margin:6px 0 0;padding:0;display:flex;gap:clamp(16px,2.4vw,28px);align-items:flex-start}
.unreach .ur-parts li{display:flex;flex-direction:column;align-items:center;gap:6px;width:clamp(74px,7vw,96px);cursor:default}
.unreach .ur-parts img{width:100%;height:auto;filter:drop-shadow(0 10px 14px rgba(0,0,0,.6));transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .5s}
.unreach .ur-parts .pt{font-family:var(--f-ink);font-size:16px;letter-spacing:.24em;color:var(--ink-hi);margin-top:4px}
.unreach .ur-parts .pn{font-family:var(--f-label);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);text-align:center;white-space:nowrap;transition:color .4s,text-shadow .4s}
.unreach .ur-parts li:hover img{transform:translateY(-8px) rotate(-2deg);filter:drop-shadow(0 16px 18px rgba(0,0,0,.65)) drop-shadow(0 0 14px rgba(152,175,226,.45))}
.unreach .ur-parts li:hover .pn{color:var(--ink-hi);text-shadow:0 0 12px rgba(152,175,226,.5)}
.unreach .ur-vol{margin:-4px 0 0;font-style:italic;color:var(--ink-mute);font-size:15px}
.unreach .btn.ink-ghost{background:transparent;border-color:rgba(152,175,226,.55);color:var(--ink-hi);font-family:var(--f-ink)}
.unreach .btn.ink-ghost:hover,.unreach .btn.ink-ghost:focus-visible{border-color:var(--ink-hi);color:var(--ivory,#EDE3D6);box-shadow:0 0 22px rgba(152,175,226,.3)}
.unreach .row{flex-wrap:wrap;gap:14px}
.unreach .row .btn.ink,.unreach .row .btn.ink-ghost{font-size:17px;letter-spacing:.16em;padding-inline:22px}
/* phones: calmer */
@media (max-width:720px){
  .unreach .ur-stage{max-width:220px;margin-bottom:28px}
  .unreach .ur-fan{right:-44%}
  .unreach .ur-bunny{left:-30%;width:50%}
  
  .unreach .hg{animation-duration:16s}
  .unreach .hg.h1{left:6%}
  
  .unreach .ur-also{justify-content:center}
  .unreach .ur-line{white-space:normal;letter-spacing:.2em;font-size:21px}
  
  .unreach .ur-parts{justify-content:center}
  .unreach .ur-stage .mock{filter:drop-shadow(0 30px 40px rgba(0,0,0,.55))}
}
@media (prefers-reduced-motion:reduce){
  .unreach .ur-ink i,.unreach .hg,.unreach .ur-bfly{animation:none!important}
  .unreach .ur-stage .mock,.unreach .ur-bunny,.unreach .ur-bfly,.unreach .ur-fan,.unreach .copy>*,.unreach .ur-parts,.unreach .ur-line .ch{opacity:1!important;transform:none!important;transition:none!important;filter:none}
  .unreach .ur-wm{-webkit-mask:none;mask:none}
}
/* v10.3 fixes: part covers fan out to the left behind the book (never over the text), cranes hang only in free space, part names wrap */
.unreach .ur-fan{right:auto;left:-34%;top:2%;width:88%;transform:rotate(-12deg);transform-origin:80% 80%;transition:transform 1.1s cubic-bezier(.2,.7,.2,1),filter .8s,left 1.1s cubic-bezier(.2,.7,.2,1)}
@media (hover:hover){.unreach .ur-stage:hover .ur-fan{right:auto;left:-48%;transform:rotate(-19deg) translateY(-3%)}
  .unreach .ur-stage:hover .ur-bfly{transform:translate(22%,-42%) rotate(10deg)}}
.unreach.lit .ur-fan{transition-property:opacity,transform,filter,left}
.unreach .hg.h1{left:20%;--len:clamp(46px,5vw,80px);--w:clamp(44px,4vw,62px)}
.unreach .hg.h2{left:auto;right:14%;--len:clamp(120px,13vw,190px)}
.unreach .hg.h4{right:2%;--len:clamp(70px,8vw,110px)}
.unreach .ur-parts{gap:clamp(14px,2vw,24px)}
.unreach .ur-parts li{width:clamp(84px,8vw,104px)}
.unreach .ur-parts .pn{white-space:normal;line-height:1.5}
@media (max-width:720px){.unreach .ur-fan{left:-40%}.unreach .hg.h1{left:8%}}

.unreach .ur-credit{position:absolute;z-index:3;right:clamp(16px,3vw,40px);bottom:clamp(28px,4vw,56px);margin:0;font-size:11px;letter-spacing:.14em;color:var(--ink-mute);opacity:.75}.unreach .ur-credit a{color:inherit}

/* v10.4 (owner): fanned part covers removed; two cranes hang behind the book, lower, threads fade out high up; the blue cranes float freely again; the torn blue butterfly stays on the book and only moves its wings on hover; deeper shadow behind the book */
.unreach .ur-cranes{position:absolute;inset:0;z-index:1;pointer-events:none}
.unreach .cr{position:absolute;height:auto;max-width:none;filter:drop-shadow(0 14px 16px rgba(0,0,0,.55)) saturate(.85) brightness(.92);will-change:transform;opacity:.9}
.unreach .cr.c1{left:6%;top:9%;width:clamp(48px,5vw,78px);animation:crA 26s ease-in-out infinite}
.unreach .cr.c2{right:7%;top:16%;width:clamp(56px,6vw,92px);animation:crB 31s ease-in-out infinite}
.unreach .cr.c3{right:24%;bottom:9%;width:clamp(40px,4vw,62px);opacity:.75;animation:crA 34s ease-in-out -9s infinite reverse}
.unreach .cr.c4{left:44%;top:4%;width:clamp(70px,7vw,112px);opacity:.38;filter:blur(2.5px) brightness(.8);animation:crB 44s ease-in-out -14s infinite}
.unreach .cr.c5{left:2%;bottom:6%;width:clamp(34px,3vw,50px);opacity:.5;filter:blur(1.5px) brightness(.85);animation:crA 38s ease-in-out -20s infinite}
@keyframes crA{0%,100%{transform:translate(0,0) rotate(-4deg)}25%{transform:translate(26px,-18px) rotate(2deg)}50%{transform:translate(48px,6px) rotate(5deg)}75%{transform:translate(18px,22px) rotate(-1deg)}}
@keyframes crB{0%,100%{transform:translate(0,0) rotate(3deg) scaleX(-1)}30%{transform:translate(-30px,14px) rotate(-3deg) scaleX(-1)}60%{transform:translate(-52px,-12px) rotate(4deg) scaleX(-1)}80%{transform:translate(-20px,-24px) rotate(0deg) scaleX(-1)}}
/* hanging cranes behind the book */
.unreach .ur-stage .hg{z-index:1;top:-34%}
.unreach .ur-stage .hg::before{-webkit-mask:linear-gradient(180deg,transparent 0,transparent 30%,#000 62%);mask:linear-gradient(180deg,transparent 0,transparent 30%,#000 62%)}
.unreach .ur-stage .hg.hb1{left:-10%;--w:clamp(60px,6vw,92px);--len:clamp(330px,34vw,480px);--t:8s;--d:-3s}
.unreach .ur-stage .hg.hb2{right:-12%;left:auto;--w:clamp(52px,5vw,80px);--len:clamp(400px,40vw,560px);--t:9.5s;--d:-6s}
.unreach .ur-stage .hg.hb2 img{transform:translateX(-54%) scaleX(-1)}
/* deeper shadow behind the book */
.unreach .ur-stage::before{content:"";position:absolute;z-index:0;left:50%;top:52%;width:180%;height:140%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(4,6,14,.85),rgba(4,6,14,.45) 55%,rgba(4,6,14,0));pointer-events:none}
/* butterfly: sits on the book corner, wings move only on hover */
.unreach .ur-bfly{right:-10%;top:-3%;width:34%;transform:rotate(12deg);animation:none;transition:filter .6s,opacity 1.6s ease 1s}
@media (hover:hover){
  .unreach .ur-stage:hover .ur-bfly{transform:rotate(12deg);filter:drop-shadow(0 10px 12px rgba(0,0,0,.6)) drop-shadow(0 0 12px rgba(110,160,255,.4));animation:urWings 1.6s ease-in-out infinite}
}
@keyframes urWings{0%,100%{scale:1 1}12%{scale:.4 1}24%{scale:1 1}36%{scale:.45 1}48%,100%{scale:1 1}}
.unreach .ur-bfly{transform-origin:46% 55%}
@media (max-width:720px){
  
  .unreach .cr{animation-duration:60s!important}
  
}
@media (prefers-reduced-motion:reduce){.unreach .cr,.unreach .ur-stage .hg{animation:none!important}}

/* v10.5 (owner): white hanging cranes gone; butterfly sits on the top edge of the book; the floor is covered in faint handwriting like the skin in the Quill & Davian commission; book hover: blue ink threads wind around the book (like the threads in the commissions), an ink pool spreads beneath it, the writing on the floor wakes up */
.unreach .ur-floor{position:absolute;left:0;right:0;bottom:0;height:58%;z-index:0;pointer-events:none;background:url(https://static.wixstatic.com/media/5e8914_6fa4864be1ad4eccacc6ba7f296c1fd1~mv2.webp) center bottom/cover no-repeat;opacity:.5;-webkit-mask:linear-gradient(180deg,transparent 0,#000 35%,#000 78%,transparent 100%);mask:linear-gradient(180deg,transparent 0,#000 35%,#000 78%,transparent 100%);transition:opacity 1.2s ease,filter 1.2s ease}
.unreach:has(.ur-stage:hover) .ur-floor{opacity:.85;filter:drop-shadow(0 0 6px rgba(120,150,230,.35))}
.unreach .ur-bfly{right:24%;top:-11%;width:30%;transform:rotate(-6deg)}
@media (hover:hover){.unreach .ur-stage:hover .ur-bfly{transform:rotate(-6deg)}}
/* ink pool under the book */
.unreach .ur-pool{position:absolute;z-index:1;left:50%;bottom:-6%;width:130%;height:34%;transform:translateX(-50%) scale(.35,.25);border-radius:50%;background:radial-gradient(closest-side,rgba(6,10,26,.95),rgba(16,26,60,.7) 45%,rgba(30,50,110,.25) 70%,rgba(30,50,110,0));opacity:0;transition:transform 1.6s cubic-bezier(.2,.7,.2,1),opacity 1.2s ease;pointer-events:none}
/* threads */
.unreach .ur-threads{position:absolute;z-index:3;left:-6%;top:2%;width:112%;height:96%;overflow:visible;pointer-events:none}
.unreach .ur-threads path{fill:none;stroke:#2B3F86;stroke-width:1.6;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;filter:drop-shadow(0 2px 2px rgba(0,0,0,.6));transition:stroke-dashoffset 1.6s cubic-bezier(.45,.05,.3,1)}
.unreach .ur-threads path.thin{stroke:#5B78C8;stroke-width:1}
.unreach .ur-threads path:nth-child(2){transition-delay:.25s}.unreach .ur-threads path:nth-child(3){transition-delay:.5s}.unreach .ur-threads path:nth-child(4){transition-delay:.8s}
@media (hover:hover){
  .unreach .ur-stage:hover .ur-threads path{stroke-dashoffset:0}
  .unreach .ur-stage:hover .ur-pool{opacity:1;transform:translateX(-50%) scale(1,1)}
}
@media (prefers-reduced-motion:reduce){.unreach .ur-threads,.unreach .ur-pool{display:none}}

.unreach .ur-threads{left:0;width:100%}
.unreach .ur-threads path{vector-effect:none;stroke-width:.5}
.unreach .ur-threads path.thin{stroke-width:.3}
.unreach .ur-floor{opacity:.4}
.unreach .ur-threads path{opacity:0;transition:stroke-dashoffset 1.6s cubic-bezier(.45,.05,.3,1),opacity .3s}
@media (hover:hover){.unreach .ur-stage:hover .ur-threads path{opacity:1}}

/* v10.6 (owner): threads wrap the book realistically - they cross the front cover with slight tension, run over the spine in its darker shade and vanish behind the edges; each thread has a soft cast shadow, a dark core and a fine highlight; a small knot. Butterfly sits low in the inner corner of the book (cover meets spine). Book, threads and butterfly move together on hover. */
.unreach .ur-book{position:relative;z-index:2;display:block;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.unreach .ur-threads{position:absolute;left:0;top:0;width:100%;height:auto;aspect-ratio:700/1002;overflow:visible;z-index:3;pointer-events:none}
.unreach .ur-threads path{fill:none;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;opacity:0;vector-effect:none;filter:none;transition:stroke-dashoffset 1.5s cubic-bezier(.45,.05,.3,1) var(--dl,0s),opacity .25s var(--dl,0s)}
.unreach .ur-threads .sh{stroke:rgba(0,0,0,.55);stroke-width:7;transform:translate(4px,7px);filter:url(#thShadow)}
.unreach .ur-threads .sp{stroke:#0E1636;stroke-width:4.2}
.unreach .ur-threads .co{stroke:#1F3274;stroke-width:4.6}
.unreach .ur-threads .hl{stroke:rgba(150,180,245,.55);stroke-width:1.3;transform:translate(-.6px,-1.4px)}
.unreach .ur-threads .knot path{stroke:#1F3274;stroke-width:4;stroke-linecap:round}
.unreach .ur-threads .th .sp{transition-delay:calc(var(--dl) + 0s)}
.unreach .ur-threads .th .co,.unreach .ur-threads .th .hl,.unreach .ur-threads .th .sh{transition-delay:calc(var(--dl) + .25s)}
@media (hover:hover){
  .unreach .ur-stage:hover .ur-threads path{stroke-dashoffset:0;opacity:1}
  .unreach.lit .ur-stage:hover .mock{transform:none;filter:drop-shadow(0 40px 50px rgba(0,0,0,.65)) drop-shadow(0 0 30px rgba(152,175,226,.32))}
  .unreach.lit .ur-stage:hover .ur-book{transform:translateY(-10px) rotate(-2.5deg) scale(1.02)}
}
/* butterfly: inner corner, lower */
.unreach .ur-bfly{left:2%;right:auto;top:1%;width:28%;transform:rotate(-16deg);transform-origin:48% 58%}
@media (hover:hover){.unreach .ur-stage:hover .ur-bfly{transform:rotate(-16deg)}}
@media (prefers-reduced-motion:reduce){.unreach .ur-threads{display:none}}
.unreach .ur-threads .co{stroke-width:5.6}.unreach .ur-threads .sp{stroke-width:5}.unreach .ur-threads .hl{stroke-width:1.6}

/* v10.7 (owner decision): two small blue paper cranes as if they had escaped from Unreachable - bottom left of the timeline, and in the footer next to the legal notice */
.verse .tl-crane{position:absolute;z-index:2;left:clamp(16px,4vw,64px);bottom:clamp(18px,3vw,40px);width:clamp(30px,2.8vw,42px);height:auto;opacity:.8;filter:drop-shadow(0 8px 10px rgba(0,0,0,.55)) saturate(.85) brightness(.92);transform:rotate(-8deg);animation:tlCrane 11s ease-in-out infinite;pointer-events:none}
@keyframes tlCrane{0%,100%{transform:translate(0,0) rotate(-8deg)}50%{transform:translate(6px,-8px) rotate(-3deg)}}
footer.site .ft-legal{align-items:center}
footer.site .ft-legal .ft-crane{width:22px;height:auto;margin-right:2px;opacity:.75;filter:drop-shadow(0 4px 5px rgba(0,0,0,.5)) saturate(.8);transform:rotate(-10deg);vertical-align:middle;transition:transform .6s cubic-bezier(.2,.7,.2,1),opacity .4s}
footer.site .ft-legal:hover .ft-crane{transform:translate(2px,-4px) rotate(-2deg);opacity:1}
@media (prefers-reduced-motion:reduce){.verse .tl-crane{animation:none}}
/* v10.8 (owner): no blue light under the book over the floor writing - ink pool is pure dark ink, the floor no longer glows on hover, the blue ink cloud on the left is weaker */
.unreach .ur-pool{background:radial-gradient(closest-side,rgba(4,6,14,.92),rgba(6,9,20,.6) 50%,rgba(6,9,20,0) 75%)}
.unreach:has(.ur-stage:hover) .ur-floor{opacity:.5;filter:none}
.unreach .ur-ink i:nth-child(1){opacity:.22}
.unreach.lit .ur-stage:hover .mock{filter:drop-shadow(0 40px 50px rgba(0,0,0,.7))}
.unreach .ur-stage:hover .ur-bunny{filter:drop-shadow(0 18px 22px rgba(0,0,0,.6)) brightness(1)}
/* v10.9 (owner): floor writing glows again on hover; only the light right under the book stays gone */
.unreach:has(.ur-stage:hover) .ur-floor{opacity:.85;filter:drop-shadow(0 0 6px rgba(120,150,230,.35))}
.unreach a.ur-book{cursor:pointer}
/* v11.2 (owner): big feather bottom right moved inwards (left) so more of it shows */
.series .feather.f2{right:clamp(30px,6vw,120px)}
/* v11.3 (owner): footer on the same ground as the series section (back of Book 1), a little darker */
footer.site>.bg{object-position:50% 70%;filter:brightness(.7) saturate(.9)}
footer.site::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.82) 16%,rgba(6,4,4,.62) 45%,rgba(6,4,4,.74) 100%)}
footer.site>.bg{filter:brightness(.85) saturate(.9)}
footer.site::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.72) 16%,rgba(6,4,4,.45) 45%,rgba(6,4,4,.62) 100%)}

/* v11.5 (owner): thorn-1 base end (lower right of the image) sits behind the cover; thorns grow out from it */
.release .ct2,.release .ct3,.release .ct5,.release .ct7,.release .ct9{transform-origin:86% 84%}
.release .ct2 img,.release .ct3 img,.release .ct5 img,.release .ct7 img,.release .ct9 img{clip-path:circle(0% at 86% 84%);transform-origin:86% 84%}
.release .cover-stage:hover .ct2 img,.release .cover-stage:hover .ct3 img,.release .cover-stage:hover .ct5 img,.release .cover-stage:hover .ct7 img,.release .cover-stage:hover .ct9 img{clip-path:circle(150% at 86% 84%)}
.release .ct2{left:-43.3%;top:23.5%;width:62%;transform-origin:86% 84%;transform:rotate(-98deg)}
.release .ct3{left:38.1%;top:33.2%;width:58%;transform-origin:86% 84%;transform:rotate(172deg)}
.release .ct5{left:69.6%;top:8.3%;width:26%;transform-origin:86% 84%;transform:rotate(117deg)}
.release .ct7{left:29.4%;top:72.1%;width:24%;transform-origin:86% 84%;transform:rotate(-143deg)}
.release .ct9{left:-30.8%;top:11.9%;width:44%;transform-origin:86% 84%;transform:rotate(-53deg)}
.release .ct6{left:8%}
.release .ct8{top:6%}

/* v11.6 (owner): official back-cover blurbs on the series page; Book III blurb folded (spoilers for Books I-II) */
.brow{align-items:start}
.brow .blurb{max-width:38em;color:var(--ash)}
.brow .blurb p{margin:0 0 .85em;line-height:1.6}
.brow .blurb p:last-child{margin-bottom:0}
.brow .blurb-sp{max-width:38em}
.brow .blurb-sp summary{cursor:pointer;font-family:var(--f-ui,'Tenor Sans',sans-serif);font-size:13px;letter-spacing:.14em;text-transform:uppercase;list-style:none}
.brow .blurb-sp summary::-webkit-details-marker{display:none}
.brow .blurb-sp summary::before{content:"+ "}
.brow .blurb-sp[open] summary::before{content:"\2013 "}
.brow .blurb-sp summary span{text-transform:none;letter-spacing:.02em;color:var(--ash)}
.brow .blurb-sp .blurb{margin-top:14px}
@media (max-width:720px){.brow .blurb{text-align:left}}
.release .r-tag{margin:0;font-family:var(--f-sub);font-style:italic;font-size:clamp(18px,2vw,21px)}
.release .r-more{font-size:13px;letter-spacing:.14em;text-transform:uppercase}

/* v11.7: Unreachable blurb (two voices) */
.brow .ur-blurb{color:var(--ink-mute)}
.brow .ur-blurb .pov{margin:0 0 .3em;font-family:var(--f-ink,inherit);font-size:17px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-hi)}

/* v11.8 (owner): floor script = the Unreachable blurb, real words in handwriting, repeated without paragraphs, laid flat in perspective */
.unreach .ur-floor{background:none;perspective:620px;perspective-origin:50% 0;overflow:hidden}
.unreach .ur-floor .script{position:absolute;left:-40%;right:-40%;bottom:-6%;height:190%;margin:0;transform-origin:50% 100%;transform:rotateX(64deg);font-family:'Homemade Apple',cursive;font-size:21px;line-height:2.05;letter-spacing:.01em;word-spacing:.18em;color:rgba(168,188,235,.62);text-align:justify;overflow:hidden;user-select:none;-webkit-user-select:none}
@media (max-width:700px){.unreach .ur-floor .script{font-size:17px;left:-70%;right:-70%}}

/* v11.9 (owner): floor script reaches far beyond both sides, so the far rows no longer end in a hard diagonal edge */
.unreach .ur-floor .script{left:-220%;right:-220%}
@media (max-width:700px){.unreach .ur-floor .script{left:-320%;right:-320%}}

/* v12.1 (owner): no plate; parts stay directly under the tagline. A soft dark halo behind the text column calms the floor script there; labels larger and brighter */
.unreach .copy{position:relative;isolation:isolate}
.unreach .copy::before{content:"";position:absolute;z-index:-1;inset:-14% -20% -16% -16%;pointer-events:none;background:radial-gradient(ellipse 58% 55% at 42% 62%,rgba(9,12,26,.78) 0%,rgba(9,12,26,.5) 45%,rgba(9,12,26,0) 78%)}
.unreach .ur-parts .pt{font-size:19px;color:#DCE5FA;text-shadow:0 1px 8px rgba(0,0,0,.95)}
.unreach .ur-parts .pn{font-size:11px;color:rgba(220,229,250,.9);text-shadow:0 1px 6px rgba(0,0,0,.95),0 0 14px rgba(9,12,26,.9)}
.unreach .ur-vol{font-size:18px;color:var(--ink-text);text-shadow:0 1px 8px rgba(0,0,0,.95),0 0 18px rgba(9,12,26,.9)}
.unreach .copy>.ku{font-size:13px;color:var(--ink-hi);text-shadow:0 1px 8px rgba(0,0,0,.95),0 0 18px rgba(9,12,26,.9)}

/* v12.2 (owner): stronger halo (also while the floor script glows on hover), title above the three parts, threads removed */
.unreach .copy::before{inset:-16% -24% -20% -18%;background:radial-gradient(ellipse 60% 58% at 42% 62%,rgba(8,10,22,.92) 0%,rgba(8,10,22,.72) 42%,rgba(8,10,22,.3) 66%,rgba(8,10,22,0) 82%);transition:opacity .8s}
.unreach:has(.ur-stage:hover) .copy::before{background:radial-gradient(ellipse 62% 60% at 42% 62%,rgba(6,8,18,.97) 0%,rgba(6,8,18,.82) 45%,rgba(6,8,18,.4) 68%,rgba(6,8,18,0) 84%)}
.unreach .copy>.ku{text-shadow:0 1px 4px rgba(0,0,0,1),0 0 12px rgba(6,8,18,1),0 0 26px rgba(6,8,18,.95)}
.unreach .ur-parts .pt,.unreach .ur-parts .pn,.unreach .ur-vol{text-shadow:0 1px 4px rgba(0,0,0,1),0 0 14px rgba(6,8,18,.95)}
.unreach .ur-vol{margin:6px 0 -6px}
.unreach.lit .ur-vol{transition-delay:3.1s}
/* v12.4 (owner): wordmark hover glow was clipped by the reveal mask (hard edges) - mask box now has room for the glow */
.unreach .ur-wm{padding:28px 36px;margin:-28px -36px}

/* v12.5 (owner): small morpho on the top-right corner of the Amazon button, same logic as the butterfly on the book: rests, wings move on hover */
.unreach .btn.ink-ghost{position:relative;overflow:visible}
.unreach .ur-bfly2{position:absolute;right:-24px;top:-28px;width:54px;height:auto;pointer-events:none;transform:rotate(14deg);transform-origin:46% 55%;filter:drop-shadow(0 6px 8px rgba(0,0,0,.6));opacity:0;transition:filter .6s,opacity 1.6s ease 1.4s}
.unreach.lit .ur-bfly2{opacity:1}
@media (hover:hover){.unreach .btn.ink-ghost:hover .ur-bfly2,.unreach .btn.ink-ghost:focus-visible .ur-bfly2{filter:drop-shadow(0 6px 8px rgba(0,0,0,.6)) drop-shadow(0 0 10px rgba(110,160,255,.45));animation:urWings 1.6s ease-in-out infinite}}
@media (prefers-reduced-motion:reduce){.unreach .ur-bfly2{animation:none!important;opacity:1;transition:none}}
/* v12.7 (owner): filled buttons with more contrast before hover - lighter warm fill, darker text, faint inner light (hover effects unchanged) */
.btn:where(:not(.ghost,.ink,.ink-ghost)){background:#E6D1C4;border-color:#E6D1C4;color:#0C0705;box-shadow:inset 0 1px 0 rgba(255,250,244,.5)}
.btn.ink{background:#B9CAEF;border-color:#B9CAEF;color:#0D1124;box-shadow:inset 0 1px 0 rgba(240,245,255,.5)}
/* v12.9 (owner): "Classified" plain, no overlay - it glitches together with the name "Project O" */
.verse.lit .tl li:nth-child(3) .era::after{display:none}
.verse.lit .tl li:nth-child(3) .era{display:inline-block;animation:glitch 7s steps(1) 2.6s infinite}
@media (prefers-reduced-motion:reduce){.verse.lit .tl li:nth-child(3) .era{animation:none}}
.release a.cover-stage{cursor:pointer;text-decoration:none;color:inherit}
/* v13.1 (owner): new-release buttons calmer - only the dark red fill rising on hover; no light sweep, no lift, no glow */
.release .row .btn::after{display:none}
.release .row .btn:hover,.release .row .btn:focus-visible{transform:none;box-shadow:none}
.release .row .btn::before{transition:height .45s ease}

/* v13.2 (owner): the timeline crane is a quiet link down to the Unreachable section */
.verse .tl-crane-link{position:static}
.verse .tl-crane{cursor:pointer;pointer-events:auto;transition:opacity .4s,filter .4s}
.verse .tl-crane-link:hover .tl-crane,.verse .tl-crane-link:focus-visible .tl-crane{opacity:1;filter:drop-shadow(0 8px 10px rgba(0,0,0,.55)) drop-shadow(0 0 10px rgba(152,175,226,.45))}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* v13.3 (owner): calmer hover in the Unreachable band - floor script only brightens a little, no glow on it, halo stays as it is */
.unreach .ur-floor{transition:opacity 1.4s ease}
.unreach:has(.ur-stage:hover) .ur-floor{opacity:.55;filter:none}
.unreach:has(.ur-stage:hover) .copy::before{background:radial-gradient(ellipse 60% 58% at 42% 62%,rgba(8,10,22,.92) 0%,rgba(8,10,22,.72) 42%,rgba(8,10,22,.3) 66%,rgba(8,10,22,0) 82%)}

/* v13.4 (owner): Amazon button keeps its effects inside again (overflow hidden); the morpho sits on a wrapper instead of inside the button */
.unreach .btn.ink-ghost{overflow:hidden}
.unreach .bf-wrap{position:relative;display:inline-flex}
@media (hover:hover){.unreach .bf-wrap:hover .ur-bfly2{filter:drop-shadow(0 6px 8px rgba(0,0,0,.6)) drop-shadow(0 0 10px rgba(110,160,255,.45));animation:urWings 1.6s ease-in-out infinite}}
.unreach .ur-bfly2{z-index:3}

/* v13.5 (owner, home footer): background of the Book III band, brighter, with thorns reaching in from left and right */
footer.site.ft-tbl3>.bg{opacity:1;object-position:50% 40%;filter:brightness(.9) saturate(.95)}
footer.site.ft-tbl3::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.55) 14%,rgba(6,4,4,.38) 45%,rgba(6,4,4,.55) 100%)}
footer.site.ft-tbl3{overflow:hidden}
footer.site .ft-thorn{position:absolute;z-index:0;pointer-events:none;height:auto;max-width:none;filter:drop-shadow(0 18px 22px rgba(0,0,0,.7)) drop-shadow(0 5px 7px rgba(0,0,0,.5))}
footer.site .ft-thorn.ftl{left:-4%;top:-8%;width:clamp(200px,24vw,380px);transform:rotate(-14deg)}
footer.site .ft-thorn.ftr{right:-3%;bottom:-14%;width:clamp(130px,14vw,220px);transform:rotate(-58deg) scaleX(-1);transform-origin:60% 60%}
footer.site.ft-tbl3>.wrap{position:relative;z-index:1}
@media (max-width:720px){footer.site .ft-thorn.ftl{width:52vw;left:-18%;top:-4%;opacity:.8}footer.site .ft-thorn.ftr{width:30vw;right:-10%;opacity:.8}}
footer.site.ft-tbl3{background:#2a1a14}
footer.site.ft-tbl3>.bg{filter:brightness(1.15) saturate(1)}
footer.site.ft-tbl3::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.25) 12%,rgba(6,4,4,.12) 45%,rgba(6,4,4,.3) 100%)}
footer.site.ft-tbl3 .ft-col a,footer.site.ft-tbl3 p{text-shadow:0 1px 6px rgba(0,0,0,.85)}
footer.site .ft-thorn.ftl{top:2%;left:-3%}footer.site .ft-thorn.ftr{bottom:-6%}

/* v13.6 (owner, home footer): Book II back cover texture without the wolf, lilies left and right (own composition, 2400 px) */
footer.site.ft-tbl2{background:#2a1a14;overflow:hidden}
footer.site.ft-tbl2>.bg{opacity:1;object-position:50% 50%;filter:none}
footer.site.ft-tbl2::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.3) 10%,rgba(6,4,4,.18) 50%,rgba(6,4,4,.4) 100%)}
footer.site.ft-tbl2>.wrap{position:relative;z-index:1}
footer.site.ft-tbl2 .ft-col a,footer.site.ft-tbl2 p{text-shadow:0 1px 6px rgba(0,0,0,.85)}
/* v13.7 (owner): lily footer darker, no divider line at the top */
footer.site.ft-tbl2{border-top:0;box-shadow:none}
footer.site.ft-tbl2>.bg{filter:brightness(.62) saturate(.9)}
footer.site.ft-tbl2::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.6) 12%,rgba(6,4,4,.42) 50%,rgba(6,4,4,.6) 100%)}
/* v13.8 (owner): light (filled) buttons without the glow underneath on hover/press, everywhere */
.btn:where(:not(.ghost,.ink-ghost)):hover,.btn:where(:not(.ghost,.ink-ghost)):focus-visible,.btn:where(:not(.ghost,.ink-ghost)):active{box-shadow:none}
.btn.ink:hover,.btn.ink:focus-visible,.btn.ink:active{box-shadow:none}

/* v13.9 (owner): hero wordmark "Blairville" gets the same occasional golden sheen as the series wordmark */
.stage.hero h1.wm-bv .wm-sheen{position:relative;display:inline-block;line-height:0}
.stage.hero h1.wm-bv .wm-sheen::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:2;-webkit-mask:url(https://static.wixstatic.com/media/5e8914_4d694e3bd8e543d1a4aef612d223faf6~mv2.webp) center/100% 100% no-repeat;mask:url(https://static.wixstatic.com/media/5e8914_4d694e3bd8e543d1a4aef612d223faf6~mv2.webp) center/100% 100% no-repeat;background:linear-gradient(105deg,transparent 40%,rgba(201,140,72,.75) 46%,rgba(240,196,128,.95) 50%,rgba(201,140,72,.75) 54%,transparent 60%) 100% 0/250% 100% no-repeat;opacity:0;animation:wmSheen 9s ease-in-out 3.2s infinite}
@media (prefers-reduced-motion:reduce){.stage.hero h1.wm-bv .wm-sheen::after{display:none}}

/* v14.0 (owner): "New" stands out as a small tag; the numeral III uses the series numerals' typeface */
.release .rel-lbl{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.release .new-tag{display:inline-block;padding:5px 10px 4px;background:#8e2a1c;color:#F6E7D6;border:1px solid #b8483a;font-size:12px;letter-spacing:.26em;line-height:1;box-shadow:0 0 0 3px rgba(142,42,28,.18)}
.release .rel-lbl .rn{font-family:"Playfair Display",Georgia,serif;font-size:1.9em;letter-spacing:-.05em;line-height:0;vertical-align:-.12em;color:var(--bone,#EDE3D6);text-transform:none;margin-left:.15em}
@media (max-width:820px){.release .rel-lbl{justify-content:center}}
/* v14.1 (owner): new-release buttons behave exactly like the hero buttons (no red fill, sheen + colour change only) */
.release .row .btn::before{display:none}
.release .row .btn::after{display:block}
.release .row .btn:where(:not(.ghost)):hover,.release .row .btn:where(:not(.ghost)):focus-visible{background:var(--candle);border-color:var(--candle);color:var(--night);transform:translateY(-1px);box-shadow:none}
.release .row .btn.ghost:hover,.release .row .btn.ghost:focus-visible{background:rgba(217,162,95,.14);border-color:var(--candle);color:#F3C98B;transform:translateY(-1px);box-shadow:0 8px 24px rgba(0,0,0,.35),0 0 18px rgba(217,162,95,.22)}
/* v14.2 (owner): "Add on Goodreads" back to its previous hover (dark red fill rising, nothing else); only "Pre-order now" uses the hero hover */
.release .row .btn.ghost::before{display:block}
.release .row .btn.ghost::after{display:none}
.release .row .btn.ghost:hover,.release .row .btn.ghost:focus-visible{background:transparent;color:#F6E7D6;border-color:#b8483a;transform:none;box-shadow:none}
/* v14.3 (owner): opened home books more real - turned pages (back of the first pages) darker and shaded toward the spine, deeper gutter shadow on the right page */
.books .b3-leaf,.books .b3-cover-in{filter:brightness(.6) saturate(.85) sepia(.12)}
.books .b3-leaf:nth-of-type(odd){filter:brightness(.55) saturate(.85) sepia(.12)}
.books .b3-leaf.lf1,.books .b3-leaf.lf2,.books .b3-leaf.lf3,.books .b3-leaf{background-image:linear-gradient(270deg,rgba(10,6,4,.75) 0%,rgba(10,6,4,.35) 9%,rgba(10,6,4,0) 24%,rgba(255,240,215,.05) 62%,rgba(10,6,4,.3) 100%),var(--lf-img,url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp))}
.books .b3-leaf.lf1{--lf-img:url(https://static.wixstatic.com/media/5e8914_d061a4ec454d43778bd4264d66fb0c14~mv2.webp)}.books .b3-leaf.lf2{--lf-img:url(https://static.wixstatic.com/media/5e8914_c78a7f2fa44848509f06925eca02473a~mv2.webp)}.books .b3-leaf.lf3{--lf-img:url(https://static.wixstatic.com/media/5e8914_29a38258b7984dd09df4bfeee7358698~mv2.webp)}
.books .b3-cover-in{background:linear-gradient(270deg,rgba(10,6,4,.75) 0%,rgba(10,6,4,.3) 10%,rgba(10,6,4,0) 26%,rgba(10,6,4,.3) 100%),url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp) 50% 50%/cover no-repeat,#cdb08c}
.books .b3-page::before{background:linear-gradient(90deg,rgba(8,5,3,.72) 0%,rgba(8,5,3,.3) 8%,rgba(8,5,3,.08) 18%,rgba(0,0,0,0) 30%,rgba(0,0,0,0) 88%,rgba(0,0,0,.22) 100%)}
/* v14.4 (owner): left side of the opened books a little lighter */
.books .b3-leaf,.books .b3-cover-in{filter:brightness(.74) saturate(.9) sepia(.1)}
.books .b3-leaf:nth-of-type(odd){filter:brightness(.7) saturate(.9) sepia(.1)}
.books .b3-leaf.lf1,.books .b3-leaf.lf2,.books .b3-leaf.lf3,.books .b3-leaf{background-image:linear-gradient(270deg,rgba(10,6,4,.6) 0%,rgba(10,6,4,.25) 9%,rgba(10,6,4,0) 24%,rgba(255,240,215,.05) 62%,rgba(10,6,4,.22) 100%),var(--lf-img,url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp))}

/* v14.5 (owner): one footer for all pages - very dark texture (Book II back cover, darkened) with clearer lilies left and right */
footer.site.ft-lily{background:#070505;border-top:0;box-shadow:none;overflow:hidden}
footer.site.ft-lily>.bg{opacity:1;filter:none;object-position:50% 50%}
footer.site.ft-lily::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,0) 12%,rgba(6,4,4,0) 88%,rgba(3,2,2,.35) 100%)}
footer.site.ft-lily>.wrap{position:relative;z-index:1}
footer.site.ft-lily .ft-col a,footer.site.ft-lily p{text-shadow:0 1px 6px rgba(0,0,0,.9)}
@media (max-width:720px){footer.site.ft-lily>.bg{object-position:0% 100%}}

/* v14.6: footer lilies as separate layers with fixed sizes, so they stay at the edges on every screen */
footer.site.ft-lily>.bg{object-position:50% 50%}
footer.site.ft-lily .ft-lily{position:absolute;z-index:0;pointer-events:none;height:auto;max-width:none}
footer.site.ft-lily .ft-lily.l{left:-2%;bottom:-6%;width:clamp(150px,19vw,300px)}
footer.site.ft-lily .ft-lily.r{right:-2%;top:-3%;width:clamp(150px,20vw,320px)}
@media (max-width:720px){footer.site.ft-lily>.bg{object-position:50% 50%}footer.site.ft-lily .ft-lily.l{width:44vw;left:-12%;bottom:-3%}footer.site.ft-lily .ft-lily.r{width:42vw;right:-12%}}
@media (max-width:720px){footer.site.ft-lily .ft-lily.r{width:40vw;right:-8%;top:-1%}}

/* v14.7 (owner): footer without a raster background (always sharp) - deep dark brown with fine CSS grain and a soft warm glow; lilies as high-res cutouts (1260-1380 px) */
footer.site.ft-lily{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .85 0 0 0 0 .72 0 0 0 0 .6 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E") 0 0/240px 240px repeat,#090606}
footer.site.ft-lily::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,0) 12%)}
footer.site.ft-lily .ft-lily.l{width:clamp(160px,20vw,320px)}
footer.site.ft-lily .ft-lily.r{width:clamp(160px,21vw,340px)}
footer.site.ft-lily .ft-lily.l{width:clamp(140px,16vw,260px);left:-3%;bottom:-8%}footer.site.ft-lily .ft-lily.r{width:clamp(140px,16vw,260px);right:-2%;top:-4%}@media (max-width:720px){footer.site.ft-lily .ft-lily.r{width:40vw;right:-8%;top:-1%}}

/* v14.8 (owner): footer texture = Book I back cover (dark, native 3150 px, texture lifted), Book I ring graphics here and there, lilies on top */
footer.site.ft-lily>.bg{opacity:1;filter:none;object-position:40% 50%}
footer.site.ft-lily::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.22;
  background:url(https://static.wixstatic.com/media/5e8914_09812e1bfded4a58b3712dfbe03a89d4~mv2.webp) 6% 18%/clamp(180px,17vw,280px) no-repeat,url(https://static.wixstatic.com/media/5e8914_09812e1bfded4a58b3712dfbe03a89d4~mv2.webp) 58% 128%/clamp(260px,26vw,420px) no-repeat,url(https://static.wixstatic.com/media/5e8914_09812e1bfded4a58b3712dfbe03a89d4~mv2.webp) 84% 46%/clamp(110px,9vw,160px) no-repeat}
@media (max-width:720px){footer.site.ft-lily::after{background:url(https://static.wixstatic.com/media/5e8914_09812e1bfded4a58b3712dfbe03a89d4~mv2.webp) 110% 40%/220px no-repeat,url(https://static.wixstatic.com/media/5e8914_09812e1bfded4a58b3712dfbe03a89d4~mv2.webp) -30% 96%/180px no-repeat}}
footer.site.ft-lily::after{opacity:.4}
/* v14.9 (owner): softer seam between page and footer - longer dark fade at the top, right lily no longer cut at the footer edge */
footer.site.ft-lily::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.85) 8%,rgba(6,4,4,.5) 18%,rgba(6,4,4,.15) 30%,rgba(6,4,4,0) 40%,rgba(6,4,4,0) 88%,rgba(3,2,2,.35) 100%)}
footer.site.ft-lily .ft-lily.r{top:4%;-webkit-mask:linear-gradient(180deg,transparent 0,#000 22%);mask:linear-gradient(180deg,transparent 0,#000 22%)}
.join::after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;pointer-events:none;background:linear-gradient(180deg,rgba(6,4,4,0),var(--night));z-index:0}
footer.site.ft-lily .ft-lily.r{right:-4%}

/* v15.0 (owner): footer = paper crane photo (Unsplash), brown-toned, upper part with the crane resting at the bottom; no lilies or rings */
footer.site.ft-crane::after{display:none}
footer.site.ft-crane>.bg{object-position:22% 100%;opacity:.9}
footer.site.ft-crane::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.85) 8%,rgba(6,4,4,.45) 20%,rgba(6,4,4,.2) 35%,rgba(6,4,4,.25) 100%)}
@media (max-width:720px){footer.site.ft-crane>.bg{object-position:28% 100%}}
/* v15.1: crane mirrored to the right, away from the newsletter form; on phones the strip sits small at the very bottom */
footer.site.ft-crane>.bg{object-position:80% 100%}
@media (max-width:720px){footer.site.ft-crane>.bg{inset:auto 0 0 0;top:auto;width:100%;height:auto;object-fit:contain;object-position:50% 100%}}

/* v15.2 (owner): home 'Stay close' band removed; footer newsletter now states what it brings, incl. street team calls */
footer.site .ft-nl .ft-nl-note{margin:-4px 0 12px;font-size:13px;line-height:1.5;color:var(--ash);max-width:30em}
.unreach .ur-fadeout{position:absolute;left:0;right:0;bottom:0;height:140px;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(6,4,4,0),var(--night))}
/* v15.5 (owner): newsletter block in the footer larger and more legible */
footer.site .ft-nl{gap:12px;max-width:600px}
footer.site .ft-nl>.ft-h{font-size:clamp(26px,2.4vw,32px);line-height:1.15;color:var(--rose);text-shadow:0 2px 10px rgba(0,0,0,.8)}
footer.site .ft-nl .ft-nl-note{margin:0 0 10px;font-family:var(--f-sub);font-size:clamp(16px,1.35vw,18px);line-height:1.55;color:#E2D6C8;max-width:32em;text-shadow:0 1px 8px rgba(0,0,0,.85)}
footer.site .ft-nl input{min-height:52px;font-size:15px}
footer.site .ft-nl button{min-height:52px;font-size:13px;padding:0 26px}
footer.site .ft-nl .ft-nl-note{text-wrap:balance}

/* v15.6 (owner): newsletter line shorter and on one line */
footer.site .ft-nl .ft-nl-note{font-size:clamp(14px,1.15vw,16px);white-space:nowrap;max-width:none;text-wrap:nowrap}
@media (max-width:560px){footer.site .ft-nl .ft-nl-note{white-space:normal;text-wrap:balance}}

/* v15.7 (owner): small brown paper crane before the legal links = site maker's mark; hover/focus shows credit */
footer.site .ft-legal{align-items:center}
footer.site .ft-mark{position:relative;display:inline-flex;align-items:center;margin-right:6px;text-decoration:none;border:0}
footer.site .ft-mark img{width:48px;height:auto;display:block;filter:drop-shadow(0 4px 6px rgba(0,0,0,.6));transition:transform .4s ease,filter .4s ease}
footer.site .ft-mark:hover img,footer.site .ft-mark:focus-visible img{transform:translateY(-2px) rotate(-4deg);filter:drop-shadow(0 6px 8px rgba(0,0,0,.6)) drop-shadow(0 0 8px rgba(196,154,108,.35))}
footer.site .ft-mark .ft-tip{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%,6px);white-space:nowrap;padding:10px 14px;background:#1c130f;border:1px solid rgba(196,154,108,.45);box-shadow:0 10px 24px rgba(0,0,0,.6);font-family:var(--f-sub);font-size:14px;line-height:1.4;color:var(--ivory);text-align:center;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:5}
footer.site .ft-mark .ft-tip span{font-family:var(--f-label);font-size:12px;letter-spacing:.08em;color:#C49A6C}
footer.site .ft-mark .ft-tip::after{content:"";position:absolute;top:100%;left:50%;margin-left:-6px;border:6px solid transparent;border-top-color:rgba(196,154,108,.45)}
footer.site .ft-mark:hover .ft-tip,footer.site .ft-mark:focus-visible .ft-tip{opacity:1;transform:translate(-50%,0)}

/* v15.8 (owner): credit crane after "Contact"; box stays open while moving onto it, the handle inside is the link */
footer.site .ft-mark{margin:0 0 0 14px;cursor:default;outline:none}
footer.site .ft-mark .ft-tip{left:auto;right:-8px;transform:translateY(6px);pointer-events:auto;visibility:hidden;transition:opacity .25s,transform .25s,visibility 0s linear .35s}
footer.site .ft-mark .ft-tip::before{content:"";position:absolute;left:0;right:0;top:100%;height:16px}
footer.site .ft-mark .ft-tip::after{left:auto;right:22px;margin-left:0}
footer.site .ft-mark:hover .ft-tip,footer.site .ft-mark:focus-within .ft-tip,footer.site .ft-mark:focus .ft-tip{opacity:1;visibility:visible;transform:translateY(0);transition-delay:0s}
footer.site .ft-mark .ft-tip a{font-family:var(--f-label);font-size:12px;letter-spacing:.08em;color:#C49A6C;text-decoration:underline;text-underline-offset:3px}
footer.site .ft-mark .ft-tip a:hover{color:#E2B98A}
footer.site .ft-mark:hover img,footer.site .ft-mark:focus-within img{transform:translateY(-2px) rotate(-4deg);filter:drop-shadow(0 6px 8px rgba(0,0,0,.6)) drop-shadow(0 0 8px rgba(196,154,108,.35))}

/* v16.0 mobil: Startbild-Buttons kleiner und gleich breit */
@media (max-width:700px){
  .stage.hero .cta{gap:10px}
  .stage.hero .cta .btn{width:236px;max-width:100%;min-height:44px;padding:0 14px;font-size:11px;letter-spacing:.16em}
}

/* v16.2 Formulare: ruhiger Fokus ohne Browser-Outline, Fehlerzustand, Statuszeile */
footer.site .ft-nl form{transition:box-shadow .35s}
footer.site .ft-nl input:focus,footer.site .ft-nl input:focus-visible,footer.site .ft-nl button:focus-visible{outline:none}
footer.site .ft-nl form:focus-within{box-shadow:0 14px 30px rgba(0,0,0,.45),0 0 0 1px var(--candle),0 0 26px rgba(217,162,95,.2)}
footer.site .ft-nl input:focus::placeholder{color:#A39185}
footer.site .ft-nl form.is-error,footer.site .ft-nl form.is-error:focus-within{box-shadow:0 14px 30px rgba(0,0,0,.45),0 0 0 1px #b8483a,0 0 24px rgba(150,40,25,.3)}
footer.site .ft-nl .note{font-family:var(--f-label);font-size:12px;letter-spacing:.08em;color:#E2D6C8;text-shadow:0 1px 8px rgba(0,0,0,.85);min-height:1.2em}
.note.is-error{color:#E6A08F!important}
form.nl input,form.cf input,form.cf textarea{transition:border-color .3s,box-shadow .3s}
form.nl input:focus,form.cf input:focus,form.cf textarea:focus{outline:none;border-color:var(--candle);box-shadow:0 0 0 1px var(--candle),0 0 22px rgba(217,162,95,.16)}
form.nl input[aria-invalid="true"],form.cf input[aria-invalid="true"],form.cf textarea[aria-invalid="true"]{border-color:#b8483a;box-shadow:0 0 0 1px #b8483a}


/* v16.8 (owner): soft shadow seams between home sections - edges of each band (incl. thorns, feathers, cranes) fade into the night page colour */
main>section.verse,main>section.release,main>section.series,main>section.unreach,footer.site.ft-crane{--ft:0px;--fb:0px;-webkit-mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.25) calc(var(--ft)*.3),rgba(0,0,0,.7) calc(var(--ft)*.65),#000 var(--ft),#000 calc(100% - var(--fb)),rgba(0,0,0,.7) calc(100% - var(--fb)*.65),rgba(0,0,0,.25) calc(100% - var(--fb)*.3),transparent 100%);mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.25) calc(var(--ft)*.3),rgba(0,0,0,.7) calc(var(--ft)*.65),#000 var(--ft),#000 calc(100% - var(--fb)),rgba(0,0,0,.7) calc(100% - var(--fb)*.65),rgba(0,0,0,.25) calc(100% - var(--fb)*.3),transparent 100%)}
main>section.verse{--fb:80px}
main>section.release{--ft:clamp(44px,5.5vw,84px);--fb:clamp(40px,5vw,80px)}
main>section.series{--ft:clamp(44px,5vw,76px);--fb:clamp(44px,5vw,76px)}
main>section.unreach{--ft:clamp(44px,5.5vw,80px);--fb:clamp(40px,5vw,76px)}
footer.site.ft-crane{--ft:clamp(40px,4.5vw,64px)}
@media (max-width:720px){main>section.verse{--fb:50px}}

/* v16.9 (owner): home much darker - black shade over each band: overall dim, black vignette, black shadow at top and bottom edges */
main>section.ground>.shade{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.75) 0%,rgba(0,0,0,0) 22%,rgba(0,0,0,0) 74%,rgba(0,0,0,.85) 100%),radial-gradient(ellipse 80% 70% at 50% 48%,rgba(0,0,0,.28) 0%,rgba(0,0,0,.42) 55%,rgba(0,0,0,.78) 100%)}
main>section.release>.shade{background:linear-gradient(180deg,rgba(0,0,0,.75) 0%,rgba(0,0,0,0) 20%,rgba(0,0,0,0) 70%,rgba(0,0,0,.88) 100%),radial-gradient(ellipse 70% 70% at 40% 50%,rgba(0,0,0,.18) 0%,rgba(0,0,0,.4) 55%,rgba(0,0,0,.8) 100%)}
main>section.unreach>.shade{background:linear-gradient(180deg,rgba(0,0,0,.7) 0%,rgba(0,0,0,0) 20%,rgba(0,0,0,0) 76%,rgba(0,0,0,.8) 100%),radial-gradient(ellipse 85% 75% at 50% 50%,rgba(0,0,0,.12) 0%,rgba(0,0,0,.3) 60%,rgba(0,0,0,.65) 100%)}
/* v17.0 (owner): timeline crane sits higher, between hero and timeline; smaller on phones */
.verse .tl-crane{bottom:auto;top:clamp(14px,2.6vw,38px)}
@media (max-width:720px){.verse .tl-crane{width:22px;top:12px;left:14px}}
/* v17.3 (owner): Book 3 band - shorter dark transitions above and below */
.release::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.75) 4%,rgba(6,4,4,.3) 10%,rgba(6,4,4,0) 17%,rgba(6,4,4,0) 84%,rgba(6,4,4,.55) 93%,var(--night) 100%),radial-gradient(ellipse 55% 65% at 42% 52%,rgba(6,4,4,0) 0%,rgba(6,4,4,.3) 65%,rgba(6,4,4,.6) 100%)}
main>section.release>.shade{background:linear-gradient(180deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,0) 10%,rgba(0,0,0,0) 86%,rgba(0,0,0,.7) 100%),radial-gradient(ellipse 70% 70% at 40% 50%,rgba(0,0,0,.18) 0%,rgba(0,0,0,.4) 55%,rgba(0,0,0,.8) 100%)}
main>section.release{--ft:clamp(28px,3.5vw,56px);--fb:clamp(28px,3.5vw,56px)}
/* v17.4 (owner): softer Unreachable -> footer transition */
main>section.unreach{--fb:clamp(50px,6.5vw,100px)}
footer.site.ft-crane{--ft:clamp(56px,6vw,90px)}
main>section.unreach>.shade{background:linear-gradient(180deg,rgba(0,0,0,.7) 0%,rgba(0,0,0,0) 20%,rgba(0,0,0,0) 62%,rgba(0,0,0,.45) 82%,rgba(0,0,0,.92) 100%),radial-gradient(ellipse 85% 75% at 50% 50%,rgba(0,0,0,.12) 0%,rgba(0,0,0,.3) 60%,rgba(0,0,0,.65) 100%)}
/* v17.5 (owner): timeline -> Book 3 transition shorter */
.verse{min-height:0;padding-top:clamp(80px,9vw,128px);padding-bottom:clamp(56px,6vw,90px)}
.verse::before{background:linear-gradient(180deg,var(--night) 0%,rgba(6,4,4,.35) 22%,rgba(6,4,4,.35) 86%,var(--night) 100%)}
main>section.verse>.shade{background:linear-gradient(180deg,rgba(0,0,0,.75) 0%,rgba(0,0,0,0) 22%,rgba(0,0,0,0) 86%,rgba(0,0,0,.8) 100%),radial-gradient(ellipse 80% 70% at 50% 48%,rgba(0,0,0,.28) 0%,rgba(0,0,0,.42) 55%,rgba(0,0,0,.78) 100%)}
main>section.verse{--fb:clamp(30px,3.5vw,50px)}
/* v17.6 (owner): timeline band taller on phones only; v18.0: top gap 60px */
@media (max-width:720px){.verse{padding-top:60px;padding-bottom:64px}}
/* v17.6 (owner): phones - "New / Book III" line above the cover */
@media (max-width:820px){.release .copy>.rel-lbl{order:-1;margin-bottom:6px}}
/* v17.6 (owner): phones - both Book 3 buttons the same width */
@media (max-width:820px){.release .copy .row{display:flex;flex-direction:column;align-items:stretch;width:min(100%,280px);margin-inline:auto}.release .copy .row .btn{width:100%;box-sizing:border-box;justify-content:center;text-align:center}}
/* v17.7 (owner): phones - book meta as a clean two-liner (pages / date) */
@media (max-width:720px){.books .meta .m-l{display:block}.books .meta .m-sep{display:none}}
/* v17.8 (owner): "Read on Amazon" / "Pre-order" links on one baseline under all three books */
.series .books li>.buy{margin-top:auto;padding-top:6px}

/* v17.9 (owner): phones - timeline line runs only from node I to the top of the "?" ring (no grey line through/below the dashed ring) */
@media (max-width:720px){.tl::before{top:36px;bottom:58px}}
/* v18.1 (owner): phones - more room between the three timeline circles (section grows accordingly) */
@media (max-width:720px){.verse .tl{row-gap:72px}}
/* v18.2 (owner): phones - Book 3 label as two lines ("The Blairville Legacies" / "Book III") */
@media (max-width:720px){.release .copy>.rel-lbl{flex-direction:column;align-items:center;gap:10px}.release .rel-lbl .rl-b{display:block;margin-top:4px}.release .rel-lbl .rl-c{display:none}}
/* v18.2 (owner): phones - Book 3 content starts higher (smaller gap after the timeline) */
@media (max-width:720px){main>section.release{padding-top:44px}}
/* v18.3 (owner): phones - all home buttons one size (220 x 42), a bit smaller than the hero buttons were; stacked and centred */
@media (max-width:720px){
  main .row,main .series-cta{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center;gap:10px!important;width:auto!important;margin-inline:auto}
  main .row .btn,main .series-cta .btn,main .row .bf-wrap{width:220px!important;max-width:100%;min-width:0!important;box-sizing:border-box}
  main .row .btn,main .series-cta .btn{height:42px!important;min-height:0!important;padding:0 12px!important;font-size:11px!important;letter-spacing:.16em!important;display:inline-flex!important;align-items:center;justify-content:center;text-align:center;white-space:nowrap}
  main .row .bf-wrap .btn{width:100%!important}
}
/* v18.4 (owner): phones - hero taller, more air between sigil, intro line, wordmark, motto and buttons */
@media (max-width:720px){
  .stage.hero{min-height:900px;height:auto}
  .stage.hero .inner{gap:26px;padding-top:44px}
  .stage.hero .sigil{margin-bottom:6px}
  .stage.hero .row.cta{margin-top:14px}
}
/* v18.5 (owner): hero picture as a box so the figure-centring shift (fx.js) can move it together with the light effects */
.stage.hero .hero-art picture{position:absolute;inset:0;display:block}
/* v18.6 (owner): light buttons softened - dimmed parchment instead of bright cream (variant B); hover stays candle gold */
.btn:where(:not(.ghost,.ink,.ink-ghost)){background:#B49A8A;border-color:#B49A8A;color:#1C120E;box-shadow:inset 0 1px 0 rgba(255,245,235,.22)}
/* v18.7 (owner): phones - texts and buttons in the hero appear at once (no reveal / sheen); the painting behind stays alive and moves a bit more */
@media (max-width:720px){
  .stage.hero .embers i{width:5px;height:5px;box-shadow:0 0 10px 3px rgba(217,162,95,.85)}
}
@keyframes driftM{from{transform:scale(1.03)}to{transform:scale(1.13) translateY(-1.8%)}}
/* v18.8 (owner): phones - Book 3 texts and buttons visible at once (no fade/blur-in) */
@media (max-width:720px){}
/* v18.9 (owner): phones - lightning in the hero sky (glow + jagged bolt), two strikes on different rhythms */
.hero-fx .bolt{display:none}
.hero-fx .flash-m{display:none}
@media (max-width:700px){
  .hero-fx .flash.flash-m{display:block!important;width:calc(var(--u)*380);height:calc(var(--u)*260);background:radial-gradient(ellipse,rgba(215,222,255,.5),rgba(200,208,255,.16) 42%,rgba(200,205,255,0) 70%)}
  .hero-fx .flash.flash-m2{width:calc(var(--u)*320);height:calc(var(--u)*220)}
  .hero-fx .bolt{display:block;border-radius:0;width:calc(var(--u)*70);height:calc(var(--u)*270);mix-blend-mode:normal;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 46 170'><g fill='none' stroke-linecap='round' stroke-linejoin='round'><path d='M26 0 L18 38 L28 44 L14 92 L24 97 L9 170' stroke='%23b9c6ff' stroke-opacity='.45' stroke-width='6'/><path d='M26 0 L18 38 L28 44 L14 92 L24 97 L9 170' stroke='%23f4f6ff' stroke-width='1.8'/><path d='M28 44 L37 70 L34 86' stroke='%23e8ecff' stroke-width='1.1'/><path d='M14 92 L5 118' stroke='%23e8ecff' stroke-width='1'/></g></svg>") center/100% 100% no-repeat}
  .hero-fx .bolt-2{width:calc(var(--u)*56);height:calc(var(--u)*215)}
}
@media (prefers-reduced-motion:reduce){.hero-fx .bolt,.hero-fx .flash-m{display:none!important}}
/* v18.9 (owner): phones - Book 3 cover without animation (no tilt, no thorns wrapping, no blood splats, no pulsing glow) */
@media (max-width:720px){
}
/* v19.0 (owner): phones - small feather sits in the top right corner of the series band, beside (not under) the wordmark */
@media (max-width:720px){.series .feather.f1{left:auto;right:6px;top:10px;width:50px}}
/* v19.1 (owner): phones - Book 3 label shows only the roman numeral, centred, larger, styled like the numerals over the three books */
@media (max-width:720px){
  .release .rel-lbl .rl-b{display:block;text-align:center;margin-top:14px;line-height:1}
  .release .copy>.rel-lbl{margin-bottom:16px!important}
  .release .rel-lbl .rl-w{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .release .rel-lbl .rn{font-family:"Playfair Display",Georgia,serif;font-size:40px;font-weight:400;letter-spacing:-.05em;color:#D8C2A2;text-shadow:0 2px 10px rgba(0,0,0,.9);text-transform:none}
}
/* v19.2 (owner): phones - no drawn lightning bolts, only soft sky flashes like on desktop */
.hero-fx .bolt{display:none!important}
@media (max-width:700px){.hero-fx .flash.flash-m{background:radial-gradient(ellipse,rgba(210,215,255,.32),rgba(200,205,255,.1) 40%,rgba(200,205,255,0) 70%)}}
/* v19.3 (owner): phones - more space between series name and the numeral */
@media (max-width:720px){.release .rel-lbl>span:last-child{display:flex;flex-direction:column;align-items:center}.release .rel-lbl .rl-b{margin-top:20px!important}}
/* v19.4 (owner): phones - more space name -> numeral, numeral closer to the cover, a little more space "New" -> name */
@media (max-width:720px){.release .copy>.rel-lbl{gap:18px!important;margin-bottom:2px!important}.release .rel-lbl .rl-b{margin-top:34px!important}}
/* v19.5 (owner): phones - series wordmark without animation (no ink reveal, blur, sheen or ember glow) */
@media (max-width:720px){
}
/* v19.6 (owner): phones - small feather a bit further left and turned to lie more across */
@media (max-width:720px){.series .feather.f1{right:44px;top:-6px;rotate:-58deg}}
/* v19.7 (owner): phones - feather closer to the wordmark and gently floating */
@media (max-width:720px){
  .series .feather.f1{right:56px;top:14px}
}
@keyframes featherFloatM{0%,100%{translate:0 0;rotate:-58deg}35%{translate:-7px 9px;rotate:-52deg}70%{translate:5px 4px;rotate:-62deg}}
@media (prefers-reduced-motion:reduce){.series .feather.f1{animation:none!important}}
/* v19.8 (owner): phones/touch - the opened book on tap shows its turned pages again (leaves were hidden on touch devices) */
@media (hover:none){.books .b3-leaf{display:block}}
/* v19.9 (owner): phones - big feather sits higher and smaller so the content-warning line below stays readable */
@media (max-width:720px){.series .feather.f2{width:180px;bottom:160px}}
/* v19.9 (owner): phones - "Also by Maezos" and the Unreachable title above the book */
@media (max-width:720px){
  .unreach .wrap.grid>.copy{display:contents}
  .unreach .wrap.grid>.copy>*{order:3}
  .unreach .wrap.grid>.copy>.ur-also{order:0}
  .unreach .wrap.grid>.copy>#ur-title{order:1;margin-top:-22px!important}
  .unreach .wrap.grid>.ur-stage{order:3}
  .unreach .wrap.grid>.copy>.genre{order:2;margin-top:-6px}
}
/* v19.9 (owner): phones - Book 3 buttons on their own layer (iOS Safari sometimes skipped painting the ghost button inside the masked, animated band) */
@media (max-width:720px){.release .copy .row{-webkit-transform:translateZ(0)}.release .row .btn{position:relative;z-index:1}}
/* v19.9 (owner): touch devices - when a book opens on tap, the turned pages fan out to the left with the cover (as on desktop) */
@media (hover:none){.books .b3:hover .b3-leaf,.books .b3:focus-visible .b3-leaf{transform:translateZ(calc(var(--d)/2 - 1px - var(--i) * 1px)) rotateY(var(--a))}}
/* v20.0 (owner): phones - Unreachable book and its butterfly are there at once; the handwriting floor reaches up to half the book's height */
@media (max-width:720px){
  
  
  .unreach .ur-floor{height:80%;-webkit-mask:linear-gradient(180deg,transparent 0,#000 16%,#000 80%,transparent 100%);mask:linear-gradient(180deg,transparent 0,#000 16%,#000 80%,transparent 100%)}
}
/* v20.1 (owner): phones - left paper crane moved down from behind the title to beside the book */
@media (max-width:720px){.unreach .cr.c1{top:25%;left:4%}}
/* v20.2 (owner): phones - Unreachable wordmark shown at once (no ink-wipe reveal) */
@media (max-width:720px){}

/* v20.4 (owner): phones/touch - Unreachable book scene without animation (book, butterfly, bunny, threads, ink pool, floor glow stay still) */
@media (max-width:720px),(hover:none){
  
  .unreach .ur-stage:hover .ur-book,.unreach .ur-stage:hover .mock,.unreach .ur-stage:hover .ur-bfly,.unreach .ur-stage:hover .ur-bunny,.unreach .ur-stage:hover .ur-pool{transform:none!important}
  .unreach .ur-stage .ur-pool{opacity:0!important}
  .unreach .ur-stage .ur-threads path{opacity:0!important}
  
}
/* v20.4 (owner): phones - genre line as two lines: "Ink Duet" / "Dark psychological drama" */
@media (max-width:720px){.unreach .genre .g-l{display:block}.unreach .genre .g-sep{display:none}.unreach .genre .g-l+.g-sep+.g-l{margin-top:4px}}
/* v20.4 (owner): phones - tighter spacing between the Unreachable text blocks */
@media (max-width:720px){
  .unreach .wrap.grid{row-gap:12px!important}
  .unreach .wrap.grid>.copy>#ur-title{margin-top:-2px!important}
  .unreach .wrap.grid>.ur-stage{margin-block:22px 26px}
  .unreach .wrap.grid>.copy>*{margin-top:0;margin-bottom:0}
  .unreach .wrap.grid>.copy>.ur-vol{margin-top:10px}
  .unreach .wrap.grid>.copy>.row{margin-top:18px}
}
/* v20.4 (owner): phones - more space left/right between the three part covers */
@media (max-width:720px){.unreach .ur-parts{gap:28px!important;width:auto!important;max-width:none!important}}
@media (max-width:720px){.unreach .genre .g-l:first-child{text-transform:uppercase;letter-spacing:.22em}}
/* v20.5 (owner): phones - Unreachable buttons with slightly larger text */
@media (max-width:720px){.unreach .row .btn{font-size:13px!important;letter-spacing:.07em!important}}
/* v20.6 (owner): phones - less empty space between Book 3 / series / Unreachable */
@media (max-width:720px){
  main>section.release{padding-bottom:48px!important}
  main>section.series{padding-top:56px!important;padding-bottom:52px!important}
  main>section.unreach{padding-top:52px!important}
}
/* v20.7 (owner): phones - footer picture fills the whole footer (portrait composition: Canva texture above, paper crane at the bottom) */
@media (max-width:720px){
  footer.site.ft-crane{background:#060404 url(https://static.wixstatic.com/media/5e8914_1b65d101e19a49b0a7fac3cca23ce82c~mv2.webp) center bottom/cover no-repeat!important}
}
/* v20.7 (owner): phones - a little less space between Unreachable and the footer */
@media (max-width:720px){main>section.unreach{padding-bottom:48px!important}footer.site.ft-crane{padding-top:40px!important}}
@media (max-width:720px){main>section.unreach{--fb:28px}}
/* v20.8 (owner): phones - newsletter block without the side line, field + button fit the screen and are a bit smaller */
@media (max-width:720px){
  footer.site .ft-nl{border-left:0!important;padding-left:0!important;margin-left:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box;min-width:0}
  footer.site .ft-nl form{width:100%!important;max-width:100%!important;box-sizing:border-box;padding:4px!important;min-width:0}
  footer.site .ft-nl form input{flex:1 1 auto!important;min-width:0!important;width:auto!important;height:42px!important;font-size:14px!important;padding:0 12px!important}
  footer.site .ft-nl form button{flex:0 0 auto!important;height:42px!important;padding:0 16px!important;font-size:11px!important;letter-spacing:.16em!important}
}
/* v20.9 (owner): phones - links stay above the paper crane: extra room at the bottom of the footer gives the crane its own stage */
@media (max-width:720px){footer.site.ft-crane{padding-bottom:230px!important}}
/* v21.0 (owner): newsletter field - no grey/blue browser autofill background; keeps the parchment field and dark text */
.ft-nl input:-webkit-autofill,.ft-nl input:-webkit-autofill:hover,.ft-nl input:-webkit-autofill:focus,.ft-nl input:-webkit-autofill:active,
form.nl input:-webkit-autofill,form.nl input:-webkit-autofill:hover,form.nl input:-webkit-autofill:focus,form.nl input:-webkit-autofill:active{
  -webkit-box-shadow:0 0 0 1000px #EDE3D6 inset!important;box-shadow:0 0 0 1000px #EDE3D6 inset!important;-webkit-text-fill-color:#060404!important;caret-color:#060404;transition:background-color 99999s ease 0s}
.ft-nl input:autofill,form.nl input:autofill{box-shadow:0 0 0 1000px #EDE3D6 inset!important;-webkit-text-fill-color:#060404!important}
/* v21.1 (owner): phones - "letters from maezos" heading and note sized like "stay close" and the links below it */
@media (max-width:720px){
  footer.site .ft-nl .ft-h{font-size:20px!important;letter-spacing:.01em!important;line-height:1.62!important}
  footer.site .ft-nl .ft-nl-note{font-family:"Tenor Sans","Gill Sans","Trebuchet MS",sans-serif!important;font-size:13px!important;letter-spacing:.06em!important;line-height:1.62!important}
}
/* v21.2 (owner): phones - newsletter field smaller, mainly lower (34 px), one compact row */
@media (max-width:720px){
  footer.site .ft-nl form{max-width:320px!important;padding:3px!important}
  footer.site .ft-nl form input{height:34px!important;font-size:13px!important;padding:0 10px!important}
  footer.site .ft-nl form button{height:34px!important;padding:0 12px!important;font-size:10px!important;letter-spacing:.14em!important}
}
@media (max-width:720px){footer.site .ft-nl form input,footer.site .ft-nl form button{min-height:0!important}}
/* v21.3 (owner): phones - footer without the big paper crane: texture only, extra bottom room removed */
@media (max-width:720px){
  footer.site.ft-crane{background:#060404 url(https://static.wixstatic.com/media/5e8914_5425489b869f465ea6491b57e48b7b43~mv2.webp) center top/cover no-repeat!important;padding-bottom:32px!important}
}

details.menu .grp span{display:block;padding:14px 0;font-family:var(--f-display);letter-spacing:.18em;text-transform:uppercase;font-size:14px;color:var(--ivory);border-bottom:1px solid var(--line)}

.hsocial{list-style:none;margin:0 0 0 auto;padding:0;display:flex;gap:2px}
.hsocial a{display:grid;place-items:center;width:40px;height:40px;color:var(--ash);transition:color .25s,transform .35s var(--ease-out)}
.hsocial a:hover,.hsocial a:focus-visible{color:#F3C98B;transform:translateY(-2px)}
.hsocial svg{width:18px;height:18px}
nav.main+.hsocial{margin-left:0}
@media (max-width:820px){.hsocial{display:none}}
details.menu li.msocial ul{position:static;display:flex;gap:4px;padding:14px 0 0;margin:0;border:0;background:none;list-style:none}
details.menu li.msocial a,details.menu li.msocial a:hover{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;color:var(--ash)}
details.menu li.msocial a:hover{color:#F3C98B}
details.menu li.msocial svg{width:20px;height:20px}

/* v21.4 (owner reference 12.10.2026): series page book rows get tropes as chips and a facts strip; blurb teaser with fold */
.brow .blurb.teaser{max-width:38em}
.brow .blurb.teaser .hook{color:var(--rose);font-style:italic}
.brow .blurb-sp summary{display:inline-block}
.brow .blurb-sp[open]{margin-top:2px}
:is(.brow,.unreach) .chips{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px;max-width:38em}
:is(.brow,.unreach) .chips li{font-family:var(--f-ui,'Tenor Sans',sans-serif);font-size:12px;letter-spacing:.06em;line-height:1.2;padding:7px 12px;color:var(--ivory);background:rgba(6,4,4,.72);border:1px solid var(--line)}
:is(.brow,.unreach) .chips li.todo-li{background:none;border:0;padding:7px 0 7px 2px}
:is(.brow,.unreach,.release) .facts{margin:6px 0 0;padding:16px 0;max-width:38em;display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:14px 32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
:is(.brow,.unreach,.release) .facts>div{min-width:0}
:is(.brow,.unreach,.release) .facts dt{font-family:var(--f-label);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--ash);margin:0 0 4px}
:is(.brow,.unreach,.release) .facts dd{margin:0;font-size:18px;line-height:1.25;color:var(--ivory);font-variant-numeric:lining-nums}
:is(.brow,.unreach,.release) .facts dd.soon{color:var(--candle)}
@media (max-width:820px){
  :is(.brow,.unreach) .chips{justify-content:center}
  .brow{grid-template-columns:minmax(0,1fr)}
  :is(.brow,.unreach,.release) .facts{text-align:center;gap:14px 12px;grid-template-columns:repeat(auto-fit,minmax(88px,1fr))}
}

/* v21.5: official tags from Maezos' Instagram posts (series head chips, Unreachable chips) */
.chips.center{width:100%;list-style:none;margin:6px auto 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:46em}
.chips.center li{font-family:var(--f-ui,'Tenor Sans',sans-serif);font-size:12px;letter-spacing:.06em;line-height:1.2;padding:7px 12px;color:var(--ivory);background:rgba(6,4,4,.72);border:1px solid var(--line)}
.unreach .chips li{color:var(--ink-text);background:rgba(14,20,36,.7);border-color:#2B3A5C}
.unreach .chips{max-width:34em}

/* v21.6 (owner 12.10.2026): series page - one foldable blurb (no duplicate text), jump bar, numeral watermarks, candle spotlight, reveal, countdown, progress line */
/* v639: the fade at the bottom of a closed blurb is animated together with the height (registered property --fold-fade), so "Show more" / "Show less" no longer flash: before, the fade switched off or on in one frame while the box was still tall */
/* v640: no animated height or mask any more (they flickered on phones next to the 3D books): the text switches in one frame and only fades in softly (opacity, cheap) */
.blurb.js-fold{position:relative;max-height:9.4em;overflow:hidden;-webkit-mask-image:linear-gradient(#000 52%,transparent 100%);mask-image:linear-gradient(#000 52%,transparent 100%)}
.blurb.js-fold.open{max-height:none;overflow:visible;-webkit-mask-image:none;mask-image:none;animation:fold-in .45s ease-out both}
@keyframes fold-in{from{opacity:.35}to{opacity:1}}
.blist .brow{overflow-anchor:none}
.fold-btn{align-self:flex-start;background:none;border:0;padding:2px 0;margin:-4px 0 0;cursor:pointer;color:var(--ivory);font-family:var(--f-ui,'Tenor Sans',sans-serif);font-size:13px;letter-spacing:.14em;text-transform:uppercase;text-shadow:0 1px 6px rgba(0,0,0,.9)}
.fold-btn::before{content:"+ "}
.fold-btn[aria-expanded="true"]::before{content:"\2013 "}
.fold-btn:hover,.fold-btn:focus-visible{color:var(--candle)}
@media (max-width:820px){.fold-btn{align-self:center}}

nav.jump{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:18px auto 0}
nav.jump a{display:inline-flex;align-items:center;gap:10px;padding:9px 16px 9px 10px;border:1px solid var(--line);background:rgba(6,4,4,.6);color:var(--ash);font-family:var(--f-label);font-size:11px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;transition:color .25s,border-color .25s,background .25s}
nav.jump a span{display:inline-grid;place-items:center;min-width:28px;height:28px;padding:0 6px;border:1px solid var(--rose);border-radius:50%;color:var(--rose);font-family:var(--f-display);font-size:12px;letter-spacing:.04em}
nav.jump a:hover,nav.jump a:focus-visible{color:var(--ivory);border-color:var(--candle);background:rgba(6,4,4,.82)}
.blist .brow{scroll-margin-top:96px}

.blist .brow{position:relative;isolation:isolate}
@media (min-width:821px){.blist .brow .tagline{padding-left:18px;border-left:2px solid rgba(217,162,95,.45)}}

.blist .brow.rv{opacity:0;transition:opacity 1s ease}
.blist .brow.rv.in{opacity:1}

.read-progress{position:fixed;z-index:60;left:0;top:0;height:2px;width:100%;transform-origin:0 50%;transform:scaleX(var(--p,0));background:linear-gradient(90deg,transparent,var(--candle));pointer-events:none}
@media (prefers-reduced-motion:reduce){.blurb.js-fold.open{animation:none}.blist .brow.rv{opacity:1;transition:none}.read-progress{display:none}}

/* v21.7: shared pieces for series page (release band, numerals) and Unreachable page */
.blist .copy>.bnum{margin:0;font-family:"Playfair Display",Georgia,serif;font-weight:400;font-size:clamp(32px,3.2vw,44px);letter-spacing:-.05em;line-height:1;color:#D8C2A2;text-shadow:0 2px 10px rgba(0,0,0,.9);opacity:0;filter:blur(6px);transform:translateY(8px);transition:opacity 1.4s ease,filter 1.6s ease,transform 1.6s cubic-bezier(.2,.7,.2,1),color .8s ease,text-shadow .8s ease}
.blist.lit .copy>.bnum{opacity:1;filter:none;transform:none}
.blist li:nth-child(2) .copy>.bnum{transition-delay:.35s,.35s,.35s,0s,0s}
@media (hover:hover){.blist li:hover .copy>.bnum{color:#E7CFA8;text-shadow:0 2px 10px rgba(0,0,0,.9),0 0 16px rgba(201,140,72,.45);animation:bnumCandle 3s ease-in-out infinite}}
@media (max-width:700px){}
@media (prefers-reduced-motion:reduce){.blist .copy>.bnum{opacity:1;filter:none;transform:none;transition:none}.blist li:hover .copy>.bnum{animation:none}}
.release .r-cd{margin:0;font-family:var(--f-label);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--ash)}
.release .r-cd:empty{display:none}
.release .blurb-sp{max-width:30em}
.release .blurb-sp summary{cursor:pointer;font-family:var(--f-ui,'Tenor Sans',sans-serif);font-size:13px;letter-spacing:.14em;text-transform:uppercase;list-style:none;color:var(--ivory)}
.release .blurb-sp summary::-webkit-details-marker{display:none}
.release .blurb-sp summary::before{content:"+ "}
.release .blurb-sp[open] summary::before{content:"\2013 "}
.release .blurb-sp summary span{text-transform:none;letter-spacing:.02em;color:var(--ash)}
.release .blurb-sp .blurb{margin-top:14px;color:var(--ash);text-align:left}
.release .blurb-sp .blurb p{margin:0 0 .85em;line-height:1.6}
.unreach .blurb{max-width:38em;text-align:left;color:var(--ink-mute)}
.unreach .blurb p{margin:0 0 .85em;line-height:1.6}
.unreach .blurb .pov{margin:0 0 .3em;font-family:var(--f-ink,inherit);font-size:17px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-hi)}
.unreach .fold-btn{color:var(--ink-hi);font-family:var(--f-ink,inherit);font-size:17px;letter-spacing:.2em}
.unreach .fold-btn:hover,.unreach .fold-btn:focus-visible{color:var(--ivory)}
.unreach .facts{border-color:#2B3A5C}
.unreach .facts dt{color:var(--ink-mute)}
.unreach .facts dd{color:var(--ink-text)}
.unreach .chips{margin:6px 0 0}
.gw{white-space:normal}

.unreach.ur-page .ur-stage{align-self:start;position:sticky;top:84px}
@media (max-width:820px){.unreach.ur-page .ur-stage{position:relative;top:auto}}

/* v21.7 fix: Book III band rows (countdown + spoiler blurb get their own grid rows) */
@media (min-width:821px){
  .release .copy{grid-template-rows:1fr repeat(7,auto) 1fr}
  .release .copy>.lbl{grid-row:2}.release .copy>h2{grid-row:3}.release .copy>.date{grid-row:4}
  .release .copy>p.r-cd:not(.a):not(.b):not(.c){grid-row:5}.release .copy>p.r-tag:not(.a):not(.b):not(.c){grid-row:6}
  .release .copy>details.blurb-sp{grid-row:7}.release .copy>.row{grid-row:8}
  .release .copy>.cover-stage{grid-row:1 / -1}
}
@media (max-width:820px){.release .blurb-sp{text-align:center;margin-inline:auto}.release .blurb-sp summary{display:inline-block}}

/* v21.8: Book III row (back to the normal book row) + countdown; text lamp instead of glow */
.brow .r-cd{margin:0;font-family:var(--f-label);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--ash)}
.brow .r-cd:empty{display:none}
.gw{transition:color .25s ease}


/* ===== v21.9 ===== */
/* video header: real video, soft fade into the section below */
.vhead{position:relative;display:block;aspect-ratio:16/9;min-height:0;max-height:78vh;width:100%;overflow:hidden;background:#050303;-webkit-mask-image:linear-gradient(180deg,#000 58%,rgba(0,0,0,.55) 80%,transparent 100%);mask-image:linear-gradient(180deg,#000 58%,rgba(0,0,0,.55) 80%,transparent 100%)}
.vhead::before{display:none}
.vhead .vid{display:block;width:100%;height:100%;object-fit:cover}
.vhead::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 85% 80% at 50% 45%,rgba(6,4,4,0) 55%,rgba(6,4,4,.55) 100%),linear-gradient(180deg,rgba(6,4,4,.55) 0%,rgba(6,4,4,0) 16%)}
.vhead+.series{margin-top:calc(-1 * clamp(40px,7vw,110px));padding-top:clamp(120px,14vw,190px)}
@media (max-width:700px){.vhead{aspect-ratio:4/3;max-height:none}.vhead+.series{margin-top:-30px;padding-top:100px}}

/* button label: no inherited text shadow (it blurred dark text on light buttons) */
.btn,.btn *{text-shadow:none!important}

/* series rows: numeral above the cover, text moves up beside the book */
.blist .brow{position:relative;grid-template-rows:auto 1fr;row-gap:14px;align-items:start}
.blist .brow>.bnum{grid-column:1;grid-row:1;justify-self:center;margin:0;text-align:center}
.blist .brow>.b3,.blist .brow>img.cv{grid-column:1;grid-row:2}
.blist .brow>.copy{grid-column:2;grid-row:1 / span 2;align-self:start}
@media (max-width:720px){.blist .brow>.copy{grid-column:1;grid-row:3}.blist .brow>.bnum,.blist .brow>.b3,.blist .brow>img.cv{justify-self:center}.blist .brow>.b3,.blist .brow>img.cv{width:min(220px,62vw)}}
.blist .brow>.bnum{position:relative;z-index:3;font-family:"Playfair Display",Georgia,serif;font-weight:400;font-size:clamp(32px,3.2vw,44px);letter-spacing:-.05em;line-height:1;color:#D8C2A2;text-shadow:0 2px 10px rgba(0,0,0,.9);opacity:0;filter:blur(6px);transform:translateY(8px);transition:opacity 1.4s ease,filter 1.6s ease,transform 1.6s cubic-bezier(.2,.7,.2,1),color .8s ease,text-shadow .8s ease}
.blist.lit .brow>.bnum{opacity:1;filter:none;transform:none}
.blist .brow:nth-child(2)>.bnum{transition-delay:.35s,.35s,.35s,0s,0s}
.blist .brow:nth-child(3)>.bnum{transition-delay:.7s,.7s,.7s,0s,0s}
@media (hover:hover){.blist .brow:hover>.bnum{color:#E7CFA8;text-shadow:0 2px 10px rgba(0,0,0,.9),0 0 16px rgba(201,140,72,.45);animation:bnumCandle 3s ease-in-out infinite}}
@media (max-width:700px){}
@media (prefers-reduced-motion:reduce){.blist .brow>.bnum{opacity:1;filter:none;transform:none;transition:none}.blist .brow:hover>.bnum{animation:none}}
.blist .copy>.bnum{display:none}

/* countdown next to the release date */
.brow .facts .r-cd{display:inline-block;margin:0 0 0 12px;padding:4px 11px 3px;border:1px solid rgba(217,162,95,.65);background:rgba(217,162,95,.13);color:#F3C98B;font-family:var(--f-label);font-size:11px;letter-spacing:.2em;text-transform:uppercase;vertical-align:2px;box-shadow:0 0 16px rgba(217,162,95,.28);animation:cdPulse 3.2s ease-in-out infinite}
.brow .facts .r-cd:empty{display:none}
@keyframes cdPulse{0%,100%{box-shadow:0 0 12px rgba(217,162,95,.2)}50%{box-shadow:0 0 22px rgba(217,162,95,.5)}}
@media (max-width:520px){.brow .facts .r-cd{display:block;width:max-content;margin:8px auto 0}}
@media (prefers-reduced-motion:reduce){.brow .facts .r-cd{animation:none}}

/* background stays put when a blurb is unfolded: layers are pinned to the viewport inside the clipped section */
.series{clip-path:inset(0)}
.series>.bg{position:fixed;inset:0;width:100vw;height:100vh}
.series>.ring{position:fixed;top:55%}
.series .feather.f1{top:300px}.series .feather.f3{top:230px}
@media (max-width:720px){.series .feather.f1{top:60px}}


/* v21.9b: room for the opened cover on the left, big feather hangs off the bottom edge */
@media (min-width:1000px) and (hover:hover){
  .blist{padding-left:max(0px,calc(230px - (100vw - min(var(--wrap),100vw - 2 * var(--gut)))/2))}
  .blist .brow .b3:hover .b3-inner,.blist .brow .b3:focus-visible .b3-inner{transform:translate(34px,-8px) rotateY(-6deg) rotateX(2deg)}
}
@media (min-width:721px) and (max-width:999px){
  .brow .b3:hover .b3-cover,.brow .b3:focus-visible .b3-cover{transform:translateZ(calc(var(--d)/2)) rotateY(-52deg)}
  .brow .b3-leaf{display:none}
}
.series .feather.f2{right:-60px;bottom:-30px;width:clamp(200px,20vw,320px)}
@media (max-width:720px){.series .feather.f2{right:-40px;bottom:-20px;width:170px}}

/* v21.10: homepage book hover ported 1:1 (cloned rules) */
.brow .b3-page{background-size:cover;background-position:50% 50%;background-repeat:no-repeat}
.brow .b3-page::before{inset:0;border:0;box-shadow:none;background:linear-gradient(90deg,rgba(0,0,0,.5) 0%,rgba(0,0,0,.12) 7%,rgba(0,0,0,0) 14%,rgba(0,0,0,0) 90%,rgba(0,0,0,.18) 100%)}
.brow .b3-page::after{display:none}
#book-1 .b3-page{background-image:url(https://static.wixstatic.com/media/5e8914_f499362d964146d088fc956eb86e9366~mv2.webp)}
#book-2 .b3-page{background-image:url(https://static.wixstatic.com/media/5e8914_59824e758df0466e847e930e59cc2ae2~mv2.webp)}
#book-3 .b3-page{background-image:url(https://static.wixstatic.com/media/5e8914_99139b53d9424e86b0d7dc425b7452fc~mv2.webp)}
.brow .b3:hover .b3-inner,.brow .b3:focus-visible .b3-inner{transform:translateY(-8px) rotateY(-6deg) rotateX(2deg)}
.brow .b3:hover .b3-cover,.brow .b3:focus-visible .b3-cover{transform:translateZ(calc(var(--d)/2)) rotateY(-118deg);transition-duration:1.1s}
.brow .b3-cover-in{background:url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp) 50% 50%/cover no-repeat,#cdb08c;box-shadow:inset -10px 0 14px -8px rgba(0,0,0,.45)}
.brow .b3-cover-in::after{display:none}
.brow .b3-leaf{background:linear-gradient(270deg,rgba(0,0,0,.4),rgba(0,0,0,0) 12%,rgba(0,0,0,0) 88%,rgba(0,0,0,.18)),url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp) 50% 50%/cover no-repeat,#cdb08c;border-right:0;border-left:1px solid rgba(120,85,55,.55)}
.brow .b3-leaf:nth-of-type(odd){background-color:#c8aa86;filter:brightness(.96)}
.brow .b3:hover .b3-leaf,.brow .b3:focus-visible .b3-leaf{transition-delay:calc(.05s + var(--i) * .045s)}
.brow .b3-page::after{display:block;content:"7";position:absolute;left:0;right:0;bottom:4%;top:auto;inset:auto 0 3.5% 0;background:none;filter:none;opacity:.75;text-align:center;font:italic 11px/1 var(--f-body);color:#4a3322}
@media (hover:none){.brow .b3-leaf{display:none}}
.brow .b3-leaf.lf1{background-image:linear-gradient(270deg,rgba(0,0,0,.4),rgba(0,0,0,0) 12%,rgba(0,0,0,0) 88%,rgba(0,0,0,.18)),url(https://static.wixstatic.com/media/5e8914_d061a4ec454d43778bd4264d66fb0c14~mv2.webp)}
.brow .b3-leaf.lf2{background-image:linear-gradient(270deg,rgba(0,0,0,.4),rgba(0,0,0,0) 12%,rgba(0,0,0,0) 88%,rgba(0,0,0,.18)),url(https://static.wixstatic.com/media/5e8914_c78a7f2fa44848509f06925eca02473a~mv2.webp)}
.brow .b3-leaf.lf3{background-image:linear-gradient(270deg,rgba(0,0,0,.4),rgba(0,0,0,0) 12%,rgba(0,0,0,0) 88%,rgba(0,0,0,.18)),url(https://static.wixstatic.com/media/5e8914_29a38258b7984dd09df4bfeee7358698~mv2.webp)}
.brow .b3-leaf{background-size:100% 100%,cover;background-position:0 0,50% 50%;background-repeat:no-repeat}
.brow .b3-leaf,.brow .b3-cover-in{filter:brightness(.6) saturate(.85) sepia(.12)}
.brow .b3-leaf:nth-of-type(odd){filter:brightness(.55) saturate(.85) sepia(.12)}
.brow .b3-leaf.lf1,.brow .b3-leaf.lf2,.brow .b3-leaf.lf3,.brow .b3-leaf{background-image:linear-gradient(270deg,rgba(10,6,4,.75) 0%,rgba(10,6,4,.35) 9%,rgba(10,6,4,0) 24%,rgba(255,240,215,.05) 62%,rgba(10,6,4,.3) 100%),var(--lf-img,url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp))}
.brow .b3-leaf.lf1{--lf-img:url(https://static.wixstatic.com/media/5e8914_d061a4ec454d43778bd4264d66fb0c14~mv2.webp)}.brow .b3-leaf.lf2{--lf-img:url(https://static.wixstatic.com/media/5e8914_c78a7f2fa44848509f06925eca02473a~mv2.webp)}.brow .b3-leaf.lf3{--lf-img:url(https://static.wixstatic.com/media/5e8914_29a38258b7984dd09df4bfeee7358698~mv2.webp)}
.brow .b3-cover-in{background:linear-gradient(270deg,rgba(10,6,4,.75) 0%,rgba(10,6,4,.3) 10%,rgba(10,6,4,0) 26%,rgba(10,6,4,.3) 100%),url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp) 50% 50%/cover no-repeat,#cdb08c}
.brow .b3-page::before{background:linear-gradient(90deg,rgba(8,5,3,.72) 0%,rgba(8,5,3,.3) 8%,rgba(8,5,3,.08) 18%,rgba(0,0,0,0) 30%,rgba(0,0,0,0) 88%,rgba(0,0,0,.22) 100%)}
.brow .b3-leaf,.brow .b3-cover-in{filter:brightness(.74) saturate(.9) sepia(.1)}
.brow .b3-leaf:nth-of-type(odd){filter:brightness(.7) saturate(.9) sepia(.1)}
.brow .b3-leaf.lf1,.brow .b3-leaf.lf2,.brow .b3-leaf.lf3,.brow .b3-leaf{background-image:linear-gradient(270deg,rgba(10,6,4,.6) 0%,rgba(10,6,4,.25) 9%,rgba(10,6,4,0) 24%,rgba(255,240,215,.05) 62%,rgba(10,6,4,.22) 100%),var(--lf-img,url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp))}
@media (hover:none){.brow .b3-leaf{display:block}}
@media (hover:none){.brow .b3:hover .b3-leaf,.brow .b3:focus-visible .b3-leaf{transform:translateZ(calc(var(--d)/2 - 1px - var(--i) * 1px)) rotateY(var(--a))}}

/* v21.10 */
.brow .b3::after{left:4%;right:4%;bottom:-30px;height:44px;background:radial-gradient(closest-side,rgba(0,0,0,.85),rgba(0,0,0,0));opacity:1;z-index:-1}
.brow .b3:hover::after{transform:translateX(-26%) scaleX(1.9);opacity:1}
@media (hover:hover) and (min-width:1000px){.blist .brow .b3:hover::after{transform:translateX(-4%) scaleX(1.9)}}
.brow .b3{display:block;text-decoration:none;cursor:pointer}
.brow .b3-cover{box-shadow:0 26px 48px rgba(0,0,0,.55)}
.chips li{transition:border-color .3s,background .3s,color .3s,box-shadow .35s,transform .3s}
.chips li:not(.todo-li):hover{border-color:var(--candle);background:rgba(217,162,95,.14);color:#F3C98B;box-shadow:0 0 16px rgba(217,162,95,.32),inset 0 0 12px rgba(217,162,95,.12);transform:translateY(-1px)}
.unreach .chips li:hover{border-color:#8FB0FF;background:rgba(80,120,210,.2);color:#DCE8FF;box-shadow:0 0 16px rgba(120,160,255,.35),inset 0 0 12px rgba(120,160,255,.14)}
@media (hover:none){.chips li:hover{transform:none}}
.vhead{aspect-ratio:21/9;max-height:56vh}
.vhead+.series{margin-top:calc(-1 * clamp(60px,9vw,140px));padding-top:clamp(70px,8vw,110px)}
@media (max-width:700px){.vhead{aspect-ratio:16/10;max-height:none}.vhead+.series{margin-top:-30px;padding-top:70px}}
.blist .brow{min-height:var(--rowh,0px)}
@media (max-width:720px){.blist .brow{min-height:0}}

/* v21.10b: cover links on the series page */
.blist .brow>a.cv-a{display:block;grid-column:1;grid-row:2;width:100%;color:inherit;text-decoration:none;outline-offset:6px}
@media (max-width:720px){.blist .brow>a.cv-a{grid-column:1;grid-row:2;justify-self:center;width:min(220px,62vw)}}

/* ===== v21.12: centered book section, book stays still on hover (only the pages open), numerals before the titles ===== */
.blist{padding-left:0!important;max-width:860px;margin-inline:auto}
.blist .brow{grid-template-columns:minmax(0,230px) minmax(0,1fr);grid-template-rows:auto;align-items:start;column-gap:clamp(28px,5vw,60px)}
.blist .brow>a.cv-a,.blist .brow>.b3{grid-column:1;grid-row:1}
.blist .brow>.copy{grid-column:2;grid-row:1}
.blist .brow>.bnum{display:none}
.blist .brow .b3:hover .b3-inner,.blist .brow .b3:focus-visible .b3-inner{transform:none!important}
.brow h3 .tnum{display:inline-block;margin-right:.5em;font-family:"Playfair Display",Georgia,serif;font-weight:400;font-size:1.3em;letter-spacing:-.05em;line-height:1;color:#D8C2A2;text-shadow:0 2px 10px rgba(0,0,0,.9);text-transform:none;opacity:0;filter:blur(6px);transform:translateY(6px);transition:opacity 1.4s ease,filter 1.6s ease,transform 1.6s cubic-bezier(.2,.7,.2,1),color .8s ease,text-shadow .8s ease}
.blist.lit .brow h3 .tnum{opacity:1;filter:none;transform:none}
.blist .brow:nth-child(2) h3 .tnum{transition-delay:.35s,.35s,.35s,0s,0s}
.blist .brow:nth-child(3) h3 .tnum{transition-delay:.7s,.7s,.7s,0s,0s}
@media (hover:hover){.blist .brow:hover h3 .tnum{color:#E7CFA8;text-shadow:0 2px 10px rgba(0,0,0,.9),0 0 16px rgba(201,140,72,.45);animation:bnumCandle 3s ease-in-out infinite}}
@media (prefers-reduced-motion:reduce){.brow h3 .tnum{opacity:1;filter:none;transform:none;transition:none}.blist .brow:hover h3 .tnum{animation:none}}
@media (max-width:1149px) and (min-width:721px){
  .brow .b3:hover .b3-cover,.brow .b3:focus-visible .b3-cover{transform:translateZ(calc(var(--d)/2)) rotateY(-52deg)}
  .brow .b3-leaf{display:none}
}
@media (max-width:720px){
  .blist{max-width:none}
  .blist .brow{grid-template-columns:1fr;justify-items:center}
  .blist .brow>a.cv-a,.blist .brow>.b3{grid-column:1;grid-row:1;justify-self:center;width:min(220px,62vw)}
  .blist .brow>.copy{grid-column:1;grid-row:2}
}

/* v21.13: wider book rows, blurb uses the full text column (less height) */
.blist{max-width:960px}
.blist .brow{grid-template-columns:minmax(0,220px) minmax(0,1fr);column-gap:clamp(24px,4vw,48px)}
.blist .brow .blurb,.blist .brow .blurb-sp{max-width:none}
.blist .brow .tagline{max-width:none}

/* v21.13b: clear gap + hairline between numeral and title (I + A no longer reads as "IA") */
.brow h3 .tnum{margin-right:.95em;position:relative;letter-spacing:0;padding-right:.1em}
.brow h3 .tnum::after{content:"";position:absolute;right:-.55em;top:.18em;bottom:.12em;width:1px;background:rgba(216,194,162,.45)}

/* v21.16 equal visible gaps: natural row heights */
.blist .brow{min-height:0!important}

/* v21.17 video as background behind the series header */
.series>.vbg{position:absolute;left:0;right:0;top:0;height:clamp(520px,58vw,860px);z-index:0;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,#000 55%,rgba(0,0,0,.5) 80%,transparent 100%);mask-image:linear-gradient(180deg,#000 55%,rgba(0,0,0,.5) 80%,transparent 100%)}
.series>.vbg .vid{display:block;width:100%;height:100%;object-fit:cover}
.series>.vbg::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 65% at 50% 40%,rgba(6,4,4,.5) 0%,rgba(6,4,4,.25) 60%,rgba(6,4,4,.6) 100%)}
.series>.wrap{position:relative;z-index:2}
@media (max-width:700px){.series>.vbg{height:clamp(560px,150vw,760px)}}

/* v21.18 feathers beside Genre (Book I) and under the cover of Book III; head text shadow */
.blist .facts>div{position:relative}
.blist .feather.fg{position:absolute!important;left:calc(100% + 28px)!important;right:auto!important;top:-70px!important;bottom:auto!important;width:46px!important;height:auto;pointer-events:none;z-index:1}
.blist .feather.fb{position:absolute!important;left:-30px!important;right:auto!important;top:auto!important;bottom:-24px!important;width:200px!important;height:auto;pointer-events:none;z-index:1}
@media (max-width:720px){.blist .feather.fg{left:auto!important;right:0!important;top:-60px!important}}
.series .head .lbl,.series .head .tag,.series .head .lead{text-shadow:0 1px 3px rgba(0,0,0,.95),0 0 14px rgba(0,0,0,.9),0 0 30px rgba(0,0,0,.7)}
.series .head .chips li{text-shadow:0 1px 3px rgba(0,0,0,.95),0 0 10px rgba(0,0,0,.85);background:rgba(6,4,4,.55)}
.series>.vbg::after{background:radial-gradient(ellipse 75% 70% at 50% 45%,rgba(6,4,4,.62) 0%,rgba(6,4,4,.4) 55%,rgba(6,4,4,.65) 100%)}

/* v21.19 shorter video: only label, wordmark and tagline sit on it; tags, lead and button below */
.series>.vbg{height:clamp(400px,43vw,620px)}
@media (max-width:700px){.series>.vbg{height:clamp(420px,122vw,520px)}}

/* v21.20 texts from the Instagram posts */
.stage.hero .lead.tail{margin-top:2px}
.stage.hero .lead.tail span{animation-delay:1.45s}
blockquote.pq{margin:0 0 18px;padding:0 0 0 18px;border-left:2px solid rgba(217,162,95,.45);font-family:var(--f-serif,Georgia,serif);font-style:italic;font-size:clamp(17px,1.9vw,21px);line-height:1.5;color:var(--ivory,#EFE6D8)}
.ur-tease{margin:6px 0 18px}.ur-tease p{margin:0 0 10px;line-height:1.6}

/* v21.21 home: lower feather fully inside the section */
.series>.feather.f2{right:clamp(24px,5vw,90px);bottom:28px}
@media (max-width:720px){.series>.feather.f2{right:12px;bottom:16px;width:150px}}

/* v21.22 ornaments never end in a hard cut at a section edge */
.orn-edge{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 28%,#000 72%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 28%,#000 72%,transparent 100%)}
main>section.verse .orn-edge{top:max(14%,60px)!important}
.tl .umbra-o img{-webkit-mask-image:radial-gradient(closest-side,#000 55%,transparent 98%);mask-image:radial-gradient(closest-side,#000 55%,transparent 98%)}

/* v21.23 series wordmark on home: no slow ink reveal, short fade only; eyebrow label above */
.series .head .wm-fx,.series .head.lit .wm-fx{-webkit-mask:none!important;mask:none!important;transition:none!important}
.series .head .wm-fx img{filter:none!important;opacity:0;transition:opacity .6s ease!important}
.series .head.lit .wm-fx img,.series .head .wm-fx img.ok{opacity:1}
.series .head .wm-fx::after{display:none!important}
.series .head .wm-fx::before{animation:none!important;opacity:0}
.series .head.lit #tbl-title:hover .wm-fx::before{opacity:.35}

/* v21.24 Project O ornament: smaller, fully visible, no fade mask */
.tl .umbra-o img{-webkit-mask-image:none!important;mask-image:none!important;width:380px}
@media (max-width:700px){.tl .umbra-o img{width:300px}}

/* v21.25 Project O ornament back to full size; section taller instead; glows on hover */
.tl .umbra-o img{width:560px}
@media (max-width:700px){.tl .umbra-o img{width:460px}}
.verse{padding-top:calc(clamp(80px,9vw,128px) + 70px)}
@media (max-width:720px){.verse{padding-top:calc(60px + 60px)}}
@media (hover:hover){
  .verse.lit .tl li:nth-child(3):hover .umbra-o img{opacity:.6;filter:drop-shadow(0 0 14px rgba(237,227,214,.55)) drop-shadow(0 0 34px rgba(190,200,230,.35));transition:opacity .6s,filter .6s}
}
.verse{padding-top:calc(clamp(80px,9vw,128px) + 110px)}

/* v21.26 home: tighter gaps between release, series and Unreachable */
main>section.release{padding-top:clamp(56px,6vw,84px)!important;padding-bottom:clamp(48px,5vw,72px)!important}
main>section.series{padding-top:clamp(48px,5vw,72px)!important;padding-bottom:clamp(56px,6vw,84px)!important}
main>section.unreach{padding-top:clamp(64px,7vw,100px)!important}

/* v21.27 home: lower feather a bit higher */
.series>.feather.f2{bottom:clamp(110px,10vw,150px)}
@media (max-width:720px){.series>.feather.f2{bottom:70px}}
@media (min-width:721px){.series>.feather.f2{right:clamp(0px,1.6vw,30px)}}

/* v21.29 home Unreachable: more space between the part covers and the buttons */
.unreach .copy .ur-parts{margin-bottom:clamp(36px,4vw,56px)}
.unreach .copy>.row{margin-top:clamp(20px,2.4vw,34px)}
.unreach .copy .ur-parts{margin-bottom:clamp(18px,2vw,28px)}
.unreach .copy>.row{margin-top:clamp(10px,1.2vw,17px)}
#book-3 .r-cd{display:none!important}

/* v21.30 more feathers beside the three books (floating, some blurred) like on Home */
.blist .feather.ff{position:absolute!important;pointer-events:none;max-width:none;height:auto;z-index:0}
.blist .ff-a{left:-205px!important;right:auto!important;top:44%!important;bottom:auto!important;width:88px!important;rotate:-14deg;animation:float1 14s ease-in-out infinite}
.blist .ff-b{right:-200px!important;left:auto!important;top:-30px!important;bottom:auto!important;width:64px!important;rotate:38deg;opacity:.5;filter:blur(2px);animation:float3 20s ease-in-out infinite}
.blist .ff-c{left:-230px!important;right:auto!important;top:52%!important;bottom:auto!important;width:140px!important;rotate:12deg;opacity:.42;filter:blur(3px);animation:float2 17s ease-in-out infinite}
.blist .ff-d{right:-190px!important;left:auto!important;top:48%!important;bottom:auto!important;width:84px!important;rotate:24deg;animation:float1 16s ease-in-out infinite}
.blist .ff-e{right:-215px!important;left:auto!important;top:6%!important;bottom:auto!important;width:104px!important;rotate:-28deg;opacity:.5;filter:blur(2px);animation:float3 19s ease-in-out infinite}
.blist .ff-f{left:-175px!important;right:auto!important;top:-40px!important;bottom:auto!important;width:56px!important;rotate:52deg;animation:float1 15s ease-in-out infinite}
@media (max-width:1100px){.blist .feather.ff{display:none}}
@media (prefers-reduced-motion:reduce){.blist .feather.ff{animation:none}}

/* v21.31 six feathers in total on the series page, varied size and direction, in the side margins only */
.blist .ff-b,.blist .ff-f{display:none!important}
.blist .ff-a{top:40%!important;width:92px!important;rotate:-14deg}
.blist .ff-c{top:80%!important;width:130px!important;rotate:70deg;opacity:.42;filter:blur(3px)}
.blist .ff-d{top:36%!important;width:120px!important;rotate:-35deg}
.blist .ff-e{top:16%!important;width:70px!important;rotate:62deg;opacity:.55;filter:blur(2px)}
.blist .feather.fg{left:calc(100% + 70px)!important;top:-8px!important;width:60px!important;rotate:28deg}

/* v21.32 content warnings as plain text block */
.cwtext{max-width:42em;margin:56px auto 0;padding-top:34px;text-align:center;position:relative}
.cwtext::before{content:"";position:absolute;left:50%;top:0;width:64px;height:1px;translate:-50% 0;background:linear-gradient(90deg,transparent,rgba(217,162,95,.7),transparent)}
.cwtext .lbl{margin:0 0 14px;font-weight:400}
.cwtext p{margin:0 0 12px;font-size:clamp(16px,1.5vw,19px);line-height:1.7;color:var(--ash);text-shadow:0 1px 8px rgba(0,0,0,.8)}
.ur .cwtext::before{background:linear-gradient(90deg,transparent,rgba(152,175,226,.7),transparent)}
.ur .cwtext .lbl{color:var(--ink-hi)}

/* v21.33 content warnings: title stands out like other section titles */
.cwtext .lbl{margin:0 0 20px;font-family:var(--f-title,"Cinzel",Georgia,serif);font-size:clamp(22px,2.6vw,30px);letter-spacing:.14em;color:var(--ivory,#EFE6D8);text-shadow:0 2px 14px rgba(0,0,0,.9)}
.ur .cwtext .lbl{color:var(--ink-hi,#C9D6F2)}
.cwtext .lbl{font-family:var(--f-display);font-weight:400;text-transform:uppercase;letter-spacing:.12em;line-height:1.25}

/* v21.34 fan wiki section: panel with three cards */
.band.wiki{padding-bottom:clamp(56px,7vw,100px)}
.wiki-panel{position:relative;max-width:980px;margin:0 auto;padding:clamp(40px,5vw,64px) clamp(22px,4vw,56px);text-align:center;border:1px solid rgba(217,162,95,.28);background:linear-gradient(180deg,rgba(18,11,8,.72),rgba(8,5,4,.78));box-shadow:0 30px 80px rgba(0,0,0,.55),inset 0 0 0 6px rgba(8,5,4,.9),inset 0 0 0 7px rgba(217,162,95,.16);overflow:hidden;isolation:isolate}
.wiki-panel::before,.wiki-panel::after{content:"";position:absolute;left:50%;width:84px;height:1px;translate:-50% 0;background:linear-gradient(90deg,transparent,rgba(217,162,95,.8),transparent)}
.wiki-panel::before{top:14px}.wiki-panel::after{bottom:14px}
.wiki-ring{position:absolute;left:50%;top:50%;width:min(760px,120%);max-width:none;height:auto;translate:-50% -50%;opacity:.07;z-index:-1;pointer-events:none;animation:turn 160s linear infinite}
.wiki-panel .prose{max-width:36em;margin:18px auto 0}
.wiki-cards{list-style:none;margin:34px 0 36px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;text-align:left}
.wiki-cards li{position:relative;padding:22px 20px 24px;border:1px solid rgba(217,162,95,.2);background:rgba(6,4,4,.55);transition:border-color .4s,box-shadow .4s,transform .4s,background .4s}
.wiki-cards li:hover{border-color:rgba(217,162,95,.7);background:rgba(20,12,8,.7);box-shadow:0 0 28px rgba(201,140,72,.22);transform:translateY(-3px)}
.wiki-cards svg{width:38px;height:38px;fill:none;stroke:#D9A25F;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;margin-bottom:14px;filter:drop-shadow(0 0 8px rgba(217,162,95,.35))}
.wiki-cards b{display:block;font-family:var(--f-display);font-weight:400;font-size:15px;letter-spacing:.16em;text-transform:uppercase;color:var(--ivory,#EFE6D8);margin-bottom:8px}
.wiki-cards span{display:block;font-size:15.5px;line-height:1.55;color:var(--ash)}
.wiki-note{margin:18px 0 0;font-family:var(--f-label);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-mute,#9a8d7d)}
@media (max-width:820px){.wiki-cards{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.wiki-ring{animation:none}}

/* v21.35 wiki card icons as artwork */
.wiki-cards li>img{display:block;height:64px;width:auto;max-width:90px;object-fit:contain;margin:0 0 14px;filter:drop-shadow(0 0 10px rgba(217,162,95,.3));transition:transform .5s,filter .5s}
.wiki-cards li:hover>img{transform:translateY(-3px) scale(1.06);filter:drop-shadow(0 0 16px rgba(217,162,95,.55))}

/* v21.37 wiki cards: no icons, typographic numerals */
.wiki-cards{counter-reset:wk}
.wiki-cards li{counter-increment:wk;padding-top:26px;overflow:hidden}
.wiki-cards li::before{content:counter(wk,upper-roman);display:block;font-family:var(--f-display);font-size:34px;line-height:1;color:rgba(217,162,95,.85);margin-bottom:12px;text-shadow:0 0 14px rgba(217,162,95,.25);transition:text-shadow .4s,color .4s}
.wiki-cards li::after{content:"";position:absolute;left:20px;right:20px;top:0;height:1px;background:linear-gradient(90deg,rgba(217,162,95,.8),transparent)}
.wiki-cards li:hover::before{color:#F0C890;text-shadow:0 0 20px rgba(217,162,95,.55)}
.wiki-cards li b{padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid rgba(217,162,95,.16)}

/* v21.39 series page: three feathers only (left Book I, right Book II, bottom-left Book III) */
.blist .ff-b,.blist .ff-c,.blist .ff-e,.blist .ff-f,.blist .feather.fg{display:none!important}
.blist .ff-a{top:46%!important;width:92px!important;rotate:-14deg}
.blist .ff-d{top:34%!important;width:118px!important;rotate:-35deg}
.blist .feather.fb{left:-215px!important;bottom:-10px!important;width:150px!important;rotate:-12deg}
@media (max-width:1100px){.blist .feather.fb{display:none!important}}
/* v21.40 wiki cards: no numerals */
.wiki-cards li::before{content:none!important;display:none!important}
.wiki-cards li{padding-top:24px}
.wiki-cards li b{font-size:16px;color:#F0C890}
/* v21.41 three feathers, clearly different orientations */
.blist .ff-a{rotate:-22deg}
.blist .ff-d{rotate:58deg}
.blist .feather.fb{rotate:158deg}
.blist .ff-d{rotate:112deg}

/* v21.42 art section as sideways panorama (series page) */
.pano{position:relative;margin-top:34px}
.pano-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:none;scrollbar-width:none;padding:16px max(24px,calc((100vw - 1100px)/2)) 26px;cursor:grab;-webkit-overflow-scrolling:touch;outline:none}
.pano-track::-webkit-scrollbar{display:none}
.pano-track.drag{cursor:grabbing;scroll-snap-type:none}
.pano-track figure{position:relative;flex:0 0 auto;margin:0 ;height:clamp(200px,27vw,340px);aspect-ratio:var(--w)/var(--h);scroll-snap-align:center;overflow:hidden;border:1px solid rgba(217,162,95,.75);box-shadow:0 0 0 5px #0a0605,0 0 0 6px rgba(217,162,95,.35),0 18px 50px rgba(0,0,0,.6);background:#0a0605}
.pano-track figure:first-child{margin-left:auto}.pano-track figure:last-child{margin-right:auto}
.pano-track figure::before{content:"";position:absolute;inset:8px;z-index:2;pointer-events:none;border:1px solid rgba(217,162,95,.28);background:linear-gradient(#D9A25F,#D9A25F) left top/22px 2px no-repeat,linear-gradient(#D9A25F,#D9A25F) left top/2px 22px no-repeat,linear-gradient(#D9A25F,#D9A25F) right top/22px 2px no-repeat,linear-gradient(#D9A25F,#D9A25F) right top/2px 22px no-repeat,linear-gradient(#D9A25F,#D9A25F) left bottom/22px 2px no-repeat,linear-gradient(#D9A25F,#D9A25F) left bottom/2px 22px no-repeat,linear-gradient(#D9A25F,#D9A25F) right bottom/22px 2px no-repeat,linear-gradient(#D9A25F,#D9A25F) right bottom/2px 22px no-repeat}
.pano-track figure img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .6s;filter:saturate(.92)}
.pano-track figure:hover img{transform:scale(1.04);filter:saturate(1.05)}
.pano-track figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(6,4,4,.88));pointer-events:none}
.pano-track figcaption{position:absolute;left:18px;right:18px;bottom:14px;z-index:1;font-size:13px;letter-spacing:.06em;color:var(--ash);text-shadow:0 1px 8px #000}
.pano-track figcaption b{display:block;font-family:var(--f-display);font-weight:400;font-size:15px;letter-spacing:.16em;text-transform:uppercase;color:var(--ivory,#EFE6D8);margin-bottom:4px}
.pano-track figcaption a{color:#D9A25F}
.pano::before,.pano::after{content:"";position:absolute;top:0;bottom:22px;width:clamp(30px,8vw,120px);z-index:2;pointer-events:none;transition:opacity .4s}
.pano::before{left:0;background:linear-gradient(90deg,#060404,transparent)}
.pano::after{right:0;background:linear-gradient(270deg,#060404,transparent)}
.pano.at-start::before,.pano.at-end::after{opacity:0}
.pano-btn{position:absolute;top:calc(50% - 30px);z-index:3;width:52px;height:52px;border-radius:50%;border:1px solid rgba(217,162,95,.55);background:rgba(8,5,4,.72);color:#D9A25F;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(6px);transition:background .3s,transform .3s,opacity .3s,box-shadow .3s}
.pano-btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.pano-btn:hover:not(:disabled){background:rgba(40,24,14,.9);box-shadow:0 0 22px rgba(217,162,95,.35);transform:scale(1.07)}
.pano-btn:disabled{opacity:0;pointer-events:none}
.pano-btn.prev{left:clamp(10px,3vw,48px)}.pano-btn.next{right:clamp(10px,3vw,48px)}
@media (max-width:720px){.pano-btn{width:42px;height:42px;top:calc(50% - 21px)}.pano-track{padding-left:16px;padding-right:16px}}
@media (prefers-reduced-motion:reduce){.pano-track figure img{transition:none}}

/* v21.43 art lightbox in a Blairville frame */
.lb-zoom{cursor:zoom-in}
.lb-zoom:focus-visible{outline:2px solid #D9A25F;outline-offset:3px}
html.lb-lock{overflow:hidden}
.lb{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .4s}
.lb.on{opacity:1;pointer-events:auto}
.lb-bd{position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(20,12,8,.9),rgba(3,2,2,.97));backdrop-filter:blur(8px)}
.lb-fr{position:relative;margin:0;padding:clamp(14px,2.2vw,26px);background:linear-gradient(160deg,#1a110c,#0b0705);border:1px solid rgba(217,162,95,.75);box-shadow:0 0 0 6px #0a0605,0 0 0 7px rgba(217,162,95,.35),0 30px 90px rgba(0,0,0,.8),0 0 60px rgba(201,140,72,.14);max-width:min(92vw,1500px);transform:scale(.96) translateY(10px);transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.lb.on .lb-fr{transform:none}
.lb-in{border:1px solid rgba(217,162,95,.28);background:#050303;line-height:0}
.lb-in img{display:block;max-width:100%;max-height:calc(100vh - 190px);width:auto;height:auto;margin:0 auto;object-fit:contain}
.lb-fr figcaption{padding:16px 6px 2px;text-align:center;font-size:14px;letter-spacing:.08em;color:var(--ash,#b9ab9a)}
.lb-fr figcaption b{display:block;font-family:var(--f-display);font-weight:400;font-size:16px;letter-spacing:.2em;text-transform:uppercase;color:var(--ivory,#EFE6D8);margin-bottom:5px}
.lb-fr figcaption a{color:#D9A25F}
.lb-c{position:absolute;width:26px;height:26px;border:2px solid #D9A25F;pointer-events:none;filter:drop-shadow(0 0 6px rgba(217,162,95,.4))}
.lb-c1{left:5px;top:5px;border-right:0;border-bottom:0}.lb-c2{right:5px;top:5px;border-left:0;border-bottom:0}
.lb-c3{left:5px;bottom:5px;border-right:0;border-top:0}.lb-c4{right:5px;bottom:5px;border-left:0;border-top:0}
.lb-x{position:absolute;top:clamp(12px,2.4vw,30px);right:clamp(12px,2.4vw,34px);z-index:2;width:46px;height:46px;border-radius:50%;border:1px solid rgba(217,162,95,.55);background:rgba(8,5,4,.7);color:#D9A25F;font-size:28px;line-height:1;cursor:pointer;transition:background .3s,box-shadow .3s}
.lb-n{position:absolute;top:50%;translate:0 -50%;z-index:2;width:48px;height:48px;border-radius:50%;border:1px solid rgba(217,162,95,.55);background:rgba(8,5,4,.7);color:#D9A25F;display:grid;place-items:center;cursor:pointer;transition:background .3s,box-shadow .3s}
.lb-n svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.lb-p{left:clamp(8px,2vw,30px)}.lb-nx{right:clamp(8px,2vw,30px)}
.lb-x:hover,.lb-n:hover{background:rgba(40,24,14,.92);box-shadow:0 0 22px rgba(217,162,95,.35)}
@media (max-width:720px){.lb-n{width:40px;height:40px;top:auto;bottom:18px;translate:none}.lb-in img{max-height:calc(100vh - 230px)}}
@media (prefers-reduced-motion:reduce){.lb,.lb-fr{transition:none}}

/* feather right of Book II: further from the text */
.blist .ff-d{right:-215px!important;width:100px!important;rotate:30deg}
/* more air between the series intro and Book I */
.blist{margin-top:clamp(80px,10vw,128px)!important}
/* panorama: title and artist only in the enlarged view */
.pano-track figure figcaption{display:none}
.pano-track figure::after{display:none}
/* lightbox: frame never touches the close or arrow buttons */
.lb-fr{max-width:min(calc(100vw - 168px),1500px)}
.lb-in img{max-height:calc(100vh - 270px)}
@media (max-width:720px){.lb-fr{max-width:calc(100vw - 32px)}.lb-in img{max-height:calc(100vh - 300px)}}
/* fan wiki: five categories */
.wiki-cards{grid-template-columns:repeat(6,1fr)}
.wiki-cards li{grid-column:span 2}
.wiki-cards li:nth-child(4){grid-column:2/4}
.wiki-cards li:nth-child(5){grid-column:4/6}
@media (max-width:820px){.wiki-cards{grid-template-columns:1fr}.wiki-cards li,.wiki-cards li:nth-child(4),.wiki-cards li:nth-child(5){grid-column:auto}}
.wiki-panel p.wiki-note{margin:0 auto 34px;max-width:34em;font-family:'EB Garamond',Georgia,serif;font-size:18px;line-height:1.6;letter-spacing:0;text-transform:none;color:var(--ash)}

/* footer v4: smaller paper crane on all pages; blue tint on the Unreachable page */
@media (max-width:720px){
  body.ur footer.site.ft-crane{background:#04070c url(https://static.wixstatic.com/media/5e8914_91326bc84dfa4529aaea0eec3175ca5e~mv2.webp) center top/cover no-repeat!important}
}

/* Unreachable blurb: Quillon and Davian side by side, summary below */
.ur-blurb .ur-povs{display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(22px,3vw,44px);margin-bottom:1em}
.ur-blurb .ur-pov p:last-child{margin-bottom:0}
@media (max-width:620px){.ur-blurb .ur-povs{grid-template-columns:1fr}.ur-blurb .ur-pov+.ur-pov{margin-top:1em}}

/* Unreachable page: soft top edge on the "Three parts" band (no hard line below the hero section) */
body.ur main>section.band.ground{-webkit-mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.3) 30px,#000 clamp(70px,8vw,120px));mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.3) 30px,#000 clamp(70px,8vw,120px))}
/* Unreachable page: hero section fades out into the page's own navy, not into brown-black */
body.ur .unreach .ur-fadeout{background:linear-gradient(180deg,rgba(14,20,36,0),#0E1424)}
body.ur main>section.unreach>.shade{background:linear-gradient(180deg,rgba(0,0,0,.7) 0%,rgba(0,0,0,0) 20%,rgba(0,0,0,0) 78%,rgba(14,20,36,.5) 100%),radial-gradient(ellipse 85% 75% at 50% 50%,rgba(0,0,0,.12) 0%,rgba(0,0,0,.3) 60%,rgba(0,0,0,.5) 100%)}

/* ===== Vanderwood University: one calm Blairville backdrop, soft edges ===== */
.vw{--ft:clamp(60px,7vw,110px);--fb:clamp(60px,7vw,110px);padding-block:clamp(56px,7vw,96px)!important;
 -webkit-mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.25) calc(var(--ft)*.3),rgba(0,0,0,.7) calc(var(--ft)*.65),#000 var(--ft),#000 calc(100% - var(--fb)),rgba(0,0,0,.7) calc(100% - var(--fb)*.65),rgba(0,0,0,.25) calc(100% - var(--fb)*.3),transparent 100%);
 mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.25) calc(var(--ft)*.3),rgba(0,0,0,.7) calc(var(--ft)*.65),#000 var(--ft),#000 calc(100% - var(--fb)),rgba(0,0,0,.7) calc(100% - var(--fb)*.65),rgba(0,0,0,.25) calc(100% - var(--fb)*.3),transparent 100%)}
.vw>.bg{object-position:50% 30%;opacity:.68;filter:saturate(.7) brightness(.85)}
.vw::before{background:linear-gradient(180deg,rgba(6,4,4,.8) 0%,rgba(6,4,4,.35) 28%,rgba(6,4,4,.35) 70%,rgba(6,4,4,.85) 100%),radial-gradient(ellipse 70% 80% at 50% 50%,rgba(6,4,4,.55),rgba(6,4,4,.2) 100%)}
.vw .crest{max-width:900px}
.vw .copy .ttl{text-shadow:0 2px 18px rgba(0,0,0,.9)}
.vw .copy p{text-shadow:0 1px 10px rgba(0,0,0,.85)}
.vw-credit{margin:34px 0 0;text-align:right;font-size:11px;letter-spacing:.12em;color:var(--mute,#8c7f77);opacity:.8}
.vw-credit a{color:inherit}
#vanderwood{margin-top:0}
/* series page: content warnings sit closer to the book list */
#cw-band{margin-top:0;position:relative;z-index:2;padding-bottom:clamp(56px,7vw,88px)!important}
#cw-band .cwtext{margin-top:0}
/* Vanderwood: misty forest; fan wiki: the Blairville landscape */
#vanderwood>.bg{object-position:50% 50%;opacity:.7;filter:sepia(.55) saturate(.8) brightness(.9)}
.vw.wiki{padding-block:clamp(70px,8vw,120px)!important}
/* fan wiki note: one line on desktop, two on phones */
.wiki-panel p.wiki-note{max-width:none;text-wrap:balance}
@media (min-width:1000px){.wiki-panel p.wiki-note{white-space:nowrap}}
@media (max-width:999px){.wiki-panel p.wiki-note{max-width:26em;font-size:16px;line-height:1.5}}
/* Unreachable page: wider text column, narrower book column */
.unreach.ur-page .wrap.grid{max-width:1400px;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(28px,4vw,52px)}
.unreach.ur-page .ur-stage{max-width:300px}
.unreach.ur-page .blurb,.unreach.ur-page .ur-tease,.unreach.ur-page .chips{max-width:none}
.unreach.ur-page .ur-tease{max-width:46em}
@media (max-width:960px) and (min-width:721px){.unreach.ur-page .wrap.grid{grid-template-columns:minmax(0,220px) minmax(0,1fr)}.unreach.ur-page .ur-stage{max-width:220px}}
@media (max-width:720px){.unreach.ur-page .wrap.grid{grid-template-columns:1fr}.unreach.ur-page .ur-stage{max-width:220px}}

/* v21.27 (owner): Project O in the timeline stays readable (dark pocket behind name and era); Umbra hover glow much softer */
.tl li:nth-child(3){position:relative;isolation:isolate}
.tl li:nth-child(3)::before{content:"";position:absolute;inset:-26px -70px;z-index:-1;pointer-events:none;border-radius:50%;background:radial-gradient(ellipse closest-side,rgba(6,4,4,.82) 0,rgba(6,4,4,.6) 55%,rgba(6,4,4,0) 100%)}
.tl li:nth-child(3) .name a:hover{color:#A9C2F5}
.verse.lit .tl .umbra-o img{opacity:.16}
@media (hover:hover){
  .verse.lit .tl li:nth-child(3):hover .umbra-o img{opacity:.24;filter:drop-shadow(0 0 6px rgba(152,175,226,.2));transition:opacity .6s,filter .6s}
}

/* v21.28 (owner): the three timeline circles link to their pages */
.tl .node{position:relative}
.tl .node-a{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border-radius:50%;color:inherit;text-decoration:none;font:inherit;z-index:1}
.tl .node-a:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.tl .node-a:hover{background:rgba(237,227,214,.08)}

/* v21.29 (owner): Unreachable page fully in its ink-blue scheme: scroll line, header, menus, footer (no gold or rose left) */
body.ur{--candle:#98AFE2;--rose:#98AFE2;--ash:#7F8CA8;--line:rgba(152,175,226,.2);scrollbar-color:#2B3A5C #0E1424}
body.ur ::selection{background:#2B3A5C;color:#DCE3F0}
body.ur .read-progress{background:linear-gradient(90deg,rgba(152,175,226,0),#98AFE2 70%,#DCE3F0);box-shadow:0 0 10px rgba(152,175,226,.65)}
body.ur header.site{background:rgba(8,11,20,.94);border-bottom:1px solid rgba(152,175,226,.18)}
body.ur nav.main a{font-family:var(--f-ink);font-size:17px;letter-spacing:.2em;color:#DCE3F0}
body.ur nav.main a:hover,body.ur nav.main a[aria-current]{color:#98AFE2}
body.ur nav.main>ul>li>a::after{background:#98AFE2;box-shadow:0 0 8px rgba(152,175,226,.75)}
body.ur nav.main .sub{background:#0B1020;border:1px solid rgba(152,175,226,.22);box-shadow:0 18px 40px rgba(0,0,0,.6)}
body.ur nav.main .sub a{font-size:15px;border-bottom-color:rgba(152,175,226,.16)}
body.ur nav.main .sub a:hover{color:#98AFE2}
body.ur .hsocial a{color:#DCE3F0}
body.ur .hsocial a:hover{color:#98AFE2}
body.ur details.menu summary svg{stroke:#DCE3F0}
body.ur details.menu ul{background:#0B1020;border-bottom:1px solid rgba(152,175,226,.2)}
body.ur details.menu a,body.ur details.menu .grp span{font-family:var(--f-ink);font-size:19px;letter-spacing:.18em;text-transform:uppercase;color:#DCE3F0}
body.ur details.menu .grp span{color:#7F8CA8}
body.ur details.menu a:hover,body.ur details.menu a[aria-current]{color:#98AFE2}
body.ur footer.site .ft-h,body.ur footer.site .ft-nl>.ft-h{font-family:var(--f-ink);font-style:normal;font-size:20px;letter-spacing:.22em;text-transform:uppercase;color:#98AFE2}
body.ur footer.site .ft-nl>.ft-h{font-size:clamp(26px,2.4vw,34px)}
body.ur footer.site p,body.ur footer.site .ft-nl-note{color:#C3CDE0}
body.ur footer.site .ft-col a,body.ur footer.site .ft-legal a{color:#DCE3F0;text-decoration-color:rgba(152,175,226,.4)}
body.ur footer.site .ft-legal a{color:#9AA6BF}
body.ur footer.site .ft-col a::before{background:#98AFE2;box-shadow:0 0 6px rgba(152,175,226,.9)}
body.ur footer.site .ft-col a:hover,body.ur footer.site .ft-legal a:hover{color:#C9D7F5;text-decoration-color:#98AFE2}
body.ur footer.site .ft-social a{color:#DCE3F0}
body.ur footer.site .ft-social a::before{border-color:#98AFE2;box-shadow:0 0 12px rgba(152,175,226,.4)}
body.ur footer.site .ft-social a:hover{color:#C9D7F5}
body.ur .ft-rule{background:linear-gradient(90deg,rgba(152,175,226,0),rgba(152,175,226,.35),rgba(152,175,226,0))}
body.ur .ft-nl form{background:#DCE3F0}
body.ur .ft-nl input{color:#0E1424}
body.ur .ft-nl input::placeholder,body.ur footer.site .ft-nl input:focus::placeholder{color:#5A6784}
body.ur footer.site .ft-nl button{background:#1A1F35;color:#DCE3F0;font-family:var(--f-ink);font-size:18px;letter-spacing:.2em}
body.ur footer.site .ft-nl button:hover,body.ur footer.site .ft-nl button:focus-visible{background:#3A56A8;color:#F2F5FC}
body.ur .ft-nl input:autofill{box-shadow:0 0 0 1000px #DCE3F0 inset!important;-webkit-text-fill-color:#0E1424!important}
body.ur .ft-nl input:-webkit-autofill{box-shadow:0 0 0 1000px #DCE3F0 inset!important;-webkit-text-fill-color:#0E1424!important}
body.ur footer.site .ft-nl{border-left-color:rgba(152,175,226,.3)}
body.ur footer.site .ft-mark img{filter:grayscale(1) brightness(1.3) sepia(.25) hue-rotate(180deg) saturate(1.4) drop-shadow(0 4px 6px rgba(0,0,0,.6))}
body.ur footer.site .ft-mark .ft-tip{background:#0B1020;border-color:rgba(152,175,226,.45)}
body.ur footer.site .ft-mark .ft-tip::after{border-top-color:rgba(152,175,226,.45)}
body.ur footer.site .ft-mark .ft-tip span,body.ur footer.site .ft-mark .ft-tip a{color:#98AFE2}
body.ur footer.site .ft-mark .ft-tip a:hover{color:#DCE3F0}
body.ur .cwtext h2.lbl{font-family:var(--f-ink);letter-spacing:.2em;color:#98AFE2}

/* newsletter note in footers: always exactly two lines (one sentence per line) */
footer.site .ft-nl .ft-nl-note .nl-l{display:block;white-space:nowrap}
@media (max-width:560px){footer.site .ft-nl .ft-nl-note .nl-l{white-space:normal;text-wrap:balance}}

/* ===== Unreachable page: series-page features in ink blue (CW band, Maplecrest, panorama, follow panel) ===== */
body.ur .vw::before{background:linear-gradient(180deg,rgba(14,20,36,.85) 0%,rgba(14,20,36,.35) 28%,rgba(14,20,36,.35) 70%,rgba(14,20,36,.9) 100%),radial-gradient(ellipse 70% 80% at 50% 50%,rgba(8,12,24,.55),rgba(8,12,24,.2) 100%)}
body.ur .vw>.bg{opacity:.6;filter:saturate(.8) brightness(.8)}
body.ur .ur-set .crest>img{max-width:120px;opacity:.85;filter:none}
body.ur .crest>img:hover{filter:drop-shadow(0 0 18px rgba(152,175,226,.6));transform:scale(1.03)}
body.ur .pano-track figure{border-color:rgba(152,175,226,.7);box-shadow:0 0 0 5px #0B1020,0 0 0 6px rgba(152,175,226,.32),0 18px 40px rgba(0,0,0,.6)}
body.ur .pano-track figure::before{border-color:rgba(152,175,226,.28);background:linear-gradient(#98AFE2,#98AFE2) left top/22px 2px no-repeat,linear-gradient(#98AFE2,#98AFE2) left top/2px 22px no-repeat,linear-gradient(#98AFE2,#98AFE2) right top/22px 2px no-repeat,linear-gradient(#98AFE2,#98AFE2) right top/2px 22px no-repeat,linear-gradient(#98AFE2,#98AFE2) left bottom/22px 2px no-repeat,linear-gradient(#98AFE2,#98AFE2) left bottom/2px 22px no-repeat,linear-gradient(#98AFE2,#98AFE2) right bottom/22px 2px no-repeat,linear-gradient(#98AFE2,#98AFE2) right bottom/2px 22px no-repeat}
body.ur .pano-track figcaption a{color:#98AFE2}
body.ur .pano::before{background:linear-gradient(90deg,#0E1424,transparent)}
body.ur .pano::after{background:linear-gradient(270deg,#0E1424,transparent)}
body.ur .pano-btn{border-color:rgba(152,175,226,.55);background:rgba(10,14,28,.75);color:#98AFE2}
body.ur .pano-btn:hover:not(:disabled){background:rgba(26,31,53,.92);box-shadow:0 0 22px rgba(152,175,226,.35)}
body.ur .wiki-panel{border-color:rgba(152,175,226,.28);background:linear-gradient(180deg,rgba(16,22,40,.78),rgba(8,12,24,.84))}
body.ur .wiki-panel::before,body.ur .wiki-panel::after{background:linear-gradient(90deg,transparent,rgba(152,175,226,.8),transparent)}
body.ur .wiki-cards li{border-color:rgba(152,175,226,.2);background:rgba(8,12,24,.6);padding:0}
body.ur .wiki-cards li::after{background:linear-gradient(90deg,rgba(152,175,226,.8),transparent)}
body.ur .wiki-cards li:hover{border-color:rgba(152,175,226,.7);background:rgba(20,28,50,.75);box-shadow:0 0 28px rgba(152,175,226,.22)}
body.ur .wiki-cards li b{color:#C9D6F2;border-bottom-color:rgba(152,175,226,.16)}
body.ur .wiki-cards li>a{display:block;padding:24px 20px 24px;color:inherit;text-decoration:none}
body.ur .wiki-cards li>a:focus-visible{outline:1px solid #98AFE2;outline-offset:-4px}
body.ur .ur-follow .wiki-panel .prose{color:#C3CDE0}
body.ur .wiki-panel{box-shadow:0 30px 80px rgba(0,0,0,.55),inset 0 0 0 6px rgba(8,12,24,.9),inset 0 0 0 7px rgba(152,175,226,.16)}

/* Unreachable page darker overall (owner, 12.10.2026) */
body.ur{background:#080C17}
body.ur main section>.bg{filter:brightness(.72) saturate(.9)}
body.ur .vw>.bg{opacity:.55;filter:saturate(.8) brightness(.62)}
body.ur main>section.unreach>.bg{filter:brightness(.6) saturate(.85)}
body.ur .vhead>.bg{filter:brightness(.62)}
body.ur footer.site>.bg{filter:brightness(.7)}
body.ur .pano::before{background:linear-gradient(90deg,#080C17,transparent)}
body.ur .pano::after{background:linear-gradient(270deg,#080C17,transparent)}
.gw{transition:color .25s ease,text-shadow .25s ease}
/* Unreachable page: hero background stays fixed while scrolling (like the series page) and no longer rescales when the blurb opens */
.unreach.ur-page{clip-path:inset(0)}
.unreach.ur-page>.bg{position:fixed;inset:0;width:100vw;height:100vh;object-position:50% 40%}
.unreach.ur-page>.shade,.unreach.ur-page>.ur-ink{position:fixed;inset:0;width:100vw;height:100vh}
/* Unreachable page: title, quote and tags sit on the (future) video header, like the series page */
body.ur .vhead{aspect-ratio:auto;min-height:clamp(440px,52vw,720px);display:flex;align-items:center;justify-content:center;padding:clamp(80px,9vw,120px) var(--gut,20px) clamp(60px,7vw,96px)}
body.ur .vhead .ur-vt.unreach{position:relative;z-index:1;padding:0;background:none;overflow:visible;isolation:auto;display:flex;flex-direction:column;align-items:center;gap:clamp(14px,1.8vw,22px);text-align:center;max-width:980px;margin-inline:auto;-webkit-mask-image:none;mask-image:none}
body.ur .vhead .ur-vt.unreach::before{display:none}
body.ur .vhead .ur-vt .wm{max-width:min(560px,82vw)}
body.ur .vhead .ur-vt .ur-line{text-shadow:0 2px 16px rgba(0,0,0,.9)}
body.ur .vhead .ur-vt .chips{justify-content:center;max-width:52em}
body.ur .vhead .ur-vt .chips li{background:rgba(8,12,24,.72)}
@media (max-width:720px){body.ur .vhead{padding-bottom:110px}}
/* Unreachable page: invisible seams between sections (soft, dark fades into the page navy, like the series page) */
body.ur{--ur-seam:clamp(110px,13vw,200px)}
body.ur main>section.unreach.ur-page{--ft:clamp(60px,7vw,110px);--fb:var(--ur-seam);background:transparent}
body.ur main>section.unreach.ur-page .ur-fadeout{background:linear-gradient(180deg,rgba(8,12,23,0),#080C17)}
body.ur main>section.unreach.ur-page>.shade{background:linear-gradient(180deg,rgba(0,0,0,.7) 0%,rgba(0,0,0,0) 20%,rgba(0,0,0,0) 70%,rgba(8,12,23,.6) 100%),radial-gradient(ellipse 85% 75% at 50% 50%,rgba(0,0,0,.12) 0%,rgba(0,0,0,.3) 60%,rgba(0,0,0,.5) 100%)}
body.ur main>section.band.ground:not(.vw){--ft:var(--ur-seam);--fb:var(--ur-seam);-webkit-mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.2) calc(var(--ft)*.3),rgba(0,0,0,.6) calc(var(--ft)*.65),#000 var(--ft),#000 calc(100% - var(--fb)),rgba(0,0,0,.6) calc(100% - var(--fb)*.65),rgba(0,0,0,.2) calc(100% - var(--fb)*.3),transparent 100%);mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.2) calc(var(--ft)*.3),rgba(0,0,0,.6) calc(var(--ft)*.65),#000 var(--ft),#000 calc(100% - var(--fb)),rgba(0,0,0,.6) calc(100% - var(--fb)*.65),rgba(0,0,0,.2) calc(100% - var(--fb)*.3),transparent 100%)}
body.ur .vw{--ft:var(--ur-seam);--fb:var(--ur-seam)}
body.ur .vw::before{background:linear-gradient(180deg,#080C17 0%,rgba(8,12,23,.45) 30%,rgba(8,12,23,.45) 70%,#080C17 100%),radial-gradient(ellipse 70% 80% at 50% 50%,rgba(8,12,23,.55),rgba(8,12,23,.2) 100%)}
body.ur #parts-band{margin-top:calc(var(--ur-seam)*-.45)}
body.ur #cw-band{margin-top:calc(var(--ur-seam)*-.3)}
body.ur #maplecrest{margin-top:calc(var(--ur-seam)*-.3)}
body.ur #parts-band,body.ur #maplecrest{margin-bottom:calc(var(--ur-seam)*-.3)}
/* Unreachable page: header height fits its content (title, line, tags); small gap to the book below; background fades at the bottom */
body.ur .vhead{min-height:0;max-height:none;padding:clamp(56px,6vw,84px) var(--gut,20px) clamp(8px,1.5vw,20px);-webkit-mask-image:none;mask-image:none;overflow:visible}
body.ur .vhead>.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%;-webkit-mask-image:linear-gradient(180deg,#000 55%,transparent 100%);mask-image:linear-gradient(180deg,#000 55%,transparent 100%)}
body.ur .vhead::after{background:linear-gradient(180deg,rgba(6,4,4,.55) 0%,rgba(6,4,4,0) 16%)}
body.ur .vhead+section.unreach{margin-top:0}
@media (max-width:720px){body.ur .vhead{padding-bottom:12px}}
body.ur .vhead{background:transparent}
body.ur main>section.unreach.ur-page{--ft:clamp(30px,3.5vw,50px);margin-top:calc(-1*clamp(24px,3vw,44px));padding-top:clamp(36px,4vw,60px)}
/* Unreachable: teaser lines sit in the Maplecrest section, set off from the setting lines */
body.ur .vw .ur-tease-set{margin:clamp(14px,1.6vw,22px) 0 0;padding-top:clamp(14px,1.6vw,22px);border-top:1px solid rgba(152,175,226,.22)}
body.ur .vw .ur-tease-set p:last-child{margin-bottom:0}
body.ur .vw .ur-tease-set p{margin:0 0 .7em}
body.ur #maplecrest{margin-bottom:calc(var(--ur-seam)*-.05);padding-bottom:clamp(90px,10vw,140px)!important}
body.ur #maplecrest+section{position:relative;z-index:2}
.ur-blurb>p.tag{margin:0 0 1em}
.ur-blurb>p.tag{font-size:inherit;font-style:normal;line-height:inherit;letter-spacing:inherit}
/* ===== Unreachable: "Three parts" as three large part covers with motion ===== */
.ur-tp{list-style:none;margin:clamp(30px,4vw,56px) auto 0;padding:0;display:flex;justify-content:center;align-items:flex-end;gap:clamp(22px,4.5vw,72px);perspective:1400px}
.ur-tp .tp{display:flex;flex-direction:column;align-items:center;text-align:center;width:clamp(170px,21vw,290px);--rot:calc((var(--i) - 1) * 4deg)}
.ur-tp .tp:nth-child(2){margin-bottom:clamp(18px,2.6vw,40px)}
.tp-book{position:relative;width:100%;transform-style:preserve-3d;opacity:0;transform:translateY(80px) rotate(0deg) scale(.94);filter:blur(6px);transition:opacity 1.1s ease,transform 1.3s cubic-bezier(.2,.75,.2,1),filter 1.1s ease;transition-delay:calc(var(--i) * .22s)}
.ur-tp.in .tp-book{opacity:1;transform:translateY(0) rotate(var(--rot)) scale(1);filter:none}
.tp-tilt{position:relative;border-radius:3px;overflow:hidden;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateZ(0);transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s;box-shadow:0 26px 50px rgba(0,0,0,.7),0 0 0 1px rgba(152,175,226,.18);animation:tpfloat 7s ease-in-out infinite;animation-delay:calc(var(--i) * -2.3s)}
.tp-tilt img{display:block;width:100%;height:auto}
.tp-glare{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--gx,50%) var(--gy,30%),rgba(200,215,255,.32),rgba(200,215,255,0) 55%);opacity:0;transition:opacity .4s;mix-blend-mode:screen}
.tp-shine{position:absolute;inset:-20%;pointer-events:none;background:linear-gradient(115deg,transparent 40%,rgba(210,225,255,.35) 50%,transparent 60%);transform:translateX(-120%)}
.ur-tp.in .tp-shine{animation:tpshine 1.6s ease-out forwards;animation-delay:calc(1.1s + var(--i) * .3s)}
.tp-pool{position:absolute;left:8%;right:8%;bottom:-26px;height:28px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(90,120,200,.35),rgba(8,12,23,0) 70%);filter:blur(6px);animation:tppool 7s ease-in-out infinite;animation-delay:calc(var(--i) * -2.3s);pointer-events:none}
.tp-num{margin-top:clamp(30px,3.4vw,44px);font-family:var(--f-ink,inherit);font-size:15px;letter-spacing:.26em;text-transform:uppercase;color:var(--ink-mute,#8F9BB8);opacity:0;transform:translateY(10px);transition:opacity .9s ease,transform .9s ease;transition-delay:calc(.7s + var(--i) * .22s)}
.tp-name{margin-top:8px;font-family:var(--f-label);font-size:clamp(16px,1.6vw,21px);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-hi,#98AFE2);opacity:0;transform:translateY(10px);transition:opacity .9s ease,transform .9s ease,color .4s,text-shadow .4s;transition-delay:calc(.85s + var(--i) * .22s)}
.ur-tp.in .tp-num,.ur-tp.in .tp-name{opacity:1;transform:none}
@media (hover:hover){
 .ur-tp .tp{cursor:default}
 .ur-tp .tp:hover .tp-tilt{animation-play-state:paused;box-shadow:0 34px 70px rgba(0,0,0,.75),0 0 46px rgba(120,150,230,.35),0 0 0 1px rgba(152,175,226,.45)}
 .ur-tp .tp:hover .tp-glare{opacity:1}
 .ur-tp .tp:hover .tp-name{color:#DCE3F0;text-shadow:0 0 18px rgba(150,185,255,.7)}
 .ur-tp:hover .tp:not(:hover) .tp-book{opacity:.55;transition-delay:0s}
 .ur-tp:hover .tp:hover .tp-book{transform:translateY(-14px) rotate(0deg) scale(1.04);transition-delay:0s}
}
@keyframes tpfloat{0%,100%{translate:0 0}50%{translate:0 -10px}}
@keyframes tppool{0%,100%{transform:scaleX(1);opacity:1}50%{transform:scaleX(.82);opacity:.65}}
@keyframes tpshine{to{transform:translateX(120%)}}
@media (max-width:640px){.ur-tp{flex-direction:column;align-items:center;gap:56px}.ur-tp .tp{width:min(72vw,280px);--rot:0deg}.ur-tp .tp:nth-child(2){margin-bottom:0}}
@media (prefers-reduced-motion:reduce){.tp-tilt,.tp-pool{animation:none}.tp-book,.tp-num,.tp-name{transition:none}}
@media (max-width:640px){.ur-tp .tp{width:min(58vw,230px)}.ur-tp{gap:44px}}
/* Three parts: books stay still until hovered, no light effect at the pointer */
.tp-tilt,.tp-pool{animation:none!important}
.tp-glare{display:none}
@media (hover:hover){.ur-tp .tp:hover .tp-tilt{box-shadow:0 34px 70px rgba(0,0,0,.75),0 0 0 1px rgba(152,175,226,.3)}}
/* background switchers: out of the faded edges, above overlapping sections */
body.ur .bgtest{top:calc(var(--ur-seam,120px) * .8);bottom:auto;z-index:30}
/* Three parts: smaller covers, tighter section, darker backgrounds */
.ur-tp{margin-top:clamp(22px,2.8vw,40px);gap:clamp(18px,3.4vw,52px)}
.ur-tp .tp{width:clamp(130px,15.5vw,215px)}
.ur-tp .tp:nth-child(2){margin-bottom:clamp(12px,1.8vw,28px)}
.tp-num{margin-top:clamp(22px,2.6vw,34px);font-size:13px}
.tp-name{font-size:clamp(14px,1.3vw,18px)}
body.ur #parts-band{padding-block:clamp(70px,8vw,120px)!important}
body.ur #parts-band>.bg{filter:brightness(.5) saturate(.85)!important}
@media (max-width:640px){.ur-tp .tp{width:min(48vw,190px)}.ur-tp{gap:38px}}
.tp-name{white-space:nowrap}
/* Maplecrest copy in the same tone as the rest of the page text */
body.ur #maplecrest .copy p:not(.lbl){color:#A9B6CF;text-shadow:0 1px 8px rgba(0,0,0,.6)}
/* Three parts: smaller part names, more room between the covers */
.tp-name{font-size:clamp(12px,1.05vw,15px);letter-spacing:.16em}
.tp-num{font-size:12px}
.ur-tp{gap:clamp(36px,6vw,96px)}
.ur-tp .tp{width:clamp(115px,13.5vw,190px)}
body.ur .unreach.ur-page .copy>.genre{font-size:clamp(24px,2.3vw,32px);color:#C9D6F5;text-shadow:0 0 18px rgba(150,185,255,.35),0 2px 10px rgba(0,0,0,.8)}
/* Maplecrest: background clearly visible again */
body.ur #maplecrest>.bg{opacity:.9!important;filter:brightness(.82) saturate(.9)!important}
body.ur #maplecrest::before{background:linear-gradient(180deg,#080C17 0%,rgba(8,12,23,.15) 28%,rgba(8,12,23,.15) 72%,#080C17 100%),radial-gradient(ellipse 70% 80% at 60% 50%,rgba(8,12,23,.35),rgba(8,12,23,0) 100%)}
/* Maplecrest as dark as "Three parts"; deeper dark around the content warnings as a buffer between both images */
body.ur #maplecrest>.bg{opacity:.55!important;filter:brightness(.5) saturate(.85)!important}
body.ur #cw-band{background:linear-gradient(180deg,rgba(5,7,14,0) 0%,#05070E 22%,#05070E 78%,rgba(5,7,14,0) 100%);padding-block:clamp(50px,6vw,90px)!important}
/* Three parts -> content warnings -> Maplecrest: no dark buffer; both images fade into each other behind the warnings */
body.ur #cw-band{background:none;padding-block:clamp(30px,4vw,60px)!important}
body.ur #parts-band{margin-bottom:calc(-1*clamp(120px,13vw,190px))}
body.ur #maplecrest{margin-top:calc(-1*clamp(120px,13vw,190px));padding-top:clamp(170px,18vw,250px)!important}
body.ur #parts-band,body.ur #maplecrest{--fb:clamp(160px,17vw,260px);--ft:clamp(160px,17vw,260px)}
body.ur #parts-band{padding-bottom:clamp(170px,18vw,250px)!important}

/* Vanderwood: text and crest take the same ash tone as the rest of the page */
#vanderwood .copy p,#vanderwood .copy em{color:var(--ash)}
#vanderwood .crest>img{opacity:1;filter:brightness(.72) sepia(.18)}
#vanderwood .crest>img:hover{filter:brightness(.72) sepia(.18) drop-shadow(0 0 16px rgba(217,162,95,.45))}

/* Series page: less space between the artist section and the fan wiki */
body:not(.ur) .band[aria-labelledby="art"]{padding-bottom:clamp(24px,3vw,40px)}
body:not(.ur) .vw.wiki{--ft:clamp(36px,4.5vw,70px);padding-top:clamp(44px,5.5vw,80px)!important}

/* Unreachable page: a few more paper cranes drifting down the page (not in the footer) */
body.ur .cr2s{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:visible}
body.ur .cr2{position:absolute;width:var(--w,50px);height:auto;max-width:none;opacity:var(--o,.85);filter:drop-shadow(0 12px 14px rgba(0,0,0,.5)) saturate(.85) brightness(.9) blur(var(--b,0px));rotate:var(--r,0deg);will-change:transform;animation:crDrift var(--d,34s) ease-in-out infinite}
@keyframes crDrift{0%,100%{translate:0 -10px}35%{translate:16px 8px}70%{translate:-8px 22px}}
@media (max-width:720px){body.ur .cr2s .cr2:nth-child(2){display:none}body.ur .cr2{width:calc(var(--w,50px)*.6)}}
@media (prefers-reduced-motion:reduce){body.ur .cr2{animation:none}}
/* Maplecrest crest cranes float like the others */
body.ur .ur-set .crest>img{animation:crDrift 30s ease-in-out -6s infinite}
@media (prefers-reduced-motion:reduce){body.ur .ur-set .crest>img{animation:none}}

/* Unreachable gallery: larger frames so that about five are visible at once */
body.ur .pano-track figure{height:clamp(200px,calc((100vw - 96px)/3.9),620px)}

/* Unreachable page: lightbox in the same ink-blue frame as the gallery */
body.ur .lb-zoom:focus-visible{outline-color:#98AFE2}
body.ur .lb-bd{background:radial-gradient(ellipse at center,rgba(12,17,34,.9),rgba(3,5,12,.97))}
body.ur .lb-fr{background:linear-gradient(160deg,#101830,#080C17);border-color:rgba(152,175,226,.7);box-shadow:0 0 0 6px #0B1020,0 0 0 7px rgba(152,175,226,.32),0 30px 90px rgba(0,0,0,.8),0 0 60px rgba(120,150,230,.12)}
body.ur .lb-in{border-color:rgba(152,175,226,.28)}
body.ur .lb-c{border-color:#98AFE2;filter:drop-shadow(0 0 6px rgba(152,175,226,.4))}
body.ur .lb-fr figcaption{color:#A9B6CF}
body.ur .lb-fr figcaption b{font-family:var(--f-ink,var(--f-display));color:#DCE3F0}
body.ur .lb-fr figcaption a{color:#98AFE2}
body.ur .lb-x,body.ur .lb-n{border-color:rgba(152,175,226,.55);background:rgba(10,14,28,.75);color:#98AFE2}
body.ur .lb-x:hover,body.ur .lb-n:hover{background:rgba(26,31,53,.92);box-shadow:0 0 22px rgba(152,175,226,.35)}

/* Unreachable page: same tighter spacing between the artist gallery and the follow section as on the series page */
body.ur .band[aria-labelledby="art"]{padding-bottom:clamp(24px,3vw,40px)}
body.ur .vw.ur-follow{--ft:clamp(36px,4.5vw,70px);padding-top:clamp(44px,5.5vw,80px)!important}

/* Follow the ink: chosen background (water 7), brighter, soft transition into the footer */
body.ur .ur-follow>.bg{opacity:.9;filter:brightness(.85) saturate(.95);object-position:50% 40%}
body.ur .ur-follow.vw::before{background:linear-gradient(180deg,#080C17 0%,rgba(8,12,23,.15) 30%,rgba(8,12,23,.15) 70%,#080C17 100%),radial-gradient(ellipse 70% 80% at 50% 50%,rgba(8,12,23,.25),rgba(8,12,23,.05) 100%)}
/* Unreachable page: footer fades in softly from the page colour (no visible edge) */
body.ur footer.site{border-top:0;box-shadow:none;background:#080C17}
body.ur footer.site>.bg{-webkit-mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.4) 90px,#000 240px);mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.4) 90px,#000 240px)}
body.ur footer.site::before{background:linear-gradient(180deg,#080C17 0,rgba(8,12,23,.55) 140px,rgba(6,9,18,.6) 100%)}

/* ===== Unreachable: puzzle section ("Dear Unreachable reader") ===== */
.ur-puzzle{position:relative;padding-block:clamp(90px,10vw,150px)!important;overflow:hidden}
body.ur .ur-puzzle>.bg{opacity:.85;filter:brightness(.8) saturate(.95)}
.pz-dust{position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(1.4px 1.4px at 12% 18%,#fff,transparent),radial-gradient(1px 1px at 28% 72%,#dfe6ff,transparent),radial-gradient(1.6px 1.6px at 46% 12%,#fff,transparent),radial-gradient(1px 1px at 63% 64%,#cfd9ff,transparent),radial-gradient(1.3px 1.3px at 81% 28%,#fff,transparent),radial-gradient(1px 1px at 90% 82%,#dfe6ff,transparent),radial-gradient(1.2px 1.2px at 6% 58%,#fff,transparent),radial-gradient(1px 1px at 55% 88%,#fff,transparent);opacity:.55;animation:pzTw 6s ease-in-out infinite alternate}
@keyframes pzTw{from{opacity:.25}to{opacity:.7}}
.pz-wrap{display:flex;flex-direction:column;align-items:center;text-align:center}
.pz{position:relative;width:min(520px,78vw);aspect-ratio:1;margin:0 auto;padding:clamp(34px,5vw,58px);box-sizing:content-box}
.pz-l{position:absolute;font-family:var(--f-sub,'Alice',Georgia,serif);font-size:clamp(26px,3.2vw,40px);line-height:1;color:#A9B0C8;opacity:.0;transition:opacity 1s,color .8s,text-shadow .8s,transform 1s cubic-bezier(.2,.7,.2,1)}
.pz-l.l1{left:0;top:0}.pz-l.l2{right:0;top:0}.pz-l.l3{left:0;bottom:0}.pz-l.l4{right:0;bottom:0}
.ur-puzzle.in .pz-l{opacity:.75}
.ur-puzzle.done .pz-l{opacity:1;color:#E4E9F7;text-shadow:0 0 14px rgba(152,175,226,.9),0 0 34px rgba(152,175,226,.5)}
.ur-puzzle.done .pz-l.l1{transition-delay:.2s}.ur-puzzle.done .pz-l.l2{transition-delay:.45s}.ur-puzzle.done .pz-l.l3{transition-delay:.7s}.ur-puzzle.done .pz-l.l4{transition-delay:.95s}
.pz-board{position:relative;width:100%;height:100%;display:grid;grid-template-columns:1fr 1fr;gap:clamp(6px,1vw,12px);transform:perspective(1200px) rotateY(var(--tx,0deg)) rotateX(var(--ty,0deg));transition:gap .9s cubic-bezier(.2,.7,.2,1),transform .4s ease-out}
.ur-puzzle.done .pz-board{gap:0}
.pz-p{position:relative;padding:0;border:0;background:none;cursor:pointer;opacity:0;--sx:0px;--sy:0px;transform:translate(var(--sx),var(--sy)) rotate(calc(var(--r,0deg) + var(--sr,0deg))) scale(.9);transition:transform .55s cubic-bezier(.3,1.35,.5,1),opacity .9s ease,filter .4s;filter:drop-shadow(0 14px 22px rgba(0,0,0,.55))}
.pz-p:nth-child(1){--sx:-60px;--sy:-40px;--sr:-14deg}.pz-p:nth-child(2){--sx:70px;--sy:-30px;--sr:12deg}.pz-p:nth-child(3){--sx:-50px;--sy:60px;--sr:10deg}.pz-p:nth-child(4){--sx:60px;--sy:50px;--sr:-9deg}
.ur-puzzle.in .pz-p{opacity:1;--sx:0px;--sy:0px;--sr:0deg;transform:rotate(var(--r,0deg)) scale(1);transition:transform .55s cubic-bezier(.3,1.35,.5,1),opacity .9s ease,filter .4s}
.ur-puzzle.in .pz-p:nth-child(1){transition-delay:0s}.ur-puzzle.in .pz-p:nth-child(2){transition-delay:.08s}.ur-puzzle.in .pz-p:nth-child(3){transition-delay:.16s}.ur-puzzle.in .pz-p:nth-child(4){transition-delay:.24s}
.ur-puzzle.in .pz-p:hover{filter:drop-shadow(0 14px 22px rgba(0,0,0,.55)) drop-shadow(0 0 14px rgba(152,175,226,.45))}
.pz-p:focus-visible{outline:2px solid #98AFE2;outline-offset:4px}
.pz-face{position:absolute;inset:0;background:url(https://static.wixstatic.com/media/5e8914_dcc887ce646843499b313116990f6fdd~mv2.webp) no-repeat;background-size:200% 200%;border:1px solid rgba(152,175,226,.18)}
.pz-p[data-i="0"] .pz-face{background-position:0 0}.pz-p[data-i="1"] .pz-face{background-position:100% 0}.pz-p[data-i="2"] .pz-face{background-position:0 100%}.pz-p[data-i="3"] .pz-face{background-position:100% 100%}
.ur-puzzle.done .pz-face{border-color:transparent}
.ur-puzzle.done .pz-p{cursor:default;transition-delay:0s!important}
.pz-glow{position:absolute;inset:-6%;pointer-events:none;background:radial-gradient(closest-side,rgba(152,175,226,.35),transparent 70%);opacity:0;transform:scale(.8);transition:opacity 1.2s,transform 1.6s cubic-bezier(.2,.7,.2,1);mix-blend-mode:screen}
.ur-puzzle.done .pz-glow{opacity:1;transform:scale(1.08);animation:pzBreath 4s ease-in-out 1.6s infinite}
@keyframes pzBreath{0%,100%{opacity:1}50%{opacity:.55}}
.pz-fly{position:absolute;inset:0;pointer-events:none}
.pz-fly img{position:absolute;width:clamp(30px,4vw,52px);height:auto;left:50%;top:50%;opacity:0;filter:drop-shadow(0 8px 10px rgba(0,0,0,.5))}
.ur-puzzle.done .pz-fly img{animation:pzFly 3.4s cubic-bezier(.25,.6,.3,1) forwards}
.ur-puzzle.done .pz-fly img:nth-child(1){--fx:-260px;--fy:-300px;--fr:-25deg;animation-delay:.9s}
.ur-puzzle.done .pz-fly img:nth-child(2){--fx:240px;--fy:-340px;--fr:20deg;animation-delay:1.15s}
.ur-puzzle.done .pz-fly img:nth-child(3){--fx:30px;--fy:-420px;--fr:-6deg;animation-delay:1.4s}
@keyframes pzFly{0%{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(0)}15%{opacity:1}80%{opacity:.9}100%{opacity:0;transform:translate(calc(-50% + var(--fx)),calc(-50% + var(--fy))) scale(1) rotate(var(--fr))}}
body.ur .pz-q,.pz-q{margin:clamp(28px,4vw,48px) 0 0;font-family:var(--f-sub,'Alice',Georgia,serif);font-weight:400;font-size:clamp(16px,1.9vw,22px);letter-spacing:.32em;text-transform:uppercase;line-height:1.7;color:#C3CADC;text-wrap:balance}
.pz-q>span{display:block}.pz-q .gw{display:inline}
.pz-hint{margin:16px 0 0;font-family:var(--f-label);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#7F8CA8;min-height:2.4em}
.pz-hint .h1{display:none}
.ur-puzzle.done .pz-hint .h0{display:none}.ur-puzzle.done .pz-hint .h1{display:inline;color:#98AFE2}
.pz-again{margin-left:12px;padding:6px 14px;border:1px solid rgba(152,175,226,.5);border-radius:999px;background:transparent;color:#98AFE2;font:inherit;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.pz-again:hover{background:rgba(26,31,53,.9)}
@media (max-width:640px){.pz-q{letter-spacing:.2em}.pz{padding:30px}}
@media (prefers-reduced-motion:reduce){.pz-p,.pz-board,.pz-l,.pz-glow{transition:none!important}.ur-puzzle .pz-p{opacity:1}.pz-dust,.ur-puzzle.done .pz-glow{animation:none}.pz-fly{display:none}}
/* puzzle v2: no game, smaller section, three-line question */
.ur-puzzle{padding-block:clamp(56px,6vw,90px)!important}
.pz{width:min(360px,64vw);padding:clamp(26px,3.6vw,42px)}
.pz-l{font-size:clamp(20px,2.4vw,30px)}
.pz-p,.ur-puzzle.in .pz-p{cursor:default}
.ur-puzzle.in .pz-p{transform:none}
.ur-puzzle.in .pz-p:hover{filter:drop-shadow(0 14px 22px rgba(0,0,0,.55)) drop-shadow(0 0 14px rgba(152,175,226,.5))}
body.ur .pz-q,.pz-q{margin-top:clamp(18px,2.4vw,28px);font-size:clamp(13px,1.35vw,16px);letter-spacing:.32em;line-height:1.75}
.pz-fly img{width:clamp(24px,3vw,40px)}
.ur-puzzle.done .pz-fly img:nth-child(1){--fx:-190px;--fy:-220px}.ur-puzzle.done .pz-fly img:nth-child(2){--fx:180px;--fy:-250px}.ur-puzzle.done .pz-fly img:nth-child(3){--fx:20px;--fy:-300px}
/* Unreachable: less space between "Follow the ink" and the footer */
body.ur .vw.ur-follow{--fb:clamp(50px,6vw,90px);padding-bottom:clamp(36px,4.5vw,64px)!important}
body.ur footer.site{padding-top:clamp(40px,5vw,64px)}

/* ===== v395 Unreachable: handwriting layers and ink effects ===== */
body.ur #parts-band>.wrap,body.ur #maplecrest>.wrap,body.ur .ur-follow>.wrap,body.ur [aria-labelledby="art"]>.wrap,body.ur [aria-labelledby="art"]>.pano{position:relative;z-index:1}
/* 1 Maplecrest: handwriting revealed under the pointer like a lamp over wet ink */
.ink-reveal{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.ink-reveal p{position:absolute;inset:-8% -6%;margin:0;font-family:'Homemade Apple',cursive;font-size:19px;line-height:2.15;letter-spacing:.01em;word-spacing:.16em;color:rgba(176,196,246,.62);text-align:justify;transform:none;user-select:none;
 -webkit-mask-image:radial-gradient(circle var(--rr,0px) at var(--mx,50%) var(--my,50%),#000 0,rgba(0,0,0,.55) 45%,transparent 100%),linear-gradient(rgba(0,0,0,.09),rgba(0,0,0,.09));
 mask-image:radial-gradient(circle var(--rr,0px) at var(--mx,50%) var(--my,50%),#000 0,rgba(0,0,0,.55) 45%,transparent 100%),linear-gradient(rgba(0,0,0,.09),rgba(0,0,0,.09));
 text-shadow:0 0 6px rgba(120,150,235,.35)}
.ink-static .ink-reveal p{-webkit-mask-image:linear-gradient(rgba(0,0,0,.16),rgba(0,0,0,.16));mask-image:linear-gradient(rgba(0,0,0,.16),rgba(0,0,0,.16))}
/* 2 Three parts: margin notes drifting along both page edges */
.hw-margins{position:absolute;inset:0;z-index:0;pointer-events:none}
.hw-col{position:absolute;top:8%;bottom:8%;width:46px;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,transparent,#000 22%,#000 78%,transparent);mask-image:linear-gradient(180deg,transparent,#000 22%,#000 78%,transparent)}
.hw-col.l{left:clamp(14px,4vw,70px)}.hw-col.r{right:clamp(14px,4vw,70px)}
.hw-col p{margin:0;writing-mode:vertical-rl;font-family:'Homemade Apple',cursive;font-size:15px;line-height:1.9;white-space:nowrap;color:rgba(152,175,226,.34);user-select:none;animation:hwRun 120s linear infinite}
.hw-col.l p{transform:rotate(180deg);animation-direction:reverse}
@keyframes hwRun{from{translate:0 0}to{translate:0 -50%}}
@media (max-width:900px){.hw-margins{display:none}}
/* 3 Gallery: "Your ink. My veins." writes itself while scrolling, a glowing nib at the tip */
.hw-write{position:absolute;left:50%;top:-1em;translate:-50% 0;z-index:0;pointer-events:none;white-space:nowrap;font-family:'Homemade Apple',cursive;font-size:clamp(38px,6.6vw,104px);line-height:1;color:rgba(152,175,226,.13)}
.hw-write span{display:inline-block;padding:.3em .2em;clip-path:inset(0 calc(100% - var(--p,0) * 100%) 0 0);text-shadow:0 0 18px rgba(120,150,235,.25)}
.hw-write::after{content:"";position:absolute;top:50%;left:calc(.2em + var(--p,0) * (100% - .4em));width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:#C9D6FF;box-shadow:0 0 14px 4px rgba(152,175,226,.7);opacity:calc((1 - var(--p,0)) * 6)}
/* 4 Follow: the tagline soaks into the paper like ink */
.ur-blurb>p.tag.soak{opacity:0;filter:blur(14px);transform:skewX(-9deg) rotate(-1.6deg) scale(1.04);transform-origin:0 60%;transition:opacity 2.6s ease,filter 3.2s ease,transform 3.6s cubic-bezier(.2,.7,.2,1)}
.ur-blurb>p.tag.soak.wet{opacity:1;filter:blur(0);transform:none}
/* 5 headings settle like wet ink */
.ink-wait{opacity:0}
.ink-wet{animation:inkWet 1.6s ease-out both}
@keyframes inkWet{0%{opacity:0;text-shadow:0 0 22px rgba(120,150,235,.8)}35%{opacity:1}100%{opacity:1;text-shadow:none}}
/* 6 ink fill on hover, from the point where the pointer enters */
.ink-fill{position:relative;isolation:isolate;overflow:hidden}
.ink-fill::after{content:"";position:absolute;left:var(--ix,50%);top:var(--iy,50%);width:260%;aspect-ratio:1;translate:-50% -50%;scale:0;border-radius:50%;z-index:-1;pointer-events:none;background:radial-gradient(circle,rgba(70,100,190,.42) 0,rgba(50,75,160,.28) 45%,rgba(30,45,110,0) 70%);filter:url(#ink-edge);transition:scale .9s cubic-bezier(.2,.7,.2,1),opacity .6s}
.ink-fill:hover::after{scale:1}
.btn.ink.ink-fill::after{background:radial-gradient(circle,rgba(220,230,255,.55) 0,rgba(200,215,250,.25) 45%,transparent 70%)}
.ur-tp .tp-book.ink-fill{overflow:visible}.ur-tp .tp-book.ink-fill::after{display:none}
/* 7 pen trail / splash canvas */
.ink-canvas{position:fixed;inset:0;width:100vw;height:100vh;z-index:60;pointer-events:none;mix-blend-mode:screen}
@media (prefers-reduced-motion:reduce){.hw-col p{animation:none}.ur-blurb>p.tag.soak{transition:none;opacity:1;filter:none;transform:none}.ink-fill::after{display:none}}

/* v402: the handwriting behind "Follow the ink" stays out of the box: the panel is opaque, the light effect only shows around it */
body.ur .ur-follow .wiki-panel{background:linear-gradient(180deg,#101628,#080C18)}

/* v403: Three parts, content warnings and Maplecrest are one section with the Three-parts background */
body.ur #parts-band{margin-bottom:calc(var(--ur-seam)*-.05);padding-bottom:clamp(90px,10vw,140px)!important}
body.ur #parts-band .cwtext{margin-top:clamp(56px,7vw,96px)}
body.ur #parts-band .crest .copy p:not(.lbl){color:#A9B6CF;text-shadow:0 1px 8px rgba(0,0,0,.6)}

/* v405: handwriting behind "Follow the ink" fades out at the top and bottom edge, so it no longer ends in a hard line against the footer */
body.ur .ur-follow .ink-reveal{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 clamp(80px,12vw,170px),#000 calc(100% - clamp(120px,16vw,240px)),transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 clamp(80px,12vw,170px),#000 calc(100% - clamp(120px,16vw,240px)),transparent 100%)}

/* v406: scroll reveal for text (reveal.js) */
.tx{transition:opacity .9s cubic-bezier(.2,.7,.2,1) var(--d,0s),transform .9s cubic-bezier(.2,.7,.2,1) var(--d,0s),filter .9s ease var(--d,0s)}
.tx-s{opacity:0;transform:translateY(20px);filter:blur(5px)}
.tx-s.in{opacity:1;transform:none;filter:none}
.tx-l{opacity:0;transform:translateX(-26px);filter:blur(4px)}
.tx-l.in{opacity:1;transform:none;filter:none}
.tx-lines .tx-ln{display:inline-block;opacity:0;transform:translateY(12px);filter:blur(4px);transition:opacity .9s ease calc(var(--i) * .16s),transform .9s cubic-bezier(.2,.7,.2,1) calc(var(--i) * .16s),filter .9s ease calc(var(--i) * .16s)}
.tx-lines.in .tx-ln{opacity:1;transform:none;filter:none}

/* v409 (TBL): content warnings and Vanderwood are one section on the Vanderwood background, tinted brown */
#vanderwood>.bg{opacity:.7;filter:sepia(1) hue-rotate(-14deg) saturate(1.2) brightness(.8)}
#vanderwood .cwtext{margin-top:0}

/* v410: click splash in deeper blue; normal blending so the darker ink stays visible on the dark page */
.ink-canvas{mix-blend-mode:normal}

/* v415.1 (13.10.2026, owner): soft header change between pages. Only the header's background and bottom line
   cross-fade; logo, menu and icons are captured as their own layer and switch instantly (no ghosting when
   item positions differ between pages). Browsers without cross-document View Transitions change pages as before. */
@view-transition{navigation:auto}
header.site{view-transition-name:site-header}
header.site>.bar{view-transition-name:site-bar}
::view-transition-old(root){display:none}
::view-transition-new(root){animation:none}
::view-transition-group(site-header){animation:none}
::view-transition-old(site-header),::view-transition-new(site-header){animation-duration:.6s;animation-timing-function:ease-in-out;width:100%;height:100%;object-fit:fill}
::view-transition-group(site-bar){animation:none}
::view-transition-old(site-bar){display:none}
::view-transition-new(site-bar){animation:none}
@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}}

/* puzzle v3 (13.10.2026, owner comment): the four pieces are cut along the drawn outlines (tabs and blanks)
   instead of squares; they drift in apart, then slide together. Masks follow the lines of ur-puzzle-cranes.webp. */
.pz-board{display:block}
.pz-p{position:absolute;inset:0;pointer-events:none}
.pz-face{background-size:100% 100%!important;background-position:0 0!important;border:0!important;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.pz-p[data-i="0"]{--gx:-3.5%;--gy:-3.5%}
.pz-p[data-i="0"] .pz-face{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' preserveAspectRatio='none'%3E%3Cpath d='M 0 0 L 500 0 L 500 202 C 542 212 549 172 591 172 C 640 172 640 332 591 332 C 549 332 542 292 500 302 L 500 490 L 310 490 C 301 451 335 444.5 335 405.5 C 335 360 195 360 195 405.5 C 195 444.5 229 451 220 490 L 0 490 Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' preserveAspectRatio='none'%3E%3Cpath d='M 0 0 L 500 0 L 500 202 C 542 212 549 172 591 172 C 640 172 640 332 591 332 C 549 332 542 292 500 302 L 500 490 L 310 490 C 301 451 335 444.5 335 405.5 C 335 360 195 360 195 405.5 C 195 444.5 229 451 220 490 L 0 490 Z'/%3E%3C/svg%3E")}
.pz-p[data-i="1"]{--gx:3.5%;--gy:-3.5%}
.pz-p[data-i="1"] .pz-face{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' preserveAspectRatio='none'%3E%3Cpath d='M 500 0 L 1000 0 L 1000 490 L 790 490 C 781 533.5 810 540.8 810 584.2 C 810 635 680 635 680 584.2 C 680 540.8 709 533.5 700 490 L 500 490 L 500 302 C 542 292 549 332 591 332 C 640 332 640 172 591 172 C 549 172 542 212 500 202 L 500 0 Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' preserveAspectRatio='none'%3E%3Cpath d='M 500 0 L 1000 0 L 1000 490 L 790 490 C 781 533.5 810 540.8 810 584.2 C 810 635 680 635 680 584.2 C 680 540.8 709 533.5 700 490 L 500 490 L 500 302 C 542 292 549 332 591 332 C 640 332 640 172 591 172 C 549 172 542 212 500 202 L 500 0 Z'/%3E%3C/svg%3E")}
.pz-p[data-i="2"]{--gx:-3.5%;--gy:3.5%}
.pz-p[data-i="2"] .pz-face{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' preserveAspectRatio='none'%3E%3Cpath d='M 0 490 L 220 490 C 229 451 195 444.5 195 405.5 C 195 360 335 360 335 405.5 C 335 444.5 301 451 310 490 L 500 490 L 500 685 C 455.6 695 448.2 665 403.8 665 C 352 665 352 805 403.8 805 C 448.2 805 455.6 775 500 785 L 500 1000 L 0 1000 Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' preserveAspectRatio='none'%3E%3Cpath d='M 0 490 L 220 490 C 229 451 195 444.5 195 405.5 C 195 360 335 360 335 405.5 C 335 444.5 301 451 310 490 L 500 490 L 500 685 C 455.6 695 448.2 665 403.8 665 C 352 665 352 805 403.8 805 C 448.2 805 455.6 775 500 785 L 500 1000 L 0 1000 Z'/%3E%3C/svg%3E")}
.pz-p[data-i="3"]{--gx:3.5%;--gy:3.5%}
.pz-p[data-i="3"] .pz-face{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' preserveAspectRatio='none'%3E%3Cpath d='M 500 490 L 700 490 C 709 533.5 680 540.8 680 584.2 C 680 635 810 635 810 584.2 C 810 540.8 781 533.5 790 490 L 1000 490 L 1000 1000 L 500 1000 L 500 785 C 455.6 775 448.2 805 403.8 805 C 352 805 352 665 403.8 665 C 448.2 665 455.6 695 500 685 L 500 490 Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' preserveAspectRatio='none'%3E%3Cpath d='M 500 490 L 700 490 C 709 533.5 680 540.8 680 584.2 C 680 635 810 635 810 584.2 C 810 540.8 781 533.5 790 490 L 1000 490 L 1000 1000 L 500 1000 L 500 785 C 455.6 775 448.2 805 403.8 805 C 352 805 352 665 403.8 665 C 448.2 665 455.6 695 500 685 L 500 490 Z'/%3E%3C/svg%3E")}
.ur-puzzle.in .pz-p{transform:translate(var(--gx),var(--gy))}
.ur-puzzle.done .pz-p{transform:none;filter:none;transition:transform 1s cubic-bezier(.2,.7,.2,1),opacity .9s ease,filter .4s}
.pz-board{transition:gap .9s cubic-bezier(.2,.7,.2,1),transform .4s ease-out,filter .6s}
.ur-puzzle.done .pz-board{filter:drop-shadow(0 14px 22px rgba(0,0,0,.55))}
.ur-puzzle.done .pz-board:hover{filter:drop-shadow(0 14px 22px rgba(0,0,0,.55)) drop-shadow(0 0 14px rgba(152,175,226,.5))}

/* v417.1 (13.10.2026, owner comment): the ink-fill hover set position:relative on the panorama arrows (Unreachable), which dropped them out of the overlay: "previous" sat under the pictures, "next" was pushed off-screen. Arrows sit on the panorama again. */
.pano-btn.ink-fill{position:absolute}

/* puzzle v3.1 (owner): the cut runs through the middle of the drawn outline, so the tabs had no edge while apart.
   While the pieces are apart each one carries the outline along its cut edges; once joined it fades out and the drawn line shows. */
.pz-face::after{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' preserveAspectRatio='none'%3E%3Cpath d='M 500 14 L 500 202 C 542 212 549 172 591 172 C 640 172 640 332 591 332 C 549 332 542 292 500 302 L 500 490 M 14 490 L 220 490 C 229 451 195 444.5 195 405.5 C 195 360 335 360 335 405.5 C 335 444.5 301 451 310 490 L 500 490 M 500 490 L 700 490 C 709 533.5 680 540.8 680 584.2 C 680 635 810 635 810 584.2 C 810 540.8 781 533.5 790 490 L 986 490 M 500 490 L 500 685 C 455.6 695 448.2 665 403.8 665 C 352 665 352 805 403.8 805 C 448.2 805 455.6 775 500 785 L 500 986' fill='none' stroke='rgb%28201%2C207%2C226%29' stroke-width='9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;transition:opacity .8s ease .3s;pointer-events:none}
.ur-puzzle.done .pz-face::after{opacity:0}

/* v419.1 (13.10.2026, owner comment): the wet-ink load effects (headings with displaced edges, tagline soaking into the paper) are replaced
   by one calm motion: a short fade with a hair of blur and a small lift. Hover and click ink effects are unchanged. */
.ur-rise{animation:urRise 1.3s cubic-bezier(.2,.7,.2,1) both}
@keyframes urRise{from{opacity:0;filter:blur(5px);transform:translateY(14px)}to{opacity:1;filter:none;transform:none}}
.ur-blurb>p.tag.soak{opacity:0;filter:blur(5px);transform:translateY(14px);transform-origin:50% 50%;transition:opacity 1.3s ease,filter 1.3s ease,transform 1.3s cubic-bezier(.2,.7,.2,1)}
.ur-blurb>p.tag.soak.wet{opacity:1;filter:none;transform:none}
@media (prefers-reduced-motion:reduce){.ur-rise{animation:none}.ur-blurb>p.tag.soak{transition:none;opacity:1;filter:none;transform:none}}

/* v422 (13.10.2026, owner comment "anderer effekt" on the home hero line): instead of two halves rising out of a blur,
   the words drift out of the fog one by one with a brief warm candle glint, and the three dots of the ellipsis follow
   like a held breath before Blairville appears. Words are split by fx.js (block "v422"). Phones keep the line static. */
.stage.hero .lead.lw-on>span{animation:none!important;opacity:1}
.stage.hero .lead .lw{display:inline-block;animation:lwIn 1.15s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(.2s + var(--w) * .075s)}
.stage.hero .lead .ld{display:inline-block;animation:ldIn .5s cubic-bezier(.3,1.5,.5,1) both;animation-delay:calc(.95s + var(--d) * .16s)}
@keyframes lwIn{0%{opacity:0;filter:blur(9px);transform:translate(-6px,3px)}55%{opacity:1;text-shadow:0 0 14px rgba(255,196,120,.75),0 0 18px rgba(0,0,0,1)}100%{opacity:1;filter:none;transform:none}}
@keyframes ldIn{from{opacity:0;transform:translateY(-6px) scale(.4)}to{opacity:1;transform:none}}
@media (max-width:720px){}
@media (prefers-reduced-motion:reduce){.stage.hero .lead .lw,.stage.hero .lead .ld{animation:none!important;opacity:1}}

/* v423 (13.10.2026, owner): home books rise in softly once their cover is decoded (fx.js block "v423") */
.series .books>li.bk-wait{opacity:0;transform:translateY(26px);transition:opacity 1s cubic-bezier(.2,.7,.2,1),transform 1.1s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--bk,0) * .14s)}
.series .books>li.bk-wait.bk-in{opacity:1;transform:none}

/* ===== v443: distant fireworks canvas over the island on Home only (2 November from 2027, 31 December, 1 January) ===== */
.bd-fw{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}

/* ===== v444: lighthouse turns like a real one (fx.js "v444"): the old clock-hand beam is replaced by a canvas with two beams in perspective and a flash towards the viewer ===== */
.hero-fx .beam{display:none!important}
.stage.hero canvas.lh{position:absolute;inset:0;width:100%;height:100%;z-index:0;mix-blend-mode:screen;pointer-events:none}
.hero-fx .lamp.lh-js{animation:none}
.hero-fx .lamp-ref.lh-js{animation-name:shimmerX}
@keyframes shimmerX{0%,100%{transform:translate(-50%,-50%) scaleX(1)}50%{transform:translate(-50%,-50%) scaleX(1.5)}}
@media (max-width:700px){}

/* v448 (owner, comment): Vanderwood band image darker and less brown, the colour no longer dominates */
#vanderwood>.bg{opacity:.6;filter:sepia(.45) hue-rotate(-10deg) saturate(.55) brightness(.55)}

/* v520 mobile: the book rows on the series page are one column again on phones (a later desktop rule kept two columns, so the text was pushed off the left edge) */
@media (max-width:720px){.blist .brow{grid-template-columns:minmax(0,1fr)}}
/* v520 mobile: the three Maezosverse series cards stack on phones (an inline three-column grid squeezed them into narrow strips) */
.someday.three{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:760px){.someday.three{grid-template-columns:minmax(0,1fr)}}
/* v520 mobile: the Unreachable wordmark's mask padding pushed the page 1px wider than the screen */
@media (max-width:720px){.unreach .ur-wm{padding-inline:0;margin-inline:0}}

/* v22.0 (owner, 21.10.2026): footer on all brand pages (not Unreachable, Botanink, Project O) is only a very dark brown texture, like the Botanink footer in green. Own texture, no crane picture */
footer.site.ft-crane.ft-brown{background:#0b0806}
footer.site.ft-crane.ft-brown>.bg{object-position:50% 50%;opacity:1;filter:none}
footer.site.ft-crane.ft-brown::before{background:linear-gradient(180deg,var(--night) 0%,rgba(8,5,4,.8) 8%,rgba(8,5,4,.38) 22%,rgba(8,5,4,.3) 60%,rgba(6,4,3,.62) 100%)}
@media (max-width:720px){
  footer.site.ft-crane.ft-brown{background:#070504 url(https://static.wixstatic.com/media/5e8914_f191de2499a74c048dc6112d52308ce1~mv2.webp) center top/cover no-repeat!important}
}
/* v22.0 (owner): Book 3 is out - "Out now" in the new-release band clearly larger */
.release .date.is-out{font-size:clamp(46px,11vw,64px);letter-spacing:.08em;line-height:1}
@media (min-width:821px){.release .date.is-out{font-size:clamp(56px,6.4vw,96px)}}
/* v22.0 (owner, test): opened home books show two real pages of the book - only the printed text, in ink on the parchment.
   Book I pp. 15-16, Book III pp. 12-13; Book II keeps its page until spoiler-free pages are chosen. Left page = first page, right page = second page */
.books li:nth-child(1) .b3-page{background-image:url(https://static.wixstatic.com/media/5e8914_9798c93789354a34b35ab56c24c3550b~mv2.webp),url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp)}
.books li:nth-child(3) .b3-page{background-image:url(https://static.wixstatic.com/media/5e8914_4c091ab4f7c6417691dbb4384cb2ea24~mv2.webp),url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp)}
.books li:nth-child(1) .b3-page,.books li:nth-child(2) .b3-page,.books li:nth-child(3) .b3-page{background-size:100% 100%,cover;background-position:50% 50%;background-repeat:no-repeat}
.books li:nth-child(1) .b3-page::after,.books li:nth-child(2) .b3-page::after,.books li:nth-child(3) .b3-page::after{display:none}
.books li:nth-child(1) .b3-leaf:nth-of-type(6),.books li:nth-child(2) .b3-leaf:nth-of-type(6),.books li:nth-child(3) .b3-leaf:nth-of-type(6){--lf-img:url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp)}
.books li:nth-child(1) .b3-leaf:nth-of-type(6)::after,.books li:nth-child(2) .b3-leaf:nth-of-type(6)::after,.books li:nth-child(3) .b3-leaf:nth-of-type(6)::after{content:"";position:absolute;inset:0;background:var(--pg) 50% 50%/100% 100% no-repeat;transform:scaleX(-1);pointer-events:none}
.books li:nth-child(1) .b3-leaf:nth-of-type(6){--pg:url(https://static.wixstatic.com/media/5e8914_c7f3c1f691d54fd18f2b40ec282d8ac4~mv2.webp)}
.books li:nth-child(3) .b3-leaf:nth-of-type(6){--pg:url(https://static.wixstatic.com/media/5e8914_6a71f6dc2d314fb19abf9890a4f6a393~mv2.webp)}

/* v570 (owner, 21.10.2026): Book II on the home books shows pp. 18-19 (real song lines removed from the page image, rule: no real song titles) */
.books li:nth-child(2) .b3-page{background-image:url(https://static.wixstatic.com/media/5e8914_29135133c8a042609c4ea3f926f3b5fb~mv2.webp),url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp)}
.books li:nth-child(2) .b3-leaf:nth-of-type(6){--pg:url(https://static.wixstatic.com/media/5e8914_d57cf59794974787acd1dd8936a4dc53~mv2.webp)}
/* v570 (owner): Book III band text - release line, two questions from the official blurb, way in for new readers, content warnings; "New" disappears on 20 December */
.release .r-meta{margin:0;font-family:var(--f-label);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--ash);font-variant-numeric:lining-nums}
.release .r-blurb{margin:0;max-width:30em;font-family:var(--f-body);font-size:clamp(17px,1.6vw,19px);line-height:1.6;color:#E3D7C8}
.release .r-more{margin:0;font-family:var(--f-label);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ash)}
.release .r-more a{color:var(--ivory);text-decoration:underline;text-decoration-color:rgba(217,162,95,.55);text-underline-offset:4px;transition:color .3s,text-decoration-color .3s}
.release .r-more a:hover,.release .r-more a:focus-visible{color:#F3C98B;text-decoration-color:var(--candle)}
.release .copy>.r-meta{margin-top:-6px}
@media (min-width:821px){
  .release .copy{grid-template-rows:1fr repeat(8,auto) 1fr}
  .release .copy>p.r-meta:not(.lbl):not(.date):not(.a):not(.b):not(.c){grid-row:5}
  .release .copy>p.r-tag:not(.lbl):not(.date):not(.a):not(.b):not(.c){grid-row:6}
  .release .copy>p.r-blurb:not(.lbl):not(.date):not(.a):not(.b):not(.c){grid-row:7}
  .release .copy>.row{grid-row:8}
  .release .copy>p.r-more:not(.lbl):not(.date):not(.a):not(.b):not(.c){grid-row:9}
}
@media (max-width:820px){.release .r-blurb{margin-inline:auto;text-align:center}.release .r-more{text-align:center;line-height:2}}
.release .r-meta .nw{white-space:nowrap}
@media (min-width:821px){.release .copy>.row{margin-top:10px}}
/* v571 (owner comment): blurb questions removed again; "Out now" a bit smaller */
.release .date.is-out{font-size:clamp(40px,10vw,52px)}
@media (min-width:821px){.release .date.is-out{font-size:clamp(46px,5vw,72px)}}
/* v572 (owner, 21.10.2026): same opened-book pages on the series page (TBL). Pages as on the home books: only the printed text in ink on the parchment, song lines removed */
#book-1 .b3-page{background-image:url(https://static.wixstatic.com/media/5e8914_9798c93789354a34b35ab56c24c3550b~mv2.webp),url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp)}
#book-2 .b3-page{background-image:url(https://static.wixstatic.com/media/5e8914_29135133c8a042609c4ea3f926f3b5fb~mv2.webp),url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp)}
#book-3 .b3-page{background-image:url(https://static.wixstatic.com/media/5e8914_4c091ab4f7c6417691dbb4384cb2ea24~mv2.webp),url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp)}
#book-1 .b3-page,#book-2 .b3-page,#book-3 .b3-page{background-size:100% 100%,cover;background-position:50% 50%;background-repeat:no-repeat}
#book-1 .b3-page::after,#book-2 .b3-page::after,#book-3 .b3-page::after{display:none}
#book-1 .b3-leaf:nth-of-type(6),#book-2 .b3-leaf:nth-of-type(6),#book-3 .b3-leaf:nth-of-type(6){--lf-img:url(https://static.wixstatic.com/media/5e8914_d265132408074dd8bcf8eab8941bef63~mv2.webp)}
#book-1 .b3-leaf:nth-of-type(6)::after,#book-2 .b3-leaf:nth-of-type(6)::after,#book-3 .b3-leaf:nth-of-type(6)::after{content:"";position:absolute;inset:0;background:var(--pg) 50% 50%/100% 100% no-repeat;transform:scaleX(-1);pointer-events:none}
#book-1 .b3-leaf:nth-of-type(6){--pg:url(https://static.wixstatic.com/media/5e8914_c7f3c1f691d54fd18f2b40ec282d8ac4~mv2.webp)}
#book-2 .b3-leaf:nth-of-type(6){--pg:url(https://static.wixstatic.com/media/5e8914_d57cf59794974787acd1dd8936a4dc53~mv2.webp)}
#book-3 .b3-leaf:nth-of-type(6){--pg:url(https://static.wixstatic.com/media/5e8914_6a71f6dc2d314fb19abf9890a4f6a393~mv2.webp)}

/* v575 (22.10.2026): chips are soft and rounded, set in italic book type instead of small boxed labels (TBL, Unreachable) */
.chips li,.chips.center li,:is(.brow,.unreach) .chips li{border-radius:999px;padding:8px 18px 9px;font-family:'EB Garamond',Georgia,serif;font-style:italic;font-size:16px;letter-spacing:.01em;line-height:1.15;border-color:rgba(199,167,155,.3)}
.unreach .chips li,body.ur .vhead .ur-vt .chips li{border-color:rgba(143,176,255,.32)}

/* ===== v578 (22.10.2026): the paper crane in the footer. On hover it flaps in a soft halo and unfolds a small card above itself, centred ===== */
footer.site{--tip-bg:#1c130f;--tip-bg2:#2c1c15;--tip-line:rgba(196,154,108,.5);--tip-ink:#C49A6C;--tip-hi:#E9C597;--tip-glow:rgba(196,154,108,.4);--tip-text:#EDE3D6}
body.bt footer.site{--tip-bg:#0A100F;--tip-bg2:#15221f;--tip-line:rgba(196,160,106,.5);--tip-ink:#C4A06A;--tip-hi:#F1E2C4;--tip-glow:rgba(169,191,174,.42);--tip-text:#E9E0CC}
body.ur footer.site{--tip-bg:#0B1020;--tip-bg2:#16223C;--tip-line:rgba(152,175,226,.5);--tip-ink:#98AFE2;--tip-hi:#DCE3F0;--tip-glow:rgba(152,175,226,.42);--tip-text:#DCE3F0}
body footer.site.ground .ft-mark{position:relative}
body footer.site.ground .ft-mark::before{content:"";position:absolute;left:50%;top:50%;width:96px;height:96px;margin:-48px 0 0 -48px;border-radius:50%;background:radial-gradient(closest-side,var(--tip-glow),transparent 72%);opacity:0;transform:scale(.4);transition:opacity .5s,transform .8s cubic-bezier(.2,.8,.2,1);pointer-events:none}
body footer.site.ground .ft-mark::after{content:"";position:absolute;left:50%;bottom:100%;width:220px;height:26px;margin-left:-110px}
body footer.site.ground .ft-mark:hover::before,body footer.site.ground .ft-mark:focus-within::before{opacity:1;transform:scale(1)}
body footer.site.ground .ft-mark img{position:relative;z-index:1;transform-origin:50% 70%}
body footer.site.ground .ft-mark:hover img,body footer.site.ground .ft-mark:focus-within img{animation:ftCrane 2.8s ease-in-out infinite}
@keyframes ftCrane{0%,100%{transform:translateY(-3px) rotate(-4deg) scaleX(1)}30%{transform:translateY(-7px) rotate(2deg) scaleX(.9)}60%{transform:translateY(-4px) rotate(-2deg) scaleX(1.03)}}
body footer.site.ground .ft-mark .ft-tip{position:absolute;left:50%;right:auto;bottom:calc(100% + 18px);z-index:6;display:block;white-space:nowrap;text-align:center;
  padding:13px 26px 14px;border-radius:16px 3px 16px 3px;
  background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.11) 50%,transparent 60%) 130% 0/250% 100% no-repeat,linear-gradient(160deg,var(--tip-bg2),var(--tip-bg) 72%);
  border:1px solid var(--tip-line);
  box-shadow:0 20px 40px -10px rgba(0,0,0,.8),0 0 0 4px rgba(0,0,0,.16),0 0 36px -8px var(--tip-glow),inset 0 1px 0 rgba(255,255,255,.08);
  font-family:'EB Garamond',Georgia,serif;font-style:italic;font-size:16.5px;letter-spacing:.02em;line-height:1.3;color:var(--tip-text);
  opacity:0;visibility:hidden;pointer-events:none;transform-origin:50% 100%;
  transform:translateX(-50%) translateY(12px) rotateX(-75deg) scale(.88);
  transition:opacity .35s ease,transform .65s cubic-bezier(.2,.9,.25,1.15),visibility 0s linear .65s}
body footer.site.ground .ft-mark:hover .ft-tip,body footer.site.ground .ft-mark:focus-within .ft-tip,body footer.site.ground .ft-mark:focus .ft-tip{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0) rotateX(0) scale(1);transition-delay:0s;animation:ftShine 3.2s .5s ease-in-out infinite}
@keyframes ftShine{0%{background-position:130% 0,0 0}55%,100%{background-position:-30% 0,0 0}}
body footer.site.ground .ft-mark .ft-tip::before{content:"\2665";position:static;display:inline-block;width:auto;height:auto;margin:0 10px 0 0;color:var(--tip-ink);font-style:normal;font-size:15px;text-shadow:0 0 12px var(--tip-glow);transform-origin:50% 60%;animation:ftBeat 1.5s ease-in-out infinite}
@keyframes ftBeat{0%,100%{transform:scale(1)}14%{transform:scale(1.4)}28%{transform:scale(1)}42%{transform:scale(1.22)}}
body footer.site.ground .ft-mark .ft-tip::after{content:"";position:absolute;left:50%;right:auto;top:100%;width:12px;height:12px;margin:-7px 0 0 -6px;border:0;border-right:1px solid var(--tip-line);border-bottom:1px solid var(--tip-line);background:var(--tip-bg);transform:rotate(45deg)}
body footer.site.ground .ft-mark .ft-tip a{position:relative;font-family:'Cinzel',Georgia,serif;font-style:normal;font-size:13.5px;letter-spacing:.14em;text-transform:lowercase;color:var(--tip-hi);text-decoration:none;padding-bottom:3px;background:linear-gradient(var(--tip-hi),var(--tip-hi)) 0 100%/0 1px no-repeat;transition:background-size .6s .35s cubic-bezier(.2,.8,.2,1),color .3s,text-shadow .3s}
body footer.site.ground .ft-mark:hover .ft-tip a,body footer.site.ground .ft-mark:focus-within .ft-tip a{background-size:100% 1px}
body footer.site.ground .ft-mark .ft-tip a:hover,body footer.site.ground .ft-mark .ft-tip a:focus-visible{color:#fff;text-shadow:0 0 14px var(--tip-glow)}
@media (max-width:700px){
  body footer.site.ground .ft-mark .ft-tip{left:auto;right:-10px;transform-origin:calc(100% - 34px) 100%;transform:translateY(12px) rotateX(-75deg) scale(.88)}
  body footer.site.ground .ft-mark:hover .ft-tip,body footer.site.ground .ft-mark:focus-within .ft-tip,body footer.site.ground .ft-mark:focus .ft-tip{transform:translateY(0) rotateX(0) scale(1)}
  body footer.site.ground .ft-mark .ft-tip::after{left:auto;right:30px;margin-left:0}
}
@media (prefers-reduced-motion:reduce){body footer.site.ground .ft-mark:hover img,body footer.site.ground .ft-mark:focus-within img,body footer.site.ground .ft-mark .ft-tip,body footer.site.ground .ft-mark .ft-tip::before{animation:none!important}}
nav.main .sub{width:max-content;min-width:260px}
nav.main .sub a{white-space:nowrap}

/* ===== v579 (22.10.2026): footer card smaller, no heart, link in the same font as the text ===== */
body footer.site.ground .ft-mark::before{width:74px;height:74px;margin:-37px 0 0 -37px}
body footer.site.ground .ft-mark .ft-tip{bottom:calc(100% + 14px);padding:9px 18px 10px;font-size:14.5px}
body footer.site.ground .ft-mark .ft-tip::before{content:none;display:none}
body footer.site.ground .ft-mark .ft-tip a{font:inherit;letter-spacing:inherit;text-transform:none;font-style:italic}

/* v580 (22.10.2026): the illustrations heading is the same size on all three series pages (each in its own typeface) */
h2#art.ttl{font-size:clamp(22px,2.5vw,30px)}
body.ur h2#art.ttl{font-size:clamp(26px,2.9vw,35px)}

/* ===== v581 (23.10.2026) home hero ===== */
/* the local glow wraps words into new spans: they must not inherit the entrance animation (the line vanished for a moment on first hover) */
.stage.hero .lead .gw{animation:none!important;opacity:1;display:inline}
/* the sigil: a click only nudges it, like the hover */
.stage.hero .sigil{cursor:pointer;-webkit-tap-highlight-color:transparent}
.stage.hero .sigil.nudge img{animation:sgNudge .9s cubic-bezier(.3,.6,.3,1)}
@keyframes sgNudge{0%{transform:rotate(8deg) scale(1.08)}30%{transform:rotate(-4deg) scale(1.12)}60%{transform:rotate(12deg) scale(1.05)}100%{transform:rotate(8deg) scale(1.08)}}
@media (prefers-reduced-motion:reduce){.stage.hero .sigil.nudge img{animation:none}}

/* ===== v586 (23.10.2026): consistency round ===== */
/* Homepage "Timeline" label: a little higher, larger, in the soft serif used for the footer headings */
.verse .wrap>.lbl{font-family:var(--f-sub);font-style:italic;font-size:clamp(21px,2.1vw,28px);letter-spacing:.05em;text-transform:none;line-height:1.1;margin-bottom:14px;transform:translateY(-18px)}
/* Footer: the two lines use the soft fading hairline (transparent, candle, transparent) like the rest of the site */
footer.site .ft-nl{border-left:0;position:relative}
footer.site .ft-nl::before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--candle) 60%,transparent) 20%,color-mix(in srgb,var(--candle) 60%,transparent) 80%,transparent)}
footer.site .ft-rule{height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--candle) 55%,transparent) 18%,color-mix(in srgb,var(--candle) 55%,transparent) 82%,transparent)}
/* Subscribe: on the ivory field the button turns wax red (not yellow) */
.ft-nl button:hover,.ft-nl button:focus-visible,footer.site .ft-nl button:hover,footer.site .ft-nl button:focus-visible{background:#8f2a24;color:var(--ivory)}
/* Text links in running text react the same way everywhere: brighter, underline in full colour */
main p a:not([class]),main .ku a,.sound-note a,.bt-more a,.ct-priv a,main .ink-fill a{transition:filter .25s,text-decoration-color .25s,color .25s}
main p a:not([class]):hover,main p a:not([class]):focus-visible,main .ku a:hover,.sound-note a:hover,.bt-more a:hover,main .ink-fill a:hover{filter:brightness(1.35);text-decoration-color:currentColor}

/* v587: trope chips stay on two lines on tablets and desktops */
.unreach .chips{max-width:min(100%,58em)}
.brow .chips{max-width:min(100%,46em)}
@media (max-width:900px){:is(.brow,.unreach) .chips{gap:6px}:is(.brow,.unreach) .chips li{padding-inline:11px}}
.unreach .chips{gap:7px}
.unreach .chips li{font-size:11.5px;letter-spacing:.04em;padding-inline:13px}

/* v593: no single word alone on the last line, anywhere */
p,li,dd,figcaption,blockquote,.lead,.ab-sub{text-wrap:pretty}
h1,h2,h3,h4,.ttl,.lbl{text-wrap:balance}

/* ===== v594 (24.10.2026, round 1, phone feedback) ===== */
/* Book III label ("The Blairville Legacies, Book III"): a stronger, brighter face on phone AND desktop (the numeral keeps its Playfair) */
.release .rel-lbl>span:last-child{font-family:var(--f-display);font-weight:600;font-size:clamp(16px,1.45vw,21px);letter-spacing:.16em;text-transform:uppercase;color:#E9D7BA;text-shadow:0 2px 12px rgba(0,0,0,.9)}
.release .copy:hover .rel-lbl>span:last-child,.release .copy>.rel-lbl>span:last-child{letter-spacing:.16em}
/* home series pitch + book III meta share the series look */
.hero-crane{display:none}
@media (max-width:720px){
  /* timeline: less empty black between the hero flowers and the label; the paper crane sits in the flowers */
  .verse{padding-top:84px}
  .verse .tl-crane-link{display:none}
  .stage.hero .hero-crane{display:block;position:absolute;z-index:3;left:18px;bottom:26px;line-height:0}
  .stage.hero .hero-crane .tl-crane{display:block;position:static;width:24px;height:auto;opacity:.8;filter:drop-shadow(0 6px 8px rgba(0,0,0,.6)) saturate(.85) brightness(.92);transform:rotate(-8deg);animation:tlCrane 11s ease-in-out infinite;cursor:pointer}
  /* Book III band: smaller title, bigger "Out now", release facts on two lines, way-in links on two lines */
  .release #new-title{font-size:22px!important}
  .release .date.is-out{font-size:clamp(48px,13vw,56px)}
  .release .rel-lbl>span:last-child{font-size:15px;letter-spacing:.12em}
  .release .r-meta .nw{display:block}
  .release .r-meta>[aria-hidden="true"]{display:none}
  .release .r-meta{line-height:2}
  .release .r-more .rm-q{display:block;margin-bottom:4px}
  .release .r-more .rm-l{display:block;white-space:nowrap;font-size:11.5px;letter-spacing:.1em}
  /* series band: feathers out of the way of the reading, pitch closer to the numerals */
  .series>.feather.f1,.series .feather.f1{top:-14px!important}
  .series>.feather.f2{bottom:-42px!important}
  .series .head{margin-bottom:-26px}
  /* Unreachable: the "Also by Maezos" line sits higher, further from the title */
  .unreach .ur-also{position:relative;top:-24px}
  /* footer (all pages): the newsletter hairline no longer touches the text */
  footer.site .ft-nl{padding-left:22px!important}
  /* footer (all pages): the three links stacked on the left, the paper crane on the right */
  footer.site .ft-bottom{align-items:stretch}
  footer.site .ft-legal{position:relative;flex-direction:column;flex-wrap:nowrap;align-items:flex-start;gap:12px;width:100%;padding-right:64px;box-sizing:border-box}
  body footer.site.ground .ft-legal .ft-mark{position:absolute;right:6px;bottom:0;margin:0}
}
@media (max-width:350px){.release .r-more .rm-l{font-size:10.5px;letter-spacing:.06em}.release .rel-lbl>span:last-child{font-size:13px;letter-spacing:.08em}}

/* ===== v595 (24.10.2026, round 2, phone feedback) ===== */
/* the small label above a section headline ("Illustrations", "Beyond the pages", ...): the stronger face of the Book III label, on phone AND desktop.
   Unreachable, Botanink and Project O keep their own ink typefaces. */
body:not(.ur):not(.bt):not(.po) :is(.center,.ins-head,.wiki-panel,.ab-head,.abh-copy,.ab-bio-text,.ab-wiki)>p.lbl{font-family:var(--f-display);font-weight:600;font-size:clamp(14px,1.25vw,18px);letter-spacing:.2em;color:#E9D7BA;text-shadow:0 2px 12px rgba(0,0,0,.9)}
.d-br{display:block}
@media (max-width:720px){
  /* timeline headline on two lines */
  .verse #verse-title{font-size:min(17px,4.05vw)}
  .d-br{display:none}
  /* home: a book that opens on tap stays where it is (no lift) */
  .books .b3:hover .b3-inner,.books .b3:focus-visible .b3-inner,.books .b3-riffle:hover .b3-inner,.books .b3-riffle:focus-visible .b3-inner{transform:rotateY(-6deg) rotateX(2deg)!important}
  /* footer (all pages): social icons on the left edge, the paper crane centred on the "Privacy policy" line */
  footer.site .ft-bottom .ft-social{justify-content:flex-start;margin-left:-12px}
  body footer.site.ground .ft-legal .ft-mark{top:50%;bottom:auto;translate:0 -50%}

  /* ---- The Blairville Legacies page ---- */
  /* header: logo, tagline and chips sit higher; chips smaller (four lines at most) */
  .series:has(.blist) .head{margin-bottom:-18px}
  .series .head .chips.center{gap:6px;max-width:100%}
  .series .head .chips.center li{font-size:13.5px;padding:5px 12px 6px}
  /* book rows: title + numeral, tagline, the book, blurb, facts, buttons */
  .blist .brow{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}
  .blist .brow>.copy{display:contents}
  .blist .brow>.copy>h3{order:1;margin:0}
  .blist .brow>.copy>.tagline{order:2;margin:0}
  .blist .brow>a.cv-a{order:3;margin:6px 0 12px;width:min(220px,62vw)}
  .blist .brow>.copy>.blurb{order:4;width:100%;max-width:none;font-size:16px;text-align:left}
  .blist .brow>.copy>.blurb p{line-height:1.62}
  .blist .brow>.copy>.fold-btn{order:5;align-self:center;margin:-6px 0 0}
  .blist .brow>.copy>.facts{order:6;width:100%;max-width:none;box-sizing:border-box;grid-template-columns:1fr 1fr;gap:16px 12px;text-align:center}
  .blist .brow>.copy>.facts>div:nth-child(3){grid-column:1 / -1}
  .blist .brow>.copy>.row{order:7;width:100%}
  .blist .brow>.copy>*{position:relative;z-index:3}
  .blist .feather.fg{right:0!important;top:-10px!important;width:36px!important}
  /* an opened book slides right and shrinks, so the left page stays on screen */
  .blist .brow .b3:hover .b3-inner,.blist .brow .b3:focus-visible .b3-inner{transform:translateX(58px) scale(.86)!important}
}
@media (max-width:350px){.series .head .chips.center li{font-size:12.5px;padding:4px 10px 5px}}
/* Unreachable: same stronger label face (Tenor Sans there too), in the cool ink-white of that page; Botanink keeps its own Baskerville labels */
body.ur :is(.center,.wiki-panel,.copy)>p.lbl{font-family:var(--f-display);font-weight:600;font-size:clamp(14px,1.25vw,18px);letter-spacing:.2em;color:#DDE5F5;text-shadow:0 2px 12px rgba(0,0,0,.9)}

/* v599: consent line under the newsletter form */
footer.site .ft-nl .ft-nl-consent{margin:0;font-family:var(--f-label);font-size:11.5px;line-height:1.6;letter-spacing:.02em;color:#E2D6C8;opacity:.7;max-width:36em;text-wrap:balance;text-shadow:0 1px 8px rgba(0,0,0,.85)}
footer.site .ft-nl .ft-nl-consent a{font:inherit;letter-spacing:inherit;text-transform:none;display:inline;padding:0;color:inherit;text-decoration:underline;text-underline-offset:2px;transition:opacity .25s}
footer.site .ft-nl .ft-nl-consent a:hover,footer.site .ft-nl .ft-nl-consent a:focus-visible{opacity:1}
.ft-nl form.is-sent button{opacity:.7}

/* v605 (mobile only): the hero melts into the Maezosverse section instead of ending on a hard edge */
@media (max-width:720px){
  .stage.hero:has(+ #maezosverse)::before{content:"";position:absolute;left:0;right:0;bottom:0;height:clamp(150px,36vw,210px);z-index:2;pointer-events:none;background:linear-gradient(180deg,rgba(6,4,4,0) 0%,rgba(6,4,4,.06) 14%,rgba(6,4,4,.2) 32%,rgba(6,4,4,.44) 52%,rgba(6,4,4,.72) 74%,rgba(6,4,4,.92) 90%,#060404 100%)}
  main>section.verse{--ft:44px}
}

/* v610 (mobile only): less empty black space around the Timeline - the section starts closer to the hero fade and hands over to the release section sooner */
@media (max-width:720px){
  main>section.verse{padding-top:36px;padding-bottom:30px}
  main>section.release{padding-top:30px!important}
}

/* v611 (mobile): tapping the text under a book opens the book like hovering it does (book-tap.js sets .is-open) */
.b3.is-open .b3-inner{transform:translateY(-6px) rotateY(-22deg) rotateX(2deg)}
.b3-riffle.is-open .b3-inner{transform:translateY(-8px) rotateY(-20deg) rotateX(3deg)}
.b3.is-open .b3-cover{transform:translateZ(calc(var(--d)/2)) rotateY(-32deg)}
.b3-riffle.is-open .b3-cover{transform:translateZ(calc(var(--d)/2)) rotateY(-114deg)}
.b3.is-open img.b3-front{filter:brightness(1.07)}
.b3.is-open .b3-front-sheen{opacity:1}
.b3.is-open .b3-leaf{transform:translateZ(calc(var(--d)/2 - 1px - var(--i) * 1px)) rotateY(var(--a));transition-delay:calc(.12s + var(--i) * .075s)}
.b3.is-open::after{transform:translateX(-6%) scaleX(1.25);opacity:.85}
.b3.is-open .b3-inner{transform:none}
.b3.is-open .b3-cover{transform:translateZ(calc(var(--d)/2))}
.b3.is-open .b3-leaf{transform:translateZ(calc(var(--d)/2 - 1px - var(--i) * 1px))}
.b3.is-open .b3-inner{transform:none}
.b3.is-open .b3-cover{transform:translateZ(calc(var(--d)/2))}
.b3.is-open .b3-leaf{transform:translateZ(calc(var(--d)/2 - 1px - var(--i) * 1px))}
.books .b3.is-open .b3-inner{transform:translateY(-8px) rotateY(-6deg) rotateX(2deg)}
.books .b3.is-open .b3-cover{transform:translateZ(calc(var(--d)/2)) rotateY(-118deg);transition-duration:1.1s}
.books .b3.is-open .b3-leaf{transition-delay:calc(.05s + var(--i) * .045s)}
.books .b3.is-open .b3-leaf{transform:translateZ(calc(var(--d)/2 - 1px - var(--i) * 1px)) rotateY(var(--a))}
.blist .brow .b3.is-open .b3-inner{transform:translate(34px,-8px) rotateY(-6deg) rotateX(2deg)}
.brow .b3.is-open .b3-cover{transform:translateZ(calc(var(--d)/2)) rotateY(-52deg)}
.brow .b3.is-open .b3-inner{transform:translateY(-8px) rotateY(-6deg) rotateX(2deg)}
.brow .b3.is-open .b3-cover{transform:translateZ(calc(var(--d)/2)) rotateY(-118deg);transition-duration:1.1s}
.brow .b3.is-open .b3-leaf{transition-delay:calc(.05s + var(--i) * .045s)}
.brow .b3.is-open .b3-leaf{transform:translateZ(calc(var(--d)/2 - 1px - var(--i) * 1px)) rotateY(var(--a))}
.brow .b3.is-open::after{transform:translateX(-26%) scaleX(1.9);opacity:1}
.blist .brow .b3.is-open::after{transform:translateX(-4%) scaleX(1.9)}
.blist .brow .b3.is-open .b3-inner{transform:none!important}
.brow .b3.is-open .b3-cover{transform:translateZ(calc(var(--d)/2)) rotateY(-52deg)}
.books .b3.is-open .b3-inner,.books .b3-riffle.is-open .b3-inner{transform:rotateY(-6deg) rotateX(2deg)!important}
.blist .brow .b3.is-open .b3-inner{transform:translateX(58px) scale(.86)!important}

/* v614 (phone, all pages): footer link columns fold away like an accordion (fx.js adds .acc and the button); headings line up with "letters from maezos" */
footer.site .ft-acc{all:unset;display:inline;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:default;pointer-events:none}
footer.site .ft-acc svg{display:none}
@media (max-width:720px){
  footer.site .ft-top:has(.ft-col.acc){row-gap:0}
  footer.site .ft-top:has(.ft-col.acc) .ft-brand{margin-bottom:26px}
  footer.site .ft-col.acc{padding-left:22px;margin:0;gap:0;border-top:1px solid rgba(199,167,155,.2)}
  footer.site .ft-col.acc + .ft-col.acc{border-top:1px solid rgba(199,167,155,.2)}
  footer.site .ft-col.acc + .ft-nl{border-top:1px solid rgba(199,167,155,.2);padding-top:22px!important}
  footer.site .ft-col.acc .ft-h{margin:0}
  footer.site .ft-acc{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;box-sizing:border-box;padding:15px 2px 15px 0;cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent}
  footer.site .ft-acc svg{display:block;flex:0 0 auto;width:15px;height:15px;opacity:.75;transition:transform .4s cubic-bezier(.2,.7,.2,1),opacity .3s}
  footer.site .ft-acc:focus-visible{outline:1px solid rgba(237,227,214,.6);outline-offset:4px}
  footer.site .ft-col.acc.open .ft-acc svg{transform:rotate(180deg);opacity:1}
  footer.site .ft-col.acc ul{overflow:hidden;max-height:0;opacity:0;margin:0!important;padding-bottom:0;transition:max-height .45s cubic-bezier(.2,.7,.2,1),opacity .35s ease,padding .45s ease}
  footer.site .ft-col.acc.open ul{max-height:420px;opacity:1;padding-bottom:16px}
}
@media (max-width:720px) and (prefers-reduced-motion:reduce){
  footer.site .ft-col.acc ul,footer.site .ft-acc svg{transition:none}
}

/* v616 (26.10.2026, phone, all pages except Project O): one alignment rule and one spacing rhythm.
   Short lines (titles, labels, claims, quotes, buttons, book cards) stay centred; copy of three lines or more, lists and the timeline read flush left. */
@media (max-width:720px){
  /* alignment: the timeline block (home, Maezosverse) sits on the same left edge as its circles */
  main .verse .wrap{text-align:left}
  main .verse .lbl,main .verse h2.ttl,main .verse .ku{text-align:left}
  /* alignment: longer copy under a centred heading reads flush left */
  .cwtext p,.wiki-panel p.prose:not(.wiki-note){text-align:left;text-wrap:pretty}
  .series .pitch p,.ins-copy>p:not(.lbl){text-align:left;text-wrap:pretty}
  .crest{text-align:left}
  .crest .copy p,.crest .copy p .tx-ln{text-align:left;text-wrap:pretty}
  .crest .copy>.lbl,.crest .copy>h2{text-align:center}
  /* rhythm: label, title and copy always 18px apart; section titles share one size per page family */
  .crest .copy{gap:18px}
  .wiki-panel>.lbl,.ins-head>.lbl,.ab-head>.lbl{margin-bottom:14px}
  body:not(.ur):not(.bt):not(.po) :is(.center,.ins-head,.wiki-panel,.ab-head,.copy)>h2.ttl{font-size:24px;line-height:1.25}
  body.ur :is(.center,.wiki-panel,.copy)>h2.ttl{font-size:26px;line-height:1.15}
  body.bt .bt-head h2.ttl{font-size:30px}
  /* Unreachable: genre line fits on one line, no lone word on a second line */
  .unreach p.genre .g-l{font-size:clamp(16px,5.2vw,24px);white-space:nowrap;letter-spacing:.1em}
  /* TBL: tag chips and the series intro were almost touching */
  .series .pitch{padding-top:22px}
  /* Unreachable facts strip follows the TBL pattern: two short facts, genre on its own row */
  .unreach .facts{grid-template-columns:1fr 1fr;gap:16px 12px}
  .unreach .facts>div:nth-child(3){grid-column:1 / -1}
  /* section breathing room: one value instead of 44 to 90 */
  .bt-heart,.bt-books,.bt-gardens,.bt-notes{padding-top:56px;padding-bottom:56px}
  main #parts-band{padding-top:56px;padding-bottom:56px}
  main section:has(>.wrap>.wiki-panel){padding-top:56px;padding-bottom:56px}
  main section.band:has(>.wrap>.crest){padding-top:56px;padding-bottom:56px}
}

/* v617 (26.10.2026): the hero line is Maezos' own series description (as on the TBL page), set like the TBL tagline instead of the spaced capitals */
.stage.hero .motto{font-family:'Alice',Georgia,serif;font-style:italic;font-size:clamp(17px,1.5vw,20px);letter-spacing:0;line-height:1.5;text-transform:none;max-width:28em;margin-inline:auto;text-wrap:balance}

/* ===== v618 (26.10.2026, phone round; "New" also on desktop) ===== */
/* keep the numeral sizes that came with the removed phone filters */
@media (max-width:700px){.blist .copy>.bnum,.blist .brow>.bnum{font-size:36px}}

/* "New" (phone + desktop): no box any more, a gilded italic word between two fine rules with a small diamond, a slow sheen runs through it */
@keyframes newSheen{0%,55%{background-position:120% 0}85%,100%{background-position:-20% 0}}
.release .rel-lbl .new-tag{display:inline-flex;align-items:center;gap:.55em;padding:0;margin:0;background:none;border:0;box-shadow:none;font-family:"Cormorant Garamond","EB Garamond",Georgia,serif;font-style:italic;font-weight:500;font-size:36px;line-height:1.1;letter-spacing:.05em;text-transform:none;color:#E9C48C;filter:drop-shadow(0 0 12px rgba(217,162,95,.28)) drop-shadow(0 2px 6px rgba(0,0,0,.8))}
.release .rel-lbl .new-tag .nt-w{background:linear-gradient(100deg,#C9874A 0%,#E9C48C 38%,#FFF0D2 50%,#E9C48C 62%,#C9874A 100%);background-size:260% 100%;background-position:120% 0;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding:0 .08em;animation:newSheen 6s ease-in-out 1.2s infinite}
.release .rel-lbl .new-tag::before,.release .rel-lbl .new-tag::after{content:"";flex:0 0 auto;width:54px;height:9px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 54 9'><defs><linearGradient id='g' gradientUnits='userSpaceOnUse' x1='0' y1='0' x2='45' y2='0'><stop offset='0' stop-color='%23D9A25F' stop-opacity='0'/><stop offset='1' stop-color='%23D9A25F' stop-opacity='.85'/></linearGradient></defs><path d='M0 4.5H45' stroke='url(%23g)' stroke-width='1'/><path d='M49.5 1.2L52.8 4.5L49.5 7.8L46.2 4.5Z' fill='%23E9C48C'/></svg>") 0 0/100% 100% no-repeat}
.release .rel-lbl .new-tag::after{transform:scaleX(-1)}
@media (min-width:721px){.release .rel-lbl .new-tag{margin-left:-4px}.release .rel-lbl .new-tag::before{display:none}}
@media (prefers-reduced-motion:reduce){.release .rel-lbl .new-tag .nt-w{animation:none;background-position:50% 0}}

@media (max-width:720px){
  /* paper crane in the hero: right corner instead of left */
  .stage.hero .hero-crane{left:auto;right:18px}

  .release .rel-lbl .new-tag{font-size:34px}
  .release .copy>.rel-lbl{gap:14px!important}

  /* "New to Blairville?": the two links side by side, centred, with the dot between them */
  .release .r-more .rm-l{display:flex;justify-content:center;align-items:baseline;gap:.7em;margin-top:2px}
  .release .r-more .rm-l>[aria-hidden="true"]{display:inline}
  .release .r-more .rm-l a{display:inline;margin:0}

  /* series section: no "Get it on Amazon" text links under the three covers on the phone (the covers themselves stay links) */
  .series .books li>.buy{display:none!important}

  /* Unreachable: "Also by MAEZOS" stands out more on the phone: bigger, brighter, stronger glow, bolder side lines */
  .unreach .ur-also{font-size:16px;letter-spacing:.28em;gap:12px;color:#E4ECFF;text-shadow:0 0 10px rgba(152,175,226,.75),0 0 26px rgba(152,175,226,.45)}
  .unreach .ur-also::before,.unreach .ur-also::after{width:30px;height:2px;box-shadow:0 0 10px rgba(152,175,226,.7)}


  /* galleries (series, Unreachable, Botanink): smaller frames, so the neighbours peek in on both sides */
  .pano-track{gap:14px}
  .pano-track figure,body.ur .pano-track figure,body.bt .pano-track figure{height:150px!important}

  /* series page facts: Released and Genre stacked on the left, Pages stays where it was */
  .blist .brow>.copy>.facts>div:nth-child(1){grid-column:1;grid-row:1;text-align:left}
  .blist .brow>.copy>.facts>div:nth-child(2){grid-column:2;grid-row:1}
  .blist .brow>.copy>.facts>div:nth-child(3){grid-column:1 / -1;grid-row:2;text-align:left}
  .blist .brow .facts .r-cd{margin:8px 0 0}
}
/* consent line under the newsletter form: as wide as the form, no squared-off block (phone + desktop) */
footer.site .ft-nl .ft-nl-consent{max-width:none;text-wrap:pretty}

/* series page: books open by themselves (book-auto.js); same pose as the touch/hover open */
@media (max-width:720px),(hover:none){
  .blist .brow .b3.is-open .b3-cover{transform:translateZ(calc(var(--d)/2)) rotateY(-118deg);transition-duration:1.1s}
  .blist .brow .b3.is-open::after{transform:translateX(-26%) scaleX(1.9)}
}

/* ===== v619 (26.10.2026, phone round 2) ===== */

/* Book III head (phone + desktop): numeral, hairline and the real title, set like the book heads on the series page (Playfair numeral 1.3em, Cinzel title); the big title below is gone */
.release .rel-lbl .rl-w{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.release .copy>.rel-lbl>span.rl-wrap{display:inline-flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;justify-content:center;gap:0;max-width:100%;white-space:normal!important;font-family:var(--f-display);font-weight:400;font-size:clamp(24px,3vw,34px);letter-spacing:.08em;line-height:1.25;text-transform:none;color:#EDE3D6;text-shadow:0 2px 12px rgba(0,0,0,.9)}
.release .rel-lbl .rl-wrap .rl-b{display:inline-flex!important;align-items:center;order:0!important;margin:0!important;line-height:1;text-align:left}
.release .rel-lbl .rl-wrap .rn{position:relative;font-family:"Playfair Display",Georgia,serif;font-size:1.3em!important;font-weight:400;line-height:1!important;letter-spacing:0!important;margin:0 .95em 0 0!important;padding-right:.1em;vertical-align:baseline!important;color:#D8C2A2;text-shadow:0 2px 10px rgba(0,0,0,.9)}
.release .rel-lbl .rl-wrap .rn::after{content:"";position:absolute;right:-.55em;top:.18em;bottom:.12em;width:1px;background:rgba(216,194,162,.45)}
.release .rel-lbl .rl-t{display:block;min-width:0;text-align:left;text-wrap:balance}
@media (min-width:721px){.release .copy>.rel-lbl{flex-direction:column;align-items:center;gap:8px}}
@media (min-width:821px){
  .release .copy>.rel-lbl{align-items:flex-start}
  /* the title row is gone: the head takes its row */
  .release .copy>.lbl{grid-row:2 / span 2}
}

@media (max-width:720px){
  /* footer (all pages): social icons on the left again */
  footer.site .ft-bottom .ft-social{justify-content:flex-start;margin-left:-12px;margin-right:0}

  /* galleries (series, Unreachable, Botanink): the corner marks are finer and sit right in the corners, so the pictures stay the focus */
  body .pano-track figure::before,body.ur .pano-track figure::before,body.bt .pano-track figure::before{inset:4px!important;background-size:11px 1px,1px 11px,11px 1px,1px 11px,11px 1px,1px 11px,11px 1px,1px 11px!important}
  .lb .lb-c{width:14px;height:14px;border-width:1px;filter:none}
  .lb .lb-c1{left:3px;top:3px}.lb .lb-c2{right:3px;top:3px}.lb .lb-c3{left:3px;bottom:3px}.lb .lb-c4{right:3px;bottom:3px}

  /* Unreachable: the paper crane no longer drifts behind the content warnings, it sits up by the "Three parts" heading */
  body.ur #parts-band .cr2s .cr2:first-child{top:2%!important;bottom:auto!important}

  /* facts under the books (series page and Unreachable): a catalogue line per fact with a dotted leader instead of a boxed grid, so the genre fits on one line */
  .blist .brow>.copy>.facts,.unreach .facts{display:block!important;position:relative;width:100%;max-width:none;box-sizing:border-box;margin:8px 0 0!important;padding:18px 0 2px!important;border:0!important;text-align:left}
  .blist .brow>.copy>.facts::before,.unreach .facts::before{content:"";position:absolute;left:50%;top:0;width:64px;height:1px;translate:-50% 0;background:linear-gradient(90deg,transparent,rgba(217,162,95,.7),transparent)}
  .unreach .facts::before{background:linear-gradient(90deg,transparent,rgba(152,175,226,.7),transparent)}
  .blist .brow>.copy>.facts>div,.unreach .facts>div{display:flex!important;align-items:baseline;gap:10px;grid-column:auto!important;grid-row:auto!important;margin:0;padding:7px 0;text-align:left!important}
  .blist .brow>.copy>.facts>div::after,.unreach .facts>div::after{content:"";order:1;flex:1 1 14px;min-width:14px;border-bottom:1px dotted rgba(216,194,162,.34);transform:translateY(-.3em)}
  .unreach .facts>div::after{border-bottom-color:rgba(136,153,183,.42)}
  .blist .brow>.copy>.facts dt,.unreach .facts dt{order:0;flex:0 0 auto;margin:0;text-align:left}
  .blist .brow>.copy>.facts dd,.unreach .facts dd{order:2;flex:0 1 auto;margin:0;text-align:right;font-size:17px;line-height:1.3}
  .blist .brow .facts .r-cd{margin:6px 0 0 auto!important}
}

/* v621 (owner, 27.10.2026): Book III head. (1) Hover on the section no longer widens the title letter-spacing (it wrapped "A Society of Traitors" onto two lines);
   (2) desktop: "New" has no ray on the right and sits higher, away from the title; phones keep the rays on both sides. */
.release .copy:hover .rel-lbl>span.rl-wrap,.release .copy .rel-lbl>span.rl-wrap{letter-spacing:.08em}
@media (min-width:721px){
  .release .rel-lbl .new-tag::before,.release .rel-lbl .new-tag::after{display:none}
  .release .rel-lbl .new-tag{position:relative;top:-18px}
}
/* v621: newsletter consent note never leaves one word alone on its last line (all pages) */
footer.site .ft-nl .ft-nl-consent{text-wrap:pretty}
body.bt footer.site .ft-nl .ft-nl-consent{text-wrap:pretty}

/* v622: golden line under "New" (like the content-warning line, a little longer) */
.release .rel-lbl .new-tag{position:relative}
.release .rel-lbl .new-tag .nt-line{position:absolute;left:50%;bottom:-9px;width:104px;height:1px;translate:-50% 0;background:linear-gradient(90deg,transparent,rgba(217,162,95,.75) 30%,rgba(233,196,140,.9) 50%,rgba(217,162,95,.75) 70%,transparent);pointer-events:none}
@media (min-width:721px){.release .rel-lbl .new-tag .nt-line{left:0;translate:none;width:112px;background:linear-gradient(90deg,rgba(233,196,140,.9),rgba(217,162,95,.7) 55%,transparent)}}
/* v622: hovered headlines keep their no-wrap rule after the word glow splits them into spans */
.gw{white-space:inherit}
/* v622: the crane next to Maplecrest no longer glows or grows on hover */
body.ur .ur-set .crest>img:hover{filter:none;transform:none}
/* v622/623: Ink Duet POV blocks: both as justified paragraphs, same format */
@media (min-width:621px){
  .ur-blurb .ur-povs{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .ur-blurb .ur-pov p:not(.pov){text-align:justify;hyphens:auto;-webkit-hyphens:auto}
}
@media (min-width:1280px){
  .ur-blurb .ur-povs{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}
  .ur-blurb .ur-pov p:not(.pov){text-wrap:balance}
}
/* the question line stands out */
.ur-blurb>p.tag{font-family:"Cormorant Garamond","EB Garamond",Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(23px,2.1vw,28px);line-height:1.35;letter-spacing:.01em;color:var(--ink-hi,#C9D6F2);text-shadow:0 0 22px rgba(152,175,226,.35),0 2px 10px rgba(0,0,0,.7);padding-left:18px;border-left:2px solid rgba(152,175,226,.55);margin:1.1em 0 1.1em}
@media (max-width:620px){.ur-blurb>p.tag{font-size:23px;padding-left:14px}}
/* newsletter consent: same colour as the text above it, everywhere */
footer.site .ft-nl .ft-nl-consent{opacity:1}
body.ur footer.site .ft-nl .ft-nl-consent{color:#C3CDE0}
footer.site .ft-nl .note:empty{display:none}
footer.site .ft-nl .ft-nl-consent{margin-top:10px}

/* ===== v628 (30.10.2026, phone round 3 + Beyond the pages removed) ===== */
.m-br{display:none}

@media (max-width:720px){
  /* Home, Book III band: no animations or effects on phones (they caused bugs and lag); the band stays calm and static */
  .release .thorn,.release .ct,.release .ash,.release .cover-stage::before,.release .cover-stage::after{display:none!important}
  .release,.release *,.release *::before,.release *::after{animation:none!important;transition:none!important}
  .release .copy>:not(.cover-stage){opacity:1!important;transform:none!important;filter:none!important}
  .release .date{background-position:50% 0!important}
  .release .rel-lbl .new-tag{filter:none!important}
  .release .rel-lbl .new-tag .nt-w{background-position:50% 0!important}

  /* Book III head: set like the book heads on the series page (numeral and hairline, title in two lines beside it); more air above, below the word "New" */
  .m-br{display:inline}
  .release .copy>.rel-lbl{gap:34px!important}
  .release .copy>.rel-lbl>span.rl-wrap{align-items:baseline!important;font-size:min(24px,6.1vw);letter-spacing:.08em;max-width:100%}
  .release .rel-lbl .rl-wrap .rl-b{align-items:baseline!important}
  .release .rel-lbl .rl-wrap .rl-t{white-space:nowrap;text-wrap:nowrap}

  /* series page: the pitch under the chips is centred; the book heads have no numeral animation and all break into two lines */
  .series .pitch p{text-align:center;text-wrap:balance}
  .brow h3 .tnum{opacity:1!important;filter:none!important;transform:none!important;transition:none!important;animation:none!important}
  .brow h3{text-wrap:nowrap}

  /* footer accordion: the links never squeeze into each other while the list folds away (plain block list, no flex shrinking) */
  footer.site .ft-col.acc ul{display:block}
  footer.site .ft-col.acc ul li+li{margin-top:10px}

  /* Unreachable (phone) */
  .unreach.ur-page .copy>.genre{margin:0 0 38px!important;text-align:center}
  .unreach.ur-page p.genre .g-l{font-size:clamp(22px,7vw,29px)!important;letter-spacing:.14em;color:#DCE7FF;text-shadow:0 0 20px rgba(150,185,255,.55),0 0 2px rgba(190,210,255,.5),0 2px 10px rgba(0,0,0,.8)}
  .unreach.ur-page p.genre .g-l:first-child{font-size:clamp(24px,7.6vw,32px)!important;letter-spacing:.2em}
  .ur-blurb .ur-pov p:not(.pov),.ur-blurb>p:not(.tag){font-size:17.5px;line-height:1.62}
  body.ur .ur-set .crest .copy p:not(.lbl){font-size:17px;line-height:1.7}

  /* Unreachable (phone): the three parts stand side by side, like the three books on the home page */
  body.ur .ur-tp{flex-direction:row!important;align-items:flex-start!important;justify-content:center!important;gap:12px!important;margin-top:28px}
  body.ur .ur-tp .tp{width:calc((100% - 24px)/3)!important;flex:0 0 calc((100% - 24px)/3);min-width:0;--rot:0deg}
  body.ur .ur-tp .tp:nth-child(2){margin-bottom:0!important}
  body.ur .tp-num{margin-top:20px;font-size:10px;letter-spacing:.16em}
  body.ur .tp-name{margin-top:6px;font-size:10.5px;letter-spacing:.07em;line-height:1.35;white-space:normal!important;text-wrap:balance}
  body.ur .tp-pool{bottom:-16px;height:18px}
}

/* v640 (owner 30.10.2026): the three book titles on the series page stand out: larger, warm ivory with a candle glow, and a fine gold line under each title */
.blist .brow h3{font-size:clamp(29px,3.7vw,44px);letter-spacing:.09em;line-height:1.18;color:#F6EAD6;text-shadow:0 2px 14px rgba(0,0,0,.9),0 0 24px rgba(217,162,95,.34)}
.blist .brow h3 .tnum{color:#E9CFA3;text-shadow:0 2px 10px rgba(0,0,0,.9),0 0 18px rgba(217,162,95,.4)}
.blist .brow h3::after{content:"";display:block;width:74px;height:1px;margin:16px 0 0;background:linear-gradient(90deg,rgba(231,196,140,.95),rgba(231,196,140,0));box-shadow:0 0 10px rgba(217,162,95,.55)}
@media (max-width:820px){.blist .brow h3::after{margin-inline:auto;background:linear-gradient(90deg,rgba(231,196,140,0),rgba(231,196,140,.95),rgba(231,196,140,0));width:120px}}

/* v641 (owner 30.10.2026): Book III title on the home page gets the same emphasis as the titles on the series page (larger, warm ivory, candle glow, fine gold line below) */
.release .copy>.rel-lbl>span.rl-wrap{font-size:clamp(29px,3.7vw,44px);line-height:1.18;letter-spacing:.09em;color:#F6EAD6;text-shadow:0 2px 14px rgba(0,0,0,.9),0 0 24px rgba(217,162,95,.34)}
.release .copy .rel-lbl>span.rl-wrap,.release .copy:hover .rel-lbl>span.rl-wrap{letter-spacing:.09em}
.release .rel-lbl .rl-wrap .rn{color:#E9CFA3;text-shadow:0 2px 10px rgba(0,0,0,.9),0 0 18px rgba(217,162,95,.4)}
.release .copy>.rel-lbl::after{content:"";flex:0 0 auto;align-self:center;width:120px;height:1px;margin-top:6px;background:none;box-shadow:none}
@media (min-width:821px){.release .copy>.rel-lbl::after{align-self:flex-start;width:74px;margin-top:4px;background:none}}

/* v644: Home Book III title analogous to the series page (same size, line height, single line on desktop) */
@media (min-width:821px){
  .release .copy>.rel-lbl>span.rl-wrap{font-size:36px;line-height:1.18}
}
@media (min-width:1281px){
  .release .rel-lbl .rl-wrap .rl-t{white-space:nowrap;text-wrap:nowrap}
  .release .rel-lbl .rl-wrap .rl-t br{display:none}
}

/* v646: phones - on the home page the genre line above the book is highlighted like on the Unreachable page */
@media (max-width:720px){
  #unreachable p.genre .g-l{font-size:clamp(17px,5.1vw,21px)!important;letter-spacing:.08em;white-space:normal;color:#DCE7FF;text-shadow:0 0 20px rgba(150,185,255,.55),0 0 2px rgba(190,210,255,.5),0 2px 10px rgba(0,0,0,.8)}
  #unreachable p.genre .g-l:first-child{font-size:clamp(22px,6.8vw,27px)!important;letter-spacing:.2em}
}

/* v647: phones - more space between the Unreachable block and the footer */
@media (max-width:720px){#unreachable{padding-bottom:100px!important}}

/* v648: phones - Unreachable page: less space between the genre line and the book */
@media (max-width:720px){
  .unreach.ur-page .copy>.genre{margin-bottom:6px!important}
  .unreach.ur-page .wrap.grid>.ur-stage{margin-top:0!important}
}

/* v649: phones - Unreachable page: less space between the buttons and "Three parts"; "Follow the ink" intro back to left-aligned (one paragraph) */
@media (max-width:720px){
  #unreachable.ur-page{padding-bottom:40px!important}
  #parts-band{padding-top:48px!important}
}

/* v650: phones - series page: less space between the playlists note and the fan wiki block */
@media (max-width:720px){
  #playlists.sound{padding-bottom:10px!important}
  #playlists.sound+section.wiki{padding-top:24px!important}
}
