.testimonials {
  /* Brighter sun-yellow stars (less pastel) */
  --ts-star: #FFD45A;        /* bright but not neon */
  --ts-star-glow: rgba(255, 212, 90, 0.55);

  .testimonials-header {
    margin-bottom: clamp(1.75rem, 3vw, 3.25rem);

    /* HEADLINE (big): The Scoop, From Real People */
    h2 {
      position: relative;
      font-size: clamp(2.1rem, 1.55rem + 1.6vw, 3rem);
      font-weight: 900;
      line-height: 1.12;
      margin-bottom: 0.55rem;
      padding-bottom: 0.9rem;
      color: var(--heading-color);

      &::before {
        content: "";
        position: absolute;
        width: clamp(3.2rem, 6vw, 4.75rem);
        height: 0.22rem;
        background: color-mix(in srgb, var(--accent-alt) 72%, #ffffff 28%);
        bottom: 0;
        left: 0;
        border-radius: 999px;
        box-shadow: 0 10px 18px color-mix(in srgb, var(--accent-alt), transparent 78%);
      }
    }

    /* SUBHEAD (smaller): Consistent routes... */
    p {
      font-size: clamp(1.08rem, 1.02rem + 0.25vw, 1.25rem);
      line-height: 1.55;
      font-weight: 650;
      color: color-mix(in srgb, var(--default-color), transparent 18%);
      max-width: 44rem;
      margin: 0;
    }

    @media (max-width: 61.99875rem) {
      text-align: center;

      h2::before {
        left: 50%;
        transform: translateX(-50%);
      }

      p { margin-inline: auto; }
      .testimonials-controls { margin-top: 1.25rem; justify-content: center; }
    }
  }

  /* Same-size cards + stable layout */
  .testimonial-card {
    min-height: clamp(220px, 18vw, 290px); /* keeps cards even */
    display: flex;
  }

  .testimonial-body {
    display: flex;
    flex-direction: column;
    width: 100%;
  }

  /* Brighter stars + a bit more glow */
  .testimonial-stars {
    margin-bottom: 0.85rem;

    i {
      font-size: clamp(1.15rem, 1.05rem + 0.35vw, 1.45rem);
      color: var(--ts-star);
      filter:
        drop-shadow(0 2px 0 rgba(255, 255, 255, 0.35))
        drop-shadow(0 10px 18px var(--ts-star-glow));
    }
  }

  /* Testimonials: background image layer */
#testimonials.testimonials {
  position: relative;
  overflow: hidden;     /* prevents bg spill */
  isolation: isolate;   /* makes z-index layering predictable */
}

/* the background image */
#testimonials.testimonials > .section-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: center top;

  z-index: 0;
  pointer-events: none;
  display: block;
  opacity: 0.55;        /* tweak */
}

/* keep all section content above the bg */
#testimonials.testimonials > .container {
  position: relative;
  z-index: 1;
}

  /* Clamp quote so long text doesn’t resize cards */
  .testimonial-quote {
    flex: 1;               /* takes remaining space */
    margin: 0.15rem 0 1.1rem 0;

    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4; /* same height across cards */
    overflow: hidden;

    font-size: clamp(1.05rem, 1rem + 0.35vw, 1.28rem);
    line-height: 1.7;
  }

  /* Mobile: allow one more line so it doesn’t feel cramped */
  @media (max-width: 35.99875rem) {
    .testimonial-card { min-height: clamp(210px, 34vw, 280px); }
    .testimonial-quote { -webkit-line-clamp: 5; }
  }
}

/* PRICING — section title sizing (plain CSS, no nesting) */
#pricing.pricing .section-title{
  text-align:left;
  margin-bottom:clamp(1.75rem,3vw,3.25rem);
}

#pricing.pricing .section-title h2{
  position:relative;
  font-size:clamp(2.35rem,1.7rem + 2.2vw,3.35rem);
  font-weight:900;
  line-height:1.05;
  margin:0 0 .5rem 0;
  padding-bottom:.85rem;
  color:var(--heading-color);
}

