/* ===========================================================
   Swazi Plaza Properties - Marketing Strategy Deck
   Reference design + motion system, scoped under #spp-ms-deck
   so it never collides with the WordPress theme.
   =========================================================== */
#spp-ms-deck{
  --c-bg:#FFFFFF; --c-bg-2:#FBF6F5; --c-bg-3:#F4ECEA;
  --c-ink:#1A1414; --c-ink-2:#524A48; --c-ink-3:#8C8480;
  --c-red:#EC2428; --c-red-2:#C71A1F; --c-red-deep:#9E1217;
  --c-red-soft:rgba(236,36,40,.08); --c-red-soft2:rgba(236,36,40,.14); --c-red-line:rgba(236,36,40,.30);
  --c-line:rgba(26,20,20,.10); --ink-dark:#120c0c;
  --ease:cubic-bezier(.2,.7,.2,1); --pop:cubic-bezier(.2,1.3,.4,1); --slide:cubic-bezier(.22,.61,.36,1);
  --ov:.58;
  font-family:'Lato',system-ui,-apple-system,sans-serif; position:relative; aspect-ratio:16/9;
  background:var(--c-bg); overflow:hidden; font-size:clamp(11px,1.05vw,19px); color:var(--c-ink);
  width:100%; margin:0 auto; box-shadow:0 30px 80px rgba(0,0,0,.16); -webkit-tap-highlight-color:transparent;
}
#spp-ms-deck *,#spp-ms-deck *::before,#spp-ms-deck *::after{box-sizing:border-box;}
#spp-ms-deck:fullscreen,#spp-ms-deck:-webkit-full-screen{aspect-ratio:auto;height:100vh;box-shadow:none;}
#spp-ms-deck noscript{display:block;padding:2rem;font-family:Arial,sans-serif;}

#spp-ms-deck .progress{position:absolute;top:0;left:0;right:0;height:4px;background:var(--c-bg-3);z-index:60;}
#spp-ms-deck .progress__bar{height:100%;background:var(--c-red);width:0;transition:width .45s var(--ease);}
#spp-ms-deck .counter{position:absolute;top:1.2%;right:1.4%;z-index:60;font-weight:800;font-size:.72em;letter-spacing:.12em;color:var(--c-ink-3);}

/* slide + directional transition */
#spp-ms-deck .slide{position:absolute;inset:0;display:flex;flex-direction:column;padding:3.3% 4.5% 2.8%;opacity:0;visibility:hidden;z-index:1;overflow:hidden;}
#spp-ms-deck .slide.is-active{opacity:1;visibility:visible;z-index:2;}
#spp-ms-deck .slide.is-anim{transition:transform .55s var(--slide),opacity .42s ease;}
#spp-ms-deck .slide.enter-right{transform:translateX(46px);opacity:0;}
#spp-ms-deck .slide.enter-left{transform:translateX(-46px);opacity:0;}
#spp-ms-deck .slide.leave-left{transform:translateX(-46px);opacity:0;}
#spp-ms-deck .slide.leave-right{transform:translateX(46px);opacity:0;}

/* themes */
#spp-ms-deck .slide--red{background:linear-gradient(135deg,var(--c-red) 0%,var(--c-red-deep) 100%);color:#fff;}
#spp-ms-deck .slide--red .eyebrow,#spp-ms-deck .slide--red .h2,#spp-ms-deck .slide--red .lede{color:#fff;}
#spp-ms-deck .slide--red .foot{border-top-color:rgba(255,255,255,.25);color:rgba(255,255,255,.8);}
#spp-ms-deck .slide--dark{background:radial-gradient(120% 130% at 75% 20%,#2a1213 0%,var(--ink-dark) 60%);color:#fff;}
#spp-ms-deck .slide--dark .eyebrow{color:#ff6b6e;} #spp-ms-deck .slide--dark .h2,#spp-ms-deck .slide--dark .lede{color:#fff;}
#spp-ms-deck .slide--dark .foot{border-top-color:rgba(255,255,255,.18);color:rgba(255,255,255,.6);}
#spp-ms-deck .slide--dark .strip{border-bottom-color:var(--c-red);}
#spp-ms-deck .slide--dark .wordmark b,#spp-ms-deck .slide--dark .wordmark s{color:#fff;}
#spp-ms-deck .slide--dark .meta{color:rgba(255,255,255,.7);}

