:root{
  --sky-deep:#1E2833; --sky-mid:#2A3644; --sky-low:#3D4E5E;
  --hill:#131A22; --tree:#10161D;
  --bone:#E7E2D4; --mist:#A4AEB4; --lastlight:#D3A65C;
}
*{margin:0;padding:0;box-sizing:border-box}
body{
  background:var(--sky-deep); color:var(--bone);
  font-family:"Newsreader",Georgia,serif; font-size:1.0625rem; line-height:1.7;
  -webkit-font-smoothing:antialiased; min-height:100vh; display:flex; flex-direction:column;
}
nav{
  display:flex; gap:1.6rem; align-items:baseline; justify-content:center;
  padding:1.3rem 1.5rem; font-size:.95rem; letter-spacing:.04em;
}
nav a{color:var(--mist); border-bottom:none;}
nav a:hover{color:var(--bone);}
nav a.here{color:var(--lastlight);}
nav .brand{font-family:"Cormorant Garamond",serif; font-weight:600; text-transform:uppercase; letter-spacing:.14em; color:var(--bone); font-size:1rem;}
.hero{
  position:relative; overflow:hidden; min-height:72vh;
  display:flex; flex-direction:column; justify-content:flex-start; align-items:center;
  text-align:center; padding:clamp(2.5rem,8vh,5rem) 1.5rem 0;
  background:linear-gradient(180deg,var(--sky-deep) 0%,var(--sky-mid) 58%,var(--sky-low) 100%);
}
img{max-width:100%; height:auto; display:block;}
.figure{width:280px; margin:1.5rem auto;}
.wordmark{
  font-family:"Cormorant Garamond",serif; font-weight:600;
  font-size:clamp(2rem,7vw,3.4rem); letter-spacing:.14em; text-transform:uppercase;
  color:var(--bone); z-index:2;
}
.wordmark span{color:var(--lastlight)}
.tagline{margin-top:.9rem; color:var(--mist); font-size:1rem; letter-spacing:.02em; z-index:2;}
.strokes{position:absolute; inset:0; z-index:0; pointer-events:none; opacity:.07; color:var(--bone);}
.strokes svg{position:absolute; width:46%; min-width:300px; height:auto;}
.s1{top:16%; left:-8%; animation:drift 84s linear infinite;}
.s2{top:38%; left:30%; animation:drift 112s linear infinite; animation-delay:-40s;}
@keyframes drift{from{transform:translateX(-18vw)}to{transform:translateX(118vw)}}
@media (prefers-reduced-motion:reduce){.s1,.s2{animation:none}}
.treescape{position:absolute; bottom:0; left:0; right:0; z-index:1; line-height:0;}
.treescape .tree{color:var(--tree); width:min(58vw,460px); margin:0 auto -2px; display:block; transform:translateX(6%);}
.hillline{display:block; width:100%; height:70px; color:var(--hill);}
main{max-width:41rem; margin:0 auto; padding:0 1.5rem; width:100%; flex:1;}
section{padding:4rem 0 0;}
.eyebrow{
  font-size:.78rem; letter-spacing:.24em; text-transform:uppercase;
  color:var(--lastlight); font-weight:500; margin-bottom:1.1rem;
}
h1.book-title, h1.page-title{
  font-family:"Cormorant Garamond",serif; font-weight:500;
  font-size:clamp(2.2rem,7vw,3.4rem); line-height:1.1; color:var(--bone);
}
h1.book-title{font-style:italic;}
.byline{margin:.7rem 0 2rem; color:var(--mist); font-size:1.05rem;}
.byline b{color:var(--bone); font-weight:500;}
p+p{margin-top:1.15rem;}
.avail{margin-top:2rem; color:var(--mist); font-style:italic; font-size:.98rem;}
a{color:var(--lastlight); text-decoration:none; border-bottom:1px solid rgba(211,166,92,.35);}
a:hover{border-bottom-color:var(--lastlight);}
a:focus-visible{outline:2px solid var(--lastlight); outline-offset:3px; border-bottom-color:transparent;}
.more{display:inline-block; margin-top:1.6rem; font-size:.98rem;}
.entry{padding:1.8rem 0; border-bottom:1px solid rgba(231,226,212,.12);}
.entry:last-of-type{border-bottom:none;}
.entry h2{font-family:"Cormorant Garamond",serif; font-style:italic; font-weight:500; font-size:1.9rem; line-height:1.2;}
.entry h2 a{color:var(--bone); border-bottom:none;}
.entry h2 a:hover{color:var(--lastlight);}
.entry .meta{color:var(--mist); font-size:.95rem; margin:.3rem 0 .7rem;}
footer{
  margin-top:5rem; padding:2.6rem 1.5rem 3rem; text-align:center;
  color:var(--mist); font-size:.9rem; background:var(--hill);
}
footer .colophon{width:52px; color:var(--mist); margin:0 auto 1rem; display:block; opacity:.9;}
footer a{color:var(--mist); border-bottom-color:rgba(164,174,180,.35);}

