/* ============ TOKENS ============ */
:root{
  --ivory:#F6F2E8;
  --parchment:#EDE4CF;
  --charcoal:#332F28;
  --near-black:#16150F;
  --forest:#2C4638;
  --burgundy:#6E2A2E;
  --brass:#9C7A34;
  --line: rgba(22,21,15,0.14);
  --bg: var(--ivory);
  --bg-raised: var(--parchment);
  --fg: var(--near-black);
  --fg-soft: rgba(22,21,15,0.62);
  --fg-faint: rgba(22,21,15,0.38);
  --accent: var(--forest);
  --accent-2: var(--burgundy);
  --accent-3: var(--brass);
  --serif: 'Newsreader', Georgia, serif;
  --sans: 'Work Sans', Helvetica, Arial, sans-serif;
  --mono: 'IBM Plex Mono', monospace;
  --radius: 2px;
  --dur: 260ms;
  --ease: cubic-bezier(.4,0,.2,1);
}
html[data-theme="dark"]{
  --bg:#141310;
  --bg-raised:#1D1B16;
  --fg:#F3EEE1;
  --fg-soft: rgba(243,238,225,0.66);
  --fg-faint: rgba(243,238,225,0.4);
  --line: rgba(243,238,225,0.14);
  --accent:#8FB39C;
  --accent-2:#C98A8D;
  --accent-3:#D3B36A;
}
@media (prefers-reduced-motion: reduce){
  *{animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; scroll-behavior:auto !important;}
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0; background:var(--bg); color:var(--fg);
  font-family:var(--sans); font-size:16px; line-height:1.5;
  transition: background var(--dur) var(--ease), color var(--dur) var(--ease);
  -webkit-font-smoothing:antialiased;
}
a{color:inherit; text-decoration:none;}
button{font-family:inherit; cursor:pointer; background:none; border:none; color:inherit;}
input,textarea,select{font-family:inherit; font-size:1em; color:inherit;}
h1,h2,h3,h4{font-family:var(--serif); font-weight:500; margin:0; letter-spacing:-0.01em;}
p{margin:0;}
.container{max-width:1180px; margin:0 auto; padding:0 28px;}
@media(max-width:640px){.container{padding:0 18px;}}
.mono{font-family:var(--mono);}
.label{font-family:var(--mono); font-size:11px; letter-spacing:0.09em; text-transform:uppercase; color:var(--fg-faint);}
.rule{border:none; border-top:1px solid var(--line); margin:0;}
.vrule{border-left:1px solid var(--line);}
:focus-visible{outline:2px solid var(--accent-3); outline-offset:3px;}
::selection{background:var(--accent-3); color:var(--near-black);}

/* Layout skeleton */
#app{min-height:100vh; display:flex; flex-direction:column;}
main{flex:1; padding-bottom: 100px;}
.page-enter{animation: fadeUp 420ms var(--ease);}
@keyframes fadeUp{from{opacity:0; transform:translateY(8px);} to{opacity:1; transform:translateY(0);}}

/* ============ NAV ============ */
header.site-nav{
  position:sticky; top:0; z-index:40;
  background:color-mix(in srgb, var(--bg) 92%, transparent);
  backdrop-filter: blur(10px);
  border-bottom:1px solid var(--line);
}
.nav-row{display:flex; align-items:center; justify-content:space-between; height:64px; gap:20px;}
.brand{font-family:var(--serif); font-size:19px; letter-spacing:0.01em; white-space:nowrap;}
.brand span{color:var(--accent);}
.nav-links{display:flex; gap:22px; flex:1; justify-content:center; flex-wrap:nowrap; overflow:hidden;}
.nav-links a{font-size:13.5px; font-weight:500; color:var(--fg-soft); padding:6px 2px; border-bottom:2px solid transparent; white-space:nowrap;}
.nav-links a:hover, .nav-links a.active{color:var(--fg); border-bottom-color:var(--accent-3);}
.nav-right{display:flex; align-items:center; gap:10px;}
.icon-btn{width:34px; height:34px; display:flex; align-items:center; justify-content:center; border-radius:50%; border:1px solid transparent;}
.icon-btn:hover{background:var(--bg-raised);}
.btn{
  font-size:13px; font-weight:600; letter-spacing:0.02em; padding:9px 16px;
  border:1px solid var(--fg); border-radius:var(--radius); transition: all var(--dur) var(--ease);
}
.btn:hover{background:var(--fg); color:var(--bg);}
.btn.solid{background:var(--fg); color:var(--bg);}
.btn.solid:hover{opacity:0.82; background:var(--fg); color:var(--bg);}
.btn.accent{border-color:var(--accent); color:var(--accent);}
.btn.accent:hover{background:var(--accent); color:var(--ivory);}
.btn.small{padding:6px 12px; font-size:12px;}
.hamburger{display:none;}
@media(max-width:920px){
  .nav-links{display:none;}
  .hamburger{display:flex;}
}
#mobile-menu{position:fixed; inset:64px 0 0 0; background:var(--bg); z-index:39; padding:24px; overflow:auto; display:none;}
#mobile-menu.open{display:block;}
#mobile-menu a{display:block; font-family:var(--serif); font-size:26px; padding:12px 0; border-bottom:1px solid var(--line);}

