/* =========================================================
   BusinessLoanBrokers.com — Secondary Pages Stylesheet
   ========================================================= */

/* ─── Page Hero Variants ─────────────────────────────────── */
.page-hero-teal {
  background: linear-gradient(160deg, #fff 0%, #f0fdfa 60%, #ccfbf1 100%);
}

.page-hero-indigo {
  background: linear-gradient(160deg, #fff 0%, var(--blue-50) 60%, var(--blue-100) 100%);
}

.page-hero-purple {
  background: linear-gradient(160deg, #fff 0%, #f5f3ff 60%, #ede9fe 100%);
}

/* Label / pill inside a purple hero — purple-tinted background + border */
.page-hero-purple .hero-label {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  font-size: .8125rem;
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #7c3aed;
  background: #f5f3ff;
  border: 1px solid #ddd6fe;
  padding: .35rem .9rem;
  border-radius: 9999px;
  margin-bottom: 1rem;
}

/* Primary (filled) button */
.page-hero-purple .btn-primary {
  background: #7c3aed;
  color: #fff;
  box-shadow: 0 4px 24px rgba(124,58,237,.35);
  border: none;
}
.page-hero-purple .btn-primary:hover {
  background: #6d28d9;
  box-shadow: 0 12px 40px rgba(124,58,237,.4);
  transform: translateY(-1px);
}

/* Outline button */
.page-hero-purple .btn-outline {
  background: transparent;
  color: #7c3aed;
  border: 2px solid #7c3aed;
}
.page-hero-purple .btn-outline:hover {
  background: #f5f3ff;
  border-color: #6d28d9;
  color: #6d28d9;
}

/* H1 gradient span — matches the index2.html hero text-gradient */
.page-hero-purple h1 .text-gradient {
  background: linear-gradient(135deg, var(--blue-500), #7B4FE0);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* ─── Dark Hero (navy gradient — used on credit/brand pages) ─ */
.page-hero--dark {
  background: linear-gradient(90deg, #F8FBFF 0%, #F2F5F9 100%);
  padding: clamp(3rem, 8vw, 5rem) 0;
  text-align: center;
  position: relative;
  overflow: hidden;
  border-bottom: none;
}
.page-hero--dark::before { display: none; }
.page-hero--dark .container { position: relative; z-index: 1; }
.page-hero--dark h1 {
  font-family: var(--font-display);
  font-size: clamp(2.25rem, 5vw, 3.75rem);
  font-weight: 600;
  color: #10172b;
  line-height: 1.15;
  margin: 0 auto 1.25rem;
  position: relative;
}
.page-hero--dark h1 em,
.page-hero--dark h1 span {
  font-style: normal;
  background: linear-gradient(135deg, var(--blue-500), #7B4FE0);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.page-hero--dark p {
  font-size: 1.1rem;
  color: #8892a1;
  max-width: 600px;
  margin: 0 auto 2.5rem;
  line-height: 1.75;
  position: relative;
}
.page-hero--dark .section-chip {
  background: #f0f2f5;
  color: #485266;
  border-color: #d8dce3;
  margin-bottom: 1.25rem;
  display: inline-flex;
}
.hero-actions,
.hero-cta-group {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
  position: relative;
}

/* Chip — neutral pill used across light-bg heroes and section headers */
.chip {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  background: #f0f2f5;
  border: 1px solid #d8dce3;
  color: #485266;
  font-family: var(--font-display);
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
  padding: .35rem .9rem;
  border-radius: 99px;
  margin-bottom: 1.25rem;
}
/* Legacy scoped selectors — now handled by base .chip above */
.page-hero--dark .chip, .cs-hero .chip { /* inherits from .chip */ }

/* ─── Dark Hero Button Styles ─────────────────────────────── */
.btn-indigo {
  background: #2563eb;
  color: #fff;
  border: none;
  padding: .875rem 2rem;
  border-radius: 99px;
  font-weight: 600;
  font-size: 1rem;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  text-decoration: none;
  transition: background .2s, transform .2s;
  cursor: pointer;
}
.btn-indigo:hover { background: #1d4ed8; transform: translateY(-2px); }

.btn-ghost-white {
  background: transparent;
  color: #2563eb;
  border: 1.5px solid #2563eb;
  padding: .875rem 2rem;
  border-radius: 99px;
  font-weight: 600;
  font-size: 1rem;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  text-decoration: none;
  transition: border-color .2s, color .2s, background .2s;
  cursor: pointer;
}
.btn-ghost-white:hover { border-color: #1d4ed8; color: #1d4ed8; background: rgba(37,99,235,.06); }

/* ─── Funding List (checklist items in content body) ─────── */
.funding-list {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: .65rem;
  margin: .5rem 0 1.5rem;
}

.funding-list li {
  display: flex;
  align-items: flex-start;
  gap: .75rem;
  font-size: .9375rem;
  color: var(--gray-700);
  line-height: 1.55;
}

.funding-list li i {
  font-size: .875rem;
  margin-top: .2rem;
  flex-shrink: 0;
}

/* ─── Sidebar Boxes (Fundability Checklist + shared) ─────── */
.sidebar-cta-box {
  background: linear-gradient(160deg, var(--blue-700), var(--blue-900));
  border-radius: var(--radius-xl);
  padding: 1.75rem 1.5rem;
  color: #fff;
}

.sidebar-cta-box h4 {
  font-family: var(--font-display);
  font-size: 1.125rem;
  font-weight: 600;
  color: #fff;
  margin-bottom: .625rem;
}

.sidebar-cta-box p {
  font-size: .9rem;
  color: rgba(255,255,255,.75);
  line-height: 1.6;
  margin-bottom: 1.25rem;
}

.sidebar-info-box {
  background: var(--gray-50);
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: 1.5rem;
}

.sidebar-info-box h4 {
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 600;
  color: var(--gray-800);
  margin-bottom: 1rem;
}

.sidebar-link-list {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: .25rem;
}

.sidebar-link-list li a {
  display: flex;
  align-items: center;
  gap: .6rem;
  font-size: .9rem;
  color: var(--blue-600);
  text-decoration: none;
  padding: .45rem .5rem;
  border-radius: var(--radius-md);
  transition: background var(--transition-fast), color var(--transition-fast);
}

.sidebar-link-list li a:hover {
  background: var(--blue-50);
  color: var(--blue-700);
}

.sidebar-link-list li a i {
  font-size: .75rem;
  color: var(--blue-400);
  flex-shrink: 0;
}

/* ─── How We Help — dark wrapper for credit-steps ────────── */
.how-we-help-section {
  padding: var(--section-py) 0;
  background: linear-gradient(160deg, var(--navy-900), var(--blue-900));
}

.how-we-help-section .section-chip {
  background: rgba(255,255,255,.1);
  color: rgba(255,255,255,.85);
  border-color: rgba(255,255,255,.15);
}

.how-we-help-section .section-title {
  color: #fff;
}

.how-we-help-section .section-subtitle {
  color: rgba(255,255,255,.65);
}

/* ─── Funding Solutions Page ─────────────────────────────── */
.products-section {
  padding: var(--section-py) 0;
  background: #fff;
}

.products-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}

@media (min-width: 640px)  { .products-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .products-grid { grid-template-columns: repeat(3, 1fr); } }

.product-card {
  background: var(--gray-50);
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: .875rem;
  transition: all var(--transition-base);
}

.product-card:hover {
  background: #fff;
  box-shadow: var(--shadow-xl);
  transform: translateY(-4px);
  border-color: var(--blue-200);
}

.product-icon {
  width: 52px; height: 52px;
  border-radius: var(--radius-lg);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
}

.product-card h5 {
  font-family: var(--font-display);
  font-weight: 500;
  color: var(--gray-900);
  line-height: 1.25;
}

.product-card p {
  font-size: .9rem;
  color: var(--gray-500);
  line-height: 1.65;
  flex: 1;
}

.product-details {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  background: var(--gray-100);
  border-radius: var(--radius-md);
  padding: 1rem;
  margin: .25rem 0;
}

.product-details li {
  display: flex;
  justify-content: space-between;
  font-size: .8125rem;
}

.product-details li span { color: var(--gray-400); }
.product-details li strong { color: var(--gray-700); }

/* ─── Compare Table ──────────────────────────────────────── */
.compare-section {
  padding: var(--section-py) 0;
  background: var(--gray-50);
}

.compare-table-wrap {
  overflow-x: auto;
  border-radius: var(--radius-xl);
  border: 1.5px solid var(--color-border);
}

.compare-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  background: #fff;
  font-family: 'Inter', sans-serif;
  font-size: 14px;
}

.compare-table thead {
  background: linear-gradient(145deg, #1e40af, #2563eb);
  color: #fff;
}

.compare-table th {
  padding: 1rem 1.25rem;
  text-align: left;
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
  overflow-wrap: break-word;
  word-break: break-word;
}

.compare-table td {
  padding: .875rem 1.25rem;
  border-bottom: 1px solid var(--gray-100);
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  color: var(--gray-600);
  overflow-wrap: break-word;
  word-break: break-word;
}

.compare-table tbody tr:last-child td { border-bottom: none; }
.compare-table tbody tr:hover { background: var(--blue-50); }
.compare-table td:nth-child(1) { font-weight: 600; color: var(--gray-900); }
.compare-table td strong { color: var(--gray-900); font-weight: 600; }

.speed-badge {
  display: inline-flex;
  align-items: center;
  padding: .2rem .65rem;
  border-radius: var(--radius-full);
  font-size: .75rem;
  font-weight: 500;
}

.speed-badge.fast   { background: #dcfce7; color: #166534; }
.speed-badge.medium { background: #fef3c7; color: #92400e; }
.speed-badge.slow   { background: var(--blue-50); color: var(--blue-700); }

/* ─── Credit Building Page ───────────────────────────────── */
.why-credit-section {
  padding: var(--section-py) 0;
  background: #fff;
}

.credit-benefits-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}

@media (min-width: 640px)  { .credit-benefits-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .credit-benefits-grid { grid-template-columns: repeat(3, 1fr); } }

.credit-benefit-card {
  background: #fff;
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: 1.75rem;
  transition: all var(--transition-base);
}

.credit-benefit-card:hover {
  background: #fff;
  box-shadow: var(--shadow-lg);
  transform: translateY(-3px);
}

.benefit-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
  color: #9333ea;
  flex-shrink: 0;
}

.credit-benefit-card .card-header {
  display: flex;
  align-items: center;
  gap: .65rem;
  margin-bottom: 1rem;
}

.credit-benefit-card h5 {
  font-family: var(--font-display);
  font-weight: 500;
  color: var(--gray-900);
  margin-bottom: 0;
}

.credit-benefit-card p {
  font-size: .875rem;
  color: var(--gray-500);
  line-height: 1.6;
}

/* ─── How Credit Works ───────────────────────────────────── */
.how-credit-section {
  padding: var(--section-py) 0;
  background: linear-gradient(160deg, var(--navy-900), var(--blue-900));
}

.credit-steps {
  max-width: 760px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.credit-step {
  display: flex;
  gap: 1.5rem;
  align-items: flex-start;
  position: relative;
  padding-bottom: 2.5rem;
}

.credit-step:last-child { padding-bottom: 0; }

.credit-step::before {
  content: '';
  position: absolute;
  left: 20px;
  top: 44px;
  bottom: 0;
  width: 2px;
  background: rgba(255,255,255,.1);
}

.credit-step:last-child::before { display: none; }

.cs-num {
  width: 42px; height: 42px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--blue-500), var(--teal-400));
  color: #fff;
  font-family: var(--font-display);
  font-size: .9rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}

.cs-content h5 {
  font-family: var(--font-display);
  font-weight: 500;
  color: #fff;
  margin-bottom: .4rem;
}

.cs-content p {
  font-size: .9rem;
  color: rgba(255,255,255,.55);
  line-height: 1.65;
}

/* ─── Fundability Platform ───────────────────────────────── */
.fundability-section {
  padding: var(--section-py) 0;
  background: var(--gray-50);
}

.fundability-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
}

@media (min-width: 1024px) {
  .fundability-grid { grid-template-columns: 1fr 1fr; }
}

.fundability-content h2 {
  font-family: var(--font-display);
  font-weight: 500;
  color: var(--gray-900);
  margin-bottom: 1rem;
  line-height: 1.2;
}

.fundability-content p {
  color: var(--gray-500);
  line-height: 1.7;
  margin-bottom: 1rem;
}

.fundability-features {
  display: flex;
  flex-direction: column;
  gap: .65rem;
  margin-top: 1.5rem;
}

.fundability-features li {
  display: flex;
  align-items: center;
  gap: .65rem;
  font-size: .9375rem;
  color: var(--gray-700);
}

.fundability-features li i { color: var(--color-success); font-size: .875rem; }

/* Platform Mockup */
.platform-mockup {
  background: #fff;
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-xl);
  border: 1.5px solid var(--gray-200);
  overflow: hidden;
}

.mockup-header {
  background: var(--gray-800);
  padding: .875rem 1.25rem;
  display: flex;
  align-items: center;
  gap: .75rem;
}

.mockup-dots { display: flex; gap: .4rem; }
.mockup-dots span {
  width: 10px; height: 10px;
  border-radius: 50%;
}
.mockup-dots span:nth-child(1) { background: #ef4444; }
.mockup-dots span:nth-child(2) { background: #f59e0b; }
.mockup-dots span:nth-child(3) { background: #22c55e; }

.mockup-title {
  font-size: .8125rem;
  color: rgba(255,255,255,.5);
  font-weight: 500;
}

.mockup-body { padding: 1.5rem; }

.mockup-score-row {
  display: flex;
  gap: 1rem;
  margin-bottom: 1.5rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid var(--gray-100);
}

.mockup-score-item { flex: 1; text-align: center; }
.ms-label { font-size: .7rem; color: var(--gray-400); font-weight: 600; letter-spacing: .04em; text-transform: uppercase; margin-bottom: .25rem; }
.ms-value { font-family: var(--font-display); font-size: 2rem; font-weight: 500; line-height: 1; margin-bottom: .2rem; }
.ms-up { font-size: .75rem; color: var(--color-success); font-weight: 600; }

.mockup-progress-list { display: flex; flex-direction: column; gap: .875rem; }

.mpl-item {
  display: grid;
  grid-template-columns: 1fr 2fr auto;
  align-items: center;
  gap: .75rem;
  font-size: .8125rem;
  color: var(--gray-600);
}

.mpl-bar {
  height: 8px;
  background: var(--gray-100);
  border-radius: var(--radius-full);
  overflow: hidden;
}

.mpl-fill {
  height: 100%;
  border-radius: var(--radius-full);
  transition: width 1s ease;
}

.mpl-pct { font-weight: 700; color: var(--gray-700); font-size: .8rem; }

/* ─── About Page ─────────────────────────────────────────── */
.about-mission-section {
  padding: var(--section-py) 0;
  background: #fff;
}

.about-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
}

@media (min-width: 1024px) {
  .about-grid { grid-template-columns: 1fr 1fr; }
}

.about-content h2 {
  font-family: var(--font-display);
  font-weight: 500;
  color: var(--gray-900);
  line-height: 1.25;
  margin-bottom: 1.25rem;
}

.about-content p {
  color: var(--gray-500);
  line-height: 1.75;
  margin-bottom: .875rem;
}

.about-stats-panel {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

.about-stat {
  background: var(--blue-50);
  border: 1px solid var(--blue-100);
  border-radius: var(--radius-xl);
  padding: 1.5rem;
  text-align: center;
}

.as-value {
  font-family: var(--font-display);
  font-size: 1.75rem;
  font-weight: 500;
  color: var(--blue-700);
  margin-bottom: .3rem;
}

.as-label {
  font-size: .8rem;
  font-weight: 600;
  color: var(--gray-500);
}

.about-values-section {
  padding: var(--section-py) 0;
  background: linear-gradient(160deg, var(--navy-900), var(--blue-900));
}

.values-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}

@media (min-width: 640px)  { .values-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .values-grid { grid-template-columns: repeat(4, 1fr); } }

.value-card {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: var(--radius-xl);
  padding: 2rem;
  text-align: center;
  transition: all var(--transition-base);
}

.value-card:hover {
  background: rgba(255,255,255,.1);
  transform: translateY(-3px);
}

.value-icon {
  width: 52px; height: 52px;
  background: rgba(255,255,255,.1);
  border-radius: var(--radius-lg);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.3rem;
  color: var(--teal-400);
  margin: 0 auto 1.25rem;
}

.value-card h4 {
  font-family: var(--font-display);
  font-weight: 500;
  color: #fff;
  margin-bottom: .5rem;
}

.value-card p {
  font-size: .875rem;
  color: rgba(255,255,255,.55);
  line-height: 1.6;
}

.about-background-section {
  padding: var(--section-py) 0;
  background: var(--gray-50);
}

.background-content-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: start;
}

@media (min-width: 1024px) {
  .background-content-grid { grid-template-columns: 1fr 1fr; }
}

.background-content-grid h2 {
  font-family: var(--font-display);
  font-weight: 500;
  color: var(--gray-900);
  margin-bottom: 1rem;
}

.background-content-grid p {
  color: var(--gray-500);
  line-height: 1.75;
  margin-bottom: .875rem;
}

.about-partner-panel {
  background: #fff;
  border-radius: var(--radius-xl);
  border: 1.5px solid var(--color-border);
  padding: 2rem;
  box-shadow: var(--shadow-md);
}

.about-partner-panel h4 {
  font-family: var(--font-display);
  font-weight: 500;
  color: var(--gray-900);
  margin-bottom: 1.5rem;
}

.partner-list { display: flex; flex-direction: column; gap: 1.25rem; }

.partner-row {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
}

.partner-icon-wrap {
  width: 38px; height: 38px;
  background: var(--blue-50);
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--blue-600);
  font-size: .9rem;
  flex-shrink: 0;
}

.partner-row strong { display: block; font-size: .9rem; color: var(--gray-800); }
.partner-row span { font-size: .8125rem; color: var(--gray-400); }

/* ─── Resources Page ─────────────────────────────────────── */
.resources-page-section {
  padding: var(--section-py) 0;
  background: #fff;
}

.resource-filters {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-bottom: 2.5rem;
}

.filter-btn {
  padding: .5rem 1.1rem;
  border-radius: var(--radius-full);
  font-size: .875rem;
  font-weight: 600;
  color: var(--gray-600);
  background: var(--gray-100);
  border: 1.5px solid var(--gray-200);
  transition: all var(--transition-fast);
}

.filter-btn:hover { background: var(--blue-50); color: var(--blue-700); border-color: var(--blue-200); }
.filter-btn.active { background: var(--blue-600); color: #fff; border-color: var(--blue-600); }

.resources-page-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}

@media (min-width: 640px)  { .resources-page-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .resources-page-grid { grid-template-columns: repeat(3, 1fr); } }

.resource-page-card {
  background: var(--gray-50);
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: .75rem;
  transition: all var(--transition-base);
}

.resource-page-card:hover {
  background: #fff;
  box-shadow: var(--shadow-lg);
  transform: translateY(-3px);
  border-color: var(--blue-200);
}

.featured-resource {
  background: var(--blue-50);
  border-color: var(--blue-200);
  border-top: 4px solid var(--blue-600);
}

@media (min-width: 1024px) {
  .featured-resource { grid-column: span 2; }
}

.rpc-category {
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--blue-600);
}

.resource-page-card h4 {
  font-family: var(--font-display);
  font-size: 1.125rem; /* 18px */
  font-weight: 500;
  color: var(--gray-900);
  line-height: 1.35;
}

.featured-resource h4 {
  font-size: 1.625rem; /* restore global h4 size for featured card */
}

.resource-page-card p {
  font-size: .875rem;
  color: var(--gray-500);
  line-height: 1.65;
  flex: 1;
}

.rpc-meta {
  display: flex;
  gap: .875rem;
  font-size: .75rem;
  color: var(--gray-400);
}

.rpc-meta span { display: flex; align-items: center; gap: .3rem; }

.rpc-badge {
  background: #fef3c7;
  color: #92400e;
  padding: .15rem .5rem;
  border-radius: var(--radius-full);
  font-weight: 600;
}

.resource-link {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  font-size: .875rem;
  font-weight: 600;
  color: var(--blue-600);
  transition: gap var(--transition-fast);
}

.resource-link:hover { gap: .65rem; }

/* Author + date row on resource cards */
.rpc-author {
  display: flex;
  align-items: center;
  gap: .6rem;
  margin-top: .25rem;
}

.rpc-author img {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  border: 2px solid #fff;
  box-shadow: 0 0 0 1.5px var(--gray-200);
}

.rpc-author-info {
  display: flex;
  align-items: center;
  gap: .4rem;
  flex-wrap: wrap;
  font-size: .775rem;
  color: var(--gray-500);
}

.rpc-author-info strong {
  color: var(--gray-700);
  font-weight: 600;
}

.rpc-author-sep {
  color: var(--gray-300);
}

.resource-link:hover { gap: .65rem; }

/* ─── Blog Pagination ────────────────────────────────────── */
.blog-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .4rem;
  margin-top: 3rem;
  flex-wrap: wrap;
}

.page-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.375rem;
  height: 2.375rem;
  padding: 0 .75rem;
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-md);
  background: #fff;
  color: var(--gray-600);
  font-size: .875rem;
  font-weight: 500;
  font-family: var(--font-body);
  cursor: pointer;
  transition: all var(--transition-fast);
  line-height: 1;
}

.page-btn:hover:not(:disabled):not(.active) {
  border-color: var(--blue-500);
  color: var(--blue-600);
  background: var(--blue-50, #eff6ff);
}

.page-btn.active {
  background: var(--blue-600);
  border-color: var(--blue-600);
  color: #fff;
  font-weight: 700;
  pointer-events: none;
}

.page-btn.disabled,
.page-btn:disabled {
  opacity: .4;
  cursor: default;
}

.page-prev,
.page-next {
  font-size: .8rem;
  color: var(--gray-500);
}

.page-ellipsis {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.375rem;
  height: 2.375rem;
  color: var(--gray-400);
  font-size: .875rem;
  user-select: none;
}

/* Case Studies Callout */
.case-studies-callout {
  padding: var(--section-py) 0;
  background: var(--gray-50);
  border-top: 1px solid var(--color-border);
}

.cs-callout-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
}

@media (min-width: 1024px) {
  .cs-callout-grid { grid-template-columns: 1.5fr 1fr; }
}

.cs-callout-content h2 {
  font-family: var(--font-display);
  font-weight: 500;
  color: var(--gray-900);
  margin-bottom: 1rem;
}

.cs-callout-content p {
  color: var(--gray-500);
  line-height: 1.7;
  margin-bottom: 1.75rem;
}

.cs-link-group { display: flex; flex-wrap: wrap; gap: .875rem; }

.cs-callout-stats {
  background: #fff;
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  box-shadow: var(--shadow-md);
}

.csc-stat strong {
  display: block;
  font-family: var(--font-display);
  font-size: 1.375rem;
  font-weight: 500;
  color: var(--blue-700);
}

.csc-stat span {
  font-size: .8125rem;
  color: var(--gray-400);
}

/* ─── Contact Page ───────────────────────────────────────── */
.contact-section {
  padding: var(--section-py) 0;
  background: #fff;
}

.contact-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
}

