/* The Daily Deseret: brand Option 1 "Deseret Bold"
   Palette: Deep Navy #0A1633, Hive Gold #FFB81C, Warm White #FFF8EA, Ember Coral #FF5A47, Deep Slate #14264F, Fog Slate #5B6786
   Fonts: Fraunces (700/900) headlines, Inter body. Gold text only on navy; coral-d (#C23A2A) for coral text on light backgrounds. */
:root{--navy:#0A1633;--navy-2:#14264F;--navy-3:#1E3A7A;--gold:#FFB81C;--gold-l:#FFCB57;--gold-d:#B77F00;--cream:#FFF8EA;--paper:#fff;--ink:#0A1633;--muted:#5B6786;--coral:#FF5A47;--coral-d:#C23A2A;--coral-dd:#B33323;--sage:#5B6786;--line:#E6DCC4;
--honey:var(--gold);--honey-d:var(--gold-d);--shadow:6px 6px 0 var(--navy);--shadow-h:9px 9px 0 var(--coral);
--serif:Fraunces,"Iowan Old Style",Georgia,"Times New Roman",serif;--sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.65 var(--sans);-webkit-font-smoothing:antialiased}
a{color:var(--coral-d);text-underline-offset:3px;text-decoration-thickness:2px}a:hover{color:var(--navy);text-decoration-color:var(--coral)}img,iframe{max-width:100%}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
h1,h2,h3{font-family:var(--serif);font-weight:900;color:var(--navy);letter-spacing:-.015em}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}.narrow{max-width:720px}
/* nav */
header.site{background:var(--navy);border-bottom:5px solid var(--gold);position:sticky;top:0;z-index:20}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;padding-bottom:12px}
.brand{display:flex;align-items:center;text-decoration:none;color:var(--cream);flex:none}.brand img{display:block;height:52px;width:auto}
.brand:focus-visible{outline-color:var(--gold)}
header.site nav{display:flex;align-items:center;gap:2px}
header.site nav a{color:var(--cream);text-decoration:none;font:600 .95rem var(--sans);padding:8px 14px;border-radius:10px;white-space:nowrap;transition:color .15s,background .15s}
header.site nav a:hover{background:rgba(255,248,234,.08);color:var(--gold)}
header.site nav a:last-child{background:var(--gold);color:var(--navy);font-weight:800;margin-left:10px;box-shadow:0 3px 0 var(--gold-d)}
header.site nav a:last-child:hover{background:var(--coral);color:var(--navy);box-shadow:0 3px 0 var(--coral-dd)}
header.site a:focus-visible{outline-color:var(--gold)}
/* hero */
.hero{position:relative;color:var(--cream);text-align:left;padding:88px 0 92px;background:linear-gradient(100deg,rgba(10,22,51,.97) 0%,rgba(10,22,51,.92) 55%,rgba(10,22,51,.78) 100%),url("img/kirtland-temple.jpg") center/cover,var(--navy);border-bottom:5px solid var(--gold);overflow:hidden}
.hero .wrap{position:relative;z-index:1}
.hero h1{color:var(--cream);font-weight:900;font-size:clamp(2.8rem,8vw,5.6rem);line-height:1;margin:.15em 0 .3em;letter-spacing:-.025em}
.hero h1 em{color:var(--gold);font-style:normal}
.hero p{font-size:clamp(1.08rem,2.2vw,1.35rem);color:#D5DBEA;max-width:640px;margin:0 0 1.8em}
.kicker{display:inline-block;font:800 .76rem var(--sans);text-transform:uppercase;letter-spacing:.18em;color:var(--coral-d)}
.hero .kicker,.pagehead .kicker,.issue-head .kicker{color:var(--gold)}
.btn{display:inline-block;background:var(--gold);color:var(--navy);border:0;border-radius:10px;padding:14px 28px;font:800 1rem var(--sans);text-decoration:none;cursor:pointer;box-shadow:0 4px 0 var(--gold-d);transition:transform .15s,background .15s,box-shadow .15s;white-space:nowrap}
.btn:hover{background:var(--coral);color:var(--navy);box-shadow:0 4px 0 var(--coral-dd);transform:translateY(-2px)}
.btn:active{transform:translateY(2px);box-shadow:0 1px 0 var(--gold-d)}
.btn-ghost{background:transparent;color:var(--cream);box-shadow:inset 0 0 0 2px var(--cream);margin-left:10px}.btn-ghost:hover{background:var(--cream);color:var(--navy);box-shadow:0 4px 0 var(--coral)}
section{padding:60px 0}h2{font-size:2.1rem;margin:0 0 .7em;line-height:1.15}
section:not(.pagehead):not(#subscribe)>.wrap>h2:first-child,.asec h2{display:flex;align-items:center;gap:16px;font-size:clamp(1.7rem,4vw,2.5rem)}
section:not(.pagehead):not(#subscribe)>.wrap>h2:first-child::after,.asec h2::after{content:"";flex:1;height:4px;background:var(--navy);border-radius:2px}
/* signup band */
#subscribe{padding:60px 0;background:var(--gold);border-top:5px solid var(--navy);border-bottom:5px solid var(--navy)}
.signup{max-width:760px;margin:0 auto;text-align:center;color:#2A2410}
.signup h2{color:var(--navy);font-size:clamp(1.9rem,4.5vw,2.8rem);margin-bottom:.3em}.signup p{margin:.2em 0 0;font-weight:500;color:var(--navy)}
.signup form{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:24px}
.signup input{flex:1 1 260px;padding:14px 18px;border:3px solid var(--navy);border-radius:10px;background:var(--cream);color:var(--navy);font:500 1rem var(--sans)}.signup input:focus{outline:3px solid var(--coral);outline-offset:2px}
.signup .btn{background:var(--navy);color:var(--gold);box-shadow:0 4px 0 #000}.signup .btn:hover{background:var(--navy-2);color:var(--gold);box-shadow:0 4px 0 var(--coral)}
.placeholder-note{font:800 .72rem var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--gold);background:var(--navy);border-radius:6px;padding:5px 10px;display:inline-block;margin-bottom:12px}
/* cards */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:34px 30px}
.card{background:var(--paper);border:2px solid var(--navy);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}
.card:hover{transform:translate(-3px,-3px);box-shadow:var(--shadow-h)}
.card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.card .body{padding:20px 22px 24px}
.card h3{margin:.2em 0 .45em;font-size:1.3rem;line-height:1.22}.card h3 a{color:var(--navy);text-decoration:none}.card h3 a:hover{text-decoration:underline;text-decoration-color:var(--coral);text-decoration-thickness:3px}.card p{margin:0;color:var(--muted);font-size:.95rem}
.video{position:relative;aspect-ratio:16/9;background:#000;overflow:hidden}.card .video{border-radius:0;border-bottom:2px solid var(--navy)}.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.more{margin-top:28px;font-weight:700}
/* page headers */
.pagehead{background:var(--navy);color:#D5DBEA;padding:60px 0 52px;border-bottom:5px solid var(--gold)}
.pagehead h1{color:var(--cream);font-weight:900;font-size:clamp(2.2rem,6vw,4rem);line-height:1.02;margin:0 0 .3em;letter-spacing:-.02em}.pagehead p{max-width:760px;margin:.3em 0;font-size:1.1rem}
.pagehead a{color:var(--gold)}.pagehead a:hover{color:var(--cream);text-decoration-color:var(--coral)}.pagehead .lede{color:#D5DBEA}
.pagehead+section{padding-top:52px}
/* article page */
article.post{background:var(--paper);padding:44px 40px;margin:48px auto;border-radius:18px;border:2px solid var(--navy);box-shadow:8px 8px 0 var(--gold)}
article.post h1{font-weight:900;font-size:clamp(2rem,5vw,3.1rem);line-height:1.08;margin:.2em 0 .3em}.meta{font:.9rem var(--sans);color:var(--muted)}
.sides{display:grid;grid-template-columns:1fr 1fr;gap:16px}.side{background:var(--cream);border-left:5px solid var(--gold);padding:12px 16px;border-radius:8px}.side.b{border-color:var(--coral)}
.note{font:.9rem var(--sans);background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:14px 18px;color:var(--muted)}
/* footer */
footer.site{background:var(--navy);color:#B4BED6;padding:44px 0;font:.9rem/1.7 var(--sans);margin-top:0;border-top:5px solid var(--gold)}footer.site a{color:var(--gold)}footer.site a:hover{color:var(--cream)}footer.site strong{font:900 1.25rem var(--serif);color:var(--cream)}
.disclaimer{border-top:1px solid rgba(255,248,234,.2);margin-top:16px;padding-top:16px}
/* home today */
#today{padding-top:60px}
.today{background:var(--paper);border:2px solid var(--navy);border-radius:18px;padding:38px;box-shadow:10px 10px 0 var(--gold);overflow:hidden}
.today .kicker{background:var(--coral);color:var(--navy);padding:5px 10px;border-radius:6px;letter-spacing:.12em}
.today h2{margin-top:.5em;font-size:2.3rem}.today ul{padding-left:1.2em;font-size:1.1rem}.today li{margin:.5em 0}
.today .trivia{background:var(--cream);border-left:6px solid var(--gold);border-radius:10px;padding:14px 18px;margin:20px 0}
.today .btn{margin-right:14px}
.archive{list-style:none;padding:0;max-width:760px}.archive li{padding:0;margin:0 0 16px}
.archive a{display:block;font:900 1.2rem var(--serif);text-decoration:none;color:var(--navy);background:var(--paper);border:2px solid var(--navy);border-left:10px solid var(--gold);border-radius:12px;padding:16px 22px;box-shadow:4px 4px 0 var(--navy);transition:transform .15s,box-shadow .15s,border-left-color .15s}
.archive a:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--coral);border-left-color:var(--coral)}
/* issue content / images */
.issue h2{font-size:1.45rem;margin:1.6em 0 .5em}
.issue blockquote,.isec blockquote{margin:.8em 0;padding:10px 16px;background:var(--cream);border-left:5px solid var(--gold);border-radius:10px;font:700 1.05rem var(--serif)}
.issue img,.today img{max-width:100%;height:auto}
figure.photo{margin:1.2em auto;max-width:100%;text-align:center}
figure.photo img{display:block;margin:0 auto;max-width:100%;max-height:520px;width:auto;height:auto;border-radius:12px;border:2px solid var(--navy)}
figure.photo figcaption{font:.8rem/1.45 var(--sans);color:var(--muted);margin-top:.6em;text-align:center}figure.photo figcaption a{color:inherit;text-decoration:underline}
figure.teaser-photo{float:right;margin:0 0 1em 28px;max-width:360px}figure.teaser-photo img{max-height:300px;width:100%;object-fit:cover}
/* issue page */
.issue-wide{padding-top:0;padding-bottom:40px;max-width:1240px}
.issue-head{text-align:center;padding:68px 24px 56px;margin:0 -28px 28px;background:linear-gradient(rgba(10,22,51,.95),rgba(10,22,51,.95)),url("img/open-bible.jpg") center/cover,var(--navy);color:#D5DBEA;border-bottom:6px solid var(--gold);border-radius:0 0 28px 28px}
.issue-head h1{color:var(--cream);font-weight:900;font-size:clamp(2.1rem,6vw,4rem);line-height:1.04;margin:.25em auto;max-width:900px;letter-spacing:-.02em}
.issue-head .kicker{background:var(--coral);color:var(--navy);padding:5px 12px;border-radius:6px}
.issue-head .meta{color:#D5DBEA;font-size:1.05rem;max-width:760px;margin:.8em auto 0}.issue-head .meta a{color:var(--gold)}
.issue-grid{display:block;column-count:2;column-gap:22px}
.isec{background:var(--paper);border:2px solid var(--navy);border-radius:16px;padding:20px 24px;margin:0 6px 22px 0;break-inside:avoid;-webkit-column-break-inside:avoid;page-break-inside:avoid;box-shadow:5px 5px 0 var(--navy);transition:box-shadow .15s}.isec:hover{box-shadow:5px 5px 0 var(--coral)}
.isec h2{font-size:1.45rem;line-height:1.15;margin:0 0 .55em;padding:0 0 .35em;border-bottom:4px solid var(--gold);position:relative;display:block}
.isec h2::after{display:none}
.isec:first-child{column-span:all}
.isec p{margin:0 0 .6em}.isec ul,.isec ol{margin:.3em 0 .6em}.isec li{margin:.25em 0}.isec p:last-child{margin-bottom:0}.isec .poll,.isec .trivia{margin:.5rem 0}
.isec figure.photo{margin:.7em 0}.isec figure.photo img{width:100%;object-fit:contain;background:var(--cream);max-height:360px}
.isec-morning{background:transparent;border:0;box-shadow:none;padding:0;margin-right:0}.isec-morning:hover{box-shadow:none}
.isec-morning h2{display:inline-block;background:var(--navy);color:var(--gold);padding:8px 16px;border:0;border-radius:10px;margin-bottom:18px;box-shadow:4px 4px 0 var(--gold)}
.morning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.mcard{background:var(--paper);border:2px solid var(--navy);border-radius:16px;padding:20px 22px;box-shadow:5px 5px 0 var(--navy);transition:box-shadow .15s;display:flex;flex-direction:column;min-width:0;margin-right:5px}.mcard:hover{box-shadow:5px 5px 0 var(--coral)}
.mcard p{margin:0 0 .6em;font-size:.97rem}.mcard p:first-child{font-size:1rem}.mcard figure.photo{margin:auto 0 0;padding-top:.7em}.mcard figure.photo img{width:100%;max-height:220px;object-fit:cover}
@media(max-width:980px){.morning-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.morning-grid{grid-template-columns:1fr}.mcard{box-shadow:5px 5px 0 var(--navy)}}
.issue-back{text-align:center;margin:40px 0 0}
.comments{max-width:860px;margin:1.5rem auto 0!important;padding:22px 24px;background:var(--paper);border-radius:16px;border:2px solid var(--navy);box-shadow:6px 6px 0 var(--navy)}
.comments h2{font-size:1.6rem}
/* videos */
.grid.shorts{grid-template-columns:repeat(4,1fr);gap:28px 24px}@media(max-width:980px){.grid.shorts{grid-template-columns:repeat(3,1fr)}}
.video.short{aspect-ratio:9/16;width:100%;border-radius:0}.shortcard .body{padding:14px 16px 18px}.shortcard h3{font-size:1.02rem}
.vmeta{font-size:.88rem}.vblurb{margin-top:8px!important}
.archive-list{list-style:none;padding:0;margin:0 0 32px}.archive-list li{padding:12px 0;border-bottom:2px solid var(--line)}
/* articles */
.alist{padding-top:12px;padding-bottom:40px}
.lede{color:var(--muted);margin:.2em 0 1em}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 0}
.chip{font:700 .9rem var(--sans);text-decoration:none;color:var(--cream);background:transparent;border:2px solid rgba(255,248,234,.45);border-radius:10px;padding:7px 18px;transition:.15s}
.chip:hover{border-color:var(--coral);color:var(--gold);background:rgba(255,90,71,.12)}.chip.on{background:var(--gold);border-color:var(--gold);color:var(--navy)}
.asec{padding:44px 0 8px}.asec[hidden]{display:none}.blurb{color:var(--muted);margin:.2em 0 1.6em;font-size:1rem}
.aicon{display:flex;align-items:center;gap:14px;padding:20px 24px;background:var(--navy);color:var(--gold);border-bottom:2px solid var(--navy);font:800 .78rem var(--sans);text-transform:uppercase;letter-spacing:.16em}
.cat-scripture .aicon{background:var(--navy-2);color:var(--gold)}.cat-talks .aicon{background:var(--coral);color:var(--navy)}.cat-debate .aicon{background:var(--gold);color:var(--navy)}
.acard .kicker{display:none}.acard h3{font-size:1.25rem}.ameta{font:.82rem var(--sans);color:var(--muted)!important;margin-bottom:.6em!important}
.acard .body{display:flex;flex-direction:column;flex:1}
.alinks{margin-top:auto!important;padding-top:16px!important;display:flex;flex-wrap:wrap;gap:6px 18px;font:800 .88rem var(--sans)}.alinks a{color:var(--navy);text-decoration-color:var(--coral);text-decoration-thickness:3px}.alinks a:hover{color:var(--coral-d)}.alinks a.orig{color:var(--coral-d)}.alinks a.orig:hover{color:var(--navy)}
article.article-wide{max-width:980px;padding:48px 48px}
.article-wide .sourcebox{background:var(--cream);border-left:6px solid var(--gold);border-radius:10px;padding:14px 18px;margin:18px 0;font:.95rem/1.55 var(--sans)}.article-wide .sourcebox span{color:var(--muted);font-size:.85rem}
.article-wide .abody{font-size:1.08rem}.article-wide .abody h2{font-size:1.6rem;margin:1.6em 0 .4em;padding-bottom:.25em;border-bottom:4px solid var(--gold);display:block}.article-wide .abody h2::after{display:none}
.article-wide .lede{font:500 1.25rem/1.55 var(--sans);color:var(--navy-2)}
.article-wide .video{margin:22px 0 8px;border-radius:14px;border:2px solid var(--navy);box-shadow:5px 5px 0 var(--navy)}
@media(max-width:820px){.issue-grid{column-count:1}.isec{padding:16px 16px;margin-right:5px}.today{padding:26px 22px}figure.teaser-photo{float:none;max-width:100%;margin:0 0 1em}}
@media(max-width:640px){body{font-size:16px}.sides{grid-template-columns:1fr}section{padding:44px 0}.hero{padding:60px 0 64px}
header.site .wrap{flex-direction:column;justify-content:center;gap:6px;padding-top:10px;padding-bottom:10px}
.brand img{height:40px}header.site nav{display:flex;flex-wrap:nowrap;justify-content:center;gap:0;max-width:100%}header.site nav a{margin:0;padding:7px 8px;font-size:.8rem;border-radius:8px}header.site nav a:last-child{margin-left:6px;padding:7px 11px}
.wrap{padding:0 18px}.issue-head{margin:0 -18px 28px;padding:44px 18px 36px}article.post,article.article-wide{padding:26px 20px;margin:24px 14px 30px 12px;border-radius:14px;box-shadow:5px 5px 0 var(--gold)}
.grid{grid-template-columns:1fr}.card{box-shadow:5px 5px 0 var(--navy)}.grid.shorts{grid-template-columns:repeat(2,1fr);gap:20px 14px}.pagehead{padding:44px 0 36px}.btn-ghost{margin:12px 0 0}.today{box-shadow:6px 6px 0 var(--gold);margin-right:6px}.signup .btn{width:100%}.comments{box-shadow:4px 4px 0 var(--navy)}}
@media(max-width:360px){header.site nav a{padding:7px 6px;font-size:.74rem}}

/* Reader poll */
.poll{background:var(--navy);color:var(--cream);border-radius:14px;border-top:5px solid var(--gold);padding:18px 18px 14px;margin:.6rem 0 1rem}
.poll-kicker{color:var(--gold);font:800 .75rem var(--sans);letter-spacing:.14em;text-transform:uppercase}
.poll .poll-q{font:900 1.2rem/1.3 var(--serif);margin:.3rem 0 .8rem;color:var(--cream)}
.poll-opts{display:flex;flex-direction:column;gap:10px}.poll-opts{}
.poll-opt{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:48px;padding:12px 16px;border:2px solid var(--gold);border-radius:10px;background:var(--navy-2);color:var(--cream);font:600 1rem var(--sans);cursor:pointer;text-align:left;transition:background .15s,color .15s,transform .15s}
.poll-opt:hover:not(:disabled){background:var(--gold);color:var(--navy);transform:translateY(-1px);box-shadow:0 3px 0 var(--coral)}
.poll-opt:disabled{cursor:default}.poll:not(.voted) .poll-opt:disabled{opacity:.6}
.poll-bar{position:absolute;left:0;top:0;bottom:0;width:0;background:rgba(255,184,28,.38);transition:width .6s ease}
.poll-opt.mine{border-color:var(--coral);box-shadow:0 0 0 2px var(--coral)}
.poll-label,.poll-pct{position:relative}.poll-pct{font-weight:800;color:var(--gold);white-space:nowrap}
.poll .poll-status{margin:.7rem 0 0;font-size:.9rem;color:#D5DBEA}.poll .poll-note{margin:.4rem 0 0;font-size:.9rem;color:#D5DBEA}

/* Trivia multiple choice (uses .poll styles) */
.trivia-q{font-size:1.05rem}
.trivia-poll{margin-top:.4rem}

/* Image lightbox (assets/lightbox.js) */
img.lb-able{cursor:zoom-in}
img.lb-able:focus-visible{outline:3px solid #f2b705;outline-offset:3px}
html.lb-lock,html.lb-lock body{overflow:hidden}
.lb-overlay{position:fixed;inset:0;z-index:10000;background:rgba(8,8,10,.94);display:flex;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.lb-overlay[hidden]{display:none}
.lb-fig{margin:auto;max-width:100%;display:flex;flex-direction:column;align-items:center;cursor:default}
.lb-img{display:block;max-width:92vw;max-height:90vh;width:auto;height:auto;object-fit:contain;border-radius:6px;box-shadow:0 10px 40px rgba(0,0,0,.6);cursor:zoom-out}
.lb-fig:has(.lb-cap:not([hidden])) .lb-img{max-height:calc(90vh - 5.5rem)}
.lb-cap{color:#e8e6df;font:.9rem/1.5 var(--sans,system-ui,sans-serif);text-align:center;max-width:min(92vw,820px);margin-top:.8rem}
.lb-cap[hidden]{display:none}
.lb-cap a{color:#ffd76a;text-decoration:underline}
.lb-close{position:fixed;top:max(10px,env(safe-area-inset-top));right:12px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.55);color:#fff;font:400 30px/1 system-ui,sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0 0 3px}
.lb-close:hover{background:rgba(255,255,255,.2)}
.lb-close:focus-visible,.lb-cap a:focus-visible{outline:3px solid #f2b705;outline-offset:2px}
@media(max-width:600px){.lb-img{max-width:96vw}.lb-cap{font-size:.85rem}}

/* Creator Spotlight (home) */
#spotlight{padding:8px 0 40px}
.spotlight{display:flex;gap:22px;align-items:flex-start;background:var(--paper);border:2px solid var(--navy);border-radius:14px;box-shadow:var(--shadow);padding:24px 26px;max-width:860px}
.spotlight:hover{box-shadow:var(--shadow-h)}
.sp-badge{flex:none;width:76px;height:76px;border-radius:50%;background:var(--navy);color:var(--gold);border:3px solid var(--gold);display:flex;align-items:center;justify-content:center;font:900 1.8rem var(--serif);box-shadow:3px 3px 0 var(--coral)}
.spotlight h2{margin:.1em 0 .1em;font-size:clamp(1.5rem,3.5vw,2rem)}
.spotlight h3{font-size:1rem;margin:1em 0 .3em}
.spotlight p{margin:.4em 0}.spotlight .sp-tag{color:var(--muted);font-weight:600}
.sp-pieces{margin:0;padding-left:1.1em}.sp-pieces li{margin:.25em 0}.sp-pieces span{color:var(--muted);font-size:.88rem;white-space:nowrap}
.sp-note{font-size:.85rem;color:var(--muted)}
.sp-btns{margin-top:1em!important;display:flex;flex-wrap:wrap;gap:12px}
.btn-navy{background:var(--navy);color:var(--cream);box-shadow:0 4px 0 var(--coral)}.btn-navy:hover{background:var(--coral);color:var(--navy);box-shadow:0 4px 0 var(--coral-dd)}
@media(max-width:560px){.spotlight{flex-direction:column;padding:20px}.sp-badge{width:60px;height:60px;font-size:1.4rem}.sp-btns .btn{width:100%;text-align:center}}
/* Social Pulse */
#social-pulse{padding:8px 0 48px}
#social-pulse h2{margin:.1em 0 .6em}
.pulse-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.pcard{display:flex;flex-direction:column;padding:20px 22px}
.pcard p{margin:.3em 0}
.pc-who span{color:var(--muted);font-size:.92rem;font-weight:600}
.pc-sum{flex:1}
.pc-meta{font-size:.82rem;color:var(--muted)}
.pc-link{font-weight:700}
.pulse-note{margin-top:18px;font-size:.88rem;color:var(--muted)}
/* Social Pulse page: dark look */
header.site nav a.current{color:var(--gold);box-shadow:inset 0 -3px 0 var(--coral);border-radius:10px 10px 0 0}
.pulse-more{margin:20px 0 0;font:800 1rem var(--sans)}
@media(max-width:640px){header.site .wrap{padding-left:8px;padding-right:8px}header.site nav a{padding:7px 5px;font-size:.74rem}header.site nav a:last-child{margin-left:3px;padding:7px 8px}}
@media(max-width:380px){header.site nav a{padding:7px 3px;font-size:.68rem}header.site nav a:last-child{padding:7px 6px}}
body.pulse-page{background:#050B1E}
.pulse-dark{background:radial-gradient(1000px 500px at 80% -5%,rgba(255,184,28,.10),transparent 60%),radial-gradient(800px 500px at 0% 30%,rgba(255,90,71,.07),transparent 60%),linear-gradient(180deg,#0A1633 0,#060C20 380px,#050B1E 100%);color:#E8ECF7;padding-bottom:60px}
.pulse-hero{position:relative;overflow:hidden;padding:64px 0 48px;border-bottom:1px solid rgba(255,184,28,.25)}
.pulse-hero .wrap{position:relative;z-index:1}
.pulse-dark h1{color:#FFF8EA;font-size:clamp(2.4rem,7vw,4.2rem);line-height:1.04;margin:.15em 0 .25em}.pulse-dark h1 em{color:var(--gold);font-style:normal}
.pulse-dark .kicker{color:var(--coral)}
.np-lede{max-width:560px;font-size:1.12rem;color:#C9D1E8}.np-upd{font-size:.85rem;color:#8E9AB9}
.np-back{margin:0 0 18px;font:700 .95rem var(--sans)}.np-back a,.pulse-dark a{color:var(--gold)}.pulse-dark a:hover{color:var(--coral)}
.np-back-b{margin-top:30px}
.np-group{padding:40px 0 0}
.pulse-dark .np-group h2{color:#FFF8EA;display:flex;align-items:center;gap:14px;font-size:clamp(1.5rem,3.5vw,2.1rem);margin:0 0 18px}
.pulse-dark .np-group h2::after{content:"";flex:1;height:2px;background:linear-gradient(90deg,var(--gold),rgba(255,90,71,.6),transparent)}
.np-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.np-card{background:linear-gradient(160deg,#10204A,#0B1636);border:1px solid rgba(255,184,28,.35);border-radius:14px;padding:20px 22px;box-shadow:0 0 0 1px rgba(255,90,71,.08),0 10px 30px rgba(0,0,0,.35);display:flex;flex-direction:column;transition:transform .15s,border-color .15s,box-shadow .15s}
.np-card:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 0 22px rgba(255,184,28,.2),0 10px 30px rgba(0,0,0,.4)}
.np-card p{margin:.3em 0}.np-who strong{font:900 1.05rem var(--serif);color:#FFF8EA}.np-who span{color:var(--coral);font-weight:700;font-size:.88rem;overflow-wrap:anywhere}
.np-sum{color:#D5DBEE;font-size:.97rem}.np-meta{font-size:.8rem;color:#8E9AB9}.np-link{margin-top:auto!important;padding-top:10px!important;font:800 .9rem var(--sans)}
.np-spot{display:flex;gap:22px;align-items:flex-start;background:linear-gradient(160deg,#14264F,#0B1636);border:2px solid var(--gold);border-radius:16px;padding:24px 26px;max-width:860px;box-shadow:0 0 30px rgba(255,184,28,.15)}
.np-spot h3{color:#FFF8EA;margin:.1em 0}.np-spot p{margin:.4em 0;color:#D5DBEE}.np-spot .np-tag{color:#8E9AB9;font-weight:600}
.np-spot .btn-ghost{margin-left:6px;color:var(--cream)}.np-spot .btn:hover{color:var(--navy)}
.pulse-dark .np-spot a.btn{color:var(--navy)}.pulse-dark .np-spot a.btn-ghost{color:var(--cream)}.pulse-dark .np-spot a.btn-ghost:hover{color:var(--navy)}
.np-note{margin-top:36px;padding:14px 18px;border-left:4px solid var(--coral);background:rgba(255,248,234,.05);border-radius:8px;color:#C9D1E8;font-size:.92rem}
@media(max-width:640px){.pulse-hero{padding:44px 0 34px}.np-spot{flex-direction:column;padding:20px}.np-spot .btn{display:block;text-align:center;margin:8px 0 0}}

/* PWA install bar (assets/pwa.js) */
.install-bar{position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:900;max-width:520px;margin:0 auto;display:flex;align-items:center;gap:10px;background:var(--navy);color:var(--cream);border:2px solid var(--gold);border-radius:12px;padding:8px 8px 8px 10px;box-shadow:4px 4px 0 var(--coral);font:600 .88rem/1.3 var(--sans)}
.install-bar img{border-radius:8px;flex:none}.install-bar .ib-text{flex:1;min-width:0}
.install-bar button{font:inherit;cursor:pointer;border:0}
.install-bar .ib-go{background:var(--gold);color:var(--navy);font-weight:800;border-radius:999px;padding:8px 14px;white-space:nowrap}.install-bar .ib-go:hover{background:var(--coral)}
.install-bar .ib-x{background:transparent;color:var(--cream);font-size:1.6rem;line-height:1;width:36px;height:36px;border-radius:50%}.install-bar .ib-x:hover{background:var(--navy-2)}
.install-bar button:focus-visible{outline:3px solid var(--coral);outline-offset:2px}
body.has-install-bar{padding-bottom:72px}
body:has(.lb-overlay) .install-bar{display:none}
@media print{.install-bar{display:none}}
/* Social Pulse "Updated" line */
.pulse-upd{margin:-6px 0 16px;font-size:.88rem;font-weight:600;color:var(--muted)}
/* Church News Now (home) */
#church-news{padding:28px 0 8px}
.cn-box{background:var(--paper);border:2px solid var(--navy);border-radius:16px;padding:24px 28px;box-shadow:8px 8px 0 var(--gold)}
.cn-box h2{margin:.15em 0 .1em}
.cn-upd{margin:0 0 14px;font-size:.88rem;font-weight:600;color:var(--muted)}
.cn-list{list-style:none;margin:0;padding:0}
.cn-item{padding:14px 0;border-top:2px solid var(--navy)}
.cn-item:first-child{border-top:0}
.cn-meta{font-size:.82rem;font-weight:600;color:var(--muted)}
.cn-src{display:inline-block;background:var(--navy);color:var(--gold);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;padding:2px 8px;border-radius:5px;margin-right:6px}
.cn-item h3{margin:.3em 0 .15em;font-size:1.2rem}
.cn-sum{margin:.1em 0 .4em}
.cn-link{font-weight:700;color:var(--coral-d)}
.cn-disc{margin:14px 0 0;font-size:.82rem;color:var(--muted)}
@media(max-width:640px){.cn-box{padding:18px;box-shadow:5px 5px 0 var(--gold);margin-right:5px}}