/* ============ HERO / TYPE ============ */
.hero{padding:74px 0 60px; display:grid; grid-template-columns:1.15fr 0.85fr; gap:48px; align-items:center;}
@media(max-width:900px){.hero{grid-template-columns:1fr; padding:44px 0 36px;}}
.hero h1{font-size:clamp(40px,6.4vw,74px); line-height:0.98;}
.hero-eyebrow{margin-bottom:18px;}
.hero p.statement{margin-top:22px; font-size:17px; color:var(--fg-soft); max-width:44ch; font-style:italic; font-family:var(--serif);}
.hero-ctas{display:flex; gap:12px; margin-top:30px; flex-wrap:wrap;}
.hero-lines{width:100%; height:340px;}
.hero-lines line{stroke:var(--fg); stroke-opacity:0.16;}
@media(max-width:900px){.hero-lines{height:180px;}}
.reveal-word{display:inline-block; opacity:0; transform:translateY(18px); animation: revealWord 700ms var(--ease) forwards;}

@keyframes revealWord{to{opacity:1; transform:translateY(0);}}

section{padding:56px 0;}
.section-head{display:flex; justify-content:space-between; align-items:flex-end; gap:20px; margin-bottom:30px; flex-wrap:wrap;}
.section-head h2{font-size:clamp(26px,3.6vw,42px); line-height:1.05;}
.see-all{font-size:13px; font-weight:600; border-bottom:1px solid var(--fg);}

/* Statement block */
.statement-block{padding:70px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
.statement-block h2{font-size:clamp(30px,4.6vw,52px); max-width:14ch; margin-bottom:26px;}
.statement-block blockquote{font-family:var(--serif); font-size:clamp(18px,2.2vw,24px); max-width:56ch; color:var(--fg-soft); font-style:italic; margin:0;}

/* Audio card */
.audio-card{
  background:var(--bg-raised); border:1px solid var(--line); border-radius:var(--radius);
  display:grid; grid-template-columns:auto 1fr auto; gap:26px; align-items:center; padding:26px;
}
@media(max-width:760px){.audio-card{grid-template-columns:1fr;}}
.play-circle{
  width:64px; height:64px; border-radius:50%; border:1.5px solid var(--fg); display:flex; align-items:center;
  justify-content:center; flex-shrink:0; transition:all var(--dur) var(--ease);
}
.play-circle:hover{background:var(--fg); color:var(--bg);}
.wave{display:flex; align-items:flex-end; gap:2px; height:34px;}
.wave i{width:3px; background:var(--accent); opacity:0.55; border-radius:1px;}
.audio-card-title{font-size:22px; margin-bottom:4px;}
.audio-meta{display:flex; gap:14px; flex-wrap:wrap; margin-top:8px;}
.audio-actions{display:flex; gap:8px; flex-wrap:wrap;}

/* Three doors */
.doors{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line);}
@media(max-width:760px){.doors{grid-template-columns:1fr;}}
.door{background:var(--bg); padding:38px 30px; min-height:220px; display:flex; flex-direction:column; justify-content:space-between; transition:background var(--dur);}
.door:hover{background:var(--bg-raised);}
.door h3{font-size:30px; margin-bottom:10px;}
.door p{color:var(--fg-soft); font-size:14.5px;}
.door .go{margin-top:20px; font-size:13px; font-weight:600;}