@media (min-width: 1024px) {
  .contact-grid { grid-template-columns: 1.5fr 1fr; }
}

.contact-form-wrap {
  background: #fff;
  border-radius: var(--radius-xl);
  padding: clamp(1.5rem, 4vw, 2.5rem);
  border: 1.5px solid var(--color-border);
  box-shadow: var(--shadow-md);
}

.contact-form-wrap h2 {
  font-family: var(--font-display);
  font-weight: 500;
  color: var(--gray-900);
  margin-bottom: .4rem;
}

.form-subtitle {
  font-size: .9rem;
  color: var(--gray-500);
  margin-bottom: 2rem;
}

.contact-form {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.form-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}

@media (min-width: 500px) {
  .form-row { grid-template-columns: 1fr 1fr; }
}

.form-group {
  display: flex;
  flex-direction: column;
  gap: .35rem;
}

.form-group label {
  font-size: .8125rem;
  font-weight: 600;
  color: var(--gray-700);
}

.form-group input,
.form-group select,
.form-group textarea {
  padding: .7rem .9rem;
  border: 1.5px solid var(--gray-200);
  border-radius: var(--radius-md);
  font-size: .9375rem;
  color: var(--gray-800);
  background: var(--gray-50);
  transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
  width: 100%;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
  outline: none;
  border-color: var(--blue-500);
  box-shadow: 0 0 0 3px rgba(59,130,246,.15);
  background: #fff;
}

