/* Start custom CSS *//* Internal-page hero: solid dark, no photography, content-driven height.
   Homepage hero is untouched. Pitch-grid layer kept; the two scrims hidden. */
body.elementor-page-577 [data-id="6966d8d0"][data-id="6966d8d0"] { background-color: #141414; min-height: 0; }
body.elementor-page-577 [data-id="40f00f40"][data-id="40f00f40"],
body.elementor-page-577 [data-id="7b0f2384"][data-id="7b0f2384"] { display: none; }
body.elementor-page-577 [data-id="610f4a4b"][data-id="610f4a4b"] { padding-block-start: 76px; padding-block-end: 80px; }
@media (max-width: 1024px) {
  body.elementor-page-577 [data-id="610f4a4b"][data-id="610f4a4b"] { padding-block-start: 64px; padding-block-end: 68px; }
}
@media (max-width: 767px) {
  body.elementor-page-577 [data-id="6966d8d0"][data-id="6966d8d0"] { padding-block-start: 108px; }
  body.elementor-page-577 [data-id="610f4a4b"][data-id="610f4a4b"] { padding-block-start: 52px; padding-block-end: 56px; }
}

/* The intro is a full-width 2-column grid with two independent text blocks.
   Elementor emits element-level grid-column for div blocks but drops it for the
   heading widget, so the intro heading gets its span here. */
body.elementor-page-577 [data-id="7984fd86"][data-id="7984fd86"] { grid-column: 1 / -1; }

/* Both intro paragraphs have margin 0; give the stacked rows a one-line gap once
   the columns collapse. Row gap only, so side-by-side tops stay aligned. */
@media (max-width: 820px) {
  body.elementor-page-577 [data-id="12641fb8"][data-id="12641fb8"] { row-gap: 1.6em; }
}/* End custom CSS */