:root{
  --maroon:#8a1538;
  --maroon-deep:#5f0925;
  --maroon-soft:#f7edf0;
  --gold:#b29b63;
  --gold-bright:#d6bf7a;
  --ink:#201a1c;
  --muted:#70686a;
  --paper:#fffdf9;
  --canvas:#f5f2ec;
  --line:rgba(74,49,57,.13);
  --shadow-sm:0 1px 2px rgba(46,24,31,.04),0 8px 24px rgba(46,24,31,.06);
  --shadow-lg:0 22px 70px rgba(46,24,31,.16);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:
    radial-gradient(circle at 10% -10%,rgba(178,155,99,.12),transparent 34rem),
    linear-gradient(180deg,#faf8f4 0%,var(--canvas) 100%);
  color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif;
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility
}
a{color:var(--maroon);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--maroon-deep)}
button,input,select,textarea{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid rgba(178,155,99,.46);outline-offset:3px
}
header.site{
  position:sticky;top:0;z-index:30;
  border-bottom:1px solid rgba(74,49,57,.08);
  background:rgba(255,253,249,.82);
  backdrop-filter:saturate(150%) blur(22px);
  -webkit-backdrop-filter:saturate(150%) blur(22px)
}
nav{max-width:1080px;margin:auto;padding:14px 24px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
nav .brand{font-weight:800;letter-spacing:.08em;margin-right:auto;color:var(--maroon)}
nav>a{padding:8px 12px;border-radius:999px;color:var(--ink);text-decoration:none;font-weight:650;font-size:.92rem}
nav>a:hover{background:var(--maroon-soft);color:var(--maroon)}
main{max-width:980px;margin:auto;padding:48px 24px 84px}
.hero{padding:34px 0 28px}
.eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--maroon)}
h1,h2,h3{margin-top:0;color:var(--ink);font-family:Georgia,"Times New Roman",serif;line-height:1.12;letter-spacing:-.02em}
h1{font-size:clamp(2.25rem,6vw,4.5rem);max-width:820px;margin-bottom:18px}
h2{font-size:clamp(1.55rem,3vw,2.25rem)}
h3{font-size:1.2rem}
.lead{font-size:clamp(1.05rem,2vw,1.22rem);line-height:1.65;max-width:760px;color:#4e4648}
.scriptures{font-weight:700}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin:24px 0}
.card,.bethel-panel{
  background:rgba(255,255,255,.86);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow-sm)
}
.card{padding:24px}
.card h2,.card h3{margin-bottom:10px}
.card p:last-child{margin-bottom:0}
.day{border-left:4px solid var(--gold)}
.muted{color:var(--muted)}
.pill{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:var(--maroon-soft);color:var(--maroon);font-size:.75rem;font-weight:800}
.button{
  display:inline-flex;align-items:center;justify-content:center;min-height:46px;
  padding:11px 18px;border:1px solid transparent;border-radius:14px;
  background:linear-gradient(180deg,#971a41,var(--maroon));color:white;
  box-shadow:0 8px 18px rgba(138,21,56,.18);
  text-decoration:none;font-weight:750;cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease
}
.button:hover{color:white;filter:brightness(.98);transform:translateY(-1px);box-shadow:0 12px 24px rgba(138,21,56,.22)}
.button:active{transform:scale(.98)}
.button.secondary{background:#fff;color:var(--maroon);border-color:rgba(138,21,56,.18);box-shadow:none}
.bethel-shell{background:var(--canvas);color:var(--ink)}
.bethel-panel{padding:clamp(22px,4vw,36px);margin:18px 0}
.gate{background:#fff;border:1px solid rgba(178,155,99,.34);border-radius:18px;padding:20px;box-shadow:var(--shadow-sm)}
.footer-note{margin-top:38px;padding-top:22px;border-top:1px solid var(--line);font-size:.9rem;color:var(--muted)}
.editor-form{display:grid;gap:18px;max-width:760px}
.editor-form label:not(.check){display:grid;gap:7px;font-weight:700}
.editor-form input,.editor-form textarea,.editor-form select{
  width:100%;min-height:48px;padding:11px 13px;border:1px solid rgba(74,49,57,.18);
  border-radius:13px;background:#fff;color:inherit;box-shadow:inset 0 1px 2px rgba(0,0,0,.025)
}
.editor-form input:focus,.editor-form textarea:focus,.editor-form select:focus{border-color:var(--gold);outline:3px solid rgba(178,155,99,.18)}
.editor-form fieldset{border:1px solid var(--line);border-radius:16px;padding:16px 18px}
.editor-form legend{font-weight:800}
.check{display:flex;align-items:center;gap:9px;margin:6px 0;font-weight:500}.check input{width:auto}
pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#241d20;color:#fbf7ef;padding:18px;border-radius:16px;font-size:.86rem}
#finish-card{display:none!important}.flow-buttons:has(#finish-study.done)+#finish-card{display:block!important}
@media(max-width:600px){
  main{padding:28px 16px 72px}.hero{padding-top:22px}nav{padding:11px 14px}
  nav .brand{width:100%;margin:0 0 3px}nav>a{padding:6px 9px}
  .card{padding:20px}.bethel-panel{padding:20px}
}