.form-group input.field-error,
.form-group select.field-error {
  border-color: #ef4444;
  box-shadow: 0 0 0 3px rgba(239,68,68,.12);
}

.form-group textarea { resize: vertical; min-height: 100px; }

.interest-checks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-auto-flow: column;
  grid-template-rows: repeat(3, auto);
  gap: .5rem .75rem;
  margin-top: .25rem;
}

.check-label {
  display: flex;
  align-items: center;
  gap: .6rem;
  font-size: .9rem;
  color: var(--gray-600);
  cursor: pointer;
}

.check-label input { width: auto; accent-color: var(--blue-600); }

.form-disclaimer {
  font-size: .78rem;
  color: var(--gray-400);
  line-height: 1.55;
}

.form-disclaimer a { color: var(--blue-500); text-decoration: underline; }

.form-success {
  display: none;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 3rem 1.5rem;
  gap: .75rem;
}

.form-success i { font-size: 3.5rem; color: var(--color-success); }
.form-success h4 { font-family: var(--font-display); font-weight: 500; color: var(--gray-900); }
.form-success p { color: var(--gray-500); }
.form-success a { color: var(--blue-600); text-decoration: underline; }

/* ─── Contact Sidebar ────────────────────────────────────── */
.contact-sidebar {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  justify-content: space-between;
  align-self: stretch;
}

