/* S2 Safety Systems — loaded after Divi, before site.css.
   Divi's structural elements become plain boxes; the concept's class names (site.css, scoped to
   body.s2) do all of the layout. Everything here sits at a specificity site.css can override. */

.s2 .et_pb_section,
.s2 .et_pb_row,
.s2 .et_pb_column,
.s2 .et_pb_group,
.s2 .et_pb_module {
  display: block; float: none; width: auto; max-width: none; min-height: 0; flex: initial;
  flex-flow: row nowrap; place-items: normal; place-content: normal;
  margin: 0; padding: 0; gap: 0; background-color: transparent; z-index: auto;
}
/* Containing blocks follow the concept's own position rules, not Divi's */
.s2 .et_pb_section, .s2 .et_pb_row, .s2 .et_pb_column, .s2 .et_pb_group, .s2 .et_pb_text, .s2 .et_pb_text_inner { position: static; }
.s2 .et_pb_text, .s2 .et_pb_text_inner { font-size: inherit; line-height: inherit; color: inherit; }

.s2 .et_pb_image { line-height: normal; text-align: left; }
.s2 .et_pb_image .et_pb_image_wrap { display: block; width: 100%; height: 100%; max-width: none; }
.s2 .et_pb_button { font-size: inherit; font-weight: inherit; line-height: inherit; padding: 0; border: 0; border-radius: 0; background-color: transparent; }
.s2 .et_pb_button_module_wrapper { margin: 0; }

.s2 #page-container { padding-top: 0 !important; margin-top: 0 !important; }
.s2 #main-content { background-color: transparent; }
.s2 #page-container, .s2 #et-boc, .s2 #et-main-area, .s2 #main-content, .s2 .et-l, .s2 .et_builder_inner_content { overflow: visible !important; }

/* Sticky global header: the Theme Builder wrapper sticks; the .hdr inside has no room to */
.s2 .et-l--header { position: sticky; top: 0; z-index: 100; }
.admin-bar.s2 .et-l--header { top: 32px; }
@media screen and (max-width: 782px) { .admin-bar.s2 .et-l--header { top: 46px; } }

/* Roll back Divi's heading and paragraph defaults (zero specificity: site.css still wins) */
:where(.s2) :is(h1, h2, h3, h4, h5, h6) { padding-bottom: revert; color: revert; line-height: revert; font-weight: revert; font-size: revert; letter-spacing: revert; }
:where(.s2) p { padding-bottom: revert; line-height: revert; }
:where(.s2) :is(.entry-content, .et-l--header, .et-l--footer, .et-l--body) :is(ul, ol) { line-height: revert; }

/* Concept-review annotations are hidden on the site */
.s2 .draftnote, .s2 .draftbar { display: none !important; }
