
:root{--ink:#0E1B3D;--navy:#0E1B3D;--navy-deep:#081230;--navy2:#1B2D5E;--gold:#C6A04A;--gold2:#DDB95E;--paper:#EEF1F7;--card:#FFFFFF;--line:#D3D9E6;--muted:#4A5675;--serif:"Libre Caslon Text",Georgia,serif;--display:"Libre Caslon Display",Georgia,serif;--sans:"Karla",system-ui,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--serif);color:var(--ink);background:var(--paper);line-height:1.65;font-size:18px}
h1,h2,h3{font-family:var(--display);font-weight:400;color:var(--navy);line-height:1.2}
a{color:var(--navy2)}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}
header.site{background:var(--navy);color:#fff;position:sticky;top:0;z-index:20;border-bottom:3px solid var(--gold)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;flex-wrap:wrap}
.brand{color:#fff;text-decoration:none;font-family:var(--display);font-size:1.4rem;font-weight:400;letter-spacing:.3px}
.brand span{color:var(--gold2)}
nav.main{display:flex;gap:4px;flex-wrap:wrap;align-items:center;font-family:var(--sans);font-size:.88rem}
nav.main a,nav.main summary{color:#e9edf7;text-decoration:none;padding:8px 10px;border-radius:6px;cursor:pointer;list-style:none}
nav.main a:hover,nav.main summary:hover,nav.main a.active{background:var(--navy2);color:#fff}
nav.main details{position:static}
nav.main details summary::-webkit-details-marker{display:none}
nav.main .drop{position:absolute;right:max(12px,calc((100vw - 1040px)/2 + 12px));top:100%;background:#fff;border:1px solid var(--line);border-radius:8px;width:520px;max-width:92vw;max-height:max(240px,calc(100vh - 230px));overflow-y:auto;box-shadow:0 8px 24px rgba(0,0,0,.18);padding:6px;display:grid;grid-template-columns:1fr 1fr;gap:0 6px}
nav.main .drop a{color:var(--ink)}
nav.main .drop a:hover{background:var(--paper);color:var(--navy)}
.hero{background:linear-gradient(160deg,var(--navy-deep) 0%,var(--navy2) 100%);color:#fff;padding:72px 0 64px;text-align:center}
.hero h1{color:#fff;font-size:2.6rem;margin:.2em 0}
.hero p{max-width:680px;margin:0 auto 1.2em;color:#dfe5f4}
.eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:2px;font-size:.78rem;color:var(--gold2)}
.btn{display:inline-block;font-family:var(--sans);font-weight:600;background:var(--gold);color:var(--navy);padding:12px 22px;border-radius:8px;text-decoration:none;border:0;cursor:pointer;font-size:1rem;margin:4px}
.btn:hover{background:var(--gold2)}
.btn.ghost{background:transparent;border:2px solid var(--gold2);color:#fff}
.btn.dark{background:var(--navy);color:#fff}
.btn.ghost-dark{background:transparent;border:2px solid var(--navy);color:var(--navy)}
.btn.ghost-dark:hover{background:var(--paper)}
.btn.dark:hover{background:var(--navy2)}
section{padding:48px 0}
.page-head{background:var(--navy);color:#fff;padding:48px 0 40px}
.page-head h1{color:#fff;margin:.2em 0;font-size:2.2rem}
.page-head p{color:#dfe5f4;max-width:720px;margin:0}
.grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:22px;box-shadow:0 2px 8px rgba(20,33,61,.05)}
.card h3{margin-top:0}
.verse{border-left:4px solid var(--gold);background:#fff;padding:14px 18px;border-radius:0 10px 10px 0;margin:20px 0;font-style:italic}
.verse small{display:block;font-style:normal;color:var(--muted);margin-top:4px;font-family:var(--sans)}
.video{aspect-ratio:16/9;background:var(--navy);border-radius:14px;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#cfd6e8;text-align:center;padding:20px;border:3px solid var(--gold)}
.video iframe{width:100%;height:100%;border:0}
ul.clean{padding-left:20px}
ul.clean li{margin:.6em 0}
.chat{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 6px 24px rgba(20,33,61,.1)}
.chat-top{background:var(--navy);color:#fff;padding:12px 18px;font-family:var(--sans);font-size:.95rem}
.chat-log{height:360px;overflow:auto;padding:18px;background:var(--paper)}
.msg{max-width:84%;padding:11px 15px;border-radius:12px;margin:10px 0;white-space:pre-wrap}
.msg.bot{background:#fff;border:1px solid var(--line)}
.msg.me{background:var(--navy2);color:#fff;margin-left:auto}
.msg.md{white-space:normal}.msg.md p{margin:0 0 8px}.msg.md h4{margin:14px 0 6px;font-size:1.05rem;color:var(--navy)}.msg.md ul{margin:4px 0 10px;padding-left:20px}.msg.md li{margin:3px 0}.msg.md hr{border:0;border-top:1px solid var(--line);margin:12px 0}
.chat-form{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line);background:#fff}
.chat-form textarea{flex:1;resize:none;border:1px solid var(--line);border-radius:8px;padding:10px;font:inherit;min-height:48px}
.chat-form .mic{min-width:48px;padding:0 12px;border:2px solid var(--navy);background:#fff;color:var(--navy);border-radius:8px;cursor:pointer;font-size:1.2rem}
.chat-form .mic[aria-pressed=true]{background:#B3261E;border-color:#B3261E;color:#fff;animation:cvpulse 1.2s infinite}
@keyframes cvpulse{50%{box-shadow:0 0 0 6px rgba(179,38,30,.25)}}
@media (prefers-reduced-motion:reduce){.chat-form .mic[aria-pressed=true]{animation:none}}
.chat-tools{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:8px 14px;border-top:1px solid var(--line);background:#fff;font-family:var(--sans);font-size:.88rem}
.chat-tools label{display:flex;gap:6px;align-items:center}
.chat-tools button{border:1px solid #B9C2D8;background:#fff;color:var(--navy);border-radius:999px;padding:5px 12px;cursor:pointer;font:inherit}
.msg .listen{display:block;margin-top:8px;border:1px solid #B9C2D8;background:#fff;color:var(--navy);border-radius:999px;padding:4px 12px;cursor:pointer;font-family:var(--sans);font-size:.85rem}
.voice-note{font-family:var(--sans);font-size:.8rem;color:var(--muted);padding:0 14px 10px;background:#fff;margin:0}
.notice{font-family:var(--sans);font-size:.85rem;color:var(--muted);padding:8px 14px;background:#E4E9F3;border-top:1px solid var(--line)}
.form label{display:block;font-family:var(--sans);font-weight:600;margin:14px 0 4px;font-size:.92rem}
.form input,.form textarea,.form select{width:100%;padding:11px;border:1px solid var(--line);border-radius:8px;font:inherit}
details.faq{background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 18px;margin:10px 0}
details.faq summary{cursor:pointer;font-weight:bold;color:var(--navy)}
pre.prompt{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;white-space:pre-wrap;font-family:var(--serif);font-size:1rem}
footer.site{background:var(--navy);color:#cfd6e8;padding:36px 0;margin-top:40px;border-top:3px solid var(--gold);font-family:var(--sans);font-size:.9rem}
footer.site a{color:var(--gold2)}
footer.site .cols{display:flex;gap:30px;flex-wrap:wrap;justify-content:space-between}
.mock-banner{background:var(--gold);color:var(--navy);text-align:center;font-family:var(--sans);font-weight:700;font-size:.85rem;padding:6px 12px}
.mock-player{display:flex;flex-direction:column;align-items:center;gap:10px;color:#fff;text-decoration:none;padding:10px}
.mock-player .play{width:72px;height:72px;border-radius:50%;background:var(--gold);color:var(--navy);display:flex;align-items:center;justify-content:center;font-size:1.6rem}
.mock-player small{color:#cfd6e8;font-family:var(--sans)}
.g-table{border-collapse:collapse;width:100%;font-family:var(--sans);font-size:.9rem}.g-table td,.g-table th{border:1px solid var(--line);padding:6px 8px;text-align:left;vertical-align:top}.g-table th{background:var(--navy);color:#fff}.table-wrap{overflow-x:auto}
.slot-empty{border:3px dashed var(--gold);background:#fffbe9;color:var(--navy);border-radius:14px;padding:22px;text-align:center;font-family:var(--sans);margin:16px 0}
.slot-empty code{background:#fff;padding:1px 6px;border-radius:4px}
.slot-img{width:100%;height:auto;border-radius:14px;display:block;margin:16px 0}
.slot-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:0 0 22px}
.slot-tiles .slot-img,.slot-tiles .slot-empty{margin:0}
.brand img{height:34px;width:auto;vertical-align:middle;margin-right:8px}
.portrait{width:200px;height:200px;border-radius:50%;object-fit:cover;border:4px solid var(--gold);background:var(--paper);flex:none}
.bio{display:flex;gap:28px;align-items:flex-start;flex-wrap:wrap}
.bio>div{flex:1;min-width:260px}
.chan-banner{background:linear-gradient(120deg,var(--navy-deep),var(--navy2));min-height:140px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:var(--gold2);font-family:var(--display);font-size:1.6rem;text-align:center;padding:14px;border:2px solid var(--gold)}
.chan-head{display:flex;gap:18px;align-items:center;margin:18px 0;flex-wrap:wrap}
.chan-head h2{margin:0}
.chan-head p{margin:.2em 0 0;color:var(--muted);font-family:var(--sans);font-size:.95rem}
.chan-avatar{width:84px;height:84px;border-radius:50%;background:var(--navy);color:var(--gold2);display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:1.5rem;border:3px solid var(--gold);flex:none}
.tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);font-family:var(--sans);flex-wrap:wrap;margin-bottom:22px}
.tabs span{padding:10px 2px}
.tabs .on{border-bottom:3px solid var(--navy);font-weight:700}
.vid-card .thumb{aspect-ratio:16/9;max-width:100%;border-radius:10px;background:linear-gradient(135deg,var(--navy),var(--navy2));color:var(--gold2);display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;font-family:var(--display);position:relative}
.vid-card .dur{position:absolute;right:8px;bottom:8px;background:rgba(0,0,0,.75);color:#fff;font-family:var(--sans);font-size:.75rem;padding:2px 6px;border-radius:4px}
.vid-card h3{font-size:1rem;margin:.6em 0 .2em;font-family:var(--serif);font-weight:700}
.vid-card p{margin:0;color:var(--muted);font-family:var(--sans);font-size:.85rem}
.legal{max-width:760px}
.legal h2{font-size:1.45rem;margin-top:1.6em}
.review-note{background:#fff;border:2px dashed var(--gold);border-radius:10px;padding:12px 16px;font-family:var(--sans);font-size:.92rem;margin-bottom:24px}
@media(max-width:640px){body{font-size:17px}.hero h1{font-size:2rem}nav.main{font-size:.8rem}}
.skip{position:absolute;left:-999px;top:0;background:#fff;color:#0e1b3d;padding:10px 14px;z-index:50;border-radius:0 0 8px 0}.skip:focus{left:0}
.mm{display:none;position:relative;font-family:var(--sans)}
.mm summary{list-style:none;cursor:pointer;color:#fff;background:var(--navy2);border:1px solid var(--gold);padding:9px 14px;border-radius:8px;font-size:.95rem}
.mm summary::-webkit-details-marker{display:none}
.mm .mm-list{position:absolute;right:0;top:calc(100% + 8px);background:#fff;border:1px solid var(--line);border-radius:10px;min-width:230px;max-height:calc(100vh - 80px);overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:0 10px 28px rgba(0,0,0,.25);padding:6px;display:flex;flex-direction:column}
.mm .mm-list a{color:var(--ink);text-decoration:none;padding:12px 12px;border-radius:6px;font-size:1rem}
.mm .mm-list a:hover,.mm .mm-list a.active{background:var(--paper);color:var(--navy)}
@media(max-width:820px){nav.main{display:none}.mm{display:block}header.site .wrap{flex-wrap:nowrap;min-height:56px}.brand{font-size:1.05rem}}
/* Sermon and Devotion Builder */
.sb-form{display:flex;flex-direction:column;gap:18px}
.sb-form fieldset{border:0;margin:0;padding:0;min-width:0}
.sb-form legend{font-family:var(--sans);font-weight:700;font-size:.95rem;padding:0;margin-bottom:8px;color:var(--navy)}
.kind{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.choice{display:flex;gap:10px;align-items:flex-start;border:2px solid var(--line);border-radius:12px;padding:14px 16px;cursor:pointer;background:#fff;font-family:var(--sans)}
.choice:has(input:checked){border-color:var(--gold);background:#FBF6E8}
.choice input{margin-top:5px}
.choice strong{display:block;font-size:1.1rem;color:var(--navy)}
.choice small{color:var(--muted);font-size:.9rem}
.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.field{min-width:0}
.field.wide{grid-column:1/-1}
.field label{display:block;font-family:var(--sans);font-weight:700;font-size:.9rem;margin-bottom:4px;color:var(--navy)}
.field input,.field textarea,.field select{width:100%;padding:11px;border:1px solid #B9C2D8;border-radius:8px;font:inherit;font-size:1rem;background:#fff;color:var(--ink);min-width:0}
.field input:focus,.field textarea:focus,.field select:focus,.chip:focus-visible,.btn:focus-visible,.ed:focus{outline:3px solid var(--gold);outline-offset:2px}
.opts{display:flex;flex-wrap:wrap;gap:8px 22px}
.opts label{font-family:var(--sans);font-size:.95rem;display:flex;gap:8px;align-items:center}
details.more{font-family:var(--sans)}
details.more summary{cursor:pointer;font-weight:700;color:var(--navy2)}
details.more .row{margin-top:12px}
.muted{color:var(--muted);font-family:var(--sans);font-size:.9rem;margin:0}
.sb-error{background:#FDECEC;border:1px solid #D9566F;color:#6B1020;padding:12px 16px;border-radius:10px;font-family:var(--sans);margin:16px 0}
.sb-progress{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 18px;font-family:var(--sans);margin:16px 0}
.sb-progress .spin{width:22px;height:22px;border:3px solid var(--line);border-top-color:var(--gold);border-radius:50%;animation:cvspin 1s linear infinite;flex:none}
@keyframes cvspin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.sb-progress .spin{animation:none}}
.sb-toolbar{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 18px}
.sb-adjust h3{margin:0 0 10px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.chip{font-family:var(--sans);font-size:.9rem;border:1px solid #B9C2D8;background:#fff;color:var(--navy);border-radius:999px;padding:7px 14px;cursor:pointer}
.chip:hover{border-color:var(--gold);background:#FBF6E8}
.chip:disabled,.btn:disabled{opacity:.55;cursor:wait}
.adj-row{display:flex;gap:8px;flex-wrap:wrap}
.adj-row input{flex:1;min-width:220px;padding:11px;border:1px solid #B9C2D8;border-radius:8px;font:inherit}
.reader{background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px clamp(16px,4vw,44px);margin-top:20px;max-width:100%}
.rd-head{display:flex;gap:20px;align-items:center;flex-wrap:wrap;border-bottom:3px solid var(--gold);padding-bottom:18px;margin-bottom:18px}
.rd-icon{flex:none;line-height:0}
.rd-head>div{min-width:240px;flex:1}
.rd-kind{font-family:var(--sans);letter-spacing:2px;font-size:.78rem;color:#8A6A1F;margin:0;font-weight:700}
.rd-title{font-family:var(--display);font-size:2rem;margin:.1em 0;color:var(--navy);line-height:1.2}
.rd-sub{font-style:italic;margin:.2em 0;color:var(--muted)}
.rd-ref{font-family:var(--sans);color:var(--muted);margin:.4em 0 0;font-size:.95rem}
.rd-warn{background:#FFF6DC;border:1px solid var(--gold);border-radius:8px;padding:10px 14px;font-family:var(--sans);font-size:.92rem}
.rd-idea{background:var(--paper);border-left:5px solid var(--gold);padding:14px 18px;border-radius:0 10px 10px 0;margin:18px 0}
.rd-idea b{display:block;font-family:var(--sans);font-size:.78rem;letter-spacing:2px;text-transform:uppercase;color:#8A6A1F}
.rd-idea p{margin:.3em 0 0;font-size:1.2rem;font-weight:700;color:var(--navy)}
.rd-time{font-family:var(--sans);margin:10px 0 6px}
.rd-time summary{cursor:pointer;font-weight:700;color:var(--navy2)}
.rd-time ol{margin:8px 0 0;padding-left:1.4rem}
.rd-time li span{color:var(--muted)}
.rd-h{font-family:var(--display);font-weight:400;font-size:1.5rem;margin:1.6em 0 .3em;color:var(--navy);border-bottom:1px solid var(--line);padding-bottom:4px}
.rd-pointhead{display:flex;align-items:center;gap:12px;margin:1.8em 0 .5em;flex-wrap:wrap}
.rd-pico{line-height:0;flex:none}
.rd-pnum{font-family:var(--sans);font-weight:700;color:#8A6A1F;font-size:1.05rem}
.rd-ptitle{font-family:var(--display);font-size:1.5rem;color:var(--navy);flex:1;min-width:200px}
.rd-label{font-family:var(--sans);font-size:.75rem;letter-spacing:2px;text-transform:uppercase;font-weight:700;color:#8A6A1F;margin:1.1em 0 .25em}
.rd-p{margin:.4em 0 .9em}
.rd-story{background:#FBF9F2;border-radius:8px;padding:10px 14px}
.rd-action{font-weight:700;color:var(--navy);margin:.5em 0 1em}
.ed{white-space:pre-wrap;border-radius:4px}
.ed:hover{background:#F6F2E4}
.ed:empty::before{content:"(empty)";color:#9AA3BD}
blockquote.scripture{margin:.6em 0 1em;border-left:4px solid var(--gold);background:var(--paper);padding:10px 16px;border-radius:0 8px 8px 0;font-size:1.02rem}
blockquote.scripture b{display:block;font-family:var(--sans);font-size:.85rem;color:#6B5116;margin-bottom:2px}
blockquote.scripture sup{color:#8A6A1F;font-family:var(--sans);font-size:.7em;margin:0 2px 0 4px;font-weight:700}
.rd-list{padding-left:1.4rem}
.rd-list li{margin:.5em 0}
.rd-note{font-family:var(--sans);font-size:.85rem;color:var(--muted);margin-top:2em;border-top:1px solid var(--line);padding-top:12px}
#print-root{display:none}
@media print{
  @page{size:Letter;margin:.75in .7in .8in;@bottom-center{content:counter(page);font:10pt Georgia,serif;color:#555}}
  body.printing{background:#fff!important}
  body.printing>:not(#print-root){display:none!important}
  body.printing #print-root{display:block;color:#000;font:11.5pt/1.5 var(--serif);-webkit-print-color-adjust:exact;print-color-adjust:exact}
  #print-root .pr-top{font:700 9pt var(--sans);letter-spacing:2px;text-transform:uppercase;color:#6B5116;text-align:center;border-bottom:2px solid #C6A04A;padding-bottom:4px;margin-bottom:10px}
  #print-root h1{font:400 26pt/1.15 var(--display);color:#0E1B3D;text-align:center;margin:6pt 0 2pt}
  #print-root .pr-sub{text-align:center;font-style:italic;color:#6B5116;margin:0 0 4pt}
  #print-root .pr-meta{text-align:center;font:9.5pt var(--sans);color:#4A5675;margin:0 0 2pt}
  #print-root .pr-idea{border-left:5px solid #C6A04A;background:#EEF1F7;padding:8pt 12pt;margin:12pt 0;font-weight:700;font-size:13pt;break-inside:avoid}
  #print-root .pr-idea b{display:block;font:700 8pt var(--sans);letter-spacing:2px;text-transform:uppercase;color:#6B5116}
  #print-root h2{font:400 16pt/1.25 var(--display);color:#0E1B3D;border-bottom:1px solid #B9C2D8;margin:16pt 0 6pt;padding-bottom:2pt;break-after:avoid}
  #print-root .pr-cue{float:right;font:700 9pt var(--sans);color:#6B5116;border:1px solid #C6A04A;border-radius:8pt;padding:1pt 7pt}
  #print-root .pr-time{border-collapse:collapse;font:10pt var(--sans);width:100%}
  #print-root .pr-time td{border-bottom:1px solid #D3D9E6;padding:2pt 6pt}
  #print-root .pr-time td:first-child{font-weight:700;width:48pt;color:#6B5116}
  #print-root .pr-time td:last-child{text-align:right;width:56pt;color:#4A5675}
  #print-root p{margin:0 0 7pt;orphans:3;widows:3}
  #print-root .pr-label{font:700 8pt var(--sans);letter-spacing:2px;text-transform:uppercase;color:#6B5116;margin:8pt 0 2pt;break-after:avoid}
  #print-root .pr-verse{border-left:4px solid #C6A04A;background:#EEF1F7;padding:6pt 10pt;margin:2pt 0 8pt;font-size:11pt;break-inside:avoid}
  #print-root .pr-verse b{font:700 9pt var(--sans);color:#6B5116;margin-right:4pt}
  #print-root .pr-verse sup{font:700 7pt var(--sans);color:#6B5116;margin:0 1pt 0 3pt}
  #print-root .pr-action{font-weight:700}
  #print-root .pr-notes{margin:6pt 0 12pt;break-inside:avoid}
  #print-root .pr-notes b{font:700 8pt var(--sans);letter-spacing:2px;text-transform:uppercase;color:#6B5116}
  #print-root .pr-notes i{display:block;border-bottom:1px solid #9AA3BD;height:17pt}
  #print-root ol,#print-root ul{margin:0 0 8pt;padding-left:20pt}
  #print-root li{margin-bottom:4pt;break-inside:avoid}
  #print-root .pr-note{font:italic 8.5pt var(--sans);color:#4A5675;border-top:1px solid #D3D9E6;padding-top:6pt;margin-top:14pt}
}

/* Accounts, free sample and plans */
.acct{margin-bottom:20px}
.acct h3{margin:0 0 6px}
.acct p{margin:.4em 0}
.acct-form{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.acct-form input{flex:1;min-width:220px;padding:11px;border:1px solid #B9C2D8;border-radius:8px;font:inherit;font-size:1rem}
.acct-who{font-family:var(--sans);color:var(--muted);margin:0}
.acct-btns{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.acct-msg{font-family:var(--sans);font-size:.95rem;background:var(--paper);border-left:4px solid var(--gold);padding:8px 12px;border-radius:0 8px 8px 0}
.acct-msg.bad{border-left-color:#B3261E;background:#FDECEC;color:#6B1020}
.sr{position:absolute;left:-9999px}
.interval{display:flex;gap:18px;flex-wrap:wrap;font-family:var(--sans);margin:8px 0 14px}
.interval label{display:flex;gap:6px;align-items:center}
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:14px 0}
.plan{background:#fff;border:2px solid var(--line);border-radius:14px;padding:20px;display:flex;flex-direction:column}
.plan.free{border-style:dashed}
.plan h4{font-family:var(--display);font-weight:400;font-size:1.5rem;margin:0;color:var(--navy)}
.plan-for{font-family:var(--sans);font-size:.92rem;color:var(--muted);margin:.2em 0 .6em}
.price{font-family:var(--display);font-size:1.9rem;color:var(--navy);margin:.1em 0 0}
.plan-save{font-family:var(--sans);font-size:.88rem;color:#6B5116;margin:0 0 .6em}
.plan ul{font-family:var(--sans);font-size:.95rem;padding-left:1.1rem;margin:.4em 0 1em;flex:1}
.plan ul li{margin:.35em 0}
.plan .btn{align-self:flex-start}
.redeem{font-family:var(--sans);margin:10px 0}
.redeem summary{cursor:pointer;color:var(--navy);font-weight:700}
.ad-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;align-items:end;font-family:var(--sans)}
.ad-form label{display:flex;flex-direction:column;gap:4px;font-size:.92rem}
.ad-form input,.ad-form select{padding:10px;border:1px solid #B9C2D8;border-radius:8px;font:inherit}
.ad-row{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;font-family:var(--sans);border-bottom:1px solid var(--line);padding:8px 0}

/* 365-day plan, word studies, maps, lookups */
#plan-app .card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px clamp(16px,3vw,28px);margin:0 0 18px}
#plan-app .card.inner{background:#FBF9F1;margin:12px 0 0;padding:14px 16px}
#plan-app h2,#plan-app h3{color:var(--navy);margin:0 0 10px}
#plan-app h4{color:var(--navy);margin:16px 0 6px;font-family:var(--sans)}
#plan-app p{max-width:70ch}
.pl-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin:16px 0}
.pl-opts fieldset,.ex-grid fieldset{border:0;margin:0;padding:0;font-family:var(--sans)}
.pl-opts legend,.ex-grid legend{font-weight:700;color:var(--navy);margin-bottom:6px;padding:0}
.pl-opts label,.ex-grid label{display:flex;gap:8px;align-items:center;margin:5px 0}
.pl-start input[type=date],#plan-app input[type=date],#plan-app input[type=number],#plan-app select,#plan-app input[type=text]{padding:9px;border:1px solid #B9C2D8;border-radius:8px;font:inherit;background:#fff;color:var(--navy);max-width:100%}
.pl-top{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;align-items:flex-start}
.pl-nav{display:flex;gap:6px;flex-wrap:wrap}
.pl-bar{height:12px;background:#E3E8F2;border-radius:99px;overflow:hidden;margin:14px 0 6px}
.pl-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold2));width:0}
.pl-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:10px;font-family:var(--sans)}
.pl-jump input{width:5.5em;margin-left:6px}
.pl-set summary{cursor:pointer;font-weight:700;color:var(--navy2)}
.pl-setbox{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:10px}
.pl-msg{font-family:var(--sans);font-size:.95rem;margin:10px 0 0;color:var(--navy)}
.pl-msg.bad{color:#8A1F2E;background:#FDECEC;border:1px solid #D9566F;padding:10px 14px;border-radius:10px}
.rd h4,.pt-title{font-family:var(--serif);color:var(--navy);font-size:1.15rem;margin:18px 0 8px;border-bottom:2px solid var(--gold);padding-bottom:4px}
.vs{margin:0 0 .6em;line-height:1.7;font-size:1.08rem}
.vn{font:700 .72rem var(--sans);color:#8A6A1F;background:none;border:0;cursor:pointer;vertical-align:super;padding:0 3px 0 0;text-decoration:underline dotted}
.vn:hover,.vn:focus-visible{color:var(--navy)}
.vw{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;padding:10px;background:#FBF9F1;border-radius:10px}
.vw[hidden]{display:none}
.orig{font-family:"SBL Hebrew","SBL Greek","Times New Roman","Noto Serif",serif;font-size:1.15em}
.orig.big{font-size:2rem;line-height:1.2;color:var(--navy)}
.chip .orig{font-size:1.05rem}
.wc{border:1px solid var(--gold);background:#FFFDF6;border-radius:12px;padding:14px 16px;margin:10px 0}
.wc-top{display:flex;gap:14px;align-items:baseline;flex-wrap:wrap}
.wc-num,.wc-tr,.badge{font-family:var(--sans);font-size:.85rem;color:#8A6A1F;font-weight:700}
.badge{background:#F3E8C8;border-radius:99px;padding:2px 9px}
.wc-def{font-family:var(--sans);font-size:.95rem;margin:8px 0}
.gd h4{margin:16px 0 6px}
.gd-words p{margin:6px 0}
.gd-ctx{display:grid;gap:4px;font-family:var(--sans);margin:10px 0}
.map-box{position:relative;border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:6px 0 10px;background:#BFD3E6}
.map-box.small{max-width:520px}
.map-tools{position:absolute;top:8px;right:8px;display:flex;flex-direction:column;gap:4px}
.map-tools button{width:38px;height:38px;border:1px solid #B9C2D8;border-radius:8px;background:#fff;font-size:1.2rem;cursor:pointer;color:var(--navy)}
.map-tools button:focus-visible{outline:3px solid var(--gold)}
.map-holder{line-height:0}
.small{font-size:.85rem}
.chips-row{display:flex;flex-wrap:wrap;gap:6px}
.lk-form{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.lk-form input[type=text]{flex:1;min-width:200px}
.lk-more{font-family:var(--sans);margin:6px 0 10px}
.lk-more summary{cursor:pointer;font-weight:700;color:var(--navy2)}
.lk-ev{display:grid;gap:6px;margin-top:8px}
.lk-ev label{display:flex;gap:8px;align-items:center}
.lk-country[hidden]{display:none}
.lk-card{border-top:3px solid var(--gold);padding-top:10px;margin-top:14px}
.lk-head{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.srcs{font-family:var(--sans);font-size:.88rem;padding-left:1.2em}
.srcs li{margin:5px 0}
.cite{font-family:var(--sans);font-size:.75rem;vertical-align:super;color:#8A6A1F;font-weight:700}
.uncited{opacity:.85}
.lnk{color:var(--navy2)}
.credits{margin-top:14px}
.ex-btns{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.ex-grid{margin:10px 0}
.tag,.tr{font-family:var(--sans);font-size:.85rem;color:var(--muted)}
.gl{color:var(--muted)}
.rd-wrap{overflow-wrap:anywhere}
#plan-app{overflow-wrap:anywhere}
.acct.plan-acct{margin-bottom:18px}
.lk-own{display:grid;gap:6px;margin-top:6px}.lk-own input{width:100%}
.sb-ev{display:grid;gap:6px;margin:8px 0;font-family:var(--sans)}.rd-sources{font-family:var(--sans);font-size:.9rem}.rd-h{color:var(--navy)}

/* daily life in Bible times */
.lf-set{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin:.6rem 0}
.lf-set input{flex:1 1 260px;min-width:0}
.lf-topics{border:1px solid var(--line,#d9dce6);border-radius:10px;padding:.7rem .9rem;margin:.6rem 0}
.lf-topics label{display:block;padding:.2rem 0}
.lf-all{margin-bottom:.4rem}
.lf-card h4{margin:1.1rem 0 .2rem;color:#0e1b3d;border-bottom:2px solid #c6a04a;padding-bottom:.2rem}

.pl-jump-nav{display:flex;gap:6px;overflow-x:auto;padding:4px 2px 10px;position:sticky;top:57px;z-index:5;background:var(--paper,#eef1f8);-webkit-overflow-scrolling:touch}
.pl-jump-nav a{flex:0 0 auto;padding:7px 12px;border:1px solid #c6a04a;border-radius:999px;color:#0e1b3d;text-decoration:none;font-size:.85rem;background:#fff}
#pl-read,#pl-guide,#pl-places,#pl-life,#pl-look,#pl-words,#pl-export{scroll-margin-top:120px}

/* Lesson Library */
.mat-prods{border:0;padding:0;margin:14px 0;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.mat-prods legend{font-weight:700;margin-bottom:8px;padding:0}
.mat-prod{display:flex;gap:10px;align-items:flex-start;border:2px solid #B9C2D8;border-radius:12px;padding:12px;cursor:pointer;background:#fff}
.mat-prod:has(input:checked){border-color:#C6A04A;background:#FBF6E8}
.mat-prod strong{display:block;color:#0E1B3D}
.mat-prod span{font-size:.95rem}
.mat-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:10px 0}
.mat-grid label{display:block;font-weight:600}
.mat-grid select,.mat-grid input{display:block;width:100%;margin-top:4px}
.mat-row{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
.mat-list{padding-left:1.2rem}.mat-list li{margin:0 0 14px}
.mat-small{padding:6px 14px;font-size:.95rem;margin-top:6px}
.mat-done{color:#2F6B3B;font-weight:700}
.mat-item h4{margin:18px 0 6px;color:#6B5116;text-transform:uppercase;letter-spacing:1px;font-size:.85rem}
.mat-verse{border-left:5px solid #C6A04A;background:#EEF1F7;padding:8px 12px;margin:6px 0;border-radius:0 8px 8px 0}
.mat-verse sup{color:#6B5116;font-size:.7em;margin-right:2px}
.mat-art{background:#fff;border:2px dashed #B9C2D8;border-radius:12px;padding:8px;margin:10px 0}
.mat-art svg{width:100%;height:auto;display:block}
@media print{#print-root .pr-svg svg{width:100%;height:auto;max-height:6.5in}#print-root .pr-newpage{break-before:page}#print-root ul,#print-root ol{margin:0 0 8pt 18pt}}
#mat-app>.card>label[for]{display:block;font-weight:600;margin-top:12px}
#mat-app>.card>input[type=text]{display:block;width:100%;margin-top:4px}

/* ---- study tools ---- */
.tl-bar{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.tl-chips{display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0;margin:8px 0}
.chip{font-family:var(--sans);font-size:.9rem;padding:7px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--navy);cursor:pointer}
.chip:hover,.chip.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.tl-topics{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;margin:14px 0}
.tl-topic{display:flex;gap:10px;align-items:center;text-align:left;font-family:var(--sans);font-size:.95rem;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:#fff;color:var(--navy);cursor:pointer}
.tl-topic span{flex:0 0 28px;height:28px;border-radius:50%;background:var(--gold);color:var(--navy);display:flex;align-items:center;justify-content:center;font-weight:700}
.tl-topic:hover,.tl-topic.on{background:var(--navy);color:#fff}
.tl-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:6px 14px;border:1px solid var(--line);border-radius:10px;padding:12px;margin:12px 0}
.tl-checks label{display:flex;gap:8px;align-items:center;font-family:var(--sans);font-size:.95rem}
.tl-opt{border:2px solid var(--line);border-radius:12px;padding:6px 16px;margin:14px 0;background:#fff}
.tl-opt.on{border-color:var(--gold);background:#fbf7ea}
.tl-scr blockquote,#tl-out blockquote{border-left:4px solid var(--gold);margin:8px 0;padding:2px 14px;background:#f6f3ea}
.tl-song{border:1px solid var(--line);border-radius:12px;padding:6px 16px;margin:12px 0;background:#fff}
.tl-rel table{border-collapse:collapse;width:100%;font-family:var(--sans);font-size:.88rem;display:block;overflow-x:auto}
.tl-rel td,.tl-rel th{border:1px solid var(--line);padding:6px 8px;vertical-align:top;text-align:left;min-width:150px}
.tl-rel th{background:var(--navy);color:#fff}
.orig{font-size:1.15em;color:var(--navy2)}
.ref{font-weight:700}
#tool-app label{display:block;font-family:var(--sans);font-weight:600;margin-top:12px}
#tool-app input[type=text],#tool-app select{width:100%;max-width:560px;padding:10px;border:1px solid var(--line);border-radius:8px;font-size:1rem;font-family:var(--sans)}
#tool-app .lk-form{display:flex;gap:8px;flex-wrap:wrap}
#tool-app .lk-form input{flex:1 1 260px}
.cite{font-size:.8em;vertical-align:super}

.mat-vers{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0;font-family:var(--sans)}

.mat-pic{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0}
.mat-pic label.btn{cursor:pointer}
.mat-art img{max-width:100%;height:auto;display:block;margin:0 auto;border:1px solid var(--line);border-radius:8px}
.mat-cover img{max-height:260px;width:auto}
.pr-svg img{max-width:100%;max-height:7.5in;display:block;margin:0 auto}

.mat-tag{display:inline-block;background:var(--navy);color:var(--gold2);font-family:var(--sans);font-size:.78rem;border-radius:999px;padding:2px 10px;margin-right:6px}
.mat-lead{border:1px solid var(--line);border-radius:10px;padding:8px 14px;margin:10px 0;background:#fbf9f2}
.mat-lead summary{cursor:pointer;font-family:var(--sans);font-weight:700}
.mat-logo{height:48px;width:auto;border:1px solid var(--line);border-radius:6px;background:#fff}
.pr-line{border-bottom:1px solid #777;height:.34in}
.pr-scover{padding-top:2.2in;text-align:center}
.pr-scover h1{font-size:34pt;border-bottom:3px solid #C6A04A;display:inline-block;padding-bottom:6pt}
.pr-logo{max-height:1in;max-width:3in;display:block;margin:0 auto 12pt}
@media print{@page{margin:.7in;@bottom-center{content:"Chapter & Verse  ·  Page " counter(page);font-size:9pt;color:#4A5675}}}
[hidden]{display:none !important}

.hp-alert{border-left:6px solid #9b1c1c;background:#fff6f6;margin-bottom:18px}
.hp-jump{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.hp-cat{margin:16px 0}
.hp-list{list-style:none;padding:0;margin:0}
.hp-list li{padding:10px 0;border-top:1px solid var(--line)}
.hp-list li:first-child{border-top:0}
.hp-contact{font-family:var(--sans);font-weight:700}
.hm-letter{margin:28px 0 8px;color:var(--gold)}
.hm{margin:10px 0}
.hm-vt{background:var(--paper);border-radius:8px;padding:10px 12px;margin:6px 0}
.tbl-wrap{overflow-x:auto}
table.shop{border-collapse:collapse;width:100%;font-family:var(--sans);font-size:.92rem}
table.shop th,table.shop td{border:1px solid var(--line);padding:8px 10px;text-align:left}
table.shop thead th,table.shop tr:first-child th{background:var(--paper)}
.hol{border-top:1px solid var(--line);padding:6px 0}
.hol summary{cursor:pointer;font-family:var(--sans)}
.hol-when{color:var(--muted);margin-left:6px}
.hol-chip{font-size:.75rem;margin-left:6px}
.hol-body{padding:6px 0 10px 4px}
.hol-note{background:#f7f2e4;border-left:4px solid var(--gold);padding:8px 12px;border-radius:6px}
.md-out{white-space:pre-wrap;background:var(--paper);padding:12px;border-radius:8px;font-family:var(--sans);font-size:.95rem}
