.fundbridge-home {
  padding: 20px;
  background: #f0f4ff;
  border-radius: 12px;
  text-align: center;
  font-family: 'Montserrat', sans-serif;
}
.fundbridge-home h1 {
  font-size: 2rem;
  margin-bottom: 10px;
}
.fundbridge-home p {
  font-size: 1rem;
  color: #444;
}

/*––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
1) Hide the built‑in breadcrumb/banner container
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––*/
.custom-breadcrumb.text-light.text-left.show-bg {
  display: none !important;
}

/*––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
2) Hero section (using your master‑styles variables)
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––*/
.fundbridge-hero {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;

 min-height: 600px !important;
  padding: 6rem 1.25rem !important; 

  /* 2) Remove extra padding so the BG truly spans edge‑to‑edge */
  /*padding: 0 !important;*/

  /* 3) Keep your background image exactly the same */
  background: url('/wp-content/uploads/2025/04/unfocused-waiting-room-with-stairs-scaled.jpg')
              center/cover no-repeat;
  
  color: var(--master-color-text);
  font-family: var(--master-font-body);
}

.fundbridge-hero::before {
  content: "";
  position: absolute;
  inset: 0;     /* shorthand for top:0; right:0; bottom:0; left:0; */
  z-index: 1;


}

.fundbridge-home {
  background: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

/*--------------------------------------------------------------
3) Remove that little “corner” shape on the buttons
   (it’s coming from a ::before/::after on the Elementor button)
--------------------------------------------------------------*/
.fundbridge-hero .btn-filled::before,
.fundbridge-hero .btn-filled::after,
.fundbridge-hero .btn-outline::before,
.fundbridge-hero .btn-outline::after {
  display: none !important;
  content: none !important;
}

.hero-inner {
  position: relative;
  z-index: 2;
  max-width: 900px;
  text-align: center;
  font-family: var(--master-font-header);
}

/* Sub‑headline */
.hero-inner h3 {
  font-style: italic;
  font-weight: 400;
  font-size: var(--master-size-h2);
  letter-spacing: var(--master-letter-h2);
  margin-bottom: 0.5rem;
  color: var(--master-color-text);
}

/* Main headline */
.hero-inner h1 {
  font-size: var(--master-size-h1);
  letter-spacing: var(--master-letter-h1);
  font-weight: 500;
  line-height: 1.3;
  margin-bottom: 2rem;
  color: var(--master-color-text);
}

/* Buttons wrapper */
.hero-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;                               /* 20px */
  justify-content: center;
  margin-bottom: 2rem;
}

/* Button base */
.hero-buttons .btn {
  font-family: var(--master-font-header);
  font-size: var(--master-size-btn);
  letter-spacing: var(--master-letter-btn);
  font-weight: var(--master-weight-btn);
  text-transform: uppercase;
  padding: 0.75em 1.5em;
  border-radius: 0.375rem;                    /* 6px */
  cursor: pointer;
  transition: background-color 0.3s;
  text-decoration: none;
}

/*––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
Override any leftover purple on the hero buttons
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––*/

/* Primary “Start a Campaign” button */
.fundbridge-hero .btn-filled {
  background-color: var(--master-color-main) !important;
  color:            var(--master-color-white) !important;
  border:           none !important;
}

/* Hover state */
.fundbridge-hero .btn-filled:hover {
  background-color: var(--master-color-dark) !important;
}

/* Secondary “Explore Campaigns” button */
.fundbridge-hero .btn-outline {
  background:       transparent !important;
  border:           2px solid var(--master-color-main) !important;
  color:            var(--master-color-main) !important;
}

/* Hover state */
.fundbridge-hero .btn-outline:hover {
  background-color: var(--master-color-main) !important;
  color:            var(--master-color-white) !important;
}

/* Sub‑text under buttons */
.hero-subtext {
  font-size: var(--master-size-body);
  letter-spacing: var(--master-letter-body);
  max-width: 700px;
  margin: 0 auto;
  line-height: 1.6;
  color: var(--master-color-text);
}

/*────────────────────────────────────────────────────────────────────────
Hero full‑width “breakout” helper
────────────────────────────────────────────────────────────────────────*/
.fundbridge-hero {
  /* Force 100% of the viewport width */
  width: 100vw !important;
  /* Shift it left by half the viewport minus half its parent’s width */
  position: relative;
  left: 50%;
  margin-left: -50vw;
  margin-right: -50vw;

  /* Keep your full‑screen height */
  /*min-height: 100vh !important;*/
  /*padding: 0 !important;*/
}