/* Series numbered cards */
.series-list{border-top:1px solid var(--line);}
.series-item{display:grid; grid-template-columns:70px 1fr auto; gap:20px; align-items:center; padding:22px 0; border-bottom:1px solid var(--line); transition:background var(--dur);}
.series-item:hover{background:var(--bg-raised);}
.series-num{font-family:var(--mono); font-size:14px; color:var(--fg-faint);}
.series-title{font-size:19px; font-family:var(--serif);}
.series-sub{font-size:13px; color:var(--fg-soft); margin-top:2px;}

/* Scripture quote */
.scripture-hero{text-align:center; padding:90px 0;}
.scripture-hero blockquote{font-family:var(--serif); font-size:clamp(28px,5vw,50px); line-height:1.2; max-width:20ch; margin:0 auto 22px;}
.scripture-ref{font-family:var(--mono); font-size:13px; letter-spacing:0.08em; color:var(--accent);}

/* stats */
.stats-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:1px; background:var(--line); border:1px solid var(--line); text-align:center;}
@media(max-width:760px){.stats-grid{grid-template-columns:repeat(2,1fr);}}
.stat{background:var(--bg); padding:34px 12px;}
.stat .num{font-family:var(--serif); font-size:clamp(34px,5vw,56px);}
.stat .lbl{margin-top:6px;}

/* Journal grid */
.journal-grid{display:grid; grid-template-columns:1.3fr 1fr; gap:40px;}
@media(max-width:800px){.journal-grid{grid-template-columns:1fr;}}
.article-list{display:flex; flex-direction:column; gap:20px;}
.article-row{padding:16px 0; border-bottom:1px solid var(--line);}
.article-row h4{font-size:17px;}
.feature-article h3{font-size:clamp(24px,3.4vw,34px); margin:10px 0 12px;}