/* background image + black overlay (per slide via .has-bg) */
#spp-ms-deck .bgimg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .55s var(--ease);z-index:0;}
#spp-ms-deck .bgimg::after{content:"";position:absolute;inset:0;background:rgba(var(--ovc,8,4,4),var(--ov));}
#spp-ms-deck .slide.has-bg .bgimg{opacity:1;}
#spp-ms-deck .slide.has-bg{color:#fff;}
#spp-ms-deck .slide.has-bg .h2,#spp-ms-deck .slide.has-bg .lede,#spp-ms-deck .slide.has-bg .title-main,#spp-ms-deck .slide.has-bg .hero-num,#spp-ms-deck .slide.has-bg .stat__label,#spp-ms-deck .slide.has-bg .list li,#spp-ms-deck .slide.has-bg .card__k{color:#fff;}
#spp-ms-deck .slide.has-bg .stat,#spp-ms-deck .slide.has-bg .card{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.25);}
#spp-ms-deck .slide.has-bg .stat__sub,#spp-ms-deck .slide.has-bg .card__t,#spp-ms-deck .slide.has-bg .foot{color:rgba(255,255,255,.82);}
#spp-ms-deck .slide.has-bg .strip{border-bottom-color:#fff;}
#spp-ms-deck .slide.has-bg .meta,#spp-ms-deck .slide.has-bg .wordmark b,#spp-ms-deck .slide.has-bg .wordmark s{color:#fff;}
/* LIGHT overlay: photo behind, white wash, keep the slide's dark-on-light content */
#spp-ms-deck .slide.has-bg--light{--ovc:255,255,255;color:var(--c-ink);}
#spp-ms-deck .slide.has-bg--light .h2,#spp-ms-deck .slide.has-bg--light .lede,#spp-ms-deck .slide.has-bg--light .hero-num,#spp-ms-deck .slide.has-bg--light .stat__label,#spp-ms-deck .slide.has-bg--light .list li,#spp-ms-deck .slide.has-bg--light .card__k,#spp-ms-deck .slide.has-bg--light .funstat .lbl{color:var(--c-ink);}
#spp-ms-deck .slide.has-bg--light .stat{background:var(--c-bg-2);border-color:var(--c-line);}
#spp-ms-deck .slide.has-bg--light .stat__sub,#spp-ms-deck .slide.has-bg--light .card__t,#spp-ms-deck .slide.has-bg--light .foot{color:var(--c-ink-3);}
#spp-ms-deck .slide.has-bg--light .strip{border-bottom-color:var(--c-red);}
#spp-ms-deck .slide.has-bg--light .meta{color:var(--c-ink-2);} #spp-ms-deck .slide.has-bg--light .wordmark b{color:var(--c-red);} #spp-ms-deck .slide.has-bg--light .wordmark s{color:var(--c-ink);}

/* chrome */
#spp-ms-deck .strip{display:flex;align-items:center;justify-content:space-between;padding-bottom:1%;border-bottom:2.5px solid var(--c-red);}
#spp-ms-deck .brand{display:flex;align-items:center;gap:.7em;}
#spp-ms-deck .brand img{height:2.6em;width:auto;display:block;filter:drop-shadow(0 2px 5px rgba(0,0,0,.18));}
#spp-ms-deck .wordmark{display:inline-flex;flex-direction:column;line-height:.9;}
#spp-ms-deck .wordmark b{font-weight:900;color:var(--c-red);font-size:1.45em;text-transform:uppercase;letter-spacing:.01em;}
#spp-ms-deck .wordmark s{text-decoration:none;font-weight:700;letter-spacing:.3em;font-size:.55em;text-transform:uppercase;color:var(--c-ink);}
#spp-ms-deck .meta{display:flex;gap:1.1em;text-transform:uppercase;letter-spacing:.13em;font-size:.7em;font-weight:900;color:var(--c-ink-2);}
#spp-ms-deck .meta span+span{padding-left:1.1em;border-left:1px solid var(--c-line);}
#spp-ms-deck .foot{margin-top:auto;display:flex;justify-content:space-between;padding-top:.9%;border-top:1px solid var(--c-line);font-size:.7em;letter-spacing:.05em;text-transform:uppercase;color:var(--c-ink-3);font-weight:700;}
#spp-ms-deck .body{display:flex;flex-direction:column;flex:1;padding-top:1.5%;min-height:0;}
#spp-ms-deck .eyebrow{display:inline-flex;align-items:center;gap:.5em;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:var(--c-red);font-size:.8em;margin-bottom:.7%;}
#spp-ms-deck .h2{font-weight:900;font-size:clamp(20px,2.55vw,46px);line-height:1.04;margin:0 0 .5%;}
#spp-ms-deck .lede{font-size:clamp(13px,1.4vw,24px);color:var(--c-ink-2);max-width:62ch;}
#spp-ms-deck .accent{color:var(--c-red);} #spp-ms-deck .bold{font-weight:900;}

/* mask headline reveal */
#spp-ms-deck .mask{display:inline-block;overflow:hidden;vertical-align:bottom;}
#spp-ms-deck .mask>span{display:inline-block;transform:translateY(115%);transition:transform .7s var(--ease);}
#spp-ms-deck .slide.is-active .mask>span{transform:translateY(0);}

