/* lynnebrisden.com — the original Brisden night palette.
   Covers get a faint edge and a shadow so real teal-to-black covers still read as objects on it. */
:root{
  /* the original Brisden night: pitch, deep teal, cool white, amber */
  --wall:#04090D;--wall2:#071219;--card:#071219;--line:#143844;
  --ink:#E6EDEF;--ink2:#C7D4D9;--mute:#7A929D;--faint:#4E6570;
  --teal:#FFC873;--night:#071219;--night2:#0E2E38;
  --amber:#F0A63D;--amberhot:#FFC873;--amberdeep:#F0A63D;--onamber:#0B0F11;
  --bone:#E6EDEF;--bonedim:#B9CCD3;--avatar:#0E2E38;
  --navbg:rgba(4,9,13,.86);
  --shadow:0 34px 60px -24px rgba(0,0,0,.85);
}
/* Hall light on: an optional light mode. The hero, covers, night photos, clock,
   and newsletter box stay dark; only the page around them changes. */
:root[data-theme="light"]{
  --wall:#E4E7E1;--wall2:#DADFD8;--card:#EEF0EB;--line:#C4CCC5;
  --ink:#0E1B1D;--ink2:#2C3C3E;--mute:#5E6E6C;--faint:#8A9793;
  --teal:#1E4A52;--amberdeep:#A45F0E;--avatar:#1E4A52;
  --navbg:rgba(228,231,225,.9);
  --shadow:0 30px 56px -26px rgba(8,26,31,.55);
}
:root[data-theme="light"] body::before{opacity:.25}