.sidebar-card {
  background: #fff;
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: 1.75rem;
  box-shadow: var(--shadow-sm);
}

.sidebar-card h5 {
  font-family: var(--font-display);
  font-weight: 500;
  color: var(--gray-900);
  margin-bottom: 1.25rem;
}

.sidebar-checklist {
  display: flex;
  flex-direction: column;
  gap: .65rem;
}

.sidebar-checklist li {
  display: flex;
  align-items: center;
  gap: .6rem;
  font-size: .875rem;
  color: var(--gray-600);
}

.sidebar-checklist li i { color: var(--color-success); font-size: .8rem; }

.contact-info-card { border-top: 3px solid var(--blue-600); }

.contact-info-list {
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
}

.ci-item {
  display: flex;
  gap: .875rem;
  align-items: center;
}

.ci-icon {
  width: 36px; height: 36px;
  background: var(--blue-50);
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--blue-600);
  font-size: .875rem;
  flex-shrink: 0;
}

.ci-label { display: block; font-size: .7rem; font-weight: 600; color: var(--gray-400); letter-spacing: .04em; text-transform: uppercase; }
.ci-val { display: block; font-size: .9rem; font-weight: 600; color: var(--gray-800); }
.ci-val a { color: var(--gray-800); }
.ci-val a:hover { color: var(--blue-600); }