/* cards grid generic */
.grid{display:grid; gap:22px;}
.grid.cols-3{grid-template-columns:repeat(3,1fr);}
.grid.cols-2{grid-template-columns:repeat(2,1fr);}
@media(max-width:900px){.grid.cols-3{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){.grid.cols-3,.grid.cols-2{grid-template-columns:1fr;}}
.card{border:1px solid var(--line); padding:24px; border-radius:var(--radius); background:var(--bg); transition:border-color var(--dur), transform var(--dur);}
.card:hover{border-color:var(--fg-faint);}
.card .id{margin-bottom:14px;}
.card h3{font-size:20px; line-height:1.15;}
.card .meta{margin-top:12px; display:flex; gap:10px; flex-wrap:wrap;}
.tag{font-family:var(--mono); font-size:10.5px; letter-spacing:0.06em; text-transform:uppercase; padding:3px 8px; border:1px solid var(--line); border-radius:20px; color:var(--fg-soft);}
.card-actions{margin-top:16px; display:flex; gap:10px; flex-wrap:wrap;}

/* book cover css */
.book-cover{
  width:200px; height:290px; padding:22px; display:flex; flex-direction:column; justify-content:space-between;
  border:1px solid var(--near-black); position:relative; overflow:hidden; flex-shrink:0;
  background:linear-gradient(160deg, var(--parchment), var(--ivory));
  box-shadow: 6px 6px 0 var(--line);
}
html[data-theme="dark"] .book-cover{background:linear-gradient(160deg,#22201A,#181712);}
.book-cover::before{content:""; position:absolute; inset:10px; border:1px solid rgba(22,21,15,0.25);}
.book-cover .bt{font-family:var(--serif); font-size:26px; line-height:1.05; position:relative; z-index:1;}
.book-cover .ba{font-family:var(--mono); font-size:10px; letter-spacing:0.1em; position:relative; z-index:1;}
.book-cover.small{width:120px; height:172px; padding:14px;}
.book-cover.small .bt{font-size:16px;}

/* newsletter/dark */
.dark-block{background:var(--near-black); color:var(--ivory); padding:70px 0;}
html[data-theme="dark"] .dark-block{background:#0B0A08;}
.dark-block .label{color:rgba(246,242,232,0.5);}
.dark-block h2{color:var(--ivory);}
.dark-block .btn{border-color:var(--ivory);}
.dark-block .btn:hover{background:var(--ivory); color:var(--near-black);}

/* newsletter form */
.inline-form{display:flex; gap:0; max-width:460px; border-bottom:1.5px solid currentColor; padding-bottom:6px;}
.inline-form input{background:none; border:none; flex:1; font-size:16px; padding:6px 0; color:inherit;}
.inline-form input::placeholder{color:var(--fg-faint);}
.inline-form button{font-weight:700; font-size:13px; white-space:nowrap;}

/* footer */
footer{border-top:1px solid var(--line); padding:60px 0 130px;}
.footer-big{font-size:clamp(34px,6vw,64px); line-height:0.98; margin-bottom:40px;}
.footer-cols{display:flex; gap:60px; flex-wrap:wrap; justify-content:space-between;}
.footer-col a{display:block; font-size:13.5px; color:var(--fg-soft); padding:5px 0;}
.footer-col a:hover{color:var(--fg);}
.footer-bottom{margin-top:50px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px;}

/* breadcrumb */
.crumbs{padding:20px 0 0; font-size:12.5px; color:var(--fg-faint); display:flex; gap:6px; flex-wrap:wrap;}
.crumbs a:hover{color:var(--fg);}

/* detail hero */
.detail-hero{padding:36px 0 30px; border-bottom:1px solid var(--line);}
.detail-hero h1{font-size:clamp(32px,5vw,54px); margin:16px 0 18px; line-height:1.03;}
.detail-meta{display:flex; gap:22px; flex-wrap:wrap; margin-top:14px;}
.detail-meta .m-item .label{margin-bottom:3px;}

/* tabs */
.tabs{display:flex; gap:0; border-bottom:1px solid var(--line); margin:34px 0 30px; overflow-x:auto;}
.tab-btn{padding:12px 18px; font-size:13px; font-weight:600; letter-spacing:0.03em; color:var(--fg-soft); border-bottom:2px solid transparent; white-space:nowrap;}
.tab-btn.active{color:var(--fg); border-bottom-color:var(--accent);}
.tab-panel{display:none;} .tab-panel.active{display:block; animation:fadeUp 320ms var(--ease);}

.key-points{display:flex; flex-direction:column; gap:0; border-top:1px solid var(--line);}
.kp-row{display:grid; grid-template-columns:50px 1fr; gap:16px; padding:18px 0; border-bottom:1px solid var(--line);}
.kp-num{font-family:var(--mono); color:var(--accent);}

.transcript-line{display:grid; grid-template-columns:70px 1fr; gap:16px; padding:14px 0; border-bottom:1px solid var(--line); cursor:pointer; transition:background var(--dur);}
.transcript-line:hover{background:var(--bg-raised);}
.transcript-line.active{background:var(--bg-raised); border-left:2px solid var(--accent); padding-left:10px;}
.transcript-line .ts{font-family:var(--mono); font-size:12.5px; color:var(--accent); padding-top:2px;}

/* scripture panel chips */
.chip-row{display:flex; gap:10px; flex-wrap:wrap;}
.chip{padding:8px 14px; border:1px solid var(--line); border-radius:20px; font-size:13px; transition:all var(--dur);}
.chip:hover{border-color:var(--accent); color:var(--accent);}

/* prose */
.prose{max-width:66ch; font-size:17.5px; line-height:1.75;}
.prose p{margin-bottom:20px;}
.prose .dropcap:first-letter{font-family:var(--serif); font-size:64px; float:left; line-height:0.8; padding:6px 8px 0 0; color:var(--accent);}
.prose blockquote{font-family:var(--serif); font-style:italic; font-size:22px; border-left:2px solid var(--accent); padding-left:20px; margin:28px 0; color:var(--fg-soft);}
.article-layout{display:grid; grid-template-columns:1fr 220px; gap:50px;}
@media(max-width:880px){.article-layout{grid-template-columns:1fr;}}
.toc-float{position:sticky; top:90px; align-self:flex-start;}
.toc-float a{display:block; font-size:12.5px; color:var(--fg-soft); padding:6px 0; border-left:2px solid var(--line); padding-left:12px;}
.toc-float a:hover, .toc-float a.active{color:var(--fg); border-left-color:var(--accent);}
.font-controls{display:flex; gap:6px; align-items:center;}
.font-controls button{border:1px solid var(--line); width:30px; height:30px; border-radius:50%;}
.progress-bar{position:fixed; top:0; left:0; height:2px; background:var(--accent); z-index:60; width:0%;}

/* timeline */
.timeline{border-top:1px solid var(--line);}
.tl-item{border-bottom:1px solid var(--line); padding:22px 0; display:grid; grid-template-columns:110px 1fr; gap:20px; cursor:pointer;}
.tl-year{font-family:var(--serif); font-size:30px; color:var(--accent);}
.tl-body{display:none; padding-top:10px; color:var(--fg-soft); font-size:14.5px;}
.tl-item.open .tl-body{display:block; animation:fadeUp 300ms var(--ease);}
.tl-title{font-weight:600;}

/* faq accordion */
.accordion-item{border-bottom:1px solid var(--line);}
.accordion-q{padding:18px 0; display:flex; justify-content:space-between; align-items:center; font-weight:500; font-size:15.5px;}
.accordion-a{display:none; padding:0 0 18px; color:var(--fg-soft); max-width:60ch; font-size:14.5px;}
.accordion-item.open .accordion-a{display:block;}
.accordion-item.open .accordion-q .plus{transform:rotate(45deg);}
.plus{transition:transform var(--dur);}

/* search / command palette */
.overlay{position:fixed; inset:0; background:rgba(10,9,6,0.55); backdrop-filter:blur(2px); z-index:80; display:flex; align-items:flex-start; justify-content:center; padding:8vh 16px; opacity:0; pointer-events:none; transition:opacity var(--dur) var(--ease);}
.overlay.open{opacity:1; pointer-events:all;}
.palette{background:var(--bg); width:100%; max-width:640px; border-radius:var(--radius); border:1px solid var(--line); box-shadow:0 30px 60px rgba(0,0,0,0.3); max-height:76vh; display:flex; flex-direction:column; transform:translateY(-10px); transition:transform var(--dur) var(--ease);}
.overlay.open .palette{transform:translateY(0);}
.palette-input{padding:20px 22px; border-bottom:1px solid var(--line); font-size:19px; width:100%;}
.palette-body{overflow:auto; padding:10px 0;}
.palette-section-label{padding:10px 22px 6px; }
.palette-row{padding:12px 22px; display:flex; align-items:center; justify-content:space-between; gap:12px;}
.palette-row:hover, .palette-row.sel{background:var(--bg-raised);}
.palette-row .t{font-size:14.5px;}
mark{background:var(--accent-3); color:var(--near-black); padding:0 1px;}

/* modal */
.modal-back{position:fixed; inset:0; background:rgba(10,9,6,0.55); z-index:90; display:flex; align-items:center; justify-content:center; padding:20px; opacity:0; pointer-events:none; transition:opacity var(--dur);}
.modal-back.open{opacity:1; pointer-events:all;}
.modal-box{background:var(--bg); border:1px solid var(--line); border-radius:var(--radius); max-width:480px; width:100%; padding:30px; max-height:84vh; overflow:auto;}

/* toast */
#toast-wrap{position:fixed; bottom:110px; left:50%; transform:translateX(-50%); z-index:95; display:flex; flex-direction:column; gap:8px; align-items:center;}
.toast{background:var(--near-black); color:var(--ivory); padding:12px 20px; border-radius:30px; font-size:13.5px; box-shadow:0 10px 30px rgba(0,0,0,0.25); animation: toastIn 260ms var(--ease);}
@keyframes toastIn{from{opacity:0; transform:translateY(10px);} to{opacity:1; transform:translateY(0);}}

/* forms */
.form-grid{display:grid; grid-template-columns:1fr 1fr; gap:18px;}
@media(max-width:640px){.form-grid{grid-template-columns:1fr;}}
.field{display:flex; flex-direction:column; gap:6px;}
.field.full{grid-column:1/-1;}
.field label{font-size:12.5px; color:var(--fg-soft);}
.field input, .field textarea, .field select{border:none; border-bottom:1px solid var(--line); padding:9px 2px; background:none;}
.field input:focus, .field textarea:focus{border-bottom-color:var(--accent);}
.field.invalid input, .field.invalid textarea{border-bottom-color:var(--accent-2);}
.field-error{font-size:12px; color:var(--accent-2); display:none;}
.field.invalid .field-error{display:block;}
.cat-pills{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:22px;}
.cat-pill{padding:8px 16px; border:1px solid var(--line); border-radius:20px; font-size:13px;}
.cat-pill.active{background:var(--fg); color:var(--bg); border-color:var(--fg);}

/* skeleton */
.skel{background:linear-gradient(90deg,var(--bg-raised) 25%, var(--line) 50%, var(--bg-raised) 75%); background-size:200% 100%; animation:shimmer 1.4s infinite;}
@keyframes shimmer{to{background-position:-200% 0;}}

/* empty/error state */
.state-box{text-align:center; padding:70px 20px;}
.state-box h3{font-size:clamp(22px,3vw,30px); max-width:20ch; margin:0 auto 12px;}
.state-box p{color:var(--fg-soft); margin-bottom:20px;}

/* ministry map svg */
.map-wrap svg{width:100%; height:auto;}
.map-dot{cursor:pointer; transition:r var(--dur);}
.map-dot:hover{r:9;}

/* ============ AUDIO PLAYER ============ */
#player-bar{
  position:fixed; left:0; right:0; bottom:0; z-index:70; background:var(--near-black); color:var(--ivory);
  border-top:1px solid rgba(255,255,255,0.08); transform:translateY(100%); transition:transform var(--dur) var(--ease);
  padding:10px 20px 14px;
}
html[data-theme="dark"] #player-bar{background:#0B0A08;}
#player-bar.show{transform:translateY(0);}
.player-inner{max-width:1180px; margin:0 auto; display:grid; grid-template-columns:1fr auto 1fr; gap:16px; align-items:center;}
@media(max-width:760px){.player-inner{grid-template-columns:1fr auto;} .player-vol{display:none;}}
.player-info{overflow:hidden;}
.player-info .t{font-size:14px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; cursor:pointer;}
.player-info .s{font-size:11.5px; color:rgba(246,242,232,0.55); font-family:var(--mono);}
.player-controls{display:flex; flex-direction:column; align-items:center; gap:6px; min-width:260px;}
.player-btns{display:flex; align-items:center; gap:16px;}
.player-btns button{color:var(--ivory); opacity:0.85;}
.player-btns button:hover{opacity:1;}
.pbtn-play{width:34px; height:34px; border-radius:50%; border:1.5px solid var(--ivory); display:flex; align-items:center; justify-content:center;}
.p-seek{display:flex; align-items:center; gap:10px; width:100%; font-family:var(--mono); font-size:10.5px; color:rgba(246,242,232,0.6);}
.p-seek input[type=range]{flex:1; accent-color:var(--accent-3);}
.player-vol{display:flex; align-items:center; gap:10px; justify-self:end;}
.player-vol input[type=range]{width:80px; accent-color:var(--accent-3);}
.p-speed{font-family:var(--mono); font-size:11px; border:1px solid rgba(246,242,232,0.3); padding:4px 8px; border-radius:14px; color:var(--ivory);}

/* study mode */
body.study-mode header.site-nav, body.study-mode footer{display:none;}
.study-bar{display:flex; justify-content:space-between; align-items:center; padding:16px 0; border-bottom:1px solid var(--line); margin-bottom:20px;}
.notes-area{width:100%; min-height:140px; border:1px solid var(--line); padding:14px; font-family:var(--sans); font-size:14.5px; background:var(--bg-raised); border-radius:var(--radius);}

/* command k hint */
.kbd{font-family:var(--mono); font-size:11px; border:1px solid var(--line); border-radius:4px; padding:2px 6px;}

/* misc */
.split{display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center;}
@media(max-width:800px){.split{grid-template-columns:1fr;}}
.monogram{font-family:var(--serif); font-size:clamp(90px,16vw,190px); line-height:0.85; color:var(--accent); opacity:0.9;}
.big-statement{font-family:var(--serif); font-size:clamp(24px,3.6vw,38px); max-width:16ch; padding:40px 0; border-bottom:1px solid var(--line);}
.countdown{display:flex; gap:14px;}
.cd-unit{text-align:center;}
.cd-num{font-family:var(--serif); font-size:32px;}
.filter-bar{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:30px;}
.filter-bar select{border:1px solid var(--line); padding:9px 12px; border-radius:20px; background:var(--bg);}
.search-box{position:relative; margin-bottom:26px;}
.search-box input{width:100%; padding:14px 16px; border:1px solid var(--line); border-radius:30px; background:var(--bg);}
.book-toc-item{border-bottom:1px solid var(--line); padding:16px 0; cursor:pointer;}
.book-toc-item .d{display:none; color:var(--fg-soft); font-size:14px; padding-top:8px;}
.book-toc-item.open .d{display:block;}
