/* ICP page theme: blue accent, same layout system as the parent page. */

:root {
  --teal: #2563a8;
  --teal-dark: #164a7e;
  --teal-soft: #eaf2fb;
}

.icp-page .hero {
  background:
    radial-gradient(circle at 78% 18%, rgba(37, 99, 168, 0.26), transparent 38%),
    radial-gradient(circle at 12% 82%, rgba(242, 163, 58, 0.12), transparent 36%),
    linear-gradient(138deg, #061a2d 0%, #0a2b4a 46%, #103f66 100%);
}

.icp-page .hero-glow-a {
  background: radial-gradient(circle, rgba(37, 99, 168, 0.4), transparent 66%);
}

.icp-page .hero-glow-b {
  background: radial-gradient(circle, rgba(242, 163, 58, 0.18), transparent 66%);
}

.icp-page .section-dark {
  background:
    radial-gradient(circle at 90% 10%, rgba(37, 99, 168, 0.22), transparent 34%),
    linear-gradient(135deg, #061a2d, #0a2b47 58%, #103f66);
}

.icp-page .section-consult {
  background:
    radial-gradient(circle at 8% 10%, rgba(37, 99, 168, 0.28), transparent 34%),
    radial-gradient(circle at 96% 90%, rgba(242, 163, 58, 0.14), transparent 36%),
    linear-gradient(135deg, #061a2d, #0a2b4a 54%, #103f66);
}

.icp-page .section-dark .section-kicker,
.icp-page .section-consult .section-kicker {
  color: #8fc4f0;
}

.icp-page .step-label {
  color: #8fc4f0;
}

.icp-page .process-note a {
  color: #a9d4f7;
}

.icp-page .callout {
  border-color: #d3e2f2;
  background: #eff5fc;
}

.icp-page .callout-icon {
  color: var(--teal);
}

.icp-page .callout p {
  color: #36516b;
}

.icp-page .callout strong {
  color: var(--teal-dark);
}

.icp-page .official-card {
  border-color: #cfe0f2;
  background:
    radial-gradient(circle at 100% 0%, rgba(37, 99, 168, 0.12), transparent 42%),
    #eef5fc;
}

.icp-page .official-card .btn {
  border-color: #c3d8ee;
}

.icp-page .official-divider {
  background: #dbe8f5;
}

.icp-page .official-note {
  color: #627b90;
}

.icp-page .official-card .aside-kicker {
  color: var(--teal);
}

.icp-page .concept-grid.two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.icp-page .concept-grid.two .concept-card {
  min-height: 220px;
}

.icp-page .condition-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 960px) {
  .icp-page .concept-grid.two {
    grid-template-columns: minmax(0, 1fr);
  }

  .icp-page .concept-grid.two .concept-card {
    min-height: 0;
  }

  .icp-page .condition-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .icp-page .condition-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
