/* Prayer Guard — sunrise design system (enhanced)
   cream #FAF1DF · honey #B9722B · espresso #3A2A1A */
:root{
  --cream:#FAF1DF; --cream-deep:#F3E3C4; --cream-card:#FFF9EE;
  --honey:#B9722B; --honey-soft:#D99A55; --honey-wash:#F6E3C8;
  --espresso:#3A2A1A; --espresso-soft:#6B5640; --line:#E7D6B8;
  --radius:18px; --max:1080px;
  --font-display:"Fraunces",Georgia,serif;
  --font-body:"Nunito Sans",system-ui,-apple-system,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);background:var(--cream);color:var(--espresso);line-height:1.65;font-size:17px;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:var(--honey)}
a:focus-visible,button:focus-visible{outline:3px solid var(--honey);outline-offset:2px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}

/* type */
h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.15;letter-spacing:-.01em}
h1{font-size:clamp(2.1rem,5.5vw,3.4rem)}
h2{font-size:clamp(1.5rem,3.4vw,2.1rem);margin-bottom:.6em}
h3{font-size:1.15rem;margin-bottom:.35em}
p{margin-bottom:1em}
.eyebrow{display:inline-block;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--honey);margin-bottom:.8em}
.lead{font-size:1.15rem;color:var(--espresso-soft)}

/* header */
header.site{width:100%;position:sticky;top:0;z-index:50;background:rgba(250,241,223,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;gap:18px;padding:12px 0;flex-wrap:nowrap;min-width:0}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:1.2rem;color:var(--espresso);text-decoration:none;white-space:nowrap;flex-shrink:0}
.brand img{width:34px;height:34px;border-radius:9px;flex-shrink:0}
.nav-links{display:flex;gap:20px;margin-left:auto;align-items:center;flex-wrap:nowrap}
.nav-links a{color:var(--espresso);text-decoration:none;font-weight:700;font-size:.95rem;transition:color .2s ease;white-space:nowrap}
.nav-links a:hover{color:var(--honey)}
.nav > .btn.small{flex-shrink:0;white-space:nowrap}

