.sponsors__swiper { width: 100%; overflow: hidden; padding: 10px 0; }
.sponsors__slide {
  display: flex;
  align-items: center;
  justify-content: center;
}
.sponsors__img {
  width: 200px;
  height: auto;
  object-fit: contain;
  display: block;
}

/* STATIC MODE: 3 or fewer sponsors should NOT stretch edge-to-edge */
.sponsors__swiper.is-static .swiper-wrapper {
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 20px !important;           /* adjust spacing here */
  width: auto !important;
  transform: none !important;
}

/* Keep each slide from growing */
.sponsors__swiper.is-static .swiper-slide {
  flex: 0 0 auto !important;
  width: auto !important;
}

/* Center the inline-flex wrapper within the slider container */
.sponsors__swiper.is-static {
  text-align: center !important;
}

/* =========================
   Sponsorship UI (Divi-safe)
   ========================= */

.sp-sponsor {
  margin-top: 2rem;
  width: 100%;
}

/* Header */
.sp-sponsor__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1.5rem;
  margin-bottom: 1rem;
}

.sp-sponsor__eyebrow {
  letter-spacing: .14em;
  text-transform: uppercase;
  opacity: .75;
  margin: 0;
}

.sp-sponsor__title {
  margin: 0;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 40px;
}

/* Chips */
.sp-sponsor__chips {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  margin: 1rem 0 .75rem;
}

.sp-chip {
  border: 1px solid #0C71C3;
  background: #0C71C3;
  color: #ffffff;
  padding: .65rem 1rem;
  font-weight: bold;
  text-transform: uppercase;
  cursor: pointer;
  transition: .3s;
  font-size: 20px;
text-align: center;
}

.sp-chip:hover {
  background: #ffffff;
  color: #0C71C3 !important;
}

.sp-chip.is-active {
  background: #ffffff;
  color: #0C71C3 !important;
}

/* Progress */
.sp-sponsor__progress {
  height: 3px;
  border-radius: 999px;
  background: #cccccc;
  overflow: hidden;
  margin-top: 2.5rem;	
}

.sp-sponsor__bar {
  display: block;
  height: 100%;
  width: 0%;
  background: #0C71C3;
  transition: width .2s ease;
}

/* Swiper area */
.sp-sponsor__slider {
  margin: 1.25rem auto 0;
  overflow: hidden;
}

/* Validator-safe fallback (no min()) */
.sp-sponsor__slider .swiper-slide {
  width: 86vw;
  max-width: 520px;
  padding: 0 .75rem;
}

/* Card (validator-safe fallback padding) */
.sp-card {
  background: #ffffff;
  border: 1px solid #0C71C3;
  padding: 1.35rem;
}

@media (min-width: 768px) {
  .sp-card { padding: 1.6rem; }
}
@media (min-width: 981px) {
  .sp-card { padding: 1.75rem; }
}

.sp-card__top {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
}

.sp-card__name {
  margin: 0;
  font-weight: 900;
  font-size: 30px;
  text-transform: uppercase;
}

.sp-card__name span {
  color: #ff0000;
  font-size: 20px;
}

.sp-card__price {
  margin: 0;
  font-weight: 900;
  color: #0C71C3;
  font-size: 30px;
}

.sp-card__desc {
  margin: .75rem 0 1rem;
  opacity: .9;
  font-size: 16px;
}

.sp-card__list {
  margin: 0;
  padding-left: 1.1rem;
  display: grid;
  gap: .4rem;
    font-size: 20px;
    margin-top: 2rem;
}

@media (max-width: 767px) {
	.sp-card__list {
		font-size: 18px;
	}
}

.sp-card__list li::marker {
  color: #0C71C3;
}

.sp-card__cta {
  margin-top: 1.25rem;
}

.sp-card__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 2rem;
  background: #0C71C3;
  color: #fff !important;
  font-weight: 900;
  text-decoration: none;
  text-transform: uppercase;
  border: 1px solid #0C71C3;
  transition: .3s;
  cursor: pointer;
  font-size: 20px;
  width: 100%;
	text-align: center;
}

