.boiler-cluster-page {
  background:
    radial-gradient(circle at 12% 8%, rgba(44, 183, 223, 0.16), transparent 28rem),
    radial-gradient(circle at 88% 14%, rgba(242, 185, 92, 0.16), transparent 25rem),
    #f5f7fb;
  color: #102635;
}

.boiler-cluster-page .site-header {
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(16px);
}

.boiler-cluster-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(330px, 0.72fr);
  gap: clamp(1.2rem, 3vw, 2.4rem);
  align-items: stretch;
  padding-top: clamp(2.2rem, 5vw, 4.4rem);
}

.boiler-cluster-hero .hero-copy,
.boiler-cluster-hero .lead-card {
  min-width: 0;
}

.boiler-cluster-hero .hero-copy {
  background: linear-gradient(135deg, #082736 0%, #0c4e65 58%, #087ea4 100%);
  color: #fff;
  border-radius: 2rem;
  padding: clamp(1.6rem, 4vw, 3rem);
  box-shadow: 0 30px 80px rgba(8, 39, 54, 0.24);
  position: relative;
  overflow: hidden;
}

.boiler-cluster-hero .hero-copy::after {
  content: "";
  position: absolute;
  width: 24rem;
  height: 24rem;
  border-radius: 999px;
  right: -8rem;
  bottom: -10rem;
  background: rgba(255, 255, 255, 0.09);
}

.boiler-cluster-hero h1 {
  max-width: 13ch;
  font-size: clamp(2.35rem, 5.8vw, 5rem);
  line-height: 0.94;
  letter-spacing: -0.065em;
  margin: 0.35rem 0 1.1rem;
}

.boiler-cluster-hero .hero-lead {
  max-width: 46rem;
  font-size: clamp(1.05rem, 2vw, 1.26rem);
  color: rgba(255, 255, 255, 0.88);
}

.boiler-cluster-hero .eyebrow,
.boiler-cluster-hero .trust-line {
  color: rgba(255, 255, 255, 0.78);
}

.boiler-cluster-hero .hero-points span {
  background: rgba(255, 255, 255, 0.13);
  color: #fff;
  border-color: rgba(255, 255, 255, 0.16);
}

.boiler-cluster-hero .button.secondary {
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
}

.lead-card.is-local-disabled {
  position: relative;
}

.lead-card.is-local-disabled input,
.lead-card.is-local-disabled textarea,
.lead-card.is-local-disabled select,
.lead-card.is-local-disabled button {
  cursor: not-allowed;
}

.choice-grid,
.scope-grid,
.signals-grid,
.related-grid,
.steps-grid {
  display: grid;
  gap: 1rem;
}

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

.scope-grid,
.signals-grid,
.related-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.steps-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.choice-card,
.scope-card,
.signal-card,
.related-card,
.step-card,
.intent-note {
  background: #fff;
  border: 1px solid rgba(8, 39, 54, 0.1);
  border-radius: 1.3rem;
  padding: 1.1rem;
  box-shadow: 0 16px 42px rgba(8, 39, 54, 0.07);
}

.choice-card {
  min-height: 11rem;
}

.choice-card.is-current {
  background: #082736;
  color: #fff;
}

.choice-card span,
.scope-card span,
.signal-card span,
.related-card span,
.step-card span,
.intent-note p {
  display: block;
  color: #516579;
  margin-top: 0.45rem;
  line-height: 1.5;
}

.choice-card.is-current span {
  color: rgba(255, 255, 255, 0.78);
}

.related-card {
  text-decoration: none;
  color: inherit;
}

.related-card:hover,
.related-card:focus-visible {
  border-color: rgba(8, 126, 164, 0.45);
  transform: translateY(-1px);
}

.intent-note {
  background: #fff8f2;
  margin-top: 1rem;
}

.cluster-final {
  background: #082736;
  color: #fff;
  border-radius: 2rem;
  padding: clamp(1.4rem, 4vw, 2.5rem);
}

.cluster-final p {
  color: rgba(255, 255, 255, 0.82);
}

@media (max-width: 980px) {
  .boiler-cluster-hero,
  .scope-grid,
  .signals-grid,
  .related-grid,
  .steps-grid {
    grid-template-columns: 1fr 1fr;
  }

  .boiler-cluster-hero {
    align-items: start;
  }
}

@media (max-width: 720px) {
  .boiler-cluster-hero,
  .choice-grid,
  .scope-grid,
  .signals-grid,
  .related-grid,
  .steps-grid {
    grid-template-columns: 1fr;
  }

  .boiler-cluster-hero {
    padding-top: 1.2rem;
  }

  .boiler-cluster-hero .hero-copy,
  .cluster-final {
    border-radius: 1.35rem;
  }
}