/* hamburger + mobile drawer */
.burger{display:none;width:44px;height:44px;border:none;background:transparent;cursor:pointer;position:relative;z-index:70;flex-shrink:0;border-radius:10px}
.burger span{display:block;width:22px;height:2.5px;background:var(--espresso);margin:5px auto;border-radius:2px;transition:transform .3s ease,opacity .3s ease}
.burger.open span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
.drawer{position:fixed;inset:0;z-index:65;pointer-events:none}
.drawer-scrim{position:absolute;inset:0;background:rgba(58,42,26,.4);opacity:0;transition:opacity .3s ease}
.drawer-panel{position:absolute;top:0;right:0;height:100%;width:min(320px,84vw);background:linear-gradient(180deg,var(--cream-card),var(--cream));box-shadow:-18px 0 44px rgba(58,42,26,.25);transform:translateX(102%);transition:transform .34s cubic-bezier(.22,.8,.3,1);display:flex;flex-direction:column;padding:74px 26px 26px;overflow-y:auto}
.drawer.open{pointer-events:auto}
.drawer.open .drawer-scrim{opacity:1}
.drawer.open .drawer-panel{transform:translateX(0)}
.drawer-panel a{display:block;padding:13px 4px;font-family:var(--font-display);font-size:1.18rem;font-weight:600;color:var(--espresso);text-decoration:none;border-bottom:1px solid var(--line);opacity:0;transform:translateX(18px);transition:opacity .3s ease,transform .3s ease}
.drawer.open .drawer-panel a{opacity:1;transform:translateX(0)}
.drawer.open .drawer-panel a:nth-child(1){transition-delay:.06s}
.drawer.open .drawer-panel a:nth-child(2){transition-delay:.1s}
.drawer.open .drawer-panel a:nth-child(3){transition-delay:.14s}
.drawer.open .drawer-panel a:nth-child(4){transition-delay:.18s}
.drawer.open .drawer-panel a:nth-child(5){transition-delay:.22s}
.drawer.open .drawer-panel a:nth-child(6){transition-delay:.26s}
.drawer.open .drawer-panel a:nth-child(7){transition-delay:.3s}
.drawer.open .drawer-panel a:nth-child(8){transition-delay:.34s}
.drawer-panel .drawer-cta{margin-top:20px;background:var(--honey);color:#FFF9EE;text-align:center;border-radius:999px;border-bottom:none;font-family:var(--font-body);font-weight:800;font-size:1rem;padding:14px}
.drawer-panel .drawer-verse{margin-top:auto;padding-top:24px;font-family:var(--font-display);font-style:italic;color:var(--espresso-soft);font-size:.95rem;border-bottom:none;opacity:1;transform:none}
body.drawer-locked{overflow:hidden}

/* buttons */
.btn{display:inline-block;background:var(--honey);color:#FFF9EE;font-weight:800;padding:13px 26px;border-radius:999px;text-decoration:none;border:2px solid var(--honey);transition:transform .15s ease,background .15s ease,box-shadow .2s ease;position:relative;overflow:hidden}
.btn:hover{background:#A5631F;transform:translateY(-2px);box-shadow:0 8px 22px -8px rgba(185,114,43,.55)}
.btn::after{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(105deg,transparent,rgba(255,249,238,.35),transparent);transform:skewX(-20deg);animation:shimmer 4.5s ease-in-out infinite}
@keyframes shimmer{0%,60%{left:-80%}100%{left:130%}}
.btn.ghost{background:transparent;color:var(--espresso)}
.btn.ghost::after{display:none}
.btn.ghost:hover{background:var(--honey-wash);box-shadow:none}
.btn.small{padding:9px 18px;font-size:.9rem}

/* hero */
.hero{position:relative;overflow:hidden;padding:64px 0 40px;background:
  radial-gradient(120% 90% at 50% 115%, #EFC98B 0%, #F5DDAF 38%, var(--cream) 72%)}
.hero-art{position:absolute;top:20px;right:-40px;width:min(440px,42vw);height:auto;opacity:.45;pointer-events:none;z-index:0;animation:heroart-drift 12s ease-in-out infinite}
@keyframes heroart-drift{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-14px) rotate(1deg)}}
.hero-jesus{position:absolute;bottom:-30px;left:-40px;width:min(300px,26vw);height:auto;opacity:.28;pointer-events:none;z-index:0;animation:heroart-drift 14s ease-in-out infinite reverse}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center;position:relative;z-index:2}
.hero .lead{max-width:46ch}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin:22px 0 10px}
.trust{font-size:.88rem;color:var(--espresso-soft)}

/* floating light orbs (grace bubbles) */
.orbs{position:absolute;inset:0;pointer-events:none;z-index:1}
.orb{position:absolute;bottom:-60px;border-radius:50%;background:radial-gradient(circle at 35% 35%, rgba(255,249,238,.9), rgba(217,154,85,.25));opacity:0;animation:rise linear infinite}
.orb:nth-child(1){left:8%;width:26px;height:26px;animation-duration:16s;animation-delay:0s}
.orb:nth-child(2){left:22%;width:14px;height:14px;animation-duration:21s;animation-delay:3s}
.orb:nth-child(3){left:38%;width:20px;height:20px;animation-duration:18s;animation-delay:7s}
.orb:nth-child(4){left:55%;width:12px;height:12px;animation-duration:24s;animation-delay:2s}
.orb:nth-child(5){left:70%;width:24px;height:24px;animation-duration:19s;animation-delay:9s}
.orb:nth-child(6){left:84%;width:16px;height:16px;animation-duration:22s;animation-delay:5s}
.orb:nth-child(7){left:47%;width:10px;height:10px;animation-duration:26s;animation-delay:12s}
.orb:nth-child(8){left:92%;width:18px;height:18px;animation-duration:17s;animation-delay:1s}
@keyframes rise{
  0%{transform:translateY(0) translateX(0);opacity:0}
  8%{opacity:.65}
  50%{transform:translateY(-48vh) translateX(14px);opacity:.5}
  100%{transform:translateY(-95vh) translateX(-10px);opacity:0}
}

/* floating cross accent */
.float-cross{position:absolute;top:12%;right:6%;width:54px;height:54px;opacity:.18;z-index:1;animation:floaty 7s ease-in-out infinite}
.float-cross::before,.float-cross::after{content:"";position:absolute;background:var(--honey)}
.float-cross::before{left:50%;top:0;width:10px;height:100%;transform:translateX(-50%);border-radius:4px}
.float-cross::after{top:30%;left:0;width:100%;height:10px;border-radius:4px}
@keyframes floaty{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-14px) rotate(3deg)}}

