.public-hero {
  padding-block: clamp(5rem, 12vw, 9rem);
  border-bottom: 1px solid var(--color-border-soft);
  background:
    linear-gradient(rgb(255 255 255 / 2%) 1px, transparent 1px),
    linear-gradient(90deg, rgb(255 255 255 / 2%) 1px, transparent 1px),
    radial-gradient(circle at 82% 22%, var(--page-glow, rgb(20 125 121 / 18%)), transparent 24rem),
    #101416;
  background-size: 4rem 4rem, 4rem 4rem, auto, auto;
}

.public-hero--orange { --page-glow: rgb(244 106 18 / 18%); }
.public-hero--purple { --page-glow: rgb(128 103 232 / 20%); }
.public-hero--blue { --page-glow: rgb(79 153 255 / 17%); }

.public-hero__content { max-width: 58rem; }
.public-hero h1 { margin-block: var(--space-5); }
.public-hero p { max-width: 43rem; font-size: var(--font-size-lg); }

.public-summary { padding-block: clamp(4rem, 9vw, 7rem); }
.public-summary__grid { display: grid; gap: var(--space-5); }
.public-summary h2 { max-width: 12ch; }
.public-summary__panel {
  padding: clamp(1.5rem, 5vw, 3rem);
  border: 1px solid var(--color-border);
  background: linear-gradient(135deg, rgb(255 255 255 / 3%), transparent), var(--color-surface);
}
.public-summary__panel p:last-child { margin-bottom: 0; }
.page-cta { margin-top: var(--space-6); }

.footer-brand { display: flex; gap: var(--space-3); align-items: center; }
.footer-brand img { object-fit: contain; }

@media (min-width: 48rem) {
  .public-summary__grid { grid-template-columns: minmax(0, 1fr) minmax(20rem, 0.8fr); align-items: start; }
}
