.elementor-15728 .elementor-element.elementor-element-213c8261{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-2adfd9d4 *//* ================================
   Sponsors / Partners (MP-aligned)
   - Logos render natively (no SVG fill overrides)
   - Default: stronger soft-grey (blends with MP palette)
   - Hover: subtle FedWed purple ink (tuned hue-rotate 210deg)
   - NO glow (hard disabled)
   - Mobile: forced 2-column grid
   ================================ */

:root{
  --fw-purple: #5f4b8c;

  /* tuned hover filter (your 210deg) */
  --fw-purple-filter:
    brightness(0)
    saturate(100%)
    invert(29%)
    sepia(19%)
    saturate(1860%)
    hue-rotate(210deg)
    brightness(92%)
    contrast(95%);
}

/* Section shell */
.sponsors{
  padding: 5rem 0;
  background: #fafafa;
  border-top: 1px solid #f3f4f6;
  overflow-x: hidden;
}

.sponsors .container{
  padding-left: clamp(1.25rem, 5vw, 3rem);
  padding-right: clamp(1.25rem, 5vw, 3rem);
}

/* Label: match MP vibe */
.sponsors-label{
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 0.75rem;          /* MP is slightly smaller than 0.875 */
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.14em;      /* this is the secret sauce */
  color: #9ca3af;
  text-align: center;
  margin-bottom: 2.5rem;
}

/* Desktop layout */
.sponsors-grid{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 3rem 5rem;

  /* softening like MP, but not washed out */
  opacity: 0.78;
}

/* Logo wrapper */
.sponsors-grid.sponsors-logos .sponsor-logo{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: clamp(56px, 6vw, 80px);
  padding: 0 .5rem;
  text-decoration: none;

  transform: translateY(0);
  transition: transform .25s ease;
}

/* SVG: do NOT override internals */
.sponsors-grid.sponsors-logos .sponsor-logo svg{
  height: 100%;
  width: auto;
  max-width: 300px;
  display: block;

  /* stronger default presence + slight cool bias */
  opacity: 0.92;
  filter: grayscale(100%) brightness(0.92) contrast(0.98) sepia(10%) hue-rotate(215deg) saturate(135%);
  transition: opacity .25s ease, filter .25s ease;
}

/* Hover: quiet + premium */
.sponsors-grid.sponsors-logos .sponsor-logo svg{
  transform: translateZ(0);
  backface-visibility: hidden;
}

.sponsors-grid.sponsors-logos .sponsor-logo:hover svg{
  opacity: 1;
  filter: var(--fw-purple-filter);
}

.sponsors-grid.sponsors-logos .sponsor-logo:hover svg{
  opacity: 1;
  filter: var(--fw-purple-filter) contrast(1.02);
}

/* HARD disable any leftover glow pseudo-element from earlier iterations */
.sponsors-grid.sponsors-logos .sponsor-logo::before{
  content: none !important;
  display: none !important;
}

/* Mobile: force 2 columns */
@media (max-width: 767px){
  .sponsors-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem 1.5rem;
    opacity: 0.85; /* slightly stronger on mobile */
    align-items: center;
  }

  .sponsors-grid.sponsors-logos .sponsor-logo{
    width: 100%;
    height: 44px;
    justify-content: center;
    padding: 0 .25rem;
  }

  .sponsors-grid.sponsors-logos .sponsor-logo svg{
    max-width: 100%;
    height: 44px;
  }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .sponsors-grid.sponsors-logos .sponsor-logo,
  .sponsors-grid.sponsors-logos .sponsor-logo svg{
    transition: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-213c8261 *//* ===== SPONSORS (match MP vibe, but with logos) ===== */
:root{
  --fw-red: #d72e5d;

  /* your tuned hover filter (keep 210deg) */
  --fw-purple-filter:
    brightness(0)
    saturate(100%)
    invert(24%)
    sepia(24%)
    saturate(2300%)
    hue-rotate(210deg)
    brightness(88%)
    contrast(98%);
}

.sponsors{
  padding: 5rem 0;
  background: #fafafa;
  border-top: 1px solid #f3f4f6;
  border-bottom: 1px solid #f3f4f6; /* add this */
  overflow-x: hidden;
}

.sponsors .container{
  padding-left: clamp(1.25rem, 5vw, 3rem);
  padding-right: clamp(1.25rem, 5vw, 3rem);
}

/* Label: match MP typography exactly */
.sponsors-label{
  text-align: center;
  color: #9ca3af;
  font-size: 0.875rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 2.5rem;
}

/* Desktop layout: keep MP flex + spacing */
.sponsors-grid{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 3rem 5rem;

  /* MP softens the whole row */
  opacity: 0.72;
}

/* Logo wrapper */
.sponsors-grid.sponsors-logos .sponsor-logo{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: clamp(56px, 6vw, 80px);
  padding: 0 .5rem;
  text-decoration: none;
  transform: translateY(0);
  transition: transform .25s ease;
}

/* Red glow BELOW */
.sponsors-grid.sponsors-logos .sponsor-logo::before{
  content: "";
  position: absolute;
  left: 50%;
  bottom: -10px;
  transform: translateX(-50%) scale(0.9);
  width: min(220px, 78%);
  height: 16px;
  border-radius: 999px;
  background: rgba(215, 46, 93, 0.55);
  filter: blur(12px);
  opacity: 0;
  transition: opacity .25s ease, transform .25s ease;
  pointer-events: none;
}

/* SVG: visible + slightly “cool” so it harmonizes with MP palette */
.sponsors-grid.sponsors-logos .sponsor-logo svg{
  height: 100%;
  width: auto;
  max-width: 300px;
  display: block;

  /* less pale than before */
  opacity: 0.92;

  /* subtle palette bias (not a full recolor, just “tone”) */
  filter: grayscale(100%) brightness(0.92) contrast(0.98) sepia(10%) hue-rotate(215deg) saturate(135%);
  transition: opacity .25s ease, filter .25s ease;
}

/* Hover */
.sponsors-grid.sponsors-logos .sponsor-logo:hover{
  transform: translateY(-2px);
}

.sponsors-grid.sponsors-logos .sponsor-logo:hover svg{
  opacity: 1;
  filter: var(--fw-purple-filter);
}

.sponsors-grid.sponsors-logos .sponsor-logo:hover::before{
  opacity: 0.35;
  transform: translateX(-50%) scale(1);
}

/* Mobile: force 2 columns */
@media (max-width: 767px){
  .sponsors-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem 1.5rem;
    opacity: 0.78; /* slightly stronger on mobile */
  }

  .sponsors-grid.sponsors-logos .sponsor-logo{
    width: 100%;
    height: 44px;
    justify-content: center;
    padding: 0 .25rem;
  }

  .sponsors-grid.sponsors-logos .sponsor-logo svg{
    max-width: 100%;
    height: 44px;
  }

  .sponsors-grid.sponsors-logos .sponsor-logo::before{
    bottom: -8px;
    height: 14px;
    filter: blur(10px);
  }
}

@media (prefers-reduced-motion: reduce){
  .sponsors-grid.sponsors-logos .sponsor-logo,
  .sponsors-grid.sponsors-logos .sponsor-logo svg,
  .sponsors-grid.sponsors-logos .sponsor-logo::before{
    transition: none !important;
  }
}/* End custom CSS */
/* Start custom CSS */:root{
  --fw-purple: #5f4b8c;
  --fw-red: #d72e5d;
}

/* FedWed text selection */
::selection {
  background: #d72e5d; /* FedWed red – swap to your exact brand hex */
  color: #ffffff;
}

::-moz-selection {
  background: #d72e5d;
  color: #ffffff;
}

body {
  font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}/* End custom CSS */