/* reveal / pop */
#spp-ms-deck .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease),transform .6s var(--ease);}
#spp-ms-deck .reveal-pop{opacity:0;transform:scale(.86);transition:opacity .5s ease,transform .55s var(--pop);}
#spp-ms-deck .reveal.is-in,#spp-ms-deck .reveal-pop.is-in{opacity:1;transform:none;}

/* icons */
#spp-ms-deck .ic{display:inline-flex;align-items:center;justify-content:center;}
#spp-ms-deck .ic svg{width:1em;height:1em;fill:currentColor;display:block;}
#spp-ms-deck .chip{display:inline-flex;align-items:center;justify-content:center;width:2.6em;height:2.6em;border-radius:13px;background:var(--c-red-soft2);color:var(--c-red);font-size:1.1em;flex:none;}
#spp-ms-deck .chip--solid{background:var(--c-red);color:#fff;}

/* cards */
#spp-ms-deck .cards{display:grid;gap:1.05em;}
#spp-ms-deck .cards--2{grid-template-columns:1fr 1fr;} #spp-ms-deck .cards--3{grid-template-columns:repeat(3,1fr);} #spp-ms-deck .cards--4{grid-template-columns:repeat(4,1fr);}
#spp-ms-deck .card{background:#fff;border:1px solid var(--c-line);border-radius:14px;padding:1.15em 1.25em;box-shadow:0 10px 26px rgba(26,20,20,.06);}
#spp-ms-deck .card__head{display:flex;align-items:center;gap:.65em;margin-bottom:.45em;}
#spp-ms-deck .card__k{font-weight:900;font-size:clamp(13px,1.35vw,22px);}
#spp-ms-deck .card__k .n{color:var(--c-red);margin-right:.35em;}
#spp-ms-deck .card__t{font-size:clamp(11px,1vw,18px);color:var(--c-ink-2);line-height:1.32;}
#spp-ms-deck .card--red{background:linear-gradient(150deg,var(--c-red),var(--c-red-deep));color:#fff;border-color:transparent;}
#spp-ms-deck .card--red .card__t{color:rgba(255,255,255,.92);} #spp-ms-deck .card--red .chip{background:rgba(255,255,255,.18);color:#fff;}

/* lists */
#spp-ms-deck .list{list-style:none;display:flex;flex-direction:column;gap:.7em;margin:0;padding:0;}
#spp-ms-deck .list li{position:relative;padding-left:1.8em;font-size:clamp(13px,1.2vw,22px);line-height:1.3;color:var(--c-ink);}
#spp-ms-deck .list li .ic{position:absolute;left:0;top:.06em;color:var(--c-red);font-size:1.2em;}
#spp-ms-deck .list li b{font-weight:900;} #spp-ms-deck .list li span{color:var(--c-ink-2);font-size:.92em;}
#spp-ms-deck .list--white li{color:#fff;} #spp-ms-deck .list--white li span{color:rgba(255,255,255,.85);} #spp-ms-deck .list--white li .ic{color:#fff;}

/* stats */
#spp-ms-deck .stats{display:grid;gap:1em;} #spp-ms-deck .stats--2{grid-template-columns:repeat(2,1fr);} #spp-ms-deck .stats--3{grid-template-columns:repeat(3,1fr);} #spp-ms-deck .stats--4{grid-template-columns:repeat(4,1fr);}
#spp-ms-deck .stat{background:var(--c-bg-2);border:1px solid var(--c-line);border-left:5px solid var(--c-red);border-radius:12px;padding:1.2% 1.3%;display:flex;flex-direction:column;}
#spp-ms-deck .stat__ic{color:var(--c-red);font-size:1.5em;margin-bottom:.3em;}
#spp-ms-deck .stat__num{font-weight:900;font-size:clamp(24px,3.4vw,58px);color:var(--c-red);line-height:1;letter-spacing:-.01em;font-variant-numeric:tabular-nums;transition:transform .25s var(--pop);transform-origin:left;}
#spp-ms-deck .stat__num.land{transform:scale(1.13);}
#spp-ms-deck .stat__label{font-size:clamp(11px,1vw,17px);font-weight:900;margin-top:.4em;line-height:1.2;}
#spp-ms-deck .stat__sub{font-size:.76em;color:var(--c-ink-3);margin-top:.15em;font-weight:700;}
#spp-ms-deck .hero-num{font-weight:900;color:var(--c-red);font-size:clamp(46px,8vw,150px);line-height:.86;letter-spacing:-.03em;font-variant-numeric:tabular-nums;}
#spp-ms-deck .hero-cap{font-weight:900;text-transform:uppercase;letter-spacing:.03em;font-size:clamp(13px,1.4vw,24px);}