/* “What Is FUNDBRIDGE?” wrapper */
/* Container centering */
/*--------------------------------------------------------------
SECTION + INNER WRAPPER
--------------------------------------------------------------*/
.fundbridge-info .inner {
  max-width: 900px;
  margin: 0 auto;
  /*padding: 2rem 1rem;*/
}

/* Title */
/*.fundbridge-info-title {*/
/*  display: flex;*/
/*  justify-content: center;*/
/*  align-items: center;*/
/*  gap: 0.0rem;*/
/*  font-family: var(--master-font-header);*/
/*  font-size: var(--master-size-h2);*/
/*  color: var(--master-color-text);*/
/*  margin-bottom: 0;*/
/*}*/
/*.fundbridge-logo {*/
/*  height: 2.5rem;*/
/*  vertical-align: middle;*/
/*  display: inline-block;*/
  /*margin-bottom: 0.5rem;*/
/*}*/

/*.fundbridge-info-title {*/
/*  display: flex;*/
/*  justify-content: center;*/
/*  align-items: center;*/
/*  gap: 0.0rem;*/
/*  font-family: var(--master-font-header);*/
/*  font-size: var(--master-size-h2);*/
/*  color: var(--master-color-text);*/
/*  margin-bottom: 0;*/
  /*flex-wrap: wrap; */
/*  text-align: center;*/
/*}*/

/*.fundbridge-logo {*/
/*  height: 2.5rem;*/
/*  vertical-align: middle;*/
/*  display: inline-block;*/
/*  margin-bottom: 0.3rem;*/
/*}*/

/*@media (max-width: 767px) {*/
/*  .fundbridge-info-title {*/
/*    flex-direction: column;*/
    /*gap: 0.5rem; */
/*  }*/
  
/*  .text-words,*/
/*  .fundbridge-logo,*/
/*  .text-question {*/
/*    display: block;*/
/*  }*/
/*}*/


.fundbridge-info-title {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.0rem;
  flex-wrap: nowrap;
  font-family: var(--master-font-header);
  font-size: var(--master-size-h2);
  color: var(--master-color-text);
  text-align: center;
  margin-bottom: 0;
}

.fundbridge-info-title span,
.fundbridge-info-title .logo-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}

.fundbridge-logo {
  height: 2.5rem;
  margin-bottom: 0.3rem;
  margin-left: -0.5rem;
  margin-right: -0.9rem;
}

.logo-wrapper {
  gap: 0.2rem;
}

@media (max-width: 767px) {
  .fundbridge-info-title {
    flex-direction: column;
    flex-wrap: wrap;
    gap: 0.5rem;
  }

  .text-words {
    width: 100%; /* ensure "What Is" stretches full width to center */
  }

  .logo-wrapper {
    justify-content: center;
    width: 100%;
  }
}



/*--------------------------------------------------------------
RIBBON BACKGROUND (full‑bleed)
--------------------------------------------------------------*/
.steps-ribbon {
  width: 100%;
  background-color: var(--master-color-lighter);
  padding: 3rem 0;
  margin: 2rem 0;
}
.steps-ribbon .inner {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 1rem;
}

/*--------------------------------------------------------------
SECTION WRAPPER
--------------------------------------------------------------*/
/*.fundbridge-info {*/
  /*background-color: var(--master-color-bg);*/
/*  padding: 6rem 1rem;*/
/*}*/
/*.fundbridge-info .inner {*/
/*  max-width: 1100px;*/
/*  margin: 0 auto;*/
/*  text-align: center;*/
/*}*/

/* Title */
/*.fundbridge-info-title {*/
/*  display: inline-flex;*/
/*  align-items: center;*/
/*  gap: 0.5rem;*/
/*  font-family: var(--master-font-header);*/
/*  font-size: var(--master-size-h2);*/
/*  color: var(--master-color-text);*/
/*}*/
/*.fundbridge-logo {*/
/*  height: 2.5rem;*/
/*}*/

/*--------------------------------------------------------------
STEP CARDS ROW
--------------------------------------------------------------*/
.step-cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2rem;
  /*margin-top: 3rem;*/
  list-style: none;
  padding: 0;
}

