/* Rating stars, refined headline emphasis and flat button styling */
.hero {
  position: relative;
  isolation: isolate;
}

.hero::before,
.hero::after {
  display: none !important;
}

.hero-copy,
.hero-visual {
  position: relative;
  z-index: 1;
}

.hero h1 {
  position: relative;
  display: block;
  max-width: 780px;
  padding-bottom: 0;
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  color: #2d0f1f !important;
  text-shadow: none !important;
  animation: none !important;
}

.hero h1::before,
.hero h1::after {
  content: none !important;
  display: none !important;
}

.hero-highlight,
.hero-highlight-years {
  display: inline;
  padding: 0;
  margin: 0;
  border-radius: 0;
  color: #f28c00 !important;
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  -webkit-text-fill-color: #f28c00 !important;
  box-shadow: none !important;
  text-shadow: none !important;
  transform: none !important;
  animation: none !important;
}

.hero-subtitle {
  position: relative;
}

.hero-subtitle::after {
  content: none !important;
  display: none !important;
}

.cta,
.cta-secondary,
.cta-outline,
.cta-soft,
.cta-gold,
.cta-glow {
  border: 0 !important;
  border-radius: 5px !important;
  background: #5a1b78 !important;
  color: #fff !important;
  box-shadow: none !important;
}

.cta:hover,
.cta-secondary:hover,
.cta-outline:hover,
.cta-soft:hover,
.cta-gold:hover,
.cta-glow:hover {
  background: #6b2490 !important;
  color: #fff !important;
  box-shadow: none !important;
  transform: translateY(-1px);
}

.cta::after {
  color: #fff !important;
}

.comment-card.notification-card {
  position: relative;
  overflow: hidden;
}

.comment-card.notification-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 10% 12%, rgba(255, 194, 71, 0.22), transparent 13%),
    radial-gradient(circle at 92% 18%, rgba(255, 79, 135, 0.12), transparent 18%);
  opacity: 0.8;
}

.comment-rating {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: fit-content;
  margin: 5px 0 8px;
  padding: 5px 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(255, 248, 242, 0.98), rgba(255, 240, 245, 0.96));
  border: 1px solid rgba(255, 194, 71, 0.5);
  box-shadow: none;
  color: #7a003c;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
}

.comment-rating-stars {
  display: inline-flex;
  align-items: center;
  gap: 1px;
  color: #ffc247;
  text-shadow: none;
}

.comment-rating .star {
  position: relative;
  display: inline-block;
  width: 14px;
  color: #ffc247;
}

.comment-rating .star.empty,
.comment-rating .star.half {
  color: rgba(122, 0, 60, 0.16);
  text-shadow: none;
}

.comment-rating .star.half::before {
  content: "★";
  position: absolute;
  inset: 0 auto 0 0;
  width: 50%;
  overflow: hidden;
  color: #ffc247;
  text-shadow: none;
}

.comment-rating-score {
  color: #7a003c;
  white-space: nowrap;
}

@media (max-width: 720px) {
  .hero-highlight,
  .hero-highlight-years {
    display: inline;
  }

  .comment-rating {
    font-size: 12px;
    padding: 5px 8px;
  }
}
