.pp-welcome-strip {
  width: 100%;
  overflow: hidden;
  margin: 0 0 22px;
  padding: 13px 0;
  border-radius: 12px;
  background: linear-gradient(100deg, #17348e, #7040c7, #d52c87, #ed8c35, #17348e);
  background-size: 300% 300%;
  animation: pp-welcome-bg 8s ease infinite;
  box-shadow: 0 7px 22px rgba(55, 43, 150, .22);
  border: 1px solid rgba(255,255,255,.35);
}

.pp-welcome-track {
  display: flex;
  width: max-content;
  white-space: nowrap;
  animation: pp-welcome-scroll 22s linear infinite;
}

.pp-welcome-track span {
  padding: 0 24px;
  color: #fff;
  font: 800 16px/1.5 Arial, sans-serif;
  letter-spacing: 1px;
  text-shadow: 0 2px 4px rgba(0,0,0,.25);
}

.pp-welcome-track strong {
  color: #ffe36a;
}

.pp-welcome-strip:hover .pp-welcome-track {
  animation-play-state: paused;
}

@keyframes pp-welcome-scroll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

@keyframes pp-welcome-bg {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}

@media (max-width: 600px) {
  .pp-welcome-strip {
    padding: 10px 0;
    border-radius: 8px;
  }

  .pp-welcome-track span {
    font-size: 13px;
    letter-spacing: .4px;
    padding: 0 16px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .pp-welcome-strip {
    animation: none;
    background: #303b9e;
  }

  .pp-welcome-track {
    animation: none;
    width: 100%;
    justify-content: center;
    white-space: normal;
  }

  .pp-welcome-track span:not(:first-child) {
    display: none;
  }

  .pp-welcome-track span {
    text-align: center;
  }
}
/* PromisedPage vibrant NEW post badge */
.pp-new-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    vertical-align: super;
    margin-left: 8px;
    padding: 4px 10px;
    border-radius: 6px;
    background: linear-gradient(135deg, #ff1744, #ff6d00, #ffca28);
    color: #ffffff !important;
    font-family: Arial, sans-serif;
    font-size: 11px;
    font-weight: 900;
    line-height: 1.4;
    letter-spacing: 1px;
    text-transform: uppercase;
    white-space: nowrap;
    box-shadow: 0 3px 10px rgba(255, 64, 0, 0.35);
    animation: pp-new-glow 1.8s ease-in-out infinite;
}

/* Subtle vibrant glow */
@keyframes pp-new-glow {
    0%, 100% {
        box-shadow: 0 3px 10px rgba(255, 64, 0, 0.30);
        transform: scale(1);
    }
    50% {
        box-shadow: 0 4px 15px rgba(255, 23, 68, 0.55);
        transform: scale(1.05);
    }
}

/* Smaller badge on mobile */
@media (max-width: 600px) {
    .pp-new-badge {
        font-size: 9px;
        padding: 3px 7px;
        margin-left: 5px;
    }
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    .pp-new-badge {
        animation: none;
    }
}

/* PromisedPage: Animated NEW Star Badge */
.pp-new-post-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  margin-left: 9px;
  padding: 4px 10px;
  border: 1px solid #fff2a6;
  border-radius: 7px;
  background: linear-gradient(135deg, #ff1744, #ff7a00, #d500f9);
  color: #ffffff !important;
  font-family: Arial, sans-serif;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: 1px;
  vertical-align: middle;
  white-space: nowrap;
  box-shadow: 0 0 10px rgba(255, 23, 68, 0.45);
  animation: pp-new-star-blink 1.2s infinite ease-in-out;
}

.pp-new-post-badge .pp-new-star {
  display: inline-block;
  color: #fff36b;
  font-size: 15px;
  animation: pp-new-star-spin 3s linear infinite;
}

@keyframes pp-new-star-blink {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
    box-shadow: 0 0 7px rgba(255, 23, 68, 0.45);
  }
  50% {
    opacity: 0.72;
    transform: scale(1.06);
    box-shadow: 0 0 17px rgba(255, 122, 0, 0.85);
  }
}

@keyframes pp-new-star-spin {
  to { transform: rotate(360deg); }
}

/* Smaller badge for Recent Articles lists */
.pp-recent-articles .pp-new-post-badge {
  margin-left: 5px;
  padding: 2px 5px;
  font-size: 9px;
  letter-spacing: 0.4px;
}

.pp-recent-articles .pp-new-post-badge .pp-new-star {
  font-size: 11px;
}

/* Keep animation accessible */
@media (prefers-reduced-motion: reduce) {
  .pp-new-post-badge,
  .pp-new-post-badge .pp-new-star {
    animation: none;
  }
}
/* PromisedPage Annual Membership: hide the status badge */
.ppam-status,
.ppam-status-badge,
.ppam-membership-status {
    display: none !important;
}