/* Native Elementor nodes retain each approved page's semantic layout. */
.webxd-service-document.e-con,
.webxd-service-document .e-con:where(:not(.webxd-native-actions)) {
  display: block;
  width: auto;
  max-width: none;
  min-width: 0;
  min-height: 0;
  margin: 0;
  padding: 0;
  gap: 0;
  flex: initial;
  flex-direction: row;
  align-items: normal;
  justify-content: normal;
  overflow: visible;
  --container-default-padding-top: 0px;
  --container-default-padding-right: 0px;
  --container-default-padding-bottom: 0px;
  --container-default-padding-left: 0px;
  --widgets-spacing: 0px;
}
.webxd-service-document .service-flow-widget,
.webxd-service-document .service-flow-widget > .elementor-widget-container,
.webxd-service-document .service-flow-widget > .elementor-text-editor {
  display: contents;
}
.webxd-service-document .service-flow-widget::before,
.webxd-service-document .service-flow-widget::after {
  content: none;
}
.webxd-service-document .elementor-heading-title {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  padding: 0;
}
.webxd-service-document .elementor-widget-heading .elementor-heading-title {
  color: inherit;
}
:where(.webxd-service-document) .elementor-widget-text-editor {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}
.webxd-service-document picture {
  display: block;
}
/* Source tables supply their own row rules without Hello theme cell chrome. */
.webxd-service-document table th,
.webxd-service-document table td,
.webxd-service-document table thead:first-child tr:first-child th {
  border: 0;
  background: transparent;
}
.webxd-service-document table tbody > tr:nth-child(odd) > th,
.webxd-service-document table tbody > tr:nth-child(odd) > td {
  background: transparent;
}
/* Editing controls need real widget boxes inside the Elementor canvas. */
.elementor-editor-active .webxd-service-document .service-flow-widget {
  display: block;
  min-width: 0;
}

/* Icons are SVG masks drawn in the text colour. Generated by scripts/service-page-icons.py. */
.webxd-service-document {
  --webxd-icon-arrow-right: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22 fill=%22none%22%3E%3Cpath d=%22M4.167 10h11.666M10.833 5l5 5-5 5%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.67%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E%3C/svg%3E");
  --webxd-icon-arrow-up-right: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22 fill=%22none%22%3E%3Cpath d=%22M5.833 14.167l8.334-8.334M7.5 5.833h6.667V12.5%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.67%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E%3C/svg%3E");
  --webxd-icon-arrow-down: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22 fill=%22none%22%3E%3Cpath d=%22M10 4.167v11.666M5 10.833l5 5 5-5%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.67%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E%3C/svg%3E");
  --webxd-icon-check: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22 fill=%22none%22%3E%3Cpath d=%22M4.167 10.417l3.75 3.75 7.916-8.334%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.67%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E%3C/svg%3E");
  --webxd-icon-corner-down-right: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22 fill=%22none%22%3E%3Cpath d=%22M5 4.167V10a2.5 2.5 0 0 0 2.5 2.5h8.333M12.5 9.167l3.333 3.333-3.333 3.333%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.67%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E%3C/svg%3E");
}
.webxd-service-document .webxd-icon {
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: -0.125em;
  background-color: currentColor;
  -webkit-mask: var(--webxd-icon) center / contain no-repeat;
  mask: var(--webxd-icon) center / contain no-repeat;
}
.webxd-service-document .webxd-icon--gap { margin-left: 0.3em; }
/* Uploaded button icons keep the 20px grid's padding; Font Awesome glyphs fill their box. */
.webxd-service-document .elementor-button-icon svg:not(.e-font-icon-svg) { width: 1.25em; height: 1.25em; }
.webxd-service-document .webxd-icon--arrow-right { --webxd-icon: var(--webxd-icon-arrow-right); }
.webxd-service-document .webxd-icon--arrow-up-right { --webxd-icon: var(--webxd-icon-arrow-up-right); }
.webxd-service-document .webxd-icon--arrow-down { --webxd-icon: var(--webxd-icon-arrow-down); }
.webxd-service-document .webxd-icon--check { --webxd-icon: var(--webxd-icon-check); }
.webxd-service-document .webxd-icon--corner-down-right { --webxd-icon: var(--webxd-icon-corner-down-right); }
