.consultation-hero-refined,
.contact-hero-refined {
  overflow: hidden;
}
.consultation-hero-refined::before,
.contact-hero-refined::before {
  content: "";
  position: absolute;
  inset: 0 0 auto auto;
  width: min(45rem, 52vw);
  height: min(34rem, 66vh);
  pointer-events: none;
  background: radial-gradient(circle at 65% 24%, rgba(142, 154, 65, 0.13), transparent 36%);
}
.consultation-hero-refined__grid,
.contact-hero-refined__grid {
  display: grid;
  gap: var(--section-grid-gap);
  align-items: center;
}
.consultation-brief {
  display: grid;
  gap: 1.05rem;
  padding: clamp(1.45rem, 3vw, 2.15rem);
  border-radius: var(--radius-lg);
  color: white;
  background:
    radial-gradient(circle at 100% 0%, rgba(201, 155, 63, 0.15), transparent 34%),
    linear-gradient(145deg, var(--green-3), var(--green));
  box-shadow: var(--shadow);
}
.consultation-brief h2 { color: white; font-size: clamp(1.65rem, 2.6vw, 2.65rem); max-width: 11em; }
.consultation-brief p { color: rgba(255,255,255,0.82); }
.consultation-brief__label {
  color: #dfca76;
}
.consultation-map__grid {
  display: grid;
  gap: 0;
  border-top: var(--section-rule);
  border-bottom: var(--section-rule);
}
.consultation-map__grid article {
  display: grid;
  gap: 0.45rem;
  padding: var(--content-row-y) 0;
  border-top: 1px solid var(--line);
}
.consultation-map__grid article:first-child { border-top: 0; }
.consultation-map__grid h3,
.contact-prompts h3 {
  font-family: var(--font-sans);
  font-weight: var(--weight-bold);
  letter-spacing: -0.018em;
}
.consultation-map__grid p,
.contact-prompts p { color: var(--ink-2); }
.consultation-map__grid span { display: none; }
.consultation-outcome-refined {
  display: grid;
  gap: var(--section-grid-gap);
  align-items: start;
}
.contact-hero-copy {
  align-self: center;
  max-width: 43rem;
}
.contact-hero-copy h1 {
  max-width: 9.5em;
}
.contact-hero-copy .lead {
  max-width: 36rem;
  font-weight: var(--weight-medium);
}
.contact-hero-panel {
  display: grid;
  align-self: start;
  overflow: hidden;
  width: 100%;
  max-width: 30rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background: rgba(255, 255, 255, 0.84);
  box-shadow: var(--shadow-small);
}
.contact-panel-content {
  display: grid;
  gap: 0.75rem;
  padding: clamp(1.45rem, 3vw, 2.1rem);
}
.contact-panel-kicker {
  max-width: none;
  margin: 0;
  color: var(--green);
  font-size: var(--label-size-sm);
  font-weight: var(--weight-heavy);
  letter-spacing: var(--label-tracking);
  line-height: var(--label-line-height);
  text-transform: uppercase;
}
.contact-panel-content h2 {
  max-width: none;
  margin: 0;
  color: var(--ink);
  font-family: var(--font-display);
  font-size: clamp(1.9rem, 2vw + 1rem, 2.55rem);
  line-height: 1.02;
  letter-spacing: -0.035em;
}
.contact-panel-note {
  max-width: 25rem;
  color: var(--ink-2);
  font-size: 0.98rem;
  line-height: 1.55;
}
.contact-detail-list {
  display: grid;
  gap: 0.85rem;
  margin: 0.4rem 0 0;
  padding: 1rem 0 0;
  border-top: 1px solid var(--line);
}
.contact-detail-list div {
  display: grid;
  gap: 0.18rem;
}
.contact-detail-list dt {
  color: var(--green);
  font-size: var(--label-size-sm);
  font-weight: var(--weight-heavy);
  letter-spacing: var(--label-tracking);
  line-height: var(--label-line-height);
  text-transform: uppercase;
}
.contact-detail-list dd {
  min-width: 0;
  margin: 0;
  color: var(--ink-2);
  font-size: 1rem;
  line-height: 1.45;
}
.contact-detail-list a {
  overflow-wrap: normal;
  word-break: normal;
}
.contact-hero-image {
  margin: 0;
  overflow: hidden;
  border-top: 1px solid var(--line);
  background: var(--paper-2);
}
.contact-hero-image img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.contact-form-section { padding-top: var(--section-y); }
.contact-form-layout { align-items: start; }
.contact-form-intro { display: grid; gap: var(--section-heading-gap); }
.contact-prompts {
  display: grid;
  gap: 0;
  margin-top: 0.6rem;
  border-top: var(--section-rule);
}
.contact-prompts article {
  display: grid;
  gap: 0.35rem;
  padding: var(--content-row-y) 0;
  border-bottom: 1px solid var(--line);
}
.g-recaptcha { max-width: 100%; overflow: hidden; }
@media (min-width: 720px) {
  .consultation-map__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 2.2rem;
  }
  .consultation-map__grid article:nth-child(2) { border-top: 0; }
}
@media (min-width: 920px) {
  .contact-hero-refined__grid {
    grid-template-columns: minmax(0, 0.95fr) minmax(380px, 0.55fr);
    align-items: center;
  }
  .consultation-hero-refined__grid {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 0.52fr);
    align-items: start;
  }
  .consultation-outcome-refined {
    grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1fr);
  }
}

.consultation-outcome-refined > div:first-child {
  display: grid;
  gap: var(--section-heading-gap);
  align-content: start;
}

@media (max-width: 520px) {
  .contact-detail-list div {
    grid-template-columns: 1fr;
    gap: 0.25rem;
  }
}
