/* Shared marketing brand guardrails. Keep portal accents semantic; reserve the
   amber-to-red gradient for Energy Connect brand actions and display emphasis. */
:root {
  --ec-brand-amber: #F59E0B;
  --ec-brand-red: #EF4444;
  --ec-brand-gradient: linear-gradient(90deg, var(--ec-brand-amber), var(--ec-brand-red));
  --ec-brand-gradient-diagonal: linear-gradient(135deg, var(--ec-brand-amber), var(--ec-brand-red));
}

.lang-scroll::-webkit-scrollbar-thumb {
  background: var(--ec-brand-gradient) !important;
}

.nav-cta,
.mob-cta,
.btn-primary,
.fsub,
.price-btn.grad,
.form-submit {
  background: var(--ec-brand-gradient) !important;
  color: #0F1117 !important;
}

.flow-num,
.how-num {
  background: var(--ec-brand-gradient-diagonal) !important;
  color: #0F1117 !important;
}

.hero-h1,
.section-h2,
.cta-h2 {
  letter-spacing: .02em !important;
}

.hero-h1 .colored,
.section-h2 em,
.cta-h2 em {
  background: var(--ec-brand-gradient) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* Portal colors identify a role. They must never become a secondary gradient. */
.portal-supplier .portal-top-rule { background: #A78BFA !important; }
.portal-broker .portal-top-rule,
.portal-customer .portal-top-rule { background: #F59E0B !important; }
.portal-carrier .portal-top-rule { background: #10B981 !important; }

.brand-gradient-button {
  background: var(--ec-brand-gradient) !important;
  color: #0F1117 !important;
}

.trust-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 2px;
  margin-top: 64px;
}

.trust-card {
  background: var(--s1);
  border: 1px solid var(--bdr);
  padding: 32px 28px;
}

.trust-card:first-child { border-radius: 16px 0 0 16px; }
.trust-card:last-child { border-radius: 0 16px 16px 0; }
.trust-index {
  color: var(--amber);
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .2em;
  margin-bottom: 20px;
}
.trust-card h3 {
  color: var(--txt);
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 21px;
  font-weight: 800;
  letter-spacing: .04em;
  line-height: 1.05;
  margin-bottom: 12px;
  text-transform: uppercase;
}
.trust-card p { color: var(--sub); font-size: 14px; line-height: 1.65; }

@media (max-width: 1024px) {
  .trust-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .trust-card:first-child { border-radius: 16px 0 0 0; }
  .trust-card:nth-child(2) { border-radius: 0 16px 0 0; }
  .trust-card:nth-child(3) { border-radius: 0 0 0 16px; }
  .trust-card:last-child { border-radius: 0 0 16px 0; }
}

@media (max-width: 600px) {
  .trust-grid { grid-template-columns: 1fr; margin-top: 40px; }
  .trust-card,
  .trust-card:first-child,
  .trust-card:nth-child(2),
  .trust-card:nth-child(3),
  .trust-card:last-child { border-radius: 12px; }
}