/* two-col */
#spp-ms-deck .two{display:grid;grid-template-columns:1fr 1fr;gap:2%;flex:1;min-height:0;align-items:start;}
#spp-ms-deck .two--6040{grid-template-columns:1.45fr 1fr;} #spp-ms-deck .two--4060{grid-template-columns:1fr 1.45fr;}

/* TITLE */
#spp-ms-deck .slide--title{padding:0;justify-content:center;align-items:flex-start;}
#spp-ms-deck .title-bg{position:absolute;inset:0;overflow:hidden;z-index:0;}
#spp-ms-deck .ring{position:absolute;border-radius:50%;}
#spp-ms-deck .ring.spin{animation:sppspin 60s linear infinite;}
#spp-ms-deck .ring.floatA{animation:sppfloatA 9s ease-in-out infinite;} #spp-ms-deck .ring.floatB{animation:sppfloatB 7s ease-in-out infinite;}
@keyframes sppspin{to{transform:rotate(360deg);}}
@keyframes sppfloatA{0%,100%{transform:translate(0,0);}50%{transform:translate(-1.4vw,1.7vw);}}
@keyframes sppfloatB{0%,100%{transform:translate(0,0);}50%{transform:translate(1.2vw,-1.4vw);}}
#spp-ms-deck .title-logo{position:absolute;right:5%;top:50%;transform:translateY(-50%);width:30%;max-width:360px;opacity:.13;z-index:0;animation:sppbob 8s ease-in-out infinite;}
@keyframes sppbob{0%,100%{transform:translateY(-50%);}50%{transform:translateY(-54%);}}
#spp-ms-deck .title-stack{position:relative;z-index:3;padding:0 6%;max-width:86%;}
#spp-ms-deck .title-main{font-weight:900;font-size:clamp(34px,7vw,116px);line-height:.9;letter-spacing:-.02em;}
#spp-ms-deck .title-host{display:block;color:var(--c-red);font-size:clamp(18px,2.4vw,38px);text-transform:uppercase;margin-bottom:.3%;}
#spp-ms-deck .title-rule{width:15%;height:5px;background:var(--c-red);margin:1.6% 0 1.3%;transform-origin:left;transform:scaleX(0);}
#spp-ms-deck .slide--title.is-active .title-rule{transition:transform .8s .35s var(--ease);transform:scaleX(1);}
#spp-ms-deck .title-sub{font-size:clamp(14px,1.85vw,30px);color:var(--c-ink-2);margin-bottom:2%;}
#spp-ms-deck .title-tabs{display:flex;gap:1.1em;flex-wrap:wrap;}
#spp-ms-deck .title-tab{background:var(--c-bg-2);border:1px solid var(--c-line);border-left:5px solid var(--c-red);border-radius:12px;padding:.85em 1.2em;min-width:13em;}
#spp-ms-deck .title-tab .tlab{font-size:.68em;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--c-ink-3);}
#spp-ms-deck .title-tab .tval{font-size:clamp(14px,1.4vw,24px);font-weight:900;color:var(--c-ink);}
#spp-ms-deck .slide--title.has-bg .title-tab{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.25);}
#spp-ms-deck .slide--title.has-bg .title-tab .tval,#spp-ms-deck .slide--title.has-bg .title-sub{color:#fff;}

/* WHERE WE STARTED */
#spp-ms-deck .bignum-wrap{display:flex;flex-direction:column;justify-content:center;flex:1;}
#spp-ms-deck .glow{text-shadow:0 0 50px rgba(236,36,40,.55);}
#spp-ms-deck .startfig{font-weight:900;font-size:clamp(70px,15vw,260px);line-height:.82;color:#fff;letter-spacing:-.03em;font-variant-numeric:tabular-nums;}
#spp-ms-deck .startfig .accent{color:var(--c-red);}
#spp-ms-deck .permonth{display:inline-flex;align-items:baseline;gap:.4em;margin-top:2.5%;font-weight:900;font-size:clamp(18px,2.4vw,42px);color:#fff;}
#spp-ms-deck .permonth b{color:var(--c-red);font-size:1.5em;}
#spp-ms-deck .pulse-dot{display:inline-block;width:.5em;height:.5em;border-radius:50%;background:var(--c-red);margin-right:.4em;animation:spppulse 1.6s ease-in-out infinite;}
@keyframes spppulse{0%,100%{transform:scale(1);opacity:1;}50%{transform:scale(1.7);opacity:.5;}}

