/* "Pray for a Seminarian" homepage band — interactive candlelight layer (Magic UI-style).
   Keeps the parchment / navy / copper branding. */
.home-prayer-feature{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(60% 140% at 8% 50%,rgba(242,193,110,.35),transparent 60%),#eee8dc}
.home-prayer-feature::before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background-image:radial-gradient(rgba(154,98,36,.22) 1px,transparent 1.4px);background-size:20px 20px;
  -webkit-mask:linear-gradient(90deg,transparent,#000 30%,#000 70%,transparent);mask:linear-gradient(90deg,transparent,#000 30%,#000 70%,transparent);opacity:.6}

/* Rising embers */
.pm-embers{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.pm-embers i{position:absolute;bottom:-10px;width:var(--s);height:var(--s);border-radius:50%;background:radial-gradient(circle,#FFE3A3,#E9A94C 60%,transparent 70%);box-shadow:0 0 8px rgba(242,180,90,.8);opacity:0;animation:pm-rise var(--d) linear infinite;animation-delay:var(--dl)}
@keyframes pm-rise{0%{transform:translate(0,0);opacity:0}15%{opacity:.9}100%{transform:translate(var(--x),-260px);opacity:0}}

/* Photo: candle halo + beam + gentle tilt */
.pm-photo{position:relative;width:max-content;height:max-content;align-self:center;line-height:0}
.pm-photo::before{content:"";position:absolute;inset:-22px;border-radius:30px;z-index:-1;background:radial-gradient(closest-side,rgba(247,200,115,.75),rgba(247,200,115,0));animation:pm-halo 3.2s ease-in-out infinite}
@keyframes pm-halo{50%{transform:scale(1.08);opacity:.7}}
.pm-photo img{display:block;transition:transform .4s ease}
.pm-photo:hover img{transform:rotate(-2deg) scale(1.04)}
.pm-photo .pm-ring{position:absolute;inset:0;padding:3px;pointer-events:none;
  background:conic-gradient(from var(--pm-a,0deg),transparent 0 70%,#D29A52 82%,#F7D08A 90%,transparent 100%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:pm-beam 5s linear infinite}
@property --pm-a{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes pm-beam{to{--pm-a:360deg}}

/* Headline shine */
.home-prayer-feature h2 em{background:linear-gradient(100deg,#9A6224 0%,#9A6224 35%,#E3B66E 50%,#9A6224 65%,#9A6224 100%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:pm-shine 5s linear infinite}
@keyframes pm-shine{from{background-position:100% 0}to{background-position:-150% 0}}

/* Stage chip + formation path */
.home-prayer-feature [data-prayer-stage]:not(:empty){display:inline-block;padding:2px 9px;border-radius:999px;background:rgba(154,98,36,.12);color:#7a4d1b;font-weight:700}
.pm-path{display:flex;align-items:center;gap:0;margin-top:10px;max-width:420px}
.pm-path span{position:relative;flex:1;display:grid;justify-items:center;gap:4px;font:700 .58rem/1.2 var(--f-body);letter-spacing:.08em;text-transform:uppercase;color:#8f8473;text-align:center}
.pm-path span::before{content:"";width:12px;height:12px;border-radius:50%;background:#eee8dc;border:2px solid #cdbb9c;position:relative;z-index:1;transition:all .4s}
.pm-path span::after{content:"";position:absolute;top:6px;left:50%;width:100%;height:2px;background:#d8c9ae}
.pm-path span:last-child::after{display:none}
.pm-path span.done::before{background:#D29A52;border-color:#D29A52}
.pm-path span.done::after{background:#D29A52}
.pm-path span.now{color:#1F3446}
.pm-path span.now::before{background:#F7D08A;border-color:#9A6224;box-shadow:0 0 0 0 rgba(210,154,82,.6);animation:pm-ping 2s ease-out infinite}
@keyframes pm-ping{70%,100%{box-shadow:0 0 0 9px rgba(210,154,82,0)}}

/* Candles for the count */
.pm-candles{display:flex;align-items:flex-end;gap:7px;margin-top:10px;min-height:38px}
.pm-c{position:relative;width:8px;height:22px;border-radius:2px 2px 1px 1px;background:linear-gradient(90deg,#f5ecdc,#fffaf0 50%,#e8dcc6);box-shadow:0 2px 4px rgba(0,0,0,.08);opacity:0;transform:translateY(6px);transition:opacity .4s,transform .4s}
.pm-c.in{opacity:1;transform:none}
.pm-c::before{content:"";position:absolute;left:50%;bottom:100%;width:8px;height:13px;margin-left:-4px;border-radius:50% 50% 50% 50%/60% 60% 40% 40%;
  background:radial-gradient(ellipse at 50% 80%,#fff 0 18%,#FFD36B 35%,#F29A2E 70%,transparent 72%);filter:drop-shadow(0 0 6px rgba(255,190,90,.95));transform-origin:50% 90%;animation:pm-flick 1.6s ease-in-out infinite;animation-delay:var(--fd,0s)}
.pm-c.unlit::before{display:none}
@keyframes pm-flick{0%,100%{transform:scale(1) rotate(-2deg)}25%{transform:scale(.92,1.08) rotate(2deg)}50%{transform:scale(1.05,.95) rotate(-1deg)}75%{transform:scale(.96,1.06) rotate(1.5deg)}}
.pm-more{font:800 .8rem/1 var(--f-body);color:#9A6224;margin-left:4px;align-self:center}
.home-prayer-feature .prayer-count b.pm-n{font-variant-numeric:tabular-nums}

/* Actions: pray now */
.home-prayer-feature .home-prayer-actions{gap:12px}
.pm-pray{display:inline-flex;align-items:center;justify-content:center;gap:.5em;width:100%;padding:.9em 1.3em;border-radius:6px;border:1.5px solid #1F3446;background:transparent;color:#1F3446;font:800 .74rem/1 var(--f-body);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s,transform .2s}
.pm-pray:hover{background:#1F3446;color:#fff;transform:translateY(-2px)}
.pm-pray[aria-expanded="true"]{background:#1F3446;color:#fff}

/* Prayer card */
.pm-card{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;margin-top:4px;padding:20px 24px;border-radius:14px;background:rgba(255,255,255,.7);border:1px solid #d3c4aa;box-shadow:0 18px 40px -30px rgba(31,52,70,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  opacity:0;filter:blur(6px);transform:translateY(-6px);transition:opacity .45s,filter .45s,transform .45s}
.pm-card.open{opacity:1;filter:none;transform:none}
.pm-card[hidden]{display:none}
.pm-card .pm-cross{font:600 2rem/1 var(--f-display);color:#9A6224}
.pm-card p{margin:0!important;max-width:none!important;font:italic 400 1.05rem/1.6 var(--f-display)!important;color:#1F3446}
.pm-card p b{font-style:normal;color:#9A6224}
.pm-amen{position:relative;padding:.9em 1.5em;border:0;border-radius:999px;background:#1F3446;color:#fff;font:800 .78rem/1 var(--f-body);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:transform .2s}
.pm-amen:hover{transform:translateY(-2px)}
.pm-card .pm-after{grid-column:1/-1;margin:0!important;font:700 .9rem/1.5 var(--f-body)!important;font-style:normal!important;color:#9A6224!important}
.pm-after a{color:#1F3446}
.pm-spark{position:fixed;z-index:60;width:8px;height:8px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,#fff,#FFD36B 50%,transparent 70%);box-shadow:0 0 10px #FFC861;animation:pm-up 1.6s ease-out forwards}
@keyframes pm-up{to{transform:translate(var(--x),var(--y)) scale(.4);opacity:0}}

@media (max-width:900px){
  .home-prayer-feature .wrap{grid-template-columns:110px minmax(0,1fr)}
  .home-prayer-feature .home-prayer-actions{grid-column:1/-1;flex-direction:row;flex-wrap:wrap}
  .home-prayer-feature .home-prayer-actions>*{flex:1 1 220px}
  .pm-card{grid-template-columns:1fr;text-align:left}
  .pm-card .pm-cross{display:none}
}
@media (max-width:560px){.pm-path span{font-size:0}.pm-path span.now{font-size:.58rem;white-space:nowrap}}
@media (prefers-reduced-motion:reduce){
  .pm-embers{display:none}
  .pm-photo::before,.pm-photo .pm-ring,.home-prayer-feature h2 em,.pm-c::before,.pm-path span.now::before{animation:none}
  .pm-card{transition:none}
}