@media (max-width: 767px) {
	.sp-card__btn {
		font-size: 18px;
	}
}

.sp-card__btn:hover {
  background: #ffffff;
  color: #0C71C3 !important;
}

/* Desktop: show 1.5 cards nicely */
@media (min-width: 981px) {
  .sp-sponsor__slider .swiper-slide {
    width: 520px;
  }
}

/* Mobile tweaks */
@media (max-width: 767px) {
  .sp-sponsor__head {
    flex-direction: column;
    align-items: flex-start;
  }
	.sp-card__top {
	  flex-direction: column;
	}
   .sp-sponsor__chips {
    flex-direction: column;
  }	
}

/* =========================
   Progressive enhancement
   (nice stuff if supported)
   ========================= */
@supports (width: min(520px, 86vw)) {
  .sp-sponsor__slider .swiper-slide {
    width: min(520px, 86vw);
    max-width: none;
  }
}

@supports (padding: clamp(1rem, 2vw, 2rem)) {
  .sp-card {
    padding: clamp(1.1rem, 2vw, 1.75rem);
  }
}

/* Blur only if supported */
@supports ((-webkit-backdrop-filter: blur(6px)) or (backdrop-filter: blur(6px))) {
  .sp-card {
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
  }
}

/* Remove extra bottom space */
.sp-sponsor__slider,
.sp-sponsor__slider .swiper {
  height: auto !important;
}

.sp-sponsor__slider .swiper-wrapper {
  align-items: stretch;
}

.sp-sponsor__slider .swiper-slide {
  height: auto !important;
  display: flex;
}

.sp-card {
  height: auto;
}

.sp-sponsor .et_pb_row,
.sp-sponsor .et_pb_module {
  margin-bottom: 0 !important;
}

.sp-sponsor {
  padding-bottom: 0 !important;
}

/* FIX: slide/card height getting clipped */
.sp-sponsor__slider {
  overflow-x: hidden !important;
  overflow-y: visible !important; /* allow tall cards */
}

/* Swiper containers can clip height/shadows */
.sp-sponsor__slider .swiper,
.sp-sponsor__slider .swiper-wrapper {
  height: auto !important;
  overflow: visible !important;
  align-items: stretch;
}

/* Let slides grow with content */
.sp-sponsor__slider .swiper-slide {
  height: auto !important;
  align-self: stretch;
}

/* Make the card fill the slide cleanly */
.sp-sponsor__slider .swiper-slide > .sp-card {
  width: 100%;
  height: auto;
}

/* If your card has big shadow, give a little breathing room so it doesn't look clipped */
.sp-sponsor__slider {
  padding-bottom: 24px; /* adjust */
}

/* Ensure list text wraps properly on mobile */
@media (max-width: 767px) {

  .sp-card__list {
    word-break: break-word;
    overflow-wrap: anywhere;
  }

  .sp-card__list li {
    white-space: normal;
  }

}

/* PACKAGE SWIPER: mobile slide width */
.sp-sponsor__slider .swiper-slide{
  width: 86vw;       /* existing fallback */
  max-width: 520px;  /* existing */
}


/* Optional: slightly tighter spacing on mobile so the “.25 card” peek looks better */
@media (max-width: 767px){
  .sp-sponsor__slider .swiper-slide{
    padding: 0 .5rem; /* was .75rem */
  }
}

/* ✅ Let slides keep natural heights (no stretching) */
.sp-sponsor__slider .swiper-wrapper{
  align-items: flex-start !important; /* was stretch */
}

/* ✅ Don’t force slide/card to fill height */
.sp-sponsor__slider .swiper-slide{
  height: auto !important;
  display: block !important; /* remove flex stretch behavior */
}

.sp-card{
  height: auto !important;   /* remove any height:100% */
}

.disabled-link {
    pointer-events: none;
    cursor: default;
    opacity: 0.5; 
}.sponsors__swiper { width: 100%; overflow: hidden; padding: 10px 0; }
.sponsors__slide {
  display: flex;
  align-items: center;
  justify-content: center;
}
.sponsors__img {
  width: 200px;
  height: auto;
  object-fit: contain;
  display: block;
}

