*{box-sizing:border-box}body{margin:0;background:#f3f3f3;color:#111;font:16px/1.55 Arial,Helvetica,sans-serif;border-top:7px solid #dc143c}header,footer{padding:26px clamp(20px,5vw,80px);display:flex;justify-content:space-between;gap:20px;align-items:center}.brand{font-size:25px;font-weight:900;text-decoration:none;color:#111;letter-spacing:-1px}.brand span,em,.hub span{color:#dc143c}.tag,.eyebrow{font-size:13px;letter-spacing:1.5px;font-weight:700}.tag{border:1px solid #ccc;padding:8px 12px}main{max-width:1400px;margin:0 auto;padding:40px clamp(20px,5vw,80px) 80px;display:grid;grid-template-columns:1.1fr 1fr;gap:60px}.intro{padding-top:48px}h1{font-size:clamp(48px,5.8vw,86px);line-height:1.02;letter-spacing:-.055em;margin:20px 0 30px}em{font-style:normal}.lead{font-size:21px;color:#484848;max-width:520px}.steps{list-style-position:inside;padding:24px 0;display:flex;flex-wrap:wrap;gap:12px 20px;border-block:1px solid #ccc;font-weight:bold}.quiet{font-weight:bold}details{border-bottom:1px solid #ccc;padding:16px 0;color:#444;max-width:580px}summary{font-weight:700;cursor:pointer;color:#111}details p{font-size:15px}.experience{max-width:520px;width:100%;justify-self:center}.wheel-wrap{position:relative;width:min(100%,340px);margin:0 auto 14px}.wheel-wrap canvas{width:100%;height:auto;display:block;border-radius:50%;box-shadow:0 10px 0 #ddd}.pointer{position:absolute;top:-23px;left:50%;transform:translateX(-50%);color:#111;font-size:38px;line-height:1;z-index:2}.hub{position:absolute;inset:38%;background:#fff;border:7px solid #111;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:25px;font-weight:900}.odds{text-align:center;font-size:14px;color:#444;margin:20px 0}.panel{background:#fff;padding:28px;border:1px solid #ddd}h2{font-size:25px;line-height:1.2;margin:0 0 20px}label{display:block;font-size:14px;font-weight:bold;margin:14px 0}label span{font-weight:normal}input:not([type=checkbox]){display:block;width:100%;padding:12px;margin-top:6px;border:1px solid #aaa;border-radius:0;font:inherit;font-size:16px}input[type=checkbox]{width:19px;height:19px;margin:2px 0;flex-shrink:0;accent-color:#dc143c}.check{display:flex;gap:10px;align-items:flex-start}.check span{font-size:14px}button{border:0;padding:15px 18px;background:#dc143c;color:white;font:700 16px/1.4 Arial,sans-serif;width:100%;cursor:pointer;margin-top:8px}button:hover{background:#b61032}button:disabled{opacity:.6;cursor:wait}.secondary{background:#111}.secondary:hover{background:#333}:focus-visible{outline:3px solid #177ca5;outline-offset:3px}.small{font-size:14px;color:#555}.code{display:block;background:#f2f2f2;padding:16px;font:700 18px/1.5 monospace;overflow-wrap:anywhere}#prize-label{font-size:44px;color:#dc143c}#message{color:#8b1530;margin-bottom:0}#message:empty{display:none}.trap{position:absolute;left:-10000px}footer{background:#111;color:white;font-size:14px}footer span{color:#ccc}[hidden]{display:none!important}@media(max-width:850px){main{grid-template-columns:1fr;gap:35px;padding-top:10px}.intro{padding-top:10px}.tag{display:none}.lead{font-size:18px}h1{font-size:clamp(48px,10vw,75px)}.experience{max-width:520px}.panel{padding:22px}footer{flex-wrap:wrap}}


 /* MZANSI POPUP WHEEL V1 */
.spin-popup {
  width: min(94vw, 540px);
  max-height: 92vh;
  max-height: 92dvh;
  overflow-y: auto;
  padding: 24px 28px 30px;
  border: 0;
  border-top: 7px solid #dc143c;
  background: #fff;
  color: #111;
  box-shadow: 0 25px 90px #0006;
}
.spin-popup::backdrop {
  background: rgba(0, 0, 0, .72);
}
.spin-popup > h2 {
  text-align: center;
  font-size: 30px;
  margin: 12px 0 34px;
}
.spin-popup .popup-close {
  display: block;
  width: auto;
  margin: 0 0 8px auto;
  padding: 8px 14px;
  background: #eee;
  color: #111;
  font-size: 14px;
}
.spin-popup .wheel-wrap {
  width: min(100%, 340px);
}
.spin-popup #play,
.spin-popup #prize {
  text-align: center;
}
.spin-popup #spin {
  font-size: 20px;
  letter-spacing: 1px;
  padding: 18px;
}
.experience {
  align-self: center;
}
@media (max-width: 480px) {
  .spin-popup { padding: 18px 20px 24px; }
  .spin-popup > h2 { font-size: 25px; }
}


