:root{
  --pink:#FB1C79; --pink-dark:#d10f62; --pink-soft:#FFEAF3; --blush:#FFFAFC;
  --ink:#2a1420; --muted:#7a6270; --line:#f3d3e1; --white:#fff;
  --radius:20px; --shadow:0 4px 18px rgba(120,40,80,.07);
  --tab-h:62px; --safe-b:env(safe-area-inset-bottom,0px);
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{scroll-behavior:smooth;font-size:14px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;font-family:"Poppins",system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--blush);
  line-height:1.55;padding-bottom:calc(var(--tab-h) + var(--safe-b) + 16px)}
h1,h2,h3{font-family:"Playfair Display",Georgia,serif;line-height:1.15;margin:0 0 .4em;color:var(--ink)}
h1{font-size:1.7rem} h2{font-size:1.2rem} h3{font-size:1rem}
p{margin:0 0 1em} a{color:var(--pink-dark)}
img{max-width:100%;display:block}

header.top{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);padding:calc(8px + env(safe-area-inset-top,0px)) 16px 8px;
  display:flex;align-items:center;justify-content:space-between}
header.top img{height:46px;width:auto}
header.top .join{font:600 .8rem Poppins;background:var(--pink);color:#fff;border:0;border-radius:99px;padding:9px 16px;cursor:pointer}

main{max-width:760px;margin:0 auto;padding:18px 16px 8px}
.page{animation:rise .35s ease both}
@keyframes rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.hero{background:linear-gradient(165deg,#fff 0%,var(--pink-soft) 100%);color:var(--ink);border-radius:26px;padding:26px 22px;
  position:relative;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line)}
.hero::before,.hero::after{content:"";position:absolute;border-radius:50%;background:var(--pink);opacity:.10;animation:float 9s ease-in-out infinite}
.hero::before{width:180px;height:180px;right:-50px;top:-60px}
.hero::after{width:110px;height:110px;left:-30px;bottom:-40px;animation-delay:-4s;opacity:.08}
@keyframes float{50%{transform:translate(8px,14px) scale(1.06)}}
.hero>*{position:relative;z-index:1}
.hero .eyebrow{font:600 .68rem Poppins;letter-spacing:.14em;text-transform:uppercase;color:var(--pink-dark)}
.hero h1{color:var(--ink);font-size:1.8rem;margin:.3em 0}
.hero p{color:var(--muted);margin-bottom:1.2em}
.hero-photos{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px}
.hero-photos img{border-radius:16px;aspect-ratio:4/3;object-fit:cover;background:var(--pink-soft)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 .88rem Poppins;border:0;border-radius:99px;
  padding:12px 20px;text-decoration:none;cursor:pointer;transition:transform .15s}
.btn:active{transform:scale(.97)}
.btn.primary{background:var(--pink);color:#fff;box-shadow:0 4px 14px rgba(251,28,121,.25)}
.btn:hover{transform:translateY(-1px)}
.btn.white{background:#fff;color:var(--pink-dark)}
.btn.ghost{background:var(--pink-soft);color:var(--pink-dark)}
.btn.block{display:flex;width:100%}
.row{display:flex;gap:10px;flex-wrap:wrap}

.card{background:var(--white);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);margin:14px 0;border:1px solid var(--line)}
.card h3{margin-bottom:.3em}
.section-title{display:flex;justify-content:space-between;align-items:baseline;margin:26px 0 4px}
.section-title a{font:600 .8rem Poppins;text-decoration:none}
.muted{color:var(--muted);font-size:.9rem}
.pill{display:inline-block;font:600 .68rem Poppins;letter-spacing:.06em;text-transform:uppercase;background:var(--pink-soft);color:var(--pink-dark);padding:4px 10px;border-radius:99px}
.pill.live{background:var(--pink);color:#fff;animation:pulse 1.6s infinite}
@keyframes pulse{50%{opacity:.6}}

.next{display:flex;gap:14px;align-items:center}
.next .when{min-width:74px;text-align:center;background:var(--pink-soft);border-radius:16px;padding:10px 6px;color:var(--pink-dark)}
.next .when b{display:block;font:700 1.6rem "Playfair Display",serif;line-height:1}
.next .when span{font:600 .65rem Poppins;text-transform:uppercase;letter-spacing:.08em}

.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.book{background:#fff;border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);display:flex;flex-direction:column}
.book img{aspect-ratio:3/4;object-fit:cover;width:100%;background:var(--pink-soft)}
.book div{padding:12px;display:flex;flex-direction:column;gap:6px;flex:1}
.book b{font:600 .85rem/1.3 Poppins}
.book .btn{padding:9px 14px;font-size:.78rem;margin-top:auto}

.person{text-align:center}
.person img{width:130px;height:130px;border-radius:50%;object-fit:cover;margin:0 auto 10px;border:4px solid var(--pink-soft);background:var(--pink-soft)}

.video{position:relative;padding-top:56.25%;border-radius:20px;overflow:hidden;background:#000;box-shadow:var(--shadow)}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

form{display:grid;gap:12px}
label{font:600 .8rem Poppins;display:grid;gap:6px}
input[type=number],input[type=text],input[type=tel],input[type=email],textarea,select{font:400 1rem Poppins;border:1.5px solid var(--line);border-radius:14px;padding:12px 14px;background:#fff;color:var(--ink);width:100%}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--pink);box-shadow:0 0 0 3px var(--pink-soft)}
textarea{min-height:110px;resize:vertical}
.check{display:flex;gap:10px;align-items:flex-start;font:400 .85rem Poppins}
.check input{width:20px;height:20px;accent-color:var(--pink);margin-top:2px;flex:none}
.toggle{background:var(--pink-soft);border-radius:14px;padding:12px 14px}
.notice{background:#fff;border:1.5px dashed var(--pink);color:var(--pink-dark);border-radius:14px;padding:10px 14px;font-size:.8rem;margin:12px 0}
.ok{background:#eafaf0;border:1px solid #bfe8cf;color:#17613a;padding:12px 14px;border-radius:14px;font-size:.9rem}

.wall-item .meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:.78rem;color:var(--muted)}
.wall-item p{margin-bottom:10px;white-space:pre-wrap;word-break:break-word}
.pray-btn{font:600 .8rem Poppins;background:var(--pink-soft);color:var(--pink-dark);border:0;border-radius:99px;padding:8px 14px;cursor:pointer}
.pray-btn.done{background:var(--pink);color:#fff}

.post h3{margin-bottom:.1em}
.post .meta{font-size:.78rem;color:var(--muted);margin-bottom:10px}

.list a.item{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}
.list a.item:last-child{border:0}
.list .ic{width:42px;height:42px;border-radius:14px;background:var(--pink-soft);display:grid;place-items:center;font-size:1.2rem;flex:none}
.list b{display:block;font:600 .95rem Poppins}

nav.tabs{position:fixed;left:0;right:0;bottom:0;z-index:30;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);
  border-top:1px solid var(--line);display:flex;justify-content:space-around;padding:6px 6px calc(6px + var(--safe-b))}
nav.tabs a{flex:1;max-width:90px;text-align:center;text-decoration:none;color:var(--muted);font:600 .6rem Poppins;padding:5px 0;border-radius:14px}
nav.tabs a svg{display:block;margin:0 auto 2px;width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
nav.tabs a.on{color:var(--pink)}
nav.tabs a.on svg{fill:var(--pink-soft)}

.sheet-bg{position:fixed;inset:0;background:rgba(42,20,32,.5);z-index:50;display:flex;align-items:flex-end;justify-content:center}
.sheet{background:#fff;width:100%;max-width:520px;border-radius:26px 26px 0 0;padding:22px 20px calc(24px + var(--safe-b));animation:up .3s ease}
@keyframes up{from{transform:translateY(40px);opacity:0}}
.steps{padding-left:20px;margin:10px 0 16px} .steps li{margin-bottom:8px}
.demo-bar{background:var(--ink);color:#fff;font:500 .72rem Poppins;text-align:center;padding:6px 10px}
footer.f{text-align:center;color:var(--muted);font-size:.78rem;padding:24px 16px}
@media(min-width:700px){h1{font-size:2.6rem} .hero{padding:40px} .grid2.books{grid-template-columns:repeat(3,1fr)}}
[hidden]{display:none!important}

/* motion */
.rv{opacity:0;transform:translateY(16px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
.card,.book,.herald{transition:transform .25s ease,box-shadow .25s ease,opacity .6s,}
.rv.in.card:hover,.rv.in.book:hover,.rv.in.herald:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(120,40,80,.12)}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.hero::before,.hero::after,.pill.live{animation:none}.page{animation:none}}
nav.tabs a{transition:color .2s,transform .2s} nav.tabs a:active{transform:scale(.92)}
nav.tabs a.on svg{animation:pop .35s ease}
@keyframes pop{40%{transform:scale(1.25)}}

/* heralds */
.steward{max-width:260px;margin-left:auto;margin-right:auto}
.heralds{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.herald{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 10px;text-align:center;box-shadow:var(--shadow)}
.herald img{width:92px;height:92px;border-radius:50%;object-fit:cover;margin:0 auto 8px;border:3px solid var(--pink-soft);background:var(--pink-soft)}
.herald b{display:block;font:600 .85rem/1.25 Poppins;margin-bottom:4px}
.herald span{display:block;font-size:.74rem;line-height:1.35;color:var(--muted)}
.person img{width:110px;height:110px}
@media(min-width:700px){.heralds{grid-template-columns:repeat(3,1fr)}}

/* videos */
.yt{text-align:center}.yt-ic{width:54px;height:54px;border-radius:50%;background:var(--pink-soft);color:var(--pink);display:grid;place-items:center;margin:0 auto 10px;font-size:1.2rem}
.vids{display:grid;gap:12px;margin-bottom:12px}
.vid{all:unset;cursor:pointer;display:block;position:relative;border-radius:16px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
.vid img{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--pink-soft)}
.vid .play{position:absolute;left:50%;top:calc(50% - 20px);transform:translate(-50%,-50%);width:46px;height:46px;border-radius:50%;background:rgba(251,28,121,.92);color:#fff;display:grid;place-items:center;padding-left:3px}
.vid b{display:block;padding:10px 12px;font:600 .85rem/1.3 Poppins}

/* donate */
.kv{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:.88rem}
.kv:last-child{border:0}.kv span{color:var(--muted);flex:0 0 38%}.kv b{flex:1;font-weight:600;word-break:break-all}
.copy{font:600 .72rem Poppins;background:var(--pink-soft);color:var(--pink-dark);border:0;border-radius:99px;padding:6px 12px;cursor:pointer}

/* floating whatsapp + footer socials */
.wa{position:fixed;right:14px;bottom:calc(var(--tab-h) + var(--safe-b) + 14px);z-index:25;width:52px;height:52px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:0 6px 18px rgba(0,0,0,.2);transition:transform .2s}
.wa:active{transform:scale(.92)}
.soc{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-bottom:10px}
.soc a{font:600 .78rem Poppins;color:var(--pink-dark);text-decoration:none}

.seg{display:flex;background:var(--pink-soft);border-radius:99px;padding:4px;margin:14px 0}
.seg a{flex:1;text-align:center;text-decoration:none;font:600 .85rem Poppins;color:var(--pink-dark);padding:9px;border-radius:99px;transition:background .25s,color .25s}
.seg a.on{background:var(--pink);color:#fff;box-shadow:0 3px 10px rgba(251,28,121,.25)}
.rec-h{display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin-bottom:10px}
.rec-h b{font:600 .92rem/1.3 Poppins}.rec-h .muted{font-size:.75rem;white-space:nowrap}
.rec-p{display:flex;gap:8px;flex-wrap:wrap}.rec-p .btn{padding:9px 16px}
.rec-f{width:100%;height:80px;border:0;border-radius:12px;background:var(--pink-soft)}

/* round 4: chapters, languages, events */
header.top img{height:40px}
.hd-r{display:flex;align-items:center;gap:6px}
.chip{font:600 .72rem Poppins;background:var(--pink-soft);color:var(--pink-dark);border:0;border-radius:99px;padding:8px 11px;cursor:pointer;display:inline-flex;gap:5px;align-items:center;white-space:nowrap}
.chip.lang{padding:8px 10px}
header.top .join{padding:8px 13px;font-size:.74rem}
.av{position:relative;width:92px;height:92px;border-radius:50%;margin:0 auto 8px;border:3px solid var(--pink-soft);background:var(--pink-soft);overflow:hidden;display:grid;place-items:center}
.av span{font:700 1.5rem "Playfair Display",serif;color:var(--pink)}
.av img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:0;margin:0;border:0}
.herald .av img{width:100%;height:100%;margin:0;border:0}
.heralds.two{grid-template-columns:1fr 1fr}
h3.sub{margin:22px 0 2px}
.chap{display:flex;align-items:center;gap:14px}
.chap.cur{border-color:var(--pink)}
.flag{font-size:1.8rem;line-height:1}
.chap-pick{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:12px;width:100%;padding:14px;margin:8px 0;border:1.5px solid var(--line);border-radius:16px;cursor:pointer;font-family:Poppins}
.chap-pick b{flex:1;font-weight:600}
.chap-pick.on{border-color:var(--pink);background:var(--pink-soft)}
.event .flyer{width:100%;border-radius:14px;margin-bottom:12px;border:1px solid var(--line)}
.kv2{display:flex;gap:10px;padding:7px 0;border-bottom:1px solid var(--line);font-size:.88rem}
.kv2 span{color:var(--muted);flex:0 0 28%}.kv2 b{flex:1;font-weight:600}
.needs{margin:4px 0 14px;padding-left:20px}.needs li{margin-bottom:4px}
.event .row{margin-top:6px}
a.card.next .when{flex:none}
.hero{background:linear-gradient(rgba(255,255,255,.80),rgba(255,240,247,.72)),var(--hero-img,none) center/cover,linear-gradient(165deg,#fff,var(--pink-soft))}
.hero::before,.hero::after{display:none}

/* round 5: carousel, 7 tabs, photos */
nav.tabs{padding:5px 2px calc(5px + var(--safe-b))}
nav.tabs a{max-width:none;font-size:.54rem;padding:4px 0;letter-spacing:-.01em}
nav.tabs a svg{width:19px;height:19px;margin-bottom:1px}
.car{position:relative;margin-bottom:6px}
.slides{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:26px;box-shadow:var(--shadow);border:1px solid var(--line)}
.slides::-webkit-scrollbar{display:none}
.slide{flex:0 0 100%;scroll-snap-align:center;height:430px;background-size:cover;background-position:center;position:relative;display:flex;align-items:flex-end}
.slide::before{content:"";position:absolute;inset:0}
.slide .sc{position:relative;z-index:1;padding:20px 20px 30px;width:100%}
.slide h1{font-size:1.6rem;margin:.2em 0}
.slide p{margin-bottom:1em}
.s-theme{background-position:center 30%}
.s-theme::before{background:linear-gradient(180deg,rgba(255,255,255,0) 15%,rgba(255,248,252,.93) 62%)}
.s-theme .eyebrow{font:600 .68rem Poppins;letter-spacing:.14em;text-transform:uppercase;color:var(--pink-dark)}
.s-theme p{color:var(--muted)}
.s-event{background-position:top center;background-color:#000}
.s-event::before{background:linear-gradient(180deg,rgba(0,0,0,0) 62%,rgba(0,0,0,.88))}
.s-give{background-position:center 25%}
.s-give::before{background:linear-gradient(180deg,rgba(251,28,121,.15),rgba(209,15,98,.92) 70%)}
.s-give h1,.s-give p,.s-give .eyebrow{color:#fff}
.s-give .eyebrow{font:600 .68rem Poppins;letter-spacing:.14em;text-transform:uppercase}
.dots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:6px;z-index:2;pointer-events:none}
.dots i{width:7px;height:7px;border-radius:50%;background:rgba(120,120,120,.45);transition:all .3s}
.dots i.on{background:var(--pink);width:20px;border-radius:99px}
.hero-photos img.wide{grid-column:1/3;aspect-ratio:16/9}
.hero-photos img{object-position:center 30%}
.btn.white{background:#fff;color:var(--pink-dark)}
@media(prefers-reduced-motion:reduce){.slides{scroll-behavior:auto}}
.slide .btn{padding:10px 16px;font-size:.8rem}.s-event .row{gap:8px;flex-wrap:nowrap}.s-event .sc{padding-bottom:28px}
#view .card .row .btn{font-size:.82rem;padding:11px 16px}

/* round 6 */
.seg.four a{font-size:.7rem;padding:9px 2px}
.chapc.cur{border-color:var(--pink)}
.chapc .chap{display:flex;align-items:center;gap:14px}
.chap-ph{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center 30%;border-radius:14px;margin-bottom:12px}
.av img{object-position:center 18%}
.grid3{display:grid;grid-template-columns:1fr 1.4fr 1.1fr;gap:8px}
.lbl{font:600 .8rem Poppins;margin-bottom:6px}
.sheet{max-height:92vh;overflow-y:auto}
button.lnk{all:unset;cursor:pointer;color:var(--pink-dark);font:600 .78rem Poppins;text-decoration:underline;text-align:left}
footer.f button.lnk{display:inline-block;margin-top:6px;text-align:center}

/* ===== computer screens ===== */
.cols2,.cols3{display:block}
@media(min-width:900px){
  body{padding-bottom:40px}
  header.top{padding:10px 32px;gap:24px}
  header.top img{height:48px}
  main{max-width:1140px;padding:28px 32px 16px}
  .page.narrow{max-width:760px;margin-left:auto;margin-right:auto}
  nav.tabs{position:static;background:none;border:0;backdrop-filter:none;flex:1;justify-content:center;gap:4px;padding:0;display:flex}
  nav.tabs a{flex:none;max-width:none;display:inline-flex;align-items:center;gap:7px;font-size:.84rem;padding:9px 16px;border-radius:99px;letter-spacing:0}
  nav.tabs a svg{width:18px;height:18px;margin:0}
  nav.tabs a.on{background:var(--pink-soft)}
  nav.tabs a:hover{background:var(--pink-soft)}
  .wa{bottom:24px;right:24px}
  .cols2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
  .cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
  .cols2 .card,.cols3 .card{margin:0}
  .grid2.books{grid-template-columns:repeat(4,1fr)}
  .heralds{grid-template-columns:repeat(4,1fr)}
  .heralds.two{grid-template-columns:repeat(4,1fr);max-width:50%}
  .hero-photos{grid-template-columns:repeat(3,1fr);gap:16px}
  .hero-photos img.wide{grid-column:1/4;aspect-ratio:21/8}
  .vids{grid-template-columns:repeat(3,1fr)}
  .home-two{display:grid;grid-template-columns:1fr 1fr;gap:20px}
  .slide{height:480px}
  .slide .sc{padding:40px 48px;max-width:640px}
  .slide h1{font-size:2.4rem}
  .s-theme{align-items:center;background-position:center 30%}
  .s-theme::before{background:linear-gradient(90deg,rgba(255,248,252,.96) 20%,rgba(255,248,252,0) 78%)}
  .s-give{align-items:center}
  .s-give::before{background:linear-gradient(90deg,rgba(209,15,98,.94) 25%,rgba(251,28,121,.1) 85%)}
  .s-event{background-size:auto 100%;background-repeat:no-repeat;background-position:center top;align-items:flex-end;justify-content:center}
  .s-event .sc{max-width:none;text-align:center;padding:20px 20px 36px}
  .s-event .row{justify-content:center}
  .event .flyer{float:left;width:340px;margin:0 28px 12px 0}
  .event::after{content:"";display:block;clear:both}
  .sheet-bg{align-items:center}
  .sheet{border-radius:26px;max-width:560px;padding-bottom:24px}
  .seg{max-width:560px}
  .section-title{margin-top:36px}
  .book .btn{font-size:.8rem}
  .card.next{max-width:none}
  .video{max-width:820px}
}
@media(min-width:900px){
  header.top{padding:10px clamp(24px,3vw,56px)}
  main{max-width:1720px;padding:28px clamp(24px,3vw,56px) 16px}
}
@media(min-width:1400px){
  .heralds{grid-template-columns:repeat(5,1fr)}
  .grid2.books{grid-template-columns:repeat(5,1fr)}
  .slide{height:520px}
}

/* prayer timer + journal */
.pt-center{text-align:center}
.pt-orb{position:relative;width:min(76vw,280px);aspect-ratio:1;margin:4px auto 0}
.pt-orb svg{width:100%;height:100%;display:block;overflow:visible}
.pt-ring{fill:#fff;fill-opacity:0;stroke:var(--ink);stroke-width:3}
#ptWater{transition:transform 1s linear}
#ptWater path{will-change:transform}
.pt-w1{fill:#FFB6D6;animation:ptwave 3.2s linear infinite}
.pt-w2{fill:#FFCFE4;animation:ptwave2 4.6s linear infinite}
.pt-w3{fill:#FFE2EE;animation:ptwave 6.5s linear infinite;transform:translateY(-6px)}
@keyframes ptwave{0%{transform:translate(0,0)}50%{transform:translate(-50px,6px)}100%{transform:translate(-100px,0)}}
@keyframes ptwave2{0%{transform:translate(-100px,4px)}50%{transform:translate(-50px,-5px)}100%{transform:translate(0,4px)}}
.pt-in{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}
.pt-in .pill{background:#fff;color:var(--ink);border:1.5px solid var(--ink)}
.pt-clock{font:700 2.9rem/1.1 Poppins,sans-serif;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--ink);text-shadow:0 0 10px #fff,0 0 4px #fff}
@media(prefers-reduced-motion:reduce){.pt-w1,.pt-w2,.pt-w3{animation:none}}
.pt-bar{height:8px;border-radius:99px;background:var(--line);overflow:hidden}
.pt-bar i{display:block;height:100%;background:var(--pink);transition:width .5s linear}
.ptopts{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 14px}
.ptopt{font:600 .85rem Poppins;border:1.5px solid var(--line);background:#fff;color:var(--ink);border-radius:99px;padding:9px 14px;cursor:pointer}
.ptopt.on{background:var(--pink);border-color:var(--pink);color:#fff}
.pt-link{all:unset;cursor:pointer;color:var(--pink-dark);font:600 .85rem Poppins;text-decoration:underline}
.pj-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}
.pj-stats div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px 6px;text-align:center}
.pj-stats b{display:block;font:700 1.15rem Poppins}.pj-stats span{font-size:.72rem;color:var(--muted)}
.pj-item .meta{display:flex;justify-content:space-between;font-size:.78rem;color:var(--muted);margin-bottom:8px}
.pt-box{margin:14px 0}

/* announcement / event slides without a picture: the pink theme design */
.s-plain{background:radial-gradient(circle at 88% 8%,rgba(251,28,121,.22) 0 90px,transparent 91px),radial-gradient(circle at 6% 96%,rgba(251,28,121,.16) 0 70px,transparent 71px),linear-gradient(160deg,#fff 0%,#FFE0EE 55%,#FFB3D3 100%)}
.s-plain::before{display:none}
.s-plain .eyebrow{font:600 .68rem Poppins;letter-spacing:.14em;text-transform:uppercase;color:var(--pink-dark)}
.s-plain h1,.s-plain p{color:#2a1420}
.s-plain p{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.s-news{background-position:center 30%}
.s-news::before{background:linear-gradient(180deg,rgba(0,0,0,.05) 10%,rgba(0,0,0,.88) 72%)}
.s-news h1,.s-news p,.s-news .eyebrow{color:#fff}
.s-news .eyebrow{font:600 .68rem Poppins;letter-spacing:.14em;text-transform:uppercase}
@media(min-width:900px){.s-plain,.s-news{align-items:center}.s-news::before{background:linear-gradient(90deg,rgba(0,0,0,.88) 25%,rgba(0,0,0,.05) 85%)}.s-plain .sc{max-width:760px}}
