:root{--ink:#f4f1e9;--night:#06111d;--night2:#0a1724;--blue:#9ed8ff;--ice:#d7efff;--amber:#d69a52;--amber2:#f0bd72;--paper:#e9e5db;--charcoal:#111820;--muted:#a9b7c4;--line:rgba(220,238,250,.14);--serif:Georgia,'Times New Roman',serif;--sans:Inter,system-ui,-apple-system,'Segoe UI',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--night);color:var(--ink);font-family:var(--sans);line-height:1.65}

.wrap{width:min(1180px,calc(100% - 44px));margin:auto}

.site-header{min-height:82px;position:absolute;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;padding:0 max(22px,calc((100% - 1180px)/2));border-bottom:1px solid rgba(255,255,255,.13);background:linear-gradient(#020810e8,transparent)}

.brand{display:flex;align-items:center;color:white;text-decoration:none;margin-right:auto}

.brand strong,.brand small{display:block}

.brand strong{font-family:var(--serif);font-size:21px;letter-spacing:.035em;text-transform:uppercase;text-shadow:0 2px 10px #000}

.brand small{text-transform:uppercase;letter-spacing:.24em;font-size:9px;color:#b9cee0}

.main-nav{display:flex;gap:28px}

.main-nav a{color:#dce8f1;text-decoration:none;font-size:13px;letter-spacing:.03em}

.main-nav a:hover,.main-nav .active{color:#fff}

.menu-toggle{display:none}

.hero{min-height:760px;height:94vh;position:relative;display:flex;align-items:center;overflow:hidden;background:#07111c}

.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,10,17,.98) 0%,rgba(4,12,21,.83) 45%,rgba(5,14,23,.25) 76%),linear-gradient(0deg,var(--night) 0%,transparent 31%),url('images/old-mill-cover.png') 78% 48%/auto 115% no-repeat;background-color:#07111c;filter:saturate(.82) contrast(1.04)}

.hero-bg:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 73% 55%,rgba(239,174,91,.12),transparent 18%),radial-gradient(circle at 78% 22%,rgba(113,188,244,.16),transparent 24%)}

.hero-content{position:relative;z-index:2;padding-top:65px}

.eyebrow,.section-label{text-transform:uppercase;letter-spacing:.24em;font-size:11px;font-weight:700;color:var(--blue)}

.hero h1{font-family:var(--serif);font-size:clamp(52px,7vw,98px);line-height:.94;letter-spacing:-.045em;margin:24px 0 28px;max-width:850px;text-shadow:0 4px 24px #000}

.hero h1 em{font-weight:400;color:var(--ice)}

.lead{font-size:18px;color:#c2d0dc;max-width:650px}

.actions{display:flex;gap:13px;margin-top:38px}

.button{padding:14px 21px;border:1px solid rgba(255,255,255,.28);color:#fff;text-decoration:none;font-size:12px;text-transform:uppercase;letter-spacing:.11em;font-weight:700;transition:.2s}

.button.primary{background:var(--amber);color:#101319;border-color:var(--amber)}

.button:hover{transform:translateY(-2px);border-color:var(--amber2)}

.scroll-cue{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);z-index:2;color:#a8b8c5;text-decoration:none;text-transform:uppercase;letter-spacing:.22em;font-size:9px}

.scroll-cue span{font-size:18px;margin-left:8px}

.intro{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding:120px 0}

.intro h2,.section-heading h2,.novel-section h2,.about h2{font:400 clamp(36px,5vw,62px)/1.05 var(--serif);margin:12px 0;color:#f4f0e7}

.intro-copy{color:#b3c0ca;font-size:16px}

.note{border-left:2px solid var(--amber);padding-left:22px;margin-top:30px}

.seven-section{background:linear-gradient(180deg,#eae6dc,#dcd8ce);color:#18202a;padding:110px 0}

.seven-section .section-label{color:#526e83}

.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end}

.section-heading h2{color:inherit;margin:8px 0}

.section-heading>p{max-width:450px;color:#5e6972}

.character-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#c6c3bb;margin-top:55px;border:1px solid #c6c3bb}

.character-grid article{background:rgba(250,248,242,.9);padding:30px;min-height:160px}

.character-grid span{font:italic 15px var(--serif);color:#6f8492}

.character-grid h3{font:400 22px var(--serif);margin:32px 0 3px}

.character-grid p{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#747d83;margin:0}

.symbol-story{display:grid;grid-template-columns:250px 1fr;gap:70px;align-items:center;margin-top:80px;padding-top:70px;border-top:1px solid #bfc0bc}

.symbol-placeholder{width:180px;aspect-ratio:1;border:1px dashed #70818d;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.25)}

.symbol-placeholder span{font:italic 72px var(--serif);color:#50697b}

.symbol-story h3{font:400 38px var(--serif);margin:8px 0}

.symbol-story p:last-child{max-width:650px;color:#5f696f}

.novel-section{padding:130px 0;background:linear-gradient(135deg,#0b1724,#07101a 60%,#0e1820)}

.novel-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:100px;align-items:center}

.book-art{min-height:610px;display:grid;place-items:center;background:radial-gradient(circle,rgba(111,177,222,.14),transparent 55%)}

.book-cover{display:block;width:min(390px,90%);height:auto;box-shadow:26px 34px 65px #000b;border:1px solid rgba(255,255,255,.16)}

.large-copy{font:22px/1.5 var(--serif);color:#d7e0e7}

.novel-section p:not(.section-label){color:#aebbc6}

.text-link,.feature a{color:var(--amber2);text-decoration:none;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.12em}

.paranormal-section{padding:120px 0;background:#071019}

.feature-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:26px;margin-top:55px}

.feature{background:#101d28}

.feature-image{height:340px;background:linear-gradient(0deg,#101d2800,#101d2822),url('images/bullock-hotel.jpg') center/cover;filter:saturate(.55)}

.feature>div:last-child{padding:30px}

.feature small,.mini-grid b{color:#8eb8d3;text-transform:uppercase;letter-spacing:.16em;font-size:10px}

.feature h3,.mini-grid h3{font:400 28px var(--serif);margin:7px 0}

.feature p,.mini-grid p{color:#9fadb8;font-size:14px}

.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#263541}

.mini-grid article{background:#0d1923;padding:27px}

.statement{background:linear-gradient(100deg,#dce8ef,#e8e2d5);color:#17212a;text-align:center;padding:100px 0}

.statement p{font:italic 400 clamp(34px,5vw,62px)/1.15 var(--serif);margin:0}

.statement span{display:block;margin-top:20px;text-transform:uppercase;letter-spacing:.15em;font-size:10px}

.about{padding:120px 0;text-align:center}

.about h2{max-width:800px;margin:12px auto 30px}

.about>p:last-child{max-width:740px;margin:auto;color:#aebbc5}footer{border-top:1px solid var(--line);padding:55px 0 35px;color:#8f9daa}

.footer-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:50px;align-items:center}

.footer-brand{display:flex;align-items:center;gap:14px}

.footer-mark{width:48px;height:48px;border:1px solid #61798c;border-radius:50%;display:grid;place-items:center;font:italic 25px var(--serif);color:#aac9de}

.footer-brand strong,.footer-brand span{display:block}

.footer-brand strong{font:20px var(--serif);color:#dbe5ec}

.footer-brand span{font-size:9px;text-transform:uppercase;letter-spacing:.15em}

.footer-grid p{font-size:12px}

.footer-grid small{grid-column:1/-1;border-top:1px solid var(--line);padding-top:25px;font-size:10px}


@media(max-width:1000px){.main-nav{gap:18px}

.novel-grid{gap:60px}

.hero-bg{background-position:85% 48%}}


@media(max-width:850px){.site-header{min-height:70px}

.main-nav{display:none;position:absolute;top:70px;left:0;right:0;background:#06111df7;padding:22px;flex-direction:column;gap:0}

.main-nav.open{display:flex}

.main-nav a{padding:13px;border-bottom:1px solid var(--line)}

.menu-toggle{display:flex;width:45px;height:45px;background:none;border:0;flex-direction:column;justify-content:center;gap:5px;color:white}

.menu-toggle span{width:24px;height:2px;background:white}

.menu-toggle b{position:absolute;clip:rect(0,0,0,0)}

.hero{min-height:720px;height:92svh}

.hero-bg{background:linear-gradient(90deg,rgba(3,10,17,.94),rgba(3,10,17,.58)),linear-gradient(0deg,var(--night),transparent 35%),url('images/old-mill-cover.png') 68% center/cover no-repeat}

.intro,.novel-grid,.footer-grid{grid-template-columns:1fr;gap:45px}

.section-heading{display:block}

.character-grid{grid-template-columns:1fr 1fr}

.symbol-story{grid-template-columns:150px 1fr;gap:30px}

.symbol-placeholder{width:145px}

.feature-grid{grid-template-columns:1fr}

.book-art{min-height:520px}

.book-cover{width:min(340px,78vw)}

.footer-grid small{grid-column:auto}}


@media(max-width:520px){.wrap{width:min(100% - 30px,1180px)}

.brand strong{font-size:16px}

.brand small{letter-spacing:.16em}

.hero{height:auto;min-height:760px}

.hero-bg{background:linear-gradient(0deg,rgba(4,11,18,.96) 0%,rgba(4,11,18,.55) 65%,rgba(4,11,18,.3)),url('images/old-mill-cover.png') center 20%/cover no-repeat;opacity:.68}

.hero-content{padding-top:130px;padding-bottom:70px}

.hero h1{font-size:clamp(45px,14vw,58px)}

.lead{font-size:16px}

.actions{flex-direction:column;align-items:stretch;text-align:center}

.intro,.seven-section,.paranormal-section,.about{padding-top:80px;padding-bottom:80px}

.character-grid{grid-template-columns:1fr}

.symbol-story{grid-template-columns:1fr}

.symbol-placeholder{width:120px}

.novel-section{padding:80px 0}

.book-art{min-height:auto;padding-bottom:15px}

.book-cover{width:min(310px,88vw)}

.mini-grid{grid-template-columns:1fr}

.statement{padding:70px 0}

.scroll-cue{display:none}}


@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}

.button{transition:none}}


/* V14 — mobile hamburger/navigation correction */
@media (max-width: 850px) {
  .site-header {
    position: relative;
    z-index: 1000;
  }



  .menu-toggle {
    display: inline-flex !important;
    width: 46px;
    height: 42px;
    padding: 8px 9px;
    margin-left: auto;
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 9px;
    background: rgba(4,8,13,.88);
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    position: relative;
    z-index: 1002;
  }



  .menu-toggle span {
    display: block !important;
    width: 24px;
    height: 2px;
    margin: 0 !important;
    background: #fff !important;
    border-radius: 2px;
    transition: transform .2s ease, opacity .2s ease;
  }



  .menu-toggle b {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }



  .menu-toggle[aria-expanded="true"] span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
  }


  .menu-toggle[aria-expanded="true"] span:nth-child(2) {
    opacity: 0;
  }


  .menu-toggle[aria-expanded="true"] span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
  }



  .main-nav {
    display: none !important;
    position: absolute;
    top: calc(100% + 1px);
    left: 0;
    right: 0;
    z-index: 1001;
    padding: 10px 16px 16px;
    background: rgba(7,11,16,.98);
    border-top: 1px solid rgba(255,255,255,.10);
    border-bottom: 1px solid rgba(255,255,255,.14);
    box-shadow: 0 14px 30px rgba(0,0,0,.35);
  }



  .main-nav.open,
  .main-nav[data-open="true"] {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    gap: 2px;
  }



  .main-nav a {
    display: block;
    width: 100%;
    padding: 12px 10px;
    border-radius: 7px;
  }
}


/* V16 — canonical site header and restrained link palette */
:root{
  --tgh-link:#c8b38a;
  --tgh-link-hover:#ead6aa;
  --tgh-header:#080d13;
}


.site-header{
  width:100%;
  min-height:76px;
  padding:12px clamp(16px,4vw,48px);
  display:flex;
  align-items:center;
  gap:24px;
  background:rgba(8,13,19,.97);
  border-bottom:1px solid rgba(255,255,255,.10);
  position:relative;
  z-index:1000;
}


.brand{
  display:flex;
  align-items:center;
  color:#f3eee5 !important;
  text-decoration:none !important;
  margin-right:auto;
  min-width:0;
}


.brand strong{display:block;font-size:1rem;line-height:1.1;letter-spacing:.035em;color:#f3eee5}


.brand small{display:block;margin-top:4px;font-size:.68rem;line-height:1;text-transform:uppercase;letter-spacing:.15em;color:#b8b1a5}


.main-nav{display:flex;align-items:center;gap:clamp(10px,1.8vw,24px)}


.main-nav a{
  color:#d9d4cb !important;
  text-decoration:none !important;
  font-size:.82rem;
  letter-spacing:.035em;
}


.main-nav a:hover,.main-nav a:focus-visible,.main-nav a.active{color:#f1d7a1 !important}


.menu-toggle{display:none}

/* Remove the electric-blue browser/link look throughout content. */
main a:not(.button):not(.btn),
footer a,
.chapter-content a,.reader-content a,.chapter-text a,.reading-column a{
  color:var(--tgh-link) !important;
  text-decoration-color:rgba(200,179,138,.45);
}
main a:not(.button):not(.btn):hover,
footer a:hover,
.chapter-content a:hover,.reader-content a:hover,.chapter-text a:hover,.reading-column a:hover{
  color:var(--tgh-link-hover) !important;
}



@media(max-width:850px){
  .site-header{min-height:68px;padding:10px 15px;gap:12px}


  .brand strong{font-size:.9rem}


  .brand small{font-size:.59rem;letter-spacing:.12em}


  .menu-toggle{
    display:inline-flex !important;
    flex:0 0 44px;
    width:44px;height:40px;
    padding:8px 9px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:8px;
    background:#111820;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:5px;
    cursor:pointer;
    z-index:1002;
  }


  .menu-toggle span{display:block;width:23px;height:2px;background:#f5f2ec !important;border-radius:2px;margin:0 !important}


  .menu-toggle b{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}


  .menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}


  .menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}


  .menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}


  .main-nav{
    display:none !important;
    position:absolute;
    top:100%;left:0;right:0;
    padding:8px 14px 14px;
    background:#080d13;
    border-top:1px solid rgba(255,255,255,.08);
    border-bottom:1px solid rgba(255,255,255,.14);
    box-shadow:0 14px 30px rgba(0,0,0,.38);
    z-index:1001;
  }


  .main-nav.open{display:flex !important;flex-direction:column;align-items:stretch;gap:0}


  .main-nav a{width:100%;padding:12px 10px;color:#ddd7ce !important;border-radius:6px}


  .main-nav a:hover,.main-nav a:focus-visible{background:rgba(255,255,255,.05);color:#f1d7a1 !important}
}

/* Keep the chapter heading visible when a chapter card is selected. */
#chapter-text { scroll-margin-top: 1.5rem; }

/* V34 community submissions */
.submit-main{padding:110px clamp(16px,4vw,54px) 75px;min-height:100vh;background:linear-gradient(#09121b,#0b1117);color:#eee9df}.submit-hero,.submit-card{max-width:920px;margin-left:auto;margin-right:auto}.submit-hero{margin-bottom:28px}.submit-hero h1{font-size:clamp(2.1rem,5vw,4rem);margin:.15em 0}.submit-hero p,.submit-card p{color:#c9c2b7;line-height:1.7}.submit-card{padding:26px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#111a22}.submit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0}.submit-grid>div{padding:18px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(255,255,255,.025)}.submit-grid h3{margin-top:0}.submission-note{border-left:3px solid #b89a65;padding:15px 18px;margin:24px 0;background:rgba(255,255,255,.035)}.submit-small{font-size:.88rem;margin-top:16px}@media(max-width:680px){.submit-grid{grid-template-columns:1fr}.submit-card{padding:19px}}

/* V36 privacy and cookies */
.privacy-main{padding:110px clamp(16px,4vw,54px) 75px;min-height:100vh;background:linear-gradient(#09121b,#0b1117);color:#eee9df}
.privacy-hero,.privacy-card{max-width:920px;margin-left:auto;margin-right:auto}
.privacy-hero{margin-bottom:28px}
.privacy-hero h1{font-size:clamp(2.1rem,5vw,4rem);margin:.15em 0}
.privacy-hero>p:not(.section-label),.privacy-card p{color:#c9c2b7;line-height:1.75}
.privacy-updated{font-size:.86rem}
.privacy-card{padding:28px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#111a22}
.privacy-card h2{margin-top:2rem;color:#eee9df}
.privacy-card h2:first-child{margin-top:0}
.privacy-card a{color:var(--tgh-link);text-decoration-color:rgba(200,179,138,.45)}
.privacy-note{margin-top:2rem;padding:15px 18px;border-left:3px solid #b89a65;background:rgba(255,255,255,.035)}
footer small a{margin-left:.65rem}
@media(max-width:680px){.privacy-card{padding:19px}footer small a{display:block;margin:.5rem 0 0}}

.privacy-footer-link{padding-top:12px;font-size:.78rem}.privacy-footer-link a{color:var(--tgh-link)}

/* V37 homepage link cards */
.home-link-card{cursor:pointer;transition:background .2s ease,transform .2s ease}
.home-link-card:hover,.home-link-card:focus{background:#132431;outline:1px solid rgba(200,179,138,.35);outline-offset:-1px}
.home-link-card:focus{box-shadow:0 0 0 2px rgba(200,179,138,.18) inset}
#bullock-hotel{scroll-margin-top:100px}


/* V38 secure submissions and Group of Seven crop-circle symbol */
.symbol-image{margin:0;overflow:hidden;border-radius:14px;border:1px solid rgba(200,179,138,.28);background:#0b1217;box-shadow:0 14px 34px rgba(0,0,0,.32)}
.symbol-image img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}
.submission-form{display:grid;gap:18px;margin-top:22px}
.form-row{display:grid;gap:7px}.form-row label,.consent-check{font-weight:700;color:#eee9df}
.form-row input,.form-row select,.form-row textarea{width:100%;box-sizing:border-box;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#0b1218;color:#eee9df;padding:12px 13px;font:inherit}
.form-row textarea{resize:vertical;min-height:190px}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:2px solid rgba(200,179,138,.55);outline-offset:1px}
.field-note,.turnstile-note{font-size:.82rem;font-weight:400;color:#aaa49a}.consent-check{display:flex;gap:10px;align-items:flex-start;line-height:1.5}.consent-check input{margin-top:.3em}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-status{max-width:760px;margin:130px auto 80px;padding:28px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#111a22;color:#eee9df}.form-status p{color:#c9c2b7;line-height:1.7}

/* V38.2: submission spacing and homepage symbol proportions */
.submit-card .submission-form{width:100%;max-width:none;box-sizing:border-box;padding:12px clamp(12px,3vw,32px) 8px;margin:24px 0 0}
.submit-card .submission-form .form-row{min-width:0;gap:11px}
.submit-card .submission-form .form-row label{display:block;line-height:1.5}
.submit-card .submission-form .form-row textarea{display:block;width:100%;max-width:none;min-height:280px;box-sizing:border-box}
.submit-card .submission-form .form-row input,.submit-card .submission-form .form-row select{max-width:100%}
/* Keep the seven-leaf crop-circle image a modest supporting element. */
.symbol-story{grid-template-columns:minmax(150px,240px) minmax(0,1fr);gap:clamp(24px,4vw,55px)}
.symbol-image{width:100%;max-width:240px}
@media(max-width:700px){.submit-card .submission-form{padding:10px 10px 6px}.symbol-story{grid-template-columns:1fr}.symbol-image{width:min(50%,220px);max-width:220px}}

/* V38.4: Teenage Ghost Hunters header logo */
.site-brand-logo{display:block;width:clamp(240px,30vw,375px);height:auto;max-height:135px;object-fit:contain;object-position:left center}
@media(max-width:700px){.site-brand-logo{width:clamp(180px,52vw,265px);max-height:100px}}

/* V38.6: hard bounds for logo in header */
.site-header .brand{flex:0 1 auto;min-width:0;max-width: min(290px,42vw)}
.site-header .site-brand-logo{display:block;width:100%;max-width:290px;height:auto;max-height:105px;object-fit:contain;object-position:left center}
@media(max-width:700px){.site-header .brand{max-width:min(180px,46vw)}.site-header .site-brand-logo{max-width:180px;max-height:68px}}

/* V38.8: homepage Halloween spotlight; year-round content */
.halloween-spotlight{position:relative;padding:clamp(56px,7vw,100px) 0;background:radial-gradient(ellipse at 80% 10%,rgba(141,104,59,.13),transparent 55%),linear-gradient(180deg,#101922,#0b1119);border-top:1px solid rgba(200,179,138,.14);border-bottom:1px solid rgba(200,179,138,.14)}
.halloween-spotlight .section-label{color:#c7ab7c;letter-spacing:.16em;text-transform:uppercase}
.spotlight-heading{max-width:800px;margin:0 0 30px}.spotlight-heading h2{margin:10px 0 15px;color:#f3eee5;font-size:clamp(1.8rem,3.4vw,3rem);line-height:1.15}.spotlight-heading p{color:#c7c4be;line-height:1.75;max-width:730px}
.spotlight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.spotlight-card{display:flex;flex-direction:column;min-width:0;padding:clamp(22px,2.6vw,34px);border:1px solid rgba(200,179,138,.23);border-radius:12px;background:linear-gradient(145deg,rgba(32,43,52,.93),rgba(14,23,31,.96));box-shadow:0 12px 30px rgba(0,0,0,.15)}
.spotlight-number{font-size:.75rem;letter-spacing:.16em;font-weight:700;color:#c7ab7c}.spotlight-card h3{font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.3;color:#f1e9dc;margin:18px 0 10px}.spotlight-card p{color:#c7c4be;line-height:1.7;flex:1}.spotlight-card a{display:inline-block;align-self:flex-start;margin-top:20px;color:#e7c994;font-weight:700;text-decoration:underline;text-underline-offset:5px}.spotlight-card a:hover,.spotlight-card a:focus-visible{color:#fff0d0}
@media(max-width:800px){.spotlight-grid{grid-template-columns:1fr}.spotlight-card{padding:24px}.halloween-spotlight{padding:54px 0}}

/* Book Two: Coming Soon teaser; additive styles only */
.book-two-teaser{padding:clamp(60px,8vw,110px) 0;background:radial-gradient(ellipse at 15% 35%,rgba(168,126,72,.12),transparent 55%),linear-gradient(135deg,#0c141d,#151e28);border-top:1px solid rgba(209,184,143,.18);border-bottom:1px solid rgba(209,184,143,.18)}
.book-two-layout{display:grid;grid-template-columns:minmax(0,330px) minmax(0,1fr);gap:clamp(32px,6vw,90px);align-items:center}
.book-two-art{min-width:0;max-width:330px;width:100%;margin-inline:auto}
.book-two-art img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;border:1px solid rgba(226,200,153,.25);border-radius:8px;box-shadow:0 20px 48px rgba(0,0,0,.42)}
.book-two-copy{min-width:0;max-width:660px}.book-two-copy h2{font-size:clamp(2rem,4vw,3.65rem);line-height:1.15;color:#f5efe4;margin:12px 0 16px}.book-two-copy h2 em{display:block;font-style:normal;color:#e6c48b}.book-two-copy p{line-height:1.75;color:#d0cbc2}.book-two-copy .large-copy{font-size:clamp(1.12rem,2vw,1.36rem);color:#f1e6d4}.book-two-copy .section-label{color:#dfbf88;text-transform:uppercase;letter-spacing:.14em}.book-two-byline{letter-spacing:.06em}.book-two-note{font-size:.9rem;opacity:.78}.book-two-copy .text-link{display:inline-block;margin-top:12px;color:#f2d49f}.book-two-copy .text-link:focus-visible{outline:2px solid #f2d49f;outline-offset:5px}
@media(max-width:740px){.book-two-layout{grid-template-columns:1fr;gap:30px}.book-two-art{max-width:min(75vw,290px)}.book-two-teaser{padding:56px 0}.book-two-copy h2{font-size:clamp(1.9rem,8vw,2.8rem)}}
@media(prefers-reduced-motion:reduce){.book-two-teaser *{scroll-behavior:auto}}
