/* company package (2026-10-19). Every rule is scoped by the page body class; nothing here touches other pages. */

/* ===== Home (page-id-1956) ===== */
/* Desktop: the tagline is already in the hero image, so the H1 stays in the HTML for screen readers only. */
@media (min-width: 768px) {
  .page-id-1956 h1.vmc-home-tagline {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }
}

/* Mobile: the hero image is cropped above its baked-in text; the H1 is shown below it as real text. */
@media (max-width: 767px) {
  .page-id-1956 .gt-noxe-slider,
  .page-id-1956 .gt-slider-container,
  .page-id-1956 .gt-slider .gt-image {
    height: calc((100vw - 60px) * 785 / 1920 * 0.76) !important;
    min-height: 0 !important;
  }
  .page-id-1956 .gt-noxe-slider,
  .page-id-1956 .gt-slider-container {
    min-height: 0 !important;
  }
  .page-id-1956 .gt-slider .gt-image {
    background-size: 100% auto !important;
    background-position: center top !important;
  }
  .page-id-1956 h1.vmc-home-tagline {
    font-size: 20px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    text-align: center !important;
    color: #111 !important;
    margin: 18px 16px 8px !important;
  }
  .page-id-1956 .wpb_text_column p {
    text-align: left !important;
  }
  .page-id-1956 .gt-timeline .gt-item {
    display: flex !important;
    flex-direction: column !important;
  }
  .page-id-1956 .gt-timeline .gt-date {
    order: -1 !important;
  }
}

/* "Our Reach" beige band: same left and right edges as the content above and below (100 to 1340 px at 1440). */
.page-id-1956 .vc_row.vc_custom_1766495288678 {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* ===== Contact Us (page-id-1690) ===== */
/* The theme adds 130 px above the page content; the intro heading needs much less. */
.page-id-1690 .gt-page-wrapper {
  padding-top: 24px !important;
}
/* The added paragraph reads like the intro, not like a heading. */
.page-id-1690 .wpb_text_column p {
  font-weight: 400 !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
}
/* Intro and the three contact blocks share the content margins. */
.page-id-1690 .vc_row.vc_custom_1582134191687 {
  margin-left: -17px !important;
  margin-right: -17px !important;
}
.page-id-1690 .vc_row.vc_custom_1582134191687 > .wpb_column {
  padding-left: 17px !important;
  padding-right: 17px !important;
}

/* ===== Events (page-id-4714) ===== */
/* Headings wrap between words only; no mid-word breaks. */
.page-id-4714 .gt-title {
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: manual !important;
}
@media (max-width: 767px) {
  .page-id-4714 .gt-title {
    font-size: 30px !important;
    line-height: 1.25 !important;
  }
}

/* ===== Careers (page-id-4993) ===== */
/* Body text, lists and the form are left-aligned; the five section labels share one size and weight. */
.page-id-4993 .wpb_text_column p,
.page-id-4993 .wpb_text_column ul,
.page-id-4993 .wpb_text_column li,
.page-id-4993 .wpcf7 {
  text-align: left !important;
}
.page-id-4993 .wpb_text_column h3 {
  font-size: 24px !important;
  font-weight: 700 !important;
  font-style: normal !important;
  line-height: 1.3 !important;
  text-align: left !important;
  margin: 28px 0 10px !important;
}

/* ===== Corporate Social Responsibility (page-id-4508) ===== */
/* Body paragraphs left-aligned, normal weight; links in the site gold; headings keep one style. */
.page-id-4508 p {
  text-align: left !important;
  font-weight: 400 !important;
}
.page-id-4508 h2 {
  font-style: normal !important;
  font-weight: 600 !important;
}
.page-id-4508 p a {
  color: inherit !important;
  text-decoration: underline !important;
  text-decoration-color: #b8892f !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 3px !important;
}
/* Donate button: the site's black button with a gold border */
.page-id-4508 .vmc-donate a {
  border: 2px solid #b8892f !important;
}
/* Title bar H1 fits on a phone */
@media (max-width: 767px) {
  .page-id-4508 .gt-title-bar h1 {
    font-size: 28px !important;
    line-height: 1.2 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
}