/* MZANSI SCARLET WHEEL V2 */
.spin-popup {
  width: min(95vw, 580px);
  padding: 20px 32px 32px;
  border: 1px solid #626268;
  border-top: 5px solid #ff3158;
  border-radius: 22px;
  background: radial-gradient(ellipse at 50% 32%, #40111f, #121215 65%);
  color: #fff;
  box-shadow: 0 30px 100px #000b, 0 0 45px #dc143c35;
}

.spin-popup::backdrop {
  background: #050507dc;
  backdrop-filter: blur(6px);
}

.spin-popup > h2 {
  color: #fff;
  font-size: clamp(25px, 5vw, 34px);
  font-weight: 900;
  letter-spacing: -.8px;
  margin: 8px 0 36px;
}

.spin-popup .popup-close {
  border: 1px solid #626268;
  border-radius: 30px;
  background: #ffffff0d;
  color: #fff;
  padding: 7px 14px;
}

.spin-popup .wheel-wrap {
  width: min(100%, 390px);
  isolation: isolate;
}

.spin-popup .wheel-wrap canvas {
  box-shadow: 0 12px 0 #330b15, 0 22px 35px #0009,
              0 0 30px #ff214e65;
}

.spin-popup .pointer {
  top: -18px;
  color: #fff;
  font-size: 46px;
  text-shadow: 0 3px 0 #dc143c, 0 6px 8px #0009;
  z-index: 4;
}

.spin-popup .premium-hub {
  inset: 37%;
  width: 26%;
  height: 26%;
  margin: 0;
  padding: 0;
  border: 5px solid #fff;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 25%, #ff708c, #e31b48 48%, #930a2a);
  color: #fff;
  font-size: clamp(17px, 4vw, 25px);
  font-weight: 900;
  letter-spacing: .5px;
  box-shadow: 0 5px 0 #73051e, 0 9px 20px #0008,
              inset 0 2px 6px #ffffff80;
  z-index: 3;
  cursor: pointer;
}

.spin-popup .premium-hub:disabled {
  opacity: 1;
  cursor: default;
}

.spin-popup .premium-hub:not(:disabled):hover {
  filter: brightness(1.15);
}

.spin-popup .premium-hub:not(:disabled):active {
  translate: 0 2px;
}

.spin-popup .odds {
  color: #d8d3d7;
  font-size: 14px;
  margin: 25px 0 22px;
}

.spin-popup #play h2 {
  display: none;
}

.spin-popup #play p,
.spin-popup #share p,
.spin-popup #voucher p {
  color: #e7e1e5;
}

.spin-popup #spin,
.spin-popup #whatsapp {
  border: 1px solid #ff7893;
  border-radius: 12px;
  background: linear-gradient(#ff315c, #c80b35);
  box-shadow: 0 5px 0 #700820, 0 9px 22px #dc143c35;
  font-weight: 900;
}

.spin-popup .secondary {
  border: 1px solid #85818a;
  border-radius: 12px;
  background: #ffffff10;
  color: #fff;
  margin-top: 16px;
}

.spin-popup #prize-label {
  color: #fff;
  font-size: 48px;
  text-shadow: 0 0 22px #ff315b80;
}

.spin-popup .eyebrow {
  color: #ff91a7;
}

.spin-popup .code {
  border: 1px dashed #ff829f;
  border-radius: 10px;
  background: #ffffff0a;
  color: #fff;
}

.spin-popup #message {
  color: #ffb4c3;
}

@media (max-width: 480px) {
  .spin-popup {
    padding: 16px 20px 25px;
    border-radius: 18px;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .spin-popup[open] {
    animation: reward-popup-in .25s ease-out;
  }
  @keyframes reward-popup-in {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
  }
}

/* Hide odds beneath wheel popup */
.spin-popup .odds { display: none; }
.spin-popup .wheel-wrap { margin-bottom: 28px; }