.testimonial-mini-card {
  background: var(--blue-50);
  border-color: var(--blue-100);
}

.tmini-stars { display: flex; gap: .2rem; color: #facc15; font-size: .8rem; margin-bottom: .875rem; }
.testimonial-mini-card blockquote { font-size: .875rem; color: var(--gray-700); font-style: italic; line-height: 1.65; margin-bottom: .75rem; }
.testimonial-mini-card cite { font-size: .8rem; font-weight: 600; color: var(--blue-700); font-style: normal; }

/* Trust Bullets */
.trust-bullets-card {
  background: #f8f9fb;
  border-color: #e2e6ed;
  padding: 1.25rem 1.5rem;
}
.trust-bullets-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: .85rem;
}
.trust-bullets-list li {
  display: flex;
  align-items: center;
  gap: .6rem;
  font-size: .95rem;
  font-weight: 600;
  color: #3d4a5c;
}
.trust-bullets-list li i {
  color: #2563eb;
  font-size: 1rem;
  width: 1.1rem;
  text-align: center;
}

/* ─── Individual Funding Pages ───────────────────────────── */

/* Breadcrumb */
.page-breadcrumb {
  display: flex;
  align-items: center;
  gap: .5rem;
  font-size: .8125rem;
  color: rgba(255,255,255,.65);
  margin-bottom: 1.25rem;
  flex-wrap: wrap;
}
.page-breadcrumb a { color: rgba(255,255,255,.75); text-decoration: none; }
.page-breadcrumb a:hover { color: #fff; text-decoration: underline; }
.page-breadcrumb i { font-size: .65rem; color: rgba(255,255,255,.4); }

/* Page hero — chip spacing */
.page-hero .section-chip {
  background: var(--blue-50);
  border: 1px solid var(--blue-100);
  margin-bottom: 1rem;
}

/* Hero CTA group */
.hero-cta-group {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 2rem;
  justify-content: center;
  align-items: center;
}

/* Stats strip */
.funding-stats-section {
  padding: 3rem 0;
  background: var(--gray-50);
  border-bottom: 1.5px solid var(--color-border);
}

.funding-stats-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
}