*{margin:0;padding:0;box-sizing:border-box}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
::selection{background:var(--amber);color:var(--onamber)}
html{scroll-behavior:smooth}
body{background:var(--wall);color:var(--ink);font:400 16.5px/1.75 'Hanken Grotesk',sans-serif;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;z-index:70;pointer-events:none;opacity:.55;
  background-image: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='.8' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 .75 0 0 0 0 .87 0 0 0 0 .93 0 0 0 .03 0'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)'/%3E%3C/svg%3E")}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}
@media(max-width:480px){.wrap{padding:0 16px}}
section{padding:104px 0}
@media(max-width:760px){section{padding:72px 0}}
:focus-visible{outline:2px solid var(--amberdeep);outline-offset:2px}

/* ---------- type ---------- */
.eyebrow{font:800 10.5px/1 'Hanken Grotesk';letter-spacing:.44em;text-transform:uppercase;color:var(--amberdeep);margin-bottom:16px}
.newsband .eyebrow{color:var(--amber)}
h2{font:400 clamp(36px,4.6vw,60px)/1 'Bebas Neue';letter-spacing:.02em;margin-bottom:16px;color:var(--ink)}
h2 em{font-style:normal;color:var(--amberdeep)}
h1 em{font-style:normal;color:var(--amber)}
.lede{color:var(--mute)}

/* ---------- buttons ---------- */
.btn{display:inline-block;padding:15px 26px;font:800 10.5px/1 'Hanken Grotesk';letter-spacing:.26em;text-transform:uppercase;cursor:pointer;border:0;transition:background .2s,border-color .2s,color .2s}
.btn.solid{background:var(--amber);color:var(--onamber);box-shadow:0 10px 26px -12px rgba(242,164,58,.45)}
.btn.solid:hover{background:var(--amberhot)}
.btn.line{border:1px solid var(--ink2);background:transparent;color:var(--ink)}
.btn.line:hover{border-color:var(--amberdeep);color:var(--amberdeep)}
.btn[disabled]{opacity:.6;cursor:default}
.cta-row{display:flex;gap:16px;margin-top:32px;flex-wrap:wrap;align-items:center}
.text-link{font:800 10.5px/1 'Hanken Grotesk';letter-spacing:.22em;text-transform:uppercase;color:var(--ink);border-bottom:2px solid var(--amber);padding-bottom:4px}
.text-link:hover{color:var(--amberdeep)}

/* ---------- photographs: dark objects on the wall ---------- */
.raw,.ph{position:relative;overflow:hidden;background:var(--night);box-shadow:var(--shadow)}
.raw img,.ph img{width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(1.04) brightness(.92)}
.ph img{filter:grayscale(1) contrast(1.08) brightness(.72)}
.ratio-43{aspect-ratio:4/3}
.img-right{object-position:82% center}

/* ---------- nav ---------- */
nav.top{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:26px;padding:18px 28px;
  background:var(--navbg);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.mark{font:400 24px/1 'Bebas Neue';letter-spacing:.22em;color:var(--ink)}
.mark b{color:var(--amberdeep);font-weight:400}
nav.top .links{margin-left:auto;display:flex;gap:22px;font:800 10px/1 'Hanken Grotesk';letter-spacing:.24em;text-transform:uppercase;color:var(--mute)}
nav.top .links a:hover{color:var(--ink)}
nav.top .btn{padding:12px 18px}
.menu{display:none;margin-left:auto;background:none;border:0;color:var(--ink);cursor:pointer;font:800 10px/1 'Hanken Grotesk';letter-spacing:.24em;text-transform:uppercase;padding:10px 4px}
@media(max-width:900px){
  nav.top .links{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;margin:0;background:var(--wall);border-bottom:1px solid var(--line);padding:6px 28px 18px}
  nav.top .links a{padding:15px 0;border-bottom:1px solid var(--line);font-size:11px}
  nav.top.open .links{display:flex}
  .menu{display:block}
}
@media(max-width:480px){nav.top{padding:16px;gap:14px}nav.top .btn{padding:11px 12px;letter-spacing:.16em}.mark{font-size:21px;letter-spacing:.16em}}

/* ---------- hero: a night window set into the wall ---------- */
.hero .frame{position:relative;min-height:clamp(540px,74vh,760px);display:grid;align-content:end;overflow:hidden;background:var(--night);color:var(--bone)}
.hero .frame .inner{width:100%;max-width:1180px;margin:0 auto;padding-left:28px;padding-right:28px}
.hero .bg,.hero .bg img{position:absolute;inset:0;height:100%;width:100%}
.hero .bg img{object-fit:cover;object-position:70% 40%;filter:saturate(.85) brightness(.85)}
.hero .scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,9,13,.85) 0%,rgba(4,9,13,.4) 55%,transparent 80%),linear-gradient(180deg,transparent 45%,var(--wall) 100%)}
.hero .inner{position:relative;z-index:3;padding:clamp(56px,8vh,88px) clamp(24px,5vw,72px) clamp(40px,7vh,72px);max-width:900px}
.kick{font:800 11px/1.6 'Hanken Grotesk';letter-spacing:.5em;text-transform:uppercase;color:var(--amberhot);margin-bottom:20px}
h1{font:400 clamp(54px,8vw,116px)/.94 'Bebas Neue';letter-spacing:.015em;max-width:14ch;color:var(--bone)}
h1 b{color:var(--amber);text-shadow:0 0 40px rgba(242,164,58,.45);font-weight:400}
.hero .deck{margin-top:22px;max-width:50ch;color:#CBD6D2}
.hero .btn.line{border-color:rgba(236,232,220,.4);color:var(--bone)}
.hero .btn.line:hover{border-color:var(--amberdeep);color:var(--amberdeep)}
.hero .meta{position:absolute;right:clamp(24px,4vw,56px);bottom:clamp(40px,7vh,72px);z-index:3;text-align:right;font:800 10px/1.9 'Hanken Grotesk';letter-spacing:.3em;text-transform:uppercase;color:var(--bonedim)}
.hero .meta b{color:var(--amber)}
@media(max-width:900px){.hero .meta{display:none}}
@media(max-width:700px){.hero .bg img{object-position:76% 40%}.hero .scrim{background:linear-gradient(180deg,rgba(8,26,31,.15) 0%,rgba(8,26,31,.6) 45%,rgba(8,26,31,.92) 90%)}.hero .frame{min-height:600px}}

/* ---------- ticker ---------- */
.marq{overflow:hidden;border-bottom:1px solid var(--line);border-top:1px solid var(--line)}
.marq .track{display:flex;white-space:nowrap;width:max-content;animation:roll 32s linear infinite}
@keyframes roll{from{transform:translateX(0)}to{transform:translateX(-25%)}}
@media(prefers-reduced-motion:reduce){.marq .track{animation:none}}
/* spacing lives on the words only, never on the repeating .set wrapper, so the seam
   between copies matches every other gap no matter what the words say */
.marq .set{display:flex;padding:0}
.marq .set>span{padding:14px 0 14px 30px;font:400 15px/1 'Bebas Neue';letter-spacing:.22em;color:var(--mute);text-transform:uppercase}
.marq b{color:var(--amberdeep);font-weight:400}

/* ---------- split ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
@media(max-width:880px){.split{grid-template-columns:1fr;gap:44px}}
.split p{color:var(--mute)}
.split p+p{margin-top:12px}
.split p b{color:var(--ink)}

/* ---------- featured book ---------- */
.featured{background:var(--wall2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.feat{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
@media(max-width:900px){.feat{grid-template-columns:1fr;gap:48px}}
.stage{position:relative;padding:0 44px 44px 0}
.stage .photo{aspect-ratio:4/5;position:relative;overflow:hidden;background:var(--night);box-shadow:var(--shadow)}
.stage .photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.35) brightness(.7) contrast(1.05)}
.standing{position:absolute;right:0;bottom:0;width:52%;max-width:260px;transform:rotate(1.6deg);box-shadow:0 0 0 1px rgba(230,237,239,.12),0 40px 60px -20px rgba(0,0,0,.95)}
.stage-note{position:absolute;left:0;bottom:8px;font:800 9.5px/1 'Hanken Grotesk';letter-spacing:.3em;text-transform:uppercase;color:var(--mute)}
.feat-copy .hook{font:600 19px/1.6 'Hanken Grotesk';color:var(--ink);margin-top:6px}
.feat-copy .accent{margin-top:14px;font:italic 600 21px/1.5 'Hanken Grotesk';color:var(--amberdeep)}
.feat-copy p.body{margin-top:12px;color:var(--mute)}
.facts{display:grid;grid-template-columns:repeat(4,auto);justify-content:start;gap:12px 34px;margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
@media(max-width:600px){.facts{grid-template-columns:1fr 1fr}}
.facts dt{font:800 9px/1 'Hanken Grotesk';letter-spacing:.28em;text-transform:uppercase;color:var(--mute);margin-bottom:8px}
.facts dd{font:400 21px/1.1 'Bebas Neue';letter-spacing:.05em}
.featured .cta-row{margin-top:28px}

/* ---------- concept cover (follows the locked template: teal to black, one amber light, bone type) ---------- */
.bcover{position:relative;display:block;aspect-ratio:2/3;overflow:hidden;background:#051215;color:var(--bone);container-type:inline-size}
.bcover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.6) brightness(.7) contrast(1.12)}
.bcover::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,70,82,.55) 0%,rgba(5,18,21,.35) 45%,rgba(3,10,12,.92) 100%);mix-blend-mode:multiply}
.bcover .cc{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;text-align:center;padding:9% 7%}
.bcover small{font:800 max(6.5px,3.1cqi)/1.5 'Hanken Grotesk';letter-spacing:.3em;text-transform:uppercase;color:var(--bonedim)}
.bcover strong{margin:auto 0 0;font:400 14cqi/1 'Bebas Neue';letter-spacing:.04em;color:var(--bone)}
.bcover span{margin-top:8%;font:800 max(6.5px,3.4cqi)/1 'Hanken Grotesk';letter-spacing:.32em;text-transform:uppercase;color:var(--bonedim)}
.pos-house{object-position:74% 34%}
.pos-farm{object-position:62% 40%}
.pos-light{object-position:66% 40%}
.pos-dining{object-position:60% 50%}
.pos-hall{object-position:50% 40%}
.pos-route{object-position:40% 50%}