/* signature: pause-screen phone */
.phone{width:290px;margin:0 auto;background:var(--espresso);border-radius:38px;padding:12px;box-shadow:0 30px 60px -20px rgba(58,42,26,.45);animation:phoneglow 6s ease-in-out infinite}
.phone-app img{display:block;width:100%;height:auto;border-radius:28px}
@keyframes phoneglow{0%,100%{box-shadow:0 30px 60px -20px rgba(58,42,26,.45)}50%{box-shadow:0 30px 70px -16px rgba(185,114,43,.5)}}
.phone-screen{background:linear-gradient(180deg,#FFF9EE, #F7E7C9);border-radius:28px;padding:26px 20px 22px;text-align:center;min-height:480px;display:flex;flex-direction:column;justify-content:center;gap:14px}
.pause-label{font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--honey)}
.pause-verse{font-family:var(--font-display);font-size:1.06rem;line-height:1.5;color:var(--espresso);transition:opacity .6s ease}
.pause-ref{font-size:.8rem;color:var(--espresso-soft);font-weight:700;transition:opacity .6s ease}
.verse-fade{opacity:0}
.breath-ring{width:96px;height:96px;margin:6px auto;border-radius:50%;border:5px solid var(--honey-soft);display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--honey);animation:breathe 6s ease-in-out infinite;position:relative}
.breath-ring::after{content:"";position:absolute;inset:-12px;border-radius:50%;border:2px solid rgba(217,154,85,.35);animation:pulse-out 6s ease-in-out infinite}
@keyframes breathe{0%,100%{transform:scale(.9);border-color:var(--honey-soft)}50%{transform:scale(1.08);border-color:var(--honey)}}
@keyframes pulse-out{0%,100%{transform:scale(.95);opacity:.4}50%{transform:scale(1.15);opacity:0}}
.pause-btn{background:var(--honey);color:#FFF9EE;border-radius:999px;padding:11px;font-weight:800;font-size:.92rem}
.pause-skip{font-size:.78rem;color:var(--espresso-soft)}

/* sections */
section{padding:56px 0}
section.alt{background:var(--cream-deep)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}
.card{background:var(--cream-card);border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;transition:transform .25s ease,box-shadow .25s ease}
.card:hover{transform:translateY(-4px);box-shadow:0 18px 38px -18px rgba(58,42,26,.28)}
.card h3 a{color:var(--espresso);text-decoration:none}
.card h3 a:hover{color:var(--honey)}
.card .k{font-size:2rem;font-family:var(--font-display);color:var(--honey);font-weight:700}
ul.checks{list-style:none;margin:0 0 1em}
ul.checks li{padding-left:30px;position:relative;margin-bottom:10px}
ul.checks li::before{content:"✦";position:absolute;left:4px;color:var(--honey);font-weight:900}
.divider-sun{height:70px;background:radial-gradient(60% 140% at 50% 100%, var(--honey-wash), transparent 70%)}

/* scroll reveal */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-delay-1{transition-delay:.1s}
.reveal-delay-2{transition-delay:.2s}
.reveal-delay-3{transition-delay:.3s}

/* blended art — transparent watercolor images, no boxes */
.parallax-art{position:relative}
.parallax-art img{width:100%;height:auto;will-change:transform;transition:transform .1s linear}
.art-blend{position:relative;display:flex;justify-content:center;align-items:center}
.art-blend img{display:block;width:100%;max-width:460px;filter:drop-shadow(0 24px 40px rgba(185,114,43,.18))}
.art-blend::before{content:"";position:absolute;width:78%;height:78%;border-radius:50%;background:radial-gradient(circle, rgba(217,154,85,.28), transparent 70%);z-index:-1}

/* accent word in headings */
.accent{color:var(--honey)}

/* wave divider: flat edge fuses seamlessly with the alt section color */
.wave{display:block;width:100%;height:60px;margin:-1px 0;vertical-align:bottom;line-height:0}

/* ghost step numbers */
.step{position:relative;overflow:hidden}
.step .ghost{position:absolute;right:10px;bottom:-18px;font-family:var(--font-display);font-size:5.2rem;font-weight:700;color:var(--honey-wash);z-index:0;line-height:1}
.step h3,.step p{position:relative;z-index:1}

/* hero badge pill */
.badge-pill{display:inline-flex;align-items:center;gap:8px;background:rgba(255,249,238,.85);border:1px solid var(--line);border-radius:999px;padding:7px 16px;font-size:.82rem;font-weight:800;color:var(--espresso-soft);margin-bottom:16px;backdrop-filter:blur(4px)}
.badge-pill::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--honey);animation:pulse-dot 2.4s ease-in-out infinite}
@keyframes pulse-dot{0%,100%{opacity:1}50%{opacity:.35}}