@media (min-width: 768px) { .funding-stats-grid { grid-template-columns: repeat(4, 1fr); } }

.funding-stat-card {
  background: #fff;
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: 1.5rem 1.25rem;
  text-align: center;
  box-shadow: var(--shadow-sm);
  display: flex;
  flex-direction: column;
  align-items: center;
}

.stat-icon {
  width: 48px; height: 48px;
  border-radius: var(--radius-lg);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.15rem;
  margin: 0 auto .875rem;
}

.stat-value {
  font-family: var(--font-display);
  font-size: 1.35rem;
  font-weight: 500;
  color: var(--gray-900);
  line-height: 1.1;
  margin-bottom: .875rem;
}

.funding-stat-card .stat-value {
  margin-top: .875rem;
  margin-bottom: .7rem;
}

.funding-stat-card .stat-label {
  font-size: .8rem;
  color: var(--gray-500);
  line-height: 1.4;
}

/* Content + Sidebar layout */
.funding-content-section {
  padding: var(--section-py) 0;
  background: #fff;
}

.funding-content-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
}

@media (min-width: 1024px) {
  .funding-content-grid { grid-template-columns: 1fr 340px; }
}

.funding-main-content h2 {
  font-family: var(--font-display);
  font-size: 2rem; /* 32px */
  font-weight: 500;
  color: var(--gray-900);
  margin: 2rem 0 .875rem;
  line-height: 1.25;
}