/* STATIC MODE: 3 or fewer sponsors should NOT stretch edge-to-edge */
.sponsors__swiper.is-static .swiper-wrapper {
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 20px !important;           /* adjust spacing here */
  width: auto !important;
  transform: none !important;
}

/* Keep each slide from growing */
.sponsors__swiper.is-static .swiper-slide {
  flex: 0 0 auto !important;
  width: auto !important;
}

/* Center the inline-flex wrapper within the slider container */
.sponsors__swiper.is-static {
  text-align: center !important;
}

/* =========================
   Sponsorship UI (Divi-safe)
   ========================= */

.sp-sponsor {
  margin-top: 2rem;
  width: 100%;
}

/* Header */
.sp-sponsor__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1.5rem;
  margin-bottom: 1rem;
}

.sp-sponsor__eyebrow {
  letter-spacing: .14em;
  text-transform: uppercase;
  opacity: .75;
  margin: 0;
}

.sp-sponsor__title {
  margin: 0;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 40px;
}

/* Chips */
.sp-sponsor__chips {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  margin: 1rem 0 .75rem;
}

.sp-chip {
  border: 1px solid #0C71C3;
  background: #0C71C3;
  color: #ffffff;
  padding: .65rem 1rem;
  font-weight: bold;
  text-transform: uppercase;
  cursor: pointer;
  transition: .3s;
  font-size: 20px;
text-align: center;
}

.sp-chip:hover {
  background: #ffffff;
  color: #0C71C3 !important;
}

.sp-chip.is-active {
  background: #ffffff;
  color: #0C71C3 !important;
}

/* Progress */
.sp-sponsor__progress {
  height: 3px;
  border-radius: 999px;
  background: #cccccc;
  overflow: hidden;
  margin-top: 2.5rem;	
}

.sp-sponsor__bar {
  display: block;
  height: 100%;
  width: 0%;
  background: #0C71C3;
  transition: width .2s ease;
}

/* Swiper area */
.sp-sponsor__slider {
  margin: 1.25rem auto 0;
  overflow: hidden;
}

/* Validator-safe fallback (no min()) */
.sp-sponsor__slider .swiper-slide {
  width: 86vw;
  max-width: 520px;
  padding: 0 .75rem;
}

/* Card (validator-safe fallback padding) */
.sp-card {
  background: #ffffff;
  border: 1px solid #0C71C3;
  padding: 1.35rem;
}

@media (min-width: 768px) {
  .sp-card { padding: 1.6rem; }
}
@media (min-width: 981px) {
  .sp-card { padding: 1.75rem; }
}

.sp-card__top {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
}

.sp-card__name {
  margin: 0;
  font-weight: 900;
  font-size: 30px;
  text-transform: uppercase;
}

.sp-card__price {
  margin: 0;
  font-weight: 900;
  color: #0C71C3;
  font-size: 30px;
}

.sp-card__desc {
  margin: .75rem 0 1rem;
  opacity: .9;
  font-size: 16px;
}

.sp-card__list {
  margin: 0;
  padding-left: 1.1rem;
  display: grid;
  gap: .4rem;
    font-size: 20px;
    margin-top: 2rem;
}

@media (max-width: 767px) {
	.sp-card__list {
		font-size: 18px;
	}
}

.sp-card__list li::marker {
  color: #0C71C3;
}

.sp-card__cta {
  margin-top: 1.25rem;
}

.sp-card__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 2rem;
  background: #0C71C3;
  color: #fff !important;
  font-weight: 900;
  text-decoration: none;
  text-transform: uppercase;
  border: 1px solid #0C71C3;
  transition: .3s;
  cursor: pointer;
  font-size: 20px;
  width: 100%;
	text-align: center;
}

@media (max-width: 767px) {
	.sp-card__btn {
		font-size: 18px;
	}
}

.sp-card__btn:hover {
  background: #ffffff;
  color: #0C71C3 !important;
}

/* Desktop: show 1.5 cards nicely */
@media (min-width: 981px) {
  .sp-sponsor__slider .swiper-slide {
    width: 520px;
  }
}