/* your underline */
#pricing.pricing .section-title h2::before{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:clamp(3rem,6vw,4.5rem);
  height:.28rem;
  border-radius:999px;
  background:color-mix(in srgb,var(--accent-alt),#fff 12%);
}

/* KILL template’s default centered gradient dash */
#pricing.pricing .section-title h2::after,
#pricing.pricing .section-title h2:after{
  content:"" !important;
  display:none !important;
  width:0 !important;
  height:0 !important;
  background:none !important;
  border:0 !important;
  box-shadow:none !important;
}

#pricing.pricing .section-title p{
  font-size:clamp(1.08rem,1rem + .45vw,1.35rem);
  line-height:1.6;
  max-width:48rem;
  margin:0;
  color:color-mix(in srgb,var(--default-color),transparent 20%);
}

/* center on tablet/mobile */
@media (max-width: 991.98px){
  #pricing.pricing .section-title{ text-align:center; }
  #pricing.pricing .section-title h2::before{
    left:50%;
    transform:translateX(-50%);
  }
  #pricing.pricing .section-title p{ margin-inline:auto; }
}

/* PRICING — permanently remove template decoration line(s) */
#pricing.pricing .section-title::before,
#pricing.pricing .section-title::after,
#pricing.pricing .section-title > *::before,
#pricing.pricing .section-title > *::after{
  content:none !important;
  display:none !important;
}

/* PRICING — your underline rebuilt WITHOUT pseudo-elements */
#pricing.pricing .section-title h2{
  position:relative;
  font-size:clamp(2.35rem,1.7rem + 2.2vw,3.35rem);
  font-weight:900;
  line-height:1.05;
  margin:0 0 .5rem 0;
  padding-bottom:.85rem;
  color:var(--heading-color);



#pricing.pricing .section-title p{
  font-size:clamp(1.08rem,1rem + .45vw,2rem)!important;
  line-height:1.6;
  max-width:48rem;
  margin:0;
  color:color-mix(in srgb,var(--default-color),transparent 20%);
}

/* center underline on smaller screens */
@media (max-width: 991.98px){
  #pricing.pricing .section-title{ text-align:center; }
  #pricing.pricing .section-title h2{ background-position:50% 100%; }
  #pricing.pricing .section-title p{ margin-inline:auto; }
}

/* Kill template underline entirely */
#pricing .section-title h2::after{
  content: none !important;
  display: none !important;
}

/* =========================================================
   TESTIMONIAL TYPOGRAPHY + EMPHASIS (FORCE HEADING FONT)
   ========================================================= */

/* Fallback: if --heading-font isn't applied in this scope, force it here */
:root{
  --heading-font: "Paytone One", system-ui, -apple-system, "Segoe UI",
    "Helvetica Neue", Arial, sans-serif;
}

/* 1) Source of truth for “emphasis” color (quotes + <strong>) */
.testimonial-card{
  --testimonial-emphasis: var(--heading-color);
}

/* 2) Testimonial name: heading font + slightly bigger + clamp */
.testimonial-name{
  font-family: "Paytone One", system-ui, -apple-system, "Segoe UI",
    "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 800 !important;
  color: var(--heading-color) !important;
  letter-spacing: .01em !important;
  font-size: clamp(1.05rem, 0.95rem + 0.45vw, 1.2rem) !important;
  line-height: 1.15 !important;
}

/* 3) Quote container + decorative quotation marks */
.testimonial-quote{
  position: relative !important;
  padding-left: .25rem !important;
}

.testimonial-quote::before,
.testimonial-quote::after{
  content: "" !important;
  font-family: "Paytone One", system-ui, -apple-system, "Segoe UI",
    "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
  line-height: 0 !important;
  font-size: 1.15em !important;
  color: var(--testimonial-emphasis) !important;
  opacity: 1 !important;
}

.testimonial-quote::before{ content: "“ " !important; }
.testimonial-quote::after{ content: " ”" !important; }

/* 4) Bolded phrase inside quote: heading font + emphasis color */
.testimonial-card .testimonial-quote strong{
  font-family: "Paytone One", system-ui, -apple-system, "Segoe UI",
    "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
  color: var(--testimonial-emphasis) !important;
}