.funding-main-content h2:first-child { margin-top: 0; }

.funding-main-content h3 {
  font-family: var(--font-display);
  font-size: 1.175rem;
  font-weight: 600;
  color: var(--gray-800);
  margin: 1.75rem 0 .625rem;
  line-height: 1.3;
}

.funding-main-content p {
  color: var(--gray-600);
  line-height: 1.75;
  margin-bottom: 1rem;
}

/* Numbered steps */
.funding-steps {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin: 1rem 0 1.5rem;
  padding: 0;          /* kill browser ol default padding-left */
  margin-left: 0;      /* kill any inherited indent */
  list-style: none;
}

.funding-steps li {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
  padding: 0;
}

/* Scoped specifically to funding steps so it wins over style.css .step-num */
.funding-steps .step-num {
  width: 44px;
  height: 44px;
  min-width: 44px;
  background: #dbeafe;
  color: #2563eb;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-weight: 900;
  font-size: 1.25rem;
  flex-shrink: 0;
  line-height: 1;
  margin: 0;
  box-shadow: none;
}

.funding-steps li > div {
  display: flex;
  flex-direction: column;
  min-width: 0;        /* allow text to wrap inside flex container */
}

.funding-steps li > div strong {
  display: block;
  font-weight: 500;
  color: var(--gray-900);
  font-size: 1rem;
  line-height: 1.3;
  margin-bottom: .35rem;
}

.funding-steps li > div p {
  margin: 0;
  font-size: .9rem;
  color: var(--gray-600);
  line-height: 1.65;
}

/* Checklist */
.funding-checklist {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: .65rem;
  margin: .5rem 0 1.5rem;
}

.funding-checklist li {
  display: flex;
  align-items: flex-start;
  gap: .75rem;
  font-size: 1rem;
  color: rgb(71, 85, 105);
  line-height: 1.5;
}