/* ---------- the hour ---------- */
.hourgrid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
@media(max-width:880px){.hourgrid{grid-template-columns:1fr;gap:40px}}
.hour .lede{max-width:44ch;margin:6px 0 24px}
.clock{background:radial-gradient(90% 70% at 50% 0%,var(--night2),var(--night));color:var(--bone);padding:48px 40px;text-align:center;box-shadow:var(--shadow)}
@media(max-width:480px){.clock{padding:36px 20px}}
.clock .c-label{font:800 10px/1 'Hanken Grotesk';letter-spacing:.4em;text-transform:uppercase;color:var(--bonedim)}
.clock .c-now{font:400 clamp(84px,11vw,150px)/1 'Bebas Neue';letter-spacing:.04em;margin:14px 0 10px;font-variant-numeric:tabular-nums}
.clock .c-until{font:800 11px/1.8 'Hanken Grotesk';letter-spacing:.3em;text-transform:uppercase;color:#9CC3BD}
.clock .c-note{margin-top:18px;padding-top:18px;border-top:1px solid rgba(236,232,220,.14);font:italic 600 17px/1.5 'Hanken Grotesk';color:var(--bonedim)}
.clock.now .c-now{color:var(--amber);text-shadow:0 0 40px rgba(242,164,58,.55)}
.clock.now .c-note{color:var(--amberhot)}
.clock.after .c-now{color:#6F8783}

/* ---------- the deal ---------- */
.deal{background:var(--wall2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.grid6{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:34px}
@media(max-width:880px){.grid6{grid-template-columns:1fr}}
.cell{background:var(--card);padding:34px 30px}
.cell svg{width:34px;height:34px;stroke:var(--amberdeep);fill:none;stroke-width:1.6;margin-bottom:18px}
.cell b{display:block;font:400 22px/1.2 'Bebas Neue';letter-spacing:.05em;margin-bottom:8px}
.cell span{font-size:14.5px;color:var(--mute)}

/* ---------- the houses: covers and their rules ---------- */
.houses-head{margin-bottom:44px}
.houses-head .lede{max-width:52ch;margin-top:4px}
.shelf6{list-style:none;display:grid;grid-template-columns:repeat(6,1fr);gap:40px 22px}
@media(max-width:1060px){.shelf6{grid-template-columns:repeat(3,1fr);gap:44px 28px}}
@media(max-width:560px){.shelf6{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:18px;padding-bottom:18px;margin-right:-16px;scrollbar-width:thin}
  .shelf6 li{flex:0 0 58%;scroll-snap-align:start}}
.shelf6 li{display:flex;flex-direction:column;gap:14px}
.shelf6 .bcover{box-shadow:0 0 0 1px rgba(230,237,239,.1),0 24px 44px -16px rgba(0,0,0,.95),0 0 60px -20px rgba(58,120,134,.45);transition:transform .3s}
.shelf6 li:hover .bcover{transform:translateY(-6px)}
.shelf6 .no{white-space:nowrap;font:800 9.5px/1.4 'Hanken Grotesk';letter-spacing:.26em;text-transform:uppercase;color:var(--mute)}
.shelf6 .no b{color:var(--amberdeep);font-weight:800}
.shelf6 .rule{font:italic 600 14.5px/1.5 'Hanken Grotesk';color:var(--ink2);margin-top:-6px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.chip{display:inline-block;margin-top:14px;font:800 8.5px/1 'Hanken Grotesk';letter-spacing:.24em;text-transform:uppercase;color:var(--mute);border:1px solid var(--line);padding:7px 10px}
.chip.live{color:var(--onamber);background:var(--amber);border-color:var(--amber)}
.shelf-note{margin-top:40px;font:800 9.5px/1.8 'Hanken Grotesk';letter-spacing:.24em;text-transform:uppercase;color:var(--faint)}

/* ---------- excerpt ---------- */
.reading{background:var(--wall2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.chapter{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:start}
@media(max-width:900px){.chapter{grid-template-columns:1fr}}
.chapter .art{position:relative;aspect-ratio:3/4;overflow:hidden;background:var(--night);box-shadow:var(--shadow)}
.chapter .art img{width:100%;height:100%;object-fit:cover;filter:saturate(.8) brightness(.85)}
.chapter .art .cap{position:absolute;left:18px;bottom:16px;z-index:2;font:400 20px/1.25 'Bebas Neue';letter-spacing:.06em;color:var(--bone);background:rgba(8,26,31,.7);padding:12px 16px}
.chapter .art .cap small{display:block;font:800 9px/1.6 'Hanken Grotesk';letter-spacing:.3em;color:var(--amber);text-transform:uppercase}
.opening-line{font:600 clamp(21px,2.4vw,28px)/1.5 'Hanken Grotesk';color:var(--ink);margin-top:8px}
.excerpt p{margin-top:16px;color:var(--ink2);max-width:62ch}
.excerpt .text-link{display:inline-block;margin-top:26px}

/* ---------- FAQ ---------- */
.faqgrid{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:start}
@media(max-width:880px){.faqgrid{grid-template-columns:1fr;gap:34px}}
.faqgrid .lede{max-width:36ch;margin-top:6px}
.faqgrid .text-link{display:inline-block;margin-top:24px}
details{border:1px solid var(--line);background:var(--card)}
.faqcol details+details{margin-top:12px}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;font:600 15.5px/1.4 'Hanken Grotesk'}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font:400 24px/1 'Bebas Neue';color:var(--amberdeep)}
details[open] summary::after{content:"–"}
details p{padding:0 22px 20px;color:var(--mute);font-size:15px}
.faq{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:880px){.faq{grid-template-columns:1fr}}

/* ---------- early readers ---------- */
.quoteband{text-align:center;background:var(--wall2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.quoteband .eyebrow{margin-bottom:26px}
.stars{color:var(--amberdeep);letter-spacing:.3em;font-size:14px}
.bigquote{font:400 clamp(36px,4.6vw,64px)/1.04 'Bebas Neue';letter-spacing:.02em;max-width:21ch;margin:16px auto 26px}
.bigquote em{font-style:normal;color:var(--amberdeep)}
.who{display:flex;align-items:center;gap:12px}
.quoteband>.wrap>.who{justify-content:center}
.who .av{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--avatar);color:var(--amberhot);font:800 12px/1 'Hanken Grotesk';letter-spacing:.06em}
.who span{font:800 10px/1.5 'Hanken Grotesk';letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}
.quoterow{display:grid;grid-template-columns:1fr 1fr;margin-top:60px;border-top:1px solid var(--line)}
@media(max-width:880px){.quoterow{grid-template-columns:1fr}}
.q{text-align:left;padding:34px 44px 0}
.quoterow .q+.q{border-left:1px solid var(--line)}
@media(max-width:880px){.q{padding:30px 0 0}.quoterow .q+.q{border-left:0;border-top:1px solid var(--line);margin-top:26px}}
.q .stars{margin-bottom:14px}
.q p{font:italic 500 16.5px/1.7 'Hanken Grotesk';color:var(--ink2)}
.q .who{margin-top:16px}
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:880px){.quotes{grid-template-columns:1fr}}

/* ---------- about ---------- */
.aboutgrid{display:grid;grid-template-columns:360px 1fr;gap:64px;align-items:center}
@media(max-width:880px){.aboutgrid{grid-template-columns:1fr}}
.portrait{aspect-ratio:3/4}
.portrait img{object-position:62% 50%}
.about p{color:var(--mute);max-width:56ch}
.about p+p{margin-top:12px}
.about p b{color:var(--ink)}

/* ---------- newsletter: another night window ---------- */
.newswrap{padding:0 28px 104px}
@media(max-width:600px){.newswrap{padding:0 16px 72px}}
.newsband{position:relative;max-width:1180px;margin:0 auto;overflow:hidden;background:var(--night);box-shadow:var(--shadow);color:var(--bone)}
.newsband .bg,.newsband .bg img{position:absolute;inset:0;height:100%;width:100%}
.newsband .bg img{object-fit:cover;filter:saturate(.8) brightness(.7)}
.newsband .scrim{position:absolute;inset:0;background:rgba(8,26,31,.8)}
.newsband .inner{position:relative;z-index:3;max-width:720px;margin:0 auto;padding:84px 28px;text-align:center}

.newsband h2{color:var(--bone)}
.newsband p{color:#C4D1CC}
.field{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap;justify-content:center}
.field input{flex:1 1 260px;max-width:360px;padding:15px 16px;font:400 15px 'Hanken Grotesk';background:rgba(236,232,220,.08);border:1px solid rgba(236,232,220,.25);color:var(--bone)}
.field input::placeholder{color:#8FA5A0}
.form-msg{margin-top:16px;font:600 14px/1.6 'Hanken Grotesk';color:var(--amberhot)}
.form-msg.err{color:var(--bone)}
.page .form-msg{color:var(--teal)}
.page .form-msg.err{color:var(--amberdeep)}

/* ---------- footer ---------- */
footer{background:var(--wall2);border-top:1px solid var(--line);padding:70px 0 34px}
.fgrid{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:40px}
@media(max-width:880px){.fgrid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.fgrid{grid-template-columns:1fr}}
.fh{font:400 20px/1 'Bebas Neue';letter-spacing:.1em;margin-bottom:16px}
.fcol a{display:block;padding:5px 0;color:var(--mute);font-size:14.5px}
.fcol a:hover{color:var(--amberdeep)}
.fbrand p{color:var(--mute);font-size:14.5px;max-width:34ch;margin-top:12px}
.legal{margin-top:50px;padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font:800 9.5px/1.8 'Hanken Grotesk';letter-spacing:.24em;text-transform:uppercase;color:var(--faint)}

/* ---------- inner pages ---------- */
.page{padding:84px 0 100px}
.page .wrap{max-width:780px}
.page h1{font:400 clamp(44px,5.6vw,68px)/1 'Bebas Neue';letter-spacing:.02em;margin-bottom:10px;color:var(--ink);max-width:none}
.page .updated{font:800 10px/1 'Hanken Grotesk';letter-spacing:.28em;text-transform:uppercase;color:var(--mute);margin-bottom:36px}
.page h2{font-size:clamp(26px,2.8vw,34px);margin:40px 0 12px}
.page p,.page li{color:var(--ink2);font-size:16px}
.page p b{color:var(--ink)}
.page p+p{margin-top:12px}
.page ul{margin:12px 0 0 20px}
.page li+li{margin-top:8px}
.page a:not(.btn){color:var(--ink);border-bottom:2px solid var(--amber)}
.cform{display:grid;gap:14px;max-width:560px;margin-top:34px}
.cform label{font:800 10px/1 'Hanken Grotesk';letter-spacing:.26em;text-transform:uppercase;color:var(--mute)}
.cform input,.cform textarea{width:100%;padding:14px 16px;font:400 15px/1.6 'Hanken Grotesk';background:var(--card);border:1px solid var(--line);color:var(--ink)}
.cform textarea{min-height:170px;resize:vertical}
.cform .btn{justify-self:start}

/* ---------- parked multi-book page (merged.html) ---------- */
.collection .head{display:grid;grid-template-columns:minmax(260px,.9fr) 1.1fr;gap:40px;align-items:end;margin-bottom:40px}
.shelf{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 2px 22px}
.card{scroll-snap-align:start;flex:0 0 240px}
.card .cover{position:relative;aspect-ratio:2/3;overflow:hidden;background:var(--night)}
.card .cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.7) brightness(.55)}
.card .cc{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;text-align:center;padding:18px 14px;color:var(--bone)}
.card .cc strong{margin:auto 0;font:400 24px/1.05 'Bebas Neue'}
.card .cc small,.card .cc span{font:800 8px/1.5 'Hanken Grotesk';letter-spacing:.3em}
.card .ey{margin-top:14px;font:800 9px/1 'Hanken Grotesk';letter-spacing:.26em;text-transform:uppercase;color:var(--amberdeep)}
.card h3{margin-top:8px;font:400 22px/1.1 'Bebas Neue'}
.card .hk{margin-top:8px;font-size:14px;color:var(--mute)}
.card.ghost .cover{opacity:.5}
.rules{background:var(--wall2)}
.rules-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}
@media(max-width:880px){.rules-grid{grid-template-columns:1fr}}
.rule-card{display:block;border:1px solid var(--line);background:var(--card);padding:32px 28px}
.rule-card .rl{font:800 9.5px/1 'Hanken Grotesk';letter-spacing:.3em;text-transform:uppercase;color:var(--mute)}
.rule-card h3{margin-top:16px;font:400 32px/1.02 'Bebas Neue'}
.rule-card p{margin-top:14px;color:var(--mute);font-size:15px}
.break{position:relative;min-height:60vh;display:grid;align-items:center;background:var(--night);color:var(--bone)}
.break .bg,.break .bg img{position:absolute;inset:0;height:100%;width:100%}
.break .bg img{object-fit:cover;filter:brightness(.6)}
.break .scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,26,31,.9),rgba(8,26,31,.3))}
.break .inner{position:relative;z-index:3;max-width:1180px;margin:0 auto;width:100%;padding:80px 28px}
.tabs{max-width:460px;display:grid;border-left:2px solid rgba(236,232,220,.25)}
.tabs a{display:block;padding:18px 22px;font:400 22px/1.1 'Bebas Neue';color:var(--bonedim)}
.tabs a.on{color:var(--amber)}

/* covers and windows get a faint edge so they sit on the slate like objects */
.bcover,.newsband,.clock,.stage .photo,.chapter .art,.raw{outline:1px solid rgba(236,232,220,.07);outline-offset:-1px}

/* the hall light switch */
.hall{display:inline-flex;align-items:center;gap:8px;background:none;border:0;cursor:pointer;color:var(--mute);font:800 10px/1 'Hanken Grotesk';letter-spacing:.24em;text-transform:uppercase;padding:8px 2px}
.hall:hover{color:var(--ink)}
.hall svg{width:16px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4}
.hall .toggle{fill:currentColor;stroke:none;transition:transform .2s}
:root[data-theme="light"] .hall .toggle{transform:translateY(-4px)}
:root[data-theme="light"] .hall{color:var(--amberdeep)}
@media(max-width:900px){.hall .lbl{display:none}}
@media(max-width:900px){nav.top .hall{margin-left:auto}nav.top .menu{margin-left:0}}
:root[data-theme="light"] .hero .scrim{background:linear-gradient(90deg,rgba(4,9,13,.85) 0%,rgba(4,9,13,.4) 55%,transparent 80%),linear-gradient(180deg,transparent 45%,rgba(4,9,13,.6) 100%)}
@media(max-width:700px){:root[data-theme="light"] .hero .scrim{background:linear-gradient(180deg,rgba(4,9,13,.15) 0%,rgba(4,9,13,.6) 45%,rgba(4,9,13,.92) 90%)}}
.mark{white-space:nowrap}
@media(max-width:430px){nav.top .btn{display:none}}
