/* Keep internal hero heights consistent. Home (page 9) and Helping Topsy
 * (page 11) intentionally retain their bespoke hero proportions. */
@media (min-width: 768px) {
  body.elementor-page:not(.page-id-9):not(.page-id-11) .elementor-top-section:has(> .elementor-container .topsy-contact-hero-widget) {
    height: 520px !important;
    min-height: 520px !important;
  }

  body.elementor-page:not(.page-id-9):not(.page-id-11) .topsy-contact-hero-widget {
    height: 520px !important;
    min-height: 520px !important;
  }
}

/* Patrons needs the same breathing room used by the other inner pages. */
body.page-id-10 .elementor-element-patrons_content_section {
  padding-top: 40px !important;
}

/* Full-width Helping Topsy background with a boxed, aligned process layout. */
.elementor-page-11 .topsy-helping-content.mode-process {
  display: grid;
  grid-template-columns: .9fr 1.5fr;
  gap: 40px;
  align-items: center;
  width: calc(100% + 20px);
  margin-left: -10px;
  padding: 68px max(24px, calc((100% - 1180px) / 2));
  background: #edf8e6;
}

.elementor-page-11 .topsy-helping-content.mode-process > .topsy-helping-process-copy,
.elementor-page-11 .topsy-helping-content.mode-process > .topsy-helping-steps {
  width: 100%;
  max-width: none;
  margin: 0;
}

@media (max-width: 767px) {
  .elementor-page-11 .topsy-helping-content.mode-process {
    display: block;
    width: calc(100% + 20px);
    margin-left: -10px;
    padding: 42px 16px;
  }

  .elementor-page-11 .topsy-helping-content.mode-process > .topsy-helping-process-copy {
    margin-bottom: 26px;
  }
}

/* Ensure the shared header CTA has fully rounded left and right edges. */
.elementor-location-header .elementor-button {
  border-radius: 999px !important;
}
