:root{
  --deep-blue:#0B1D3A;
  --royal-purple:#5A2A83;
  --scarlet:#A61E2E;
  --gold:#D4AF37;
  --light-gold:#F5E6A8;
  --white:#FFFFFF;
  --dark:#05070D;
  --panel:#0f172a;
  --muted:#cbd5e1;
  --line:rgba(212,175,55,.32);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Georgia,'Times New Roman',serif;
  background:
    radial-gradient(circle at top left, rgba(90,42,131,.35), transparent 28%),
    linear-gradient(180deg, var(--dark), #08111f 45%, #05070D);
  color:var(--white);
}
a{color:inherit;text-decoration:none}
.tabernacle-frame{
  width:min(1560px, calc(100% - 18px));
  margin:9px auto;
  min-height:calc(100vh - 18px);
  border:2px solid rgba(212,175,55,.62);
  border-radius:28px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08), inset 0 0 55px rgba(212,175,55,.08), 0 0 35px rgba(212,175,55,.12);
  position:relative;
  overflow:hidden;
}
.tabernacle-frame::before{
  content:"";
  position:absolute;
  inset:10px;
  border-radius:20px;
  border:1px solid rgba(166,30,46,.42);
  pointer-events:none;
}
.tabernacle-frame::after{
  content:"";
  position:absolute;
  top:0;left:0;right:0;height:7px;
  background:linear-gradient(90deg,var(--deep-blue),var(--royal-purple),var(--scarlet),var(--gold),var(--scarlet),var(--royal-purple),var(--deep-blue));
  pointer-events:none;
}
.hero{
  min-height:74vh;
  background:radial-gradient(circle at top center, rgba(245,230,168,.12), transparent 22%), radial-gradient(circle at 18% 20%, rgba(30,58,138,.62), transparent 30%), radial-gradient(circle at 82% 25%, rgba(90,42,131,.42), transparent 34%), linear-gradient(160deg,#05070D 0%, #0B1D3A 44%, #1a1028 74%, #130509 100%);
  color:white;
  padding:20px;
}
.nav{display:flex;justify-content:space-between;align-items:center;max-width:1140px;margin:auto;position:relative;z-index:2}
.brand{display:flex;gap:10px;align-items:center;font-weight:800;letter-spacing:.12em;font-size:1rem;color:var(--gold)}
.brand-mark{color:var(--scarlet);text-shadow:0 0 14px rgba(212,175,55,.45)}
.navlinks{display:flex;gap:18px;font-family:Arial,sans-serif;font-size:.9rem;color:var(--muted)}
.navlinks a:hover{color:var(--gold)}
.hero-content{max-width:1080px;margin:32px auto 18px;text-align:center;position:relative;z-index:2}
.hero-content.compact h1{
  font-size:clamp(2rem,4.6vw,3.85rem);
  line-height:1.02;
  margin:.18em 0 .18em;
  color:var(--gold);
  text-shadow:0 0 18px rgba(212,175,55,.24);
}
.eyebrow{
  display:inline-block;
  background:#A61E2E;
  color:#F5E6A8;
  padding:7px 14px;
  border-radius:999px;
  border:1px solid #D4AF37;
  text-transform:uppercase;
  letter-spacing:.16em;
  font:bold .72rem Arial,sans-serif;
}
.subhead{
  font-size:clamp(1.08rem,1.8vw,1.45rem);
  line-height:1.32;
  margin:12px auto 8px;
  max-width:780px;
  color:var(--light-gold);
  font-weight:500;
}
.cta-row{margin-top:12px}
.button{display:inline-block;border-radius:999px;padding:13px 21px;margin:8px 10px 8px 0;font:bold .92rem Arial,sans-serif;cursor:pointer;transition:.22s}
.button.small{padding:10px 16px;background:transparent}
.primary{background:var(--scarlet);color:white;border:1px solid rgba(255,255,255,.14)}
.primary:hover{background:var(--gold);color:#05070D}
.secondary{border:1px solid var(--gold);color:var(--gold);background:transparent}
.secondary:hover{background:var(--gold);color:#05070D}
.hero-image-wrap{
  width:min(760px, 94%);
  margin:10px auto 2px;
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(212,175,55,.38);
  box-shadow:0 22px 70px rgba(0,0,0,.38), 0 0 38px rgba(212,175,55,.14);
  background:#05070D;
}
.hero-bible-image{
  width:100%;
  display:block;
  aspect-ratio:16 / 8.6;
  object-fit:cover;
  object-position:center 52%;
}
.scroll-cue{
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  gap:3px;
  margin-top:8px;
  color:var(--light-gold);
  font:700 .86rem Arial,sans-serif;
  letter-spacing:.04em;
  text-transform:uppercase;
  opacity:.95;
  animation:scrollPulse 1.6s ease-in-out infinite;
}
.scroll-cue strong{font-size:1.9rem;color:var(--gold);line-height:1}
@keyframes scrollPulse{0%,100%{transform:translateY(0);opacity:.78}50%{transform:translateY(6px);opacity:1}}
main{max-width:1160px;margin:auto;padding:22px 18px}
.section{padding:48px 0}
.attributes-first{padding-top:10px}
.section-head h2{font-size:clamp(1.65rem,3.2vw,2.6rem);margin:.15em 0;color:var(--gold)}
.section-head p{max-width:720px;color:var(--muted);font-size:1.02rem;line-height:1.5}
.small-head{text-align:center}
.small-head p{margin-left:auto;margin-right:auto}
.controls{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0;justify-content:center}
input,select{padding:13px;border:1px solid var(--line);border-radius:14px;background:#0f172a;color:white;min-width:240px;font-size:1rem}
input::placeholder{color:#94a3b8}
.tiles{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.tile{
  background:linear-gradient(145deg,rgba(11,29,58,.88),rgba(90,42,131,.24)), radial-gradient(circle at top right,rgba(166,30,46,.16),transparent 35%);
  border:1px solid var(--line);
  border-radius:18px;
  padding:16px;
  cursor:pointer;
  transition:.25s;
  min-height:132px;
  box-shadow:0 10px 30px rgba(0,0,0,.18);
}
.tile:hover{transform:translateY(-4px);box-shadow:0 14px 38px rgba(212,175,55,.14);border-color:var(--gold)}
.tile h3{font-size:1.18rem;margin:0 0 8px;color:var(--white)}
.tile p{color:var(--muted);line-height:1.36;font-size:.92rem;margin:0}
.tile .eyebrow{font-size:.62rem;color:var(--light-gold);margin-bottom:8px}
.daily-card,.registration-panel{
  background:linear-gradient(135deg,rgba(11,29,58,.92),rgba(90,42,131,.62)), radial-gradient(circle at top right,rgba(166,30,46,.22),transparent 40%);
  color:white;
  border:1px solid var(--gold);
  border-radius:26px;
  padding:30px;
  margin:26px 0;
  box-shadow:0 20px 55px rgba(0,0,0,.20);
}
.daily-card{text-align:center}
.daily-card h2{color:var(--gold);font-size:clamp(1.9rem,3.5vw,3rem);margin:8px 0}
.verse{font-style:italic;color:var(--light-gold);font-size:1.05rem;line-height:1.55}
.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:28px 0 34px}
.plan-card{
  background:linear-gradient(145deg, rgba(11,29,58,.88), rgba(15,23,42,.94)), radial-gradient(circle at top right, rgba(212,175,55,.08), transparent 42%);
  border:1px solid rgba(212,175,55,.34);
  border-radius:24px;
  padding:24px;
  min-height:420px;
  display:flex;
  flex-direction:column;
  box-shadow:0 18px 46px rgba(0,0,0,.24);
}
.plan-card.featured{border:2px solid var(--gold);box-shadow:0 24px 60px rgba(212,175,55,.14)}
.plan-card.full{border:2px solid rgba(90,42,131,.95);box-shadow:0 24px 60px rgba(90,42,131,.22)}
.plan-card h3{color:var(--gold);font-size:2.1rem;line-height:1.1;margin:8px 0}
.plan-card h3 span{font-size:1rem;color:var(--muted)}
.plan-summary{color:var(--light-gold);font-size:1.05rem;line-height:1.45;margin:8px 0 16px}
.plan-card ul{margin:0 0 22px;padding-left:20px}
.plan-card li{color:var(--muted);line-height:1.42;margin:10px 0}
.plan-card .button{margin-top:auto;text-align:center}
.registration-panel{max-width:760px;text-align:center;margin:34px auto 0}
.registration-panel h3{color:var(--gold);font-size:clamp(1.8rem,3vw,2.6rem);margin:8px 0 6px}
#selectedPlanText{color:var(--light-gold);font-weight:700}
#accessForm{display:grid;gap:12px;justify-items:center;margin-top:18px}
#accessForm input,#accessForm select{width:min(440px,100%)}
.checkbox{max-width:640px;display:flex;gap:10px;text-align:left;color:var(--muted);font:600 .92rem Arial,sans-serif}
.capture-message{font-weight:bold;color:var(--gold)}
dialog{border:0;border-radius:28px;max-width:760px;width:92%;padding:30px;background:#0f172a;color:white;box-shadow:0 30px 90px rgba(0,0,0,.55)}
dialog::backdrop{background:rgba(0,0,0,.72)}
.close{float:right;border:0;background:rgba(255,255,255,.08);color:white;border-radius:50%;width:38px;height:38px;font-size:1.7rem;cursor:pointer}
.modal-definition{font-size:1.18rem;line-height:1.55}
.scripture{border-left:4px solid var(--gold);padding:10px 0 10px 14px;margin:14px 0;background:rgba(255,255,255,.05)}
.scripture strong{display:block;margin-bottom:5px;color:var(--gold)}
.locked-section{margin-top:18px;padding:16px;border:1px solid rgba(212,175,55,.35);border-radius:18px;background:rgba(166,30,46,.12)}
.locked-section p{color:var(--light-gold)}
footer{text-align:center;padding:40px;color:var(--muted)}
@media(max-width:1000px){.tiles{grid-template-columns:repeat(4,1fr)}}
@media(max-width:980px){.plan-grid{grid-template-columns:1fr}.plan-card{min-height:auto}}
@media(max-width:760px){.tiles{grid-template-columns:repeat(2,1fr)}.navlinks{display:none}.hero{min-height:70vh}.tabernacle-frame{width:calc(100% - 10px);margin:5px auto;border-radius:18px}.hero-image-wrap{width:100%}.hero-bible-image{aspect-ratio:16/10}}
@media(max-width:420px){.tiles{grid-template-columns:1fr}}