/* Mobile tweaks */
@media (max-width: 767px) {
  .sp-sponsor__head {
    flex-direction: column;
    align-items: flex-start;
  }
	.sp-card__top {
	  flex-direction: column;
	}
   .sp-sponsor__chips {
    flex-direction: column;
  }	
}

/* =========================
   Progressive enhancement
   (nice stuff if supported)
   ========================= */
@supports (width: min(520px, 86vw)) {
  .sp-sponsor__slider .swiper-slide {
    width: min(520px, 86vw);
    max-width: none;
  }
}

@supports (padding: clamp(1rem, 2vw, 2rem)) {
  .sp-card {
    padding: clamp(1.1rem, 2vw, 1.75rem);
  }
}

/* Blur only if supported */
@supports ((-webkit-backdrop-filter: blur(6px)) or (backdrop-filter: blur(6px))) {
  .sp-card {
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
  }
}

/* Remove extra bottom space */
.sp-sponsor__slider,
.sp-sponsor__slider .swiper {
  height: auto !important;
}

.sp-sponsor__slider .swiper-wrapper {
  align-items: stretch;
}

.sp-sponsor__slider .swiper-slide {
  height: auto !important;
  display: flex;
}

.sp-card {
  height: auto;
}

.sp-sponsor .et_pb_row,
.sp-sponsor .et_pb_module {
  margin-bottom: 0 !important;
}

.sp-sponsor {
  padding-bottom: 0 !important;
}

/* FIX: slide/card height getting clipped */
.sp-sponsor__slider {
  overflow-x: hidden !important;
  overflow-y: visible !important; /* allow tall cards */
}

/* Swiper containers can clip height/shadows */
.sp-sponsor__slider .swiper,
.sp-sponsor__slider .swiper-wrapper {
  height: auto !important;
  overflow: visible !important;
  align-items: stretch;
}

/* Let slides grow with content */
.sp-sponsor__slider .swiper-slide {
  height: auto !important;
  align-self: stretch;
}

/* Make the card fill the slide cleanly */
.sp-sponsor__slider .swiper-slide > .sp-card {
  width: 100%;
  height: auto;
}

/* If your card has big shadow, give a little breathing room so it doesn't look clipped */
.sp-sponsor__slider {
  padding-bottom: 24px; /* adjust */
}

/* Ensure list text wraps properly on mobile */
@media (max-width: 767px) {

  .sp-card__list {
    word-break: break-word;
    overflow-wrap: anywhere;
  }

  .sp-card__list li {
    white-space: normal;
  }

}

/* PACKAGE SWIPER: mobile slide width */
.sp-sponsor__slider .swiper-slide{
  width: 86vw;       /* existing fallback */
  max-width: 520px;  /* existing */
}


/* Optional: slightly tighter spacing on mobile so the “.25 card” peek looks better */
@media (max-width: 767px){
  .sp-sponsor__slider .swiper-slide{
    padding: 0 .5rem; /* was .75rem */
  }
}

/* ✅ Let slides keep natural heights (no stretching) */
.sp-sponsor__slider .swiper-wrapper{
  align-items: flex-start !important; /* was stretch */
}

/* ✅ Don’t force slide/card to fill height */
.sp-sponsor__slider .swiper-slide{
  height: auto !important;
  display: block !important; /* remove flex stretch behavior */
}

.sp-card{
  height: auto !important;   /* remove any height:100% */
}

/* FORCE packages swiper to show 1 slide only */
.sp-sponsor__slider.swiper {
  overflow: hidden;
}

/* The key: remove any fixed/min/max widths that cause multiple cards */
.sp-sponsor__slider.swiper .swiper-slide {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  padding: 0 !important; /* optional: remove slide padding spacing */
  box-sizing: border-box;
}

/* If you need spacing, do it on the card instead of slide padding */
.sp-sponsor__slider.swiper .sp-card {
  width: 100%;
}

/*SNS PACKAGES*/
/* =========================
   Sponsorship UI (Divi-safe)
   ========================= */