/* GROWTH bars + platrow */
#spp-ms-deck .chartwrap{display:flex;flex-direction:column;gap:.85em;margin-top:1.2%;}
#spp-ms-deck .barrow{display:grid;grid-template-columns:8.5em 1fr auto;align-items:center;gap:.9em;}
#spp-ms-deck .barrow .blabel{font-weight:700;font-size:clamp(11px,1.05vw,18px);}
#spp-ms-deck .bartrack{height:1.5em;background:var(--c-bg-3);border-radius:5px;overflow:hidden;}
#spp-ms-deck .barfill{height:100%;width:0;border-radius:5px;background:#D9CFCC;transition:width 1s var(--ease);}
#spp-ms-deck .barfill.hot{background:var(--c-red);}
#spp-ms-deck .bval{font-weight:900;font-size:clamp(11px,1.05vw,18px);color:var(--c-ink-2);min-width:3.6em;text-align:right;}
#spp-ms-deck .bval.hot{color:var(--c-red);}
#spp-ms-deck .platrow{display:flex;gap:.8em;margin-top:1.2%;}
#spp-ms-deck .platcard{flex:1;background:#fff;border:1px solid var(--c-line);border-radius:13px;padding:.8em 1em;box-shadow:0 8px 20px rgba(26,20,20,.05);}
#spp-ms-deck .platcard .pk{display:flex;align-items:center;gap:.5em;font-weight:900;font-size:clamp(15px,1.7vw,28px);}
#spp-ms-deck .platcard .pt{font-size:clamp(10px,.92vw,15px);color:var(--c-ink-2);margin-top:.15em;}
#spp-ms-deck .plat{display:inline-flex;align-items:center;justify-content:center;width:1.9em;height:1.9em;border-radius:9px;color:#fff;font-weight:900;font-size:.7em;flex:none;}
#spp-ms-deck .plat--fb{background:#1877F2;} #spp-ms-deck .plat--ig{background:#E1306C;} #spp-ms-deck .plat--li{background:#0A66C2;}

/* set-piece layer */
#spp-ms-deck .fx{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden;}
#spp-ms-deck .fx .glyph{position:absolute;display:flex;align-items:center;justify-content:center;will-change:transform,opacity;}
#spp-ms-deck .fx .glyph svg{width:100%;height:100%;display:block;}

/* events converge */
#spp-ms-deck .converge-stage{position:relative;flex:1;display:flex;align-items:center;justify-content:center;min-height:0;}
#spp-ms-deck .converge-logo{width:18%;max-width:190px;filter:drop-shadow(0 12px 30px rgba(0,0,0,.45));z-index:4;transform:scale(.9);}
#spp-ms-deck .converge-logo.hit{animation:spplogohit .5s var(--pop);}
@keyframes spplogohit{0%{transform:scale(.9);}40%{transform:scale(1.12);}100%{transform:scale(1);}}
#spp-ms-deck .converge-cap{position:absolute;bottom:5%;left:0;right:0;text-align:center;font-weight:900;font-size:clamp(13px,1.5vw,24px);color:#fff;z-index:5;padding:0 6%;}

/* KIDDIES fun */
#spp-ms-deck .slide--fun{background:radial-gradient(90% 120% at 12% 0%,#fff2cc 0%,transparent 45%),radial-gradient(90% 120% at 100% 20%,#ffd9e6 0%,transparent 50%),radial-gradient(120% 120% at 60% 110%,#d6ecff 0%,transparent 55%),#fffdfa;}
#spp-ms-deck .confetti-band{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;}
#spp-ms-deck .confetti-band i{position:absolute;width:.8vw;height:.8vw;border-radius:2px;opacity:.55;}
#spp-ms-deck .kid-img{position:relative;border-radius:16px;overflow:hidden;box-shadow:0 16px 34px rgba(26,20,20,.2);min-height:0;flex:1;background-size:cover;background-position:center;}
#spp-ms-deck .kid-img .ph{position:absolute;inset:0;background:radial-gradient(120% 120% at 25% 15%,#ffb347 0%,transparent 55%),radial-gradient(120% 120% at 90% 85%,#ff5e8a 0%,transparent 55%),linear-gradient(135deg,#ffcf5c,#ff6f91);}
#spp-ms-deck .kid-img .cap{position:absolute;left:0;right:0;bottom:0;padding:6% 5% 4%;color:#fff;font-weight:900;font-size:clamp(13px,1.4vw,24px);background:linear-gradient(transparent,rgba(40,5,5,.7));z-index:2;}
#spp-ms-deck .funstat{display:flex;align-items:center;gap:.8em;background:#fff;border-radius:14px;padding:.8em 1.1em;border:1px solid var(--c-line);box-shadow:0 8px 20px rgba(26,20,20,.06);}
#spp-ms-deck .funstat .big{font-weight:900;color:var(--c-red);font-size:clamp(22px,3vw,50px);line-height:1;font-variant-numeric:tabular-nums;}
#spp-ms-deck .funstat .lbl{font-weight:900;font-size:clamp(11px,1.05vw,18px);line-height:1.2;}
#spp-ms-deck .pill{display:inline-flex;align-items:center;gap:.4em;background:var(--c-red-soft2);color:var(--c-red-deep);font-weight:900;font-size:.72em;padding:.3em .8em;border-radius:20px;text-transform:uppercase;letter-spacing:.06em;}