.funding-checklist li i {
  color: var(--color-success, #16a34a);
  font-size: .875rem;
  margin-top: .35rem;
  flex-shrink: 0;
}

/* Industry tags */
.industry-tags {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-top: .5rem;
}

.industry-tags span {
  background: var(--blue-50);
  color: var(--blue-700);
  border: 1px solid var(--blue-200);
  border-radius: var(--radius-full);
  padding: .3rem .875rem;
  font-size: .8125rem;
  font-weight: 600;
}

/* Sidebar */
.funding-sidebar {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.sidebar-fact-list {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.sidebar-fact-list li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: .625rem 0;
  border-bottom: 1px solid var(--gray-100);
  font-size: .875rem;
}

.sidebar-fact-list li:last-child { border-bottom: none; }
.sidebar-fact-list li span { color: var(--gray-400); }
.sidebar-fact-list li strong { color: var(--gray-800); font-weight: 600; }

.sidebar-card-alt {
  background: var(--blue-50);
  border-color: var(--blue-200);
}

.sidebar-card h3 { font-size: 1.125rem; /* 18px */ font-weight: 500; }
.sidebar-card-alt h3 { color: var(--blue-900); }
.sidebar-card-alt p { font-size: .9rem; color: var(--blue-800); line-height: 1.6; margin-bottom: 1rem; }

.sidebar-related-list {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: .5rem;
}

.sidebar-related-list li a {
  display: flex;
  align-items: center;
  gap: .6rem;
  font-size: .9rem;
  color: var(--blue-600);
  text-decoration: none;
  padding: .4rem .5rem;
  border-radius: var(--radius-md);
  transition: background var(--transition-fast);
}

.sidebar-related-list li a:hover {
  background: var(--blue-50);
  color: var(--blue-700);
}

.sidebar-related-list li a i {
  font-size: .875rem;
  width: 20px;
  text-align: center;
  color: var(--blue-400);
}

/* btn-outline */
.btn-outline {
  border: 2px solid var(--color-primary);
  color: var(--color-primary);
  background: transparent;
}
.btn-outline:hover {
  background: var(--blue-50);
}

.btn-full { width: 100%; justify-content: center; text-align: center; display: flex; }

/* Pros/Cons grid */
.pros-cons-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  margin: 1rem 0 1.5rem;
}
@media (min-width: 640px) { .pros-cons-grid { grid-template-columns: 1fr 1fr; } }

.pros-card, .cons-card {
  background: var(--gray-50);
  border-radius: var(--radius-lg);
  padding: 1.25rem;
  border: 1.5px solid var(--color-border);
}

.pros-card { border-top: 3px solid #16a34a; }
.cons-card { border-top: 3px solid #dc2626; }

.pros-card h4 { color: #166534; font-weight: 700; margin-bottom: .75rem; }
.cons-card h4 { color: #991b1b; font-weight: 700; margin-bottom: .75rem; }

.pros-card ul, .cons-card ul {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: .5rem;
}

.pros-card ul li, .cons-card ul li {
  font-size: .875rem;
  color: var(--gray-600);
  display: flex;
  align-items: flex-start;
  gap: .5rem;
  line-height: 1.5;
}

.pros-card ul li::before { content: "✓"; color: #16a34a; font-weight: 700; flex-shrink: 0; }
.cons-card ul li::before { content: "✗"; color: #dc2626; font-weight: 700; flex-shrink: 0; }

/* FAQ section */
.faq-section {
  padding: var(--section-py) 0;
  background: var(--gray-50);
}

.faq-list {
  display: flex;
  flex-direction: column;
  gap: .875rem;
  max-width: 820px;
  margin-inline: auto;
}

.faq-item {
  background: #fff;
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-lg);
  overflow: hidden;
}

.faq-question {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.25rem 1.5rem;
  cursor: pointer;
  user-select: none;
}

.faq-question h3 {
  font-size: .9375rem;
  font-weight: 700;
  color: var(--gray-900);
  margin: 0;
  line-height: 1.4;
}

.faq-question i {
  color: var(--blue-600);
  transition: transform var(--transition-base);
  flex-shrink: 0;
  margin-left: 1rem;
}

.faq-item.open .faq-question i { transform: rotate(180deg); }

.faq-answer {
  display: none;
  padding: 0 1.5rem 1.25rem;
  font-size: .9rem;
  color: var(--gray-600);
  line-height: 1.75;
}

.faq-item.open .faq-answer { display: block; }

/* ─── Global Mobile Responsive Additions ─────────────────── */

/* Funding page hero stat bar — tighten gap on small screens */
@media (max-width: 640px) {
  .arf-hero-stats {
    gap: 1.5rem;
    padding-top: 1.5rem;
    margin-top: 2rem;
  }
}

/* Funding content layout — sidebar moves below content on mobile (already handled
   by min-width:1024px rule, but ensure sidebar doesn't clip) */
@media (max-width: 1023px) {
  .funding-sidebar { max-width: 560px; margin-inline: auto; }
  .compare-table-wrap { font-size: 13px; }
  .compare-table th, .compare-table td { padding: .7rem .9rem; }
}

/* FAQ question text — prevent overflow on tiny screens */
@media (max-width: 480px) {
  .faq-question h3 { font-size: .875rem; }
  .pillar-btn { font-size: 1rem; padding: 1rem 1.25rem; }
  .bcs-faq-q, .ccs-faq-q { font-size: 1rem; }
  /* Pros/cons and product detail tables */
  .product-details li { font-size: .75rem; }
  /* Page hero on tiny phones */
  .page-hero h1 { font-size: clamp(1.75rem, 7vw, 3rem); }
  .page-hero p { font-size: 1rem; }
  /* section chips always inline-flex on mobile */
  .section-chip, .chip { font-size: .72rem; padding: .3rem .75rem; }
}