.sns-packages .sp-sponsor {
  margin-top: 2rem;
  width: 100%;
}

/* Header */
.sns-packages .sp-sponsor__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1.5rem;
  margin-bottom: 1rem;
}

.sns-packages .sp-sponsor__eyebrow {
  letter-spacing: .14em;
  text-transform: uppercase;
  opacity: .75;
  margin: 0;
}

.sns-packages .sp-sponsor__title {
  margin: 0;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 40px;
}

/* Chips */
.sns-packages .sp-sponsor__chips {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  margin: 1rem 0 .75rem;
}

.sns-packages .sp-chip {
  border: 1px solid #000000;
  background: #000000;
  color: #ffffff;
  padding: .65rem 1rem;
  font-weight: bold;
  text-transform: uppercase;
  cursor: pointer;
  transition: .3s;
  font-size: 20px;
text-align: center;
}

.sns-packages .sp-chip:hover {
  background: #ffffff;
  color: #000000 !important;
}

.sns-packages .sp-chip.is-active {
  background: #ffffff;
  color: #000000 !important;
}

/* Progress */
.sns-packages .sp-sponsor__progress {
  height: 3px;
  border-radius: 999px;
  background: #cccccc;
  overflow: hidden;
  margin-top: 2.5rem;	
}

.sns-packages .sp-sponsor__bar {
  display: block;
  height: 100%;
  width: 0%;
  background: #474747;
  transition: width .2s ease;
}

/* Swiper area */
.sns-packages .sp-sponsor__slider {
  margin: 1.25rem auto 0;
  overflow: hidden;
}

/* Validator-safe fallback (no min()) */
.sns-packages .sp-sponsor__slider .swiper-slide {
  width: 86vw;
  max-width: 520px;
  padding: 0 .75rem;
}

/* Card (validator-safe fallback padding) */
.sns-packages .sp-card {
  background: #ffffff;
  border: 1px solid #474747;
  padding: 1.35rem;
}

@media (min-width: 768px) {
  .sns-packages .sp-card { padding: 1.6rem; }
}
@media (min-width: 981px) {
  .sns-packages .sp-card { padding: 1.75rem; }
}

.sns-packages .sp-card__top {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
}

.sns-packages .sp-card__name {
  margin: 0;
  font-weight: 900;
  font-size: 30px;
  text-transform: uppercase;
}

.sns-packages .sp-card__price {
  margin: 0;
  font-weight: 900;
  color: #474747;
  font-size: 30px;
}

.sns-packages .sp-card__desc {
  margin: .75rem 0 1rem;
  opacity: .9;
  font-size: 16px;
}

.sns-packages .sp-card__list {
  margin: 0;
  padding-left: 1.1rem;
  display: grid;
  gap: .4rem;
    font-size: 20px;
    margin-top: 2rem;
}

@media (max-width: 767px) {
	.sns-packages .sp-card__list {
		font-size: 18px;
	}
}

.sns-packages .sp-card__list li::marker {
  color: #474747;
}

.sns-packages .sp-card__cta {
  margin-top: 1.25rem;
}

.sns-packages .sp-card__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 2rem;
  background: #000000;
  color: #fff !important;
  font-weight: 900;
  text-decoration: none;
  text-transform: uppercase;
  border: 1px solid #000000;
  transition: .3s;
  cursor: pointer;
  font-size: 20px;
  width: 100%;
	text-align: center;
}

@media (max-width: 767px) {
	.sns-packages .sp-card__btn {
		font-size: 18px;
	}
}

.sns-packages .sp-card__btn:hover {
  background: #ffffff;
  color: #474747 !important;
}

/* Desktop: show 1.5 cards nicely */
@media (min-width: 981px) {
  .sns-packages .sp-sponsor__slider .swiper-slide {
    width: 520px;
  }
}

/* Mobile tweaks */
@media (max-width: 767px) {
  .sns-packages .sp-sponsor__head {
    flex-direction: column;
    align-items: flex-start;
  }
	.sns-packages .sp-card__top {
	  flex-direction: column;
	}
   .sns-packages .sp-sponsor__chips {
    flex-direction: column;
  }	
}