/* portraits */
#spp-ms-deck .portraits{display:grid;grid-template-columns:repeat(7,1fr);gap:.6em;margin-top:auto;}
#spp-ms-deck .portrait{aspect-ratio:3/4;border-radius:10px;overflow:hidden;background:var(--c-bg-3);position:relative;box-shadow:0 6px 14px rgba(26,20,20,.12);opacity:0;transform:scale(.82) translateY(10px);transition:opacity .5s ease,transform .55s var(--pop);background-size:cover;background-position:center;}
#spp-ms-deck .portrait.is-in{opacity:1;transform:none;}
#spp-ms-deck .portrait .ph{position:absolute;inset:0;background:linear-gradient(150deg,var(--c-red-soft2),var(--c-bg-3));}
#spp-ms-deck .portrait:nth-child(2n) .ph{background:linear-gradient(150deg,#f6c6c6,#fbf0ef);}
#spp-ms-deck .portrait:nth-child(3n) .ph{background:linear-gradient(150deg,#ffd5c9,#f4ece9);}
#spp-ms-deck .portrait .tag{position:absolute;left:0;right:0;bottom:0;padding:.5em .6em;font-size:.62em;font-weight:900;color:#fff;background:linear-gradient(transparent,rgba(20,8,8,.75));text-align:center;}

/* CSR timeline */
#spp-ms-deck .timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:.7em;margin-top:.8%;}
#spp-ms-deck .tl{background:var(--c-bg-2);border:1px solid var(--c-line);border-left:4px solid var(--c-red);border-radius:12px;padding:.7em .85em;}
#spp-ms-deck .tl .dot{display:inline-flex;align-items:center;justify-content:center;width:2em;height:2em;border-radius:50%;background:var(--c-red);color:#fff;font-size:.95em;margin-bottom:.3em;}
#spp-ms-deck .tl .yr{font-weight:900;color:var(--c-red);font-size:clamp(11px,1.05vw,18px);}
#spp-ms-deck .tl .tx{font-size:clamp(9px,.82vw,14px);color:var(--c-ink-2);line-height:1.24;margin-top:.12em;}
#spp-ms-deck .tl--new{border-left-color:#0A66C2;} #spp-ms-deck .tl--new .dot{background:#0A66C2;} #spp-ms-deck .tl--new .yr{color:#0A66C2;}

/* SWAZI PLAZA CARES */
#spp-ms-deck .cares-stage{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:0;}
#spp-ms-deck .cares-logo{display:flex;flex-direction:column;align-items:center;gap:.3em;z-index:4;}
#spp-ms-deck .cares-logo .heart{width:clamp(54px,7vw,120px);height:auto;color:#fff;filter:drop-shadow(0 0 26px rgba(255,255,255,.5));}
#spp-ms-deck .cares-logo .heart.beat{animation:sppbeat 1.4s ease-in-out infinite;}
#spp-ms-deck .cares-logo img{width:clamp(120px,20vw,300px);height:auto;filter:drop-shadow(0 10px 30px rgba(0,0,0,.4));}
@keyframes sppbeat{0%,100%{transform:scale(1);}14%{transform:scale(1.16);}28%{transform:scale(1);}42%{transform:scale(1.12);}}
#spp-ms-deck .cares-word{display:flex;flex-direction:column;align-items:center;line-height:.95;}
#spp-ms-deck .cares-word b{font-weight:900;color:#fff;font-size:clamp(20px,2.6vw,46px);letter-spacing:.02em;text-transform:uppercase;}
#spp-ms-deck .cares-word s{text-decoration:none;font-weight:900;color:#fff;font-size:clamp(26px,3.4vw,60px);letter-spacing:.12em;text-transform:uppercase;}
#spp-ms-deck .cares-tag{margin-top:1.4%;font-weight:900;font-size:clamp(13px,1.5vw,24px);color:rgba(255,255,255,.92);text-align:center;z-index:4;}