/* hero stat strip */
.stat-strip{display:flex;gap:34px;flex-wrap:wrap;margin-top:26px;padding-top:20px;border-top:1px solid rgba(58,42,26,.12)}
.stat-strip .stat b{display:block;font-family:var(--font-display);font-size:1.5rem;color:var(--honey)}
.stat-strip .stat span{font-size:.82rem;color:var(--espresso-soft);font-weight:700}

/* scroll to top */
.to-top{position:fixed;right:18px;bottom:18px;width:46px;height:46px;border-radius:50%;background:var(--honey);color:#FFF9EE;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:800;text-decoration:none;box-shadow:0 10px 26px -8px rgba(185,114,43,.6);opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s ease;transform:translateY(8px);z-index:60}
.to-top.show{opacity:1;pointer-events:auto;transform:translateY(0)}

/* steps */
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.step{background:var(--cream-card);border:1px solid var(--line);border-radius:var(--radius);padding:22px;transition:transform .25s ease,box-shadow .25s ease}
.step:hover{transform:translateY(-4px);box-shadow:0 18px 38px -18px rgba(58,42,26,.25)}
.step::before{counter-increment:s;content:counter(s);display:inline-flex;width:34px;height:34px;border-radius:50%;background:var(--honey);color:#FFF9EE;align-items:center;justify-content:center;font-weight:800;margin-bottom:12px}

/* faq */
details{background:var(--cream-card);border:1px solid var(--line);border-radius:14px;padding:16px 20px;margin-bottom:12px;transition:box-shadow .2s ease}
details:hover{box-shadow:0 8px 22px -12px rgba(58,42,26,.22)}
details summary{font-weight:800;cursor:pointer;font-size:1.02rem}
details[open] summary{color:var(--honey);margin-bottom:8px}

/* article */
article.post{max-width:760px;margin:0 auto}
article.post h2{margin-top:1.6em}
article.post h3{margin-top:1.2em}
article.post blockquote{border-left:4px solid var(--honey);padding:8px 20px;margin:1.2em 0;background:var(--cream-card);border-radius:0 12px 12px 0;font-family:var(--font-display);font-size:1.08rem}
.meta{font-size:.85rem;color:var(--espresso-soft);margin-bottom:1.5em}
.toc{background:var(--cream-card);border:1px solid var(--line);border-radius:14px;padding:18px 22px;margin:1.4em 0}
.toc a{text-decoration:none;font-weight:700}

/* counter stat */
.stat-counter{font-size:2.6rem;font-family:var(--font-display);color:var(--honey);font-weight:700}

/* cta band */
.cta-band{background:linear-gradient(120deg,var(--espresso),#54402A);color:var(--cream);text-align:center;border-radius:24px;padding:52px 30px;margin:20px 0;position:relative;overflow:hidden}
.cta-band::before{content:"";position:absolute;top:-40%;left:50%;transform:translateX(-50%);width:130%;height:120%;background:radial-gradient(50% 60% at 50% 0%, rgba(217,154,85,.28), transparent 70%);pointer-events:none}
.cta-band h2{color:#FFF3DC}
.cta-band p{color:#E8D8BC;max-width:52ch;margin:0 auto 22px}

/* footer */
footer.site{background:var(--espresso);color:#D8C7AB;padding:44px 0 30px;margin-top:40px;font-size:.92rem}
footer.site a{color:#F0DFC0;text-decoration:none}
footer.site a:hover{color:var(--honey-soft)}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:28px;margin-bottom:26px}
.foot-grid h4{color:#FFF3DC;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px}
.foot-grid ul{list-style:none}
.foot-grid li{margin-bottom:8px}
.copyright{border-top:1px solid #54402A;padding-top:18px;font-size:.82rem;color:#A8916E}

/* breadcrumbs */
.crumbs{font-size:.85rem;color:var(--espresso-soft);padding-top:22px}
.crumbs a{color:var(--espresso-soft)}

/* pause-the-scroll: praying hands come together on scroll */
.hands-moment{position:relative;padding:80px 0;background:linear-gradient(180deg,var(--cream) 0%, var(--honey-wash) 50%, var(--cream) 100%);overflow:hidden;text-align:center}
.hands-stage{position:relative;height:400px;max-width:640px;margin:0 auto}
.hands-stage img{position:absolute;top:0;height:400px;width:auto;max-width:none;will-change:transform;transition:transform .4s cubic-bezier(.25,.7,.35,1)}
.hand-l{left:50%;transform:translateX(calc(-82% - var(--hands-gap,160px)))}
.hand-r{left:50%;transform:translateX(calc(-18% + var(--hands-gap,160px)))}
.hands-glow{position:absolute;top:50%;left:50%;width:280px;height:280px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle, rgba(217,154,85,.55), transparent 70%);opacity:0;transition:opacity .6s ease;pointer-events:none}
.hands-moment.joined .hands-glow{opacity:1;animation:glowpulse 3s ease-in-out infinite}
@keyframes glowpulse{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.12)}}
.hands-verse{margin-top:26px;font-family:var(--font-display);font-size:clamp(1.2rem,2.6vw,1.7rem);color:var(--espresso);opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease}
.hands-moment.joined .hands-verse{opacity:1;transform:translateY(0)}
.hands-caption{font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--honey);margin-bottom:8px}

/* comparison table */
.compare-table{width:100%;border-collapse:collapse;margin:1.4em 0;background:var(--cream-card);border-radius:var(--radius);overflow:hidden;font-size:.95rem}
.compare-table th{background:var(--espresso);color:#FFF3DC;padding:13px 16px;text-align:left;font-weight:800}
.compare-table td{padding:12px 16px;border-bottom:1px solid var(--line)}
.compare-table tr:last-child td{border-bottom:none}
.compare-table .yes{color:#2E7D32;font-weight:800}
.compare-table .no{color:#B3541E;font-weight:800}

@media(max-width:860px){
  .hero-grid,.grid-2{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr 1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .phone{margin-top:24px}
  .float-cross{display:none}
  .hands-stage{height:280px;max-width:100%}
  .hands-stage img{height:280px}
  .hands-glow{width:200px;height:200px}
  .hero{padding:32px 0 40px;background:radial-gradient(140% 70% at 50% 110%, #EFC98B 0%, #F5DDAF 42%, var(--cream) 78%)}
  .hero-art{width:230px;top:14px;right:-46px;opacity:.38}
  .hero-jesus{display:none}
  .hero .lead{font-size:1.02rem}
  .stat-strip{gap:22px;margin-top:20px}
  .stat-strip .stat b{font-size:1.25rem}
  .badge-pill{font-size:.72rem;padding:6px 12px}
  section{padding:42px 0}
}
@media(max-width:900px){
  .burger{display:block;margin-left:auto}
  .nav-links{display:none}
  .nav > .btn.small{display:none}
  .nav{flex-wrap:nowrap;gap:10px}
}
@media(max-width:640px){
  .art-blend img{max-width:340px}
}
@media(max-width:480px){
  .steps{grid-template-columns:1fr}
  .hands-stage{height:230px}
  .hands-stage img{height:230px}
  h1{font-size:clamp(1.8rem,8vw,2.3rem)}
  .phone{width:250px}
  .phone-screen{min-height:420px}
}

/* clean stat cards with spin-up numbers */
.stat-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}
.stat-card{background:var(--cream-card);border:1px solid var(--line);border-radius:var(--radius);padding:20px 18px;text-align:center}
.stat-card .stat-num{display:block;font-family:var(--font-display);font-size:2.4rem;font-weight:700;color:var(--honey);line-height:1.1}
.stat-card .stat-label{display:block;font-size:.85rem;color:var(--espresso-soft);font-weight:700;margin-top:6px;line-height:1.4}
@media(max-width:480px){.stat-cards{grid-template-columns:1fr}}