/* =========================
   Progressive enhancement
   (nice stuff if supported)
   ========================= */
@supports (width: min(520px, 86vw)) {
  .sns-packages .sp-sponsor__slider .swiper-slide {
    width: min(520px, 86vw);
    max-width: none;
  }
}

@supports (padding: clamp(1rem, 2vw, 2rem)) {
  .sns-packages .sp-card {
    padding: clamp(1.1rem, 2vw, 1.75rem);
  }
}

/* Blur only if supported */
@supports ((-webkit-backdrop-filter: blur(6px)) or (backdrop-filter: blur(6px))) {
  .sns-packages .sp-card {
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
  }
}

/* Remove extra bottom space */
.sns-packages .sp-sponsor__slider,
.sns-packages .sp-sponsor__slider .swiper {
  height: auto !important;
}

.sns-packages .sp-sponsor__slider .swiper-wrapper {
  align-items: stretch;
}

.sns-packages .sp-sponsor__slider .swiper-slide {
  height: auto !important;
  display: flex;
}

.sns-packages .sp-card {
  height: auto;
}

.sns-packages .sp-sponsor .et_pb_row,
.sns-packages .sp-sponsor .et_pb_module {
  margin-bottom: 0 !important;
}

.sns-packages .sp-sponsor {
  padding-bottom: 0 !important;
}

/* FIX: slide/card height getting clipped */
.sns-packages .sp-sponsor__slider {
  overflow-x: hidden !important;
  overflow-y: visible !important; /* allow tall cards */
}

/* Swiper containers can clip height/shadows */
.sns-packages .sp-sponsor__slider .swiper,
.sns-packages .sp-sponsor__slider .swiper-wrapper {
  height: auto !important;
  overflow: visible !important;
  align-items: stretch;
}

/* Let slides grow with content */
.sns-packages .sp-sponsor__slider .swiper-slide {
  height: auto !important;
  align-self: stretch;
}

/* Make the card fill the slide cleanly */
.sns-packages .sp-sponsor__slider .swiper-slide > .sp-card {
  width: 100%;
  height: auto;
}

/* If your card has big shadow, give a little breathing room so it doesn't look clipped */
.sns-packages .sp-sponsor__slider {
  padding-bottom: 24px; /* adjust */
}

/* Ensure list text wraps properly on mobile */
@media (max-width: 767px) {

  .sns-packages .sp-card__list {
    word-break: break-word;
    overflow-wrap: anywhere;
  }

  .sns-packages .sp-card__list li {
    white-space: normal;
  }

}

/* PACKAGE SWIPER: mobile slide width */
.sns-packages .sp-sponsor__slider .swiper-slide{
  width: 86vw;       /* existing fallback */
  max-width: 520px;  /* existing */
}


/* Optional: slightly tighter spacing on mobile so the “.25 card” peek looks better */
@media (max-width: 767px){
  .sns-packages .sp-sponsor__slider .swiper-slide{
    padding: 0 .5rem; /* was .75rem */
  }
}

/* ✅ Let slides keep natural heights (no stretching) */
.sns-packages .sp-sponsor__slider .swiper-wrapper{
  align-items: flex-start !important; /* was stretch */
}

/* ✅ Don’t force slide/card to fill height */
.sns-packages .sp-sponsor__slider .swiper-slide{
  height: auto !important;
  display: block !important; /* remove flex stretch behavior */
}

.sns-packages .sp-card{
  height: auto !important;   /* remove any height:100% */
}

/* FORCE packages swiper to show 1 slide only */
.sns-packages .sp-sponsor__slider.swiper {
  overflow: hidden;
}

/* The key: remove any fixed/min/max widths that cause multiple cards */
.sns-packages .sp-sponsor__slider.swiper .swiper-slide {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  padding: 0 !important; /* optional: remove slide padding spacing */
  box-sizing: border-box;
}

/* If you need spacing, do it on the card instead of slide padding */
.sns-packages .sp-sponsor__slider.swiper .sp-card {
  width: 100%;
}