/* square image frames (event photo + logo, square by default) */
#spp-ms-deck .imgpair{display:grid;grid-template-columns:1.4fr 1fr;gap:.7em;min-height:0;}
#spp-ms-deck .imgframe{position:relative;aspect-ratio:1/1;border-radius:18px;overflow:hidden;background:var(--c-bg-3);background-size:cover;background-position:center;box-shadow:0 14px 34px rgba(26,20,20,.22),0 0 0 1px rgba(236,36,40,.18),0 0 34px rgba(236,36,40,.20);}
#spp-ms-deck .imgframe img{width:100%;height:100%;object-fit:cover;display:block;}
#spp-ms-deck .imgframe--logo{background:#fff;box-shadow:0 14px 34px rgba(26,20,20,.18),0 0 0 1px rgba(236,36,40,.22),0 0 34px rgba(236,36,40,.28);}
#spp-ms-deck .imgframe--logo img{object-fit:contain;padding:12%;}
#spp-ms-deck .imgframe .cap{position:absolute;left:0;right:0;bottom:0;padding:8% 6% 5%;color:#fff;font-weight:900;font-size:clamp(11px,1.1vw,18px);background:linear-gradient(transparent,rgba(30,4,4,.72));}
#spp-ms-deck .imgframe .ph{position:absolute;inset:0;background:radial-gradient(120% 120% at 25% 15%,#ffb347 0%,transparent 55%),radial-gradient(120% 120% at 90% 85%,#ff5e8a 0%,transparent 55%),linear-gradient(135deg,#ffcf5c,#ff6f91);}

/* prominent glowing "who benefits" row */
#spp-ms-deck .benefits{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:.75em;margin-top:.7em;}
#spp-ms-deck .benefit{display:flex;flex-direction:column;align-items:center;gap:.5em;padding:1em .6em;border-radius:18px;background:rgba(255,255,255,.72);border:1px solid var(--c-red-line);box-shadow:0 12px 30px rgba(236,36,40,.20),0 0 0 1px rgba(236,36,40,.10);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);}
#spp-ms-deck .benefit .bic{width:2.6em;height:2.6em;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,var(--c-red),var(--c-red-deep));color:#fff;font-size:1.6em;box-shadow:0 0 26px rgba(236,36,40,.6);}
#spp-ms-deck .benefit .blab{font-weight:900;font-size:clamp(12px,1.15vw,20px);text-align:center;line-height:1.1;color:var(--c-ink);}
#spp-ms-deck .benefit .bsub{font-size:.72em;font-weight:700;color:var(--c-ink-3);text-align:center;}
#spp-ms-deck .benefits-eyebrow{display:inline-flex;align-items:center;gap:.5em;margin-top:.6em;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--c-red);font-size:.74em;}

/* glow + glass utilities (brand-red, purposeful) */
#spp-ms-deck .glow-red{box-shadow:0 12px 30px rgba(26,20,20,.08),0 0 34px rgba(236,36,40,.18);}
#spp-ms-deck .glass{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);}
#spp-ms-deck .funstat{box-shadow:0 10px 26px rgba(236,36,40,.18);}
#spp-ms-deck .funstat .chip--solid{box-shadow:0 0 22px rgba(236,36,40,.5);}

/* winners gallery + quote bar (kept) */
#spp-ms-deck .wgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(5.4%,1fr));gap:.5em;margin-top:.9%;}
#spp-ms-deck .wtile{aspect-ratio:4/5;border-radius:8px;overflow:hidden;background:var(--c-bg-3);box-shadow:0 4px 10px rgba(26,20,20,.12);background-size:cover;background-position:center;}
#spp-ms-deck .wtile img{width:100%;height:100%;object-fit:cover;display:block;}
#spp-ms-deck .quotebar{display:flex;align-items:center;gap:1em;margin:.8% 0 .3%;padding:.9em 1.2em;border-radius:14px;background:linear-gradient(150deg,var(--c-red),var(--c-red-deep));color:#fff;}
#spp-ms-deck .quotebar .ic{font-size:2em;flex:none;opacity:.9;}
#spp-ms-deck .quotebar p{margin:0;}
#spp-ms-deck .shot{margin-top:1%;border-radius:14px;overflow:hidden;box-shadow:0 10px 26px rgba(26,20,20,.14);max-height:12.5vw;}
#spp-ms-deck .shot img{width:100%;max-height:12.5vw;object-fit:cover;display:block;}

/* CLOSE */
#spp-ms-deck .slide--close{justify-content:center;padding:5% 6%;overflow:hidden;}
#spp-ms-deck .close-h{font-size:clamp(28px,5.4vw,94px);font-weight:900;line-height:.98;margin:0 0 1.2%;color:#fff;}
#spp-ms-deck .close-tag{font-size:clamp(13px,1.55vw,26px);color:rgba(255,255,255,.92);}
#spp-ms-deck .asks{display:grid;grid-template-columns:repeat(3,1fr);gap:1em;margin-top:1.4%;}
#spp-ms-deck .ask{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);border-left:5px solid #fff;border-radius:12px;padding:1em 1.1em;}
#spp-ms-deck .ask .chip{background:rgba(255,255,255,.18);color:#fff;margin-bottom:.4em;}
#spp-ms-deck .ask b{display:block;font-weight:900;font-size:clamp(13px,1.3vw,22px);color:#fff;margin-bottom:.15em;}
#spp-ms-deck .ask span{font-size:clamp(10px,.95vw,16px);color:rgba(255,255,255,.82);}
#spp-ms-deck .confetti{position:absolute;inset:0;overflow:hidden;z-index:3;pointer-events:none;}
#spp-ms-deck .confetti i{position:absolute;top:-6%;width:.7vw;height:1.1vw;border-radius:1px;opacity:.9;animation:sppfall linear forwards;}
@keyframes sppfall{to{transform:translateY(120vh) rotate(540deg);opacity:0;}}

/* controls (hidable) */
#spp-ms-deck .controls{position:absolute;bottom:1.1%;right:1.3%;display:flex;gap:.45em;z-index:70;transition:opacity .3s ease,transform .3s ease;}
#spp-ms-deck.controls-hidden .controls{opacity:0;transform:translateY(10px);pointer-events:none;}
#spp-ms-deck .btn{height:2.5em;min-height:34px;padding:0 .7em;border:1px solid rgba(26,20,20,.16);background:rgba(255,255,255,.92);color:var(--c-ink);border-radius:9px;cursor:pointer;font-weight:900;display:flex;align-items:center;gap:.4em;transition:all .15s ease;font-family:inherit;}
#spp-ms-deck .btn.sq{width:2.5em;padding:0;justify-content:center;}
#spp-ms-deck .btn .ic{font-size:1.05em;}
#spp-ms-deck .btn:hover{background:var(--c-red);color:#fff;border-color:var(--c-red);}
#spp-ms-deck .btn.on{background:var(--c-red);color:#fff;border-color:var(--c-red);}
#spp-ms-deck .foot-pad{padding-right:13%;}

/* ===== FILL THE SLIDE - kill dead white space (content was top-packed) ===== */
#spp-ms-deck .body{gap:1.1vh;}
#spp-ms-deck .body>.cards,#spp-ms-deck .body>.stats,#spp-ms-deck .body>.two,#spp-ms-deck .body>.kpi,#spp-ms-deck .body>.timeline,#spp-ms-deck .body>.wgrid,#spp-ms-deck .body>.converge-stage,#spp-ms-deck .body>.benefits{flex:1 1 auto;min-height:0;}
#spp-ms-deck .body>.cards,#spp-ms-deck .body>.stats,#spp-ms-deck .body>.kpi{align-content:stretch;grid-auto-rows:auto;}
#spp-ms-deck .cards>.card,#spp-ms-deck .stats>.stat,#spp-ms-deck .kpi>.kpi__c{height:100%;}
#spp-ms-deck .cards>.card{display:flex;flex-direction:column;justify-content:center;}
#spp-ms-deck .stat{justify-content:center;}
#spp-ms-deck .two{align-items:stretch;}
#spp-ms-deck .two>div:not(.imgpair){display:flex;flex-direction:column;justify-content:center;min-height:0;}
#spp-ms-deck .timeline{align-content:stretch;grid-auto-rows:auto;}
#spp-ms-deck .tl{display:flex;flex-direction:column;justify-content:center;}
#spp-ms-deck .body>.wgrid{align-content:center;}
#spp-ms-deck .imgpair{align-items:start;}
/* keep the footer clear of the on-screen controls (bottom-right) */
#spp-ms-deck .foot{padding-right:11.5%;}
#spp-ms-deck .counter{top:.9%;}
/* small breathing gap so filled content never touches the footer rule */
#spp-ms-deck .body{padding-bottom:.6vh;}

/* PDF capture: force animated layers visible, hide fx/confetti/controls (slides shown one at a time by JS) */
#spp-ms-deck.pdfcap .reveal,#spp-ms-deck.pdfcap .reveal-pop,#spp-ms-deck.pdfcap .portrait,#spp-ms-deck.pdfcap .mask>span{opacity:1!important;transform:none!important;}
#spp-ms-deck.pdfcap .fx,#spp-ms-deck.pdfcap .confetti,#spp-ms-deck.pdfcap .confetti-band,#spp-ms-deck.pdfcap .controls,#spp-ms-deck.pdfcap .progress,#spp-ms-deck.pdfcap .counter{display:none!important;}

@media (prefers-reduced-motion: reduce){
  #spp-ms-deck *{animation:none !important;}
  #spp-ms-deck .reveal,#spp-ms-deck .reveal-pop,#spp-ms-deck .portrait,#spp-ms-deck .mask>span{opacity:1 !important;transform:none !important;}
  #spp-ms-deck .slide.is-anim{transition:opacity .2s ease !important;}
}