/* Individual Card */
.step-card {
  background: #ffffff;
  border-radius: 12px;
  padding: 2.5rem 1.5rem 1.5rem;
  flex: 1 1 calc(33% - 2rem);
  box-shadow: 0 2px 10px rgba(0,0,0,0.05);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Gradient Number Circle */
.step-number {
  width: 64px;
  height: 64px;
  margin: 0 auto 1rem;
  border-radius: 50%;
  background: linear-gradient(135deg,
    var(--master-color-main),
    var(--master-color-light)
  );
  color: #ffffff;
  font-family: var(--master-font-header);
  font-size: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Step Title */
.step-card h3 {
  font-family: var(--master-font-header);
  font-size: 1.25rem;
  letter-spacing: 0.05em;
  color: var(--master-color-darker);
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}

/* Step Description */
.step-card p {
  font-family: var(--master-font-body);
  font-size: var(--master-size-body);
  color: var(--master-color-text);
  line-height: 1.6;
}

/* Hover Effect */
.step-card:hover {
  transform: translateY(-6px) scale(1.02);
  box-shadow: 0 8px 20px rgba(0,0,0,0.1);
}

/* Mobile Adjust */
@media (max-width: 768px) {
  .step-card {
    flex: 1 1 100%;
  }
}



/*-----------------------------------
  1) SECTION WRAPPER
-----------------------------------*/
.category-explorer {
  background-color: var(--master-color-white);
  padding: 5rem 1rem;
}
.category-explorer .inner {
  max-width: 1100px;
  margin: 0 auto;
  text-align: center;
}

/*-----------------------------------
  2) SECTION TITLE
-----------------------------------*/
.section-title {
  font-family: var(--master-font-header);
  font-size: 1.75rem;
  letter-spacing: 0.05em;
  color: var(--master-color-text);
  margin-bottom: 2.5rem;
}

/*-----------------------------------
  3) GRID: 4 FIXED COLS ON DESKTOP, 2 ON MOBILE
-----------------------------------*/
.category-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
}

/* Tablet breakpoint: 2 columns */
@media (max-width: 768px) {
  .category-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Mobile (single column) */
@media (max-width: 480px) {
  .category-grid {
    grid-template-columns: 1fr;
  }
}

/*-----------------------------------
  4) CARD
-----------------------------------*/
.category-grid li a {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: var(--master-color-bg);    /* soft tint */
  border-radius: 12px;
  padding: 2rem 1rem;
  min-height: 200px;                     /* uniform height */
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
  text-decoration: none;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/*-----------------------------------
  5) ICON WRAPPER
-----------------------------------*/
.icon-wrapper {
  width: 72px;
  height: 72px;
  border: 2px solid var(--master-color-main);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
  background: var(--master-color-white);
  overflow: hidden;
}
.icon-wrapper img {
  max-width: 60%;
  max-height: 60%;
}
.icon-fallback {
  font-family: var(--master-font-header);
  font-size: 1.5rem;
  color: var(--master-color-main);
}

/*-----------------------------------
  6) LABEL
-----------------------------------*/
.label {
  margin-top: auto; /* push to bottom if content short */
  font-family: var(--master-font-body);
  font-size: var(--master-size-body);
  color: var(--master-color-text);
  text-align: center;
  line-height: 1.4;
}

/*-----------------------------------
  7) HOVER STATES
-----------------------------------*/
.category-grid li a:hover {
  transform: translateY(-6px) scale(1.03);
  box-shadow: 0 8px 20px rgba(0,0,0,0.12);
}
.category-grid li a:hover .icon-wrapper {
  border-color: var(--master-color-dark);
}
/*────────────────────────────────────────────────────────
  1) Container & Card
────────────────────────────────────────────────────────*/
.fundbridge-contact {
  background: var(--master-color-lightest);
  padding: 4rem 1rem;
}
.fundbridge-contact .inner {
  max-width: 600px;        /* tighter for forms */
  margin: 0 auto;
}
.contact-card {
  background: var(--master-color-white);
  padding: 2rem;
  border-radius: 0.75rem;
  box-shadow: 0 8px 24px rgba(0,0,0,0.05);
}

/*────────────────────────────────────────────────────────
  2) Headings & Intro (unchanged)
────────────────────────────────────────────────────────*/
.contact-header h2 {
  font-family: var(--master-font-header);
  font-size: var(--master-size-h2);
  color: var(--master-color-darker);
  margin-bottom: 1rem;
  text-align: center;
}
.contact-header p {
  font-size: var(--master-size-body);
  line-height: 1.6;
  margin-bottom: 2.5rem;
  text-align: center;
}

/*────────────────────────────────────────────────────────
  3) Form Layout – simplified
────────────────────────────────────────────────────────*/
/* undo the grid on the whole form */
.contact-card .wpforms-form {
  display: block;
}


/* last bit – submit button stays centered */
.contact-card .wpforms-submit-container {
  text-align: center;
  margin-top: 1.5rem;
}



/*────────────────────────────────────────────────────────
  5) Submit Button
────────────────────────────────────────────────────────*/
.contact-card .wpforms-submit-container {
  text-align: center;
  margin-top: 1.5rem;
}
.contact-card .wpforms-submit {
  background: var(--master-color-main) !important;
  border: none !important;
  color: var(--master-color-white) !important;
  font-family: var(--master-font-header);
  font-size: var(--master-size-btn);
  padding: 0.75rem 2.5rem !important;
  border-radius: 0.375rem !important;
  cursor: pointer;
  transition: background 0.2s ease;
}
.contact-card .wpforms-submit:hover {
  background: var(--master-color-dark) !important;
}



/*────────────────────────────────────────────────────────
  5) Center the submit button
────────────────────────────────────────────────────────*/
.contact-card .wpforms-submit-container {
  text-align: center !important;
  margin-top: 1.5rem !important;
}



/*=============================================
  FEATURED CAMPAIGNS SECTION
=============================================*/
.featured-campaigns {
  /*background-color: var(--master-color-bg);*/
  padding: 4rem 1rem;
}

.featured-campaigns .inner {
  max-width: 1100px;
  margin: 0 auto;
}

.featured-campaigns .section-title {
  font-family:     var(--master-font-header);
  font-size:       1.75rem;
  letter-spacing:  0.05em;
  color:           var(--master-color-text);
  margin-bottom:   2rem;
  text-align:      center;
}

/* If the carousel itself spits out a wrapper, e.g. .campaign-carousel,
   you can ensure it stretches full width of your “inner”: */
.featured-campaigns .campaign-carousel {
  width: 100%;
  /* any extra tweaks, e.g. spacing between slides: */
}

/* Optional: tweak slide cards so they have a bit of breathing room */
.featured-campaigns .campaign-carousel .slick-slide > * {
  padding: 0 0.5rem;
  box-sizing: border-box;
}

/* If you need to override slick’s dots/arrows styling: */
.featured-campaigns .slick-dots li button:before {
  color: var(--master-color-main);
  opacity: 0.6;
}
.featured-campaigns .slick-dots li.slick-active button:before {
  opacity: 1;
}







/*────────────────────────────────────────────────────────
  Tighter vertical rhythm between your homepage sections
────────────────────────────────────────────────────────*/

/*────────────────────────────────────────────────────────
  Uniform 1 rem vertical spacing between all sections
────────────────────────────────────────────────────────*/
.fundbridge-home,
.fundbridge-hero,
.fundbridge-info,
.steps-ribbon,
.category-explorer,
.featured-campaigns,
.fundbridge-contact {
  /* 1 rem top & bottom padding */
  padding-top:    1rem !important;
  padding-bottom: 1rem !important;
  
  /* 1 rem gap below each section */
  margin-bottom:  1rem !important;
}



/* 1) Make all labels block-level and left-aligned */
.fundbridge-contact .contact-card .wpcf7-form label {
  display: block;
  margin-bottom: 0.5rem;
  text-align: left;
}

/* 2) Ensure inputs & textarea fill the width of their columns */


/* 3) Center the submit button (just in case) */
.fundbridge-contact .contact-card .wpcf7-form .wpcf7-submit {
  display: inline-block;    /* makes centering via text-align work */
  margin-top: 1.5rem;
}

.wpcf7-spinner {
  /* remove the inline‐block flow and the gap */
  display: none !important;
  margin: 0 !important;
  
  /* keep these if you ever want it back, otherwise you can drop them */
  /* visibility: hidden; */
  /* background-color: #23282d; */
  /* opacity: 0.75; */
  /* width: 24px; */
  /* height: 24px; */
  /* border-radius: 100%; */
}
