@font-face {
  font-family: 'Urbanist-Regular';
  src: url("standard-theme/less/fonts/Urbanist/static/Urbanist-Regular.ttf") format('truetype');
}
@font-face {
  font-family: 'Urbanist-Bold';
  src: url('standard-theme/less/fonts/Urbanist/static/Urbanist-Bold.ttf') format('truetype');
  font-weight: 700;
}
@font-face {
  font-family: 'Urbanist-SemiBold';
  src: url('standard-theme/less/fonts/Urbanist/static/Urbanist-SemiBold.ttf') format('truetype');
  font-weight: 600;
}
@font-face {
  font-family: 'Urbanist-Italic';
  src: url('standard-theme/less/fonts/Urbanist/static/Urbanist-Italic.ttf') format('truetype');
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: 'Urbanist-BoldItalic';
  src: url('standard-theme/less/fonts/Urbanist/static/Urbanist-BoldItalic.ttf') format('truetype');
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: 'Urbanist-Regular-Variable';
  src: url('standard-theme/less/fonts/Urbanist/Urbanist-VariableFont_wght.ttf') format('woff');
}
@font-face {
  font-family: 'Urbanist-Italic-Variable';
  src: url('standard-theme/less/fonts/Urbanist/Urbanist-Italic-VariableFont_wght.ttf') format('woff');
}
@font-face {
  font-family: 'DIN-Bold';
  src: url('standard-theme/less/fonts/DIN/DIN-Bold.ttf') format('truetype');
  font-weight: 700;
}
@font-face {
  font-family: 'DIN-Regular';
  src: url('standard-theme/less/fonts/DIN/DIN-Regular.ttf') format('truetype');
  font-weight: 400;
}
@font-face {
  font-family: 'DIN-OT-Medium';
  src: url('standard-theme/less/fonts/DIN/DIN-OT-Medium.ttf') format('truetype');
  font-weight: 600;
}
/* -----------------------------------------------------------------------------------------------------------------
   1. CSS Custom Properties (Variables) - Defined on :root for global scope
   ----------------------------------------------------------------------------------------------------------------- */
:root {
  /* Font Families (Used to replace LESS aliases) */
  --urbanist-regular: 'Urbanist-Regular', sans-serif;
  --urbanist-bold: 'Urbanist-Bold', sans-serif;
  --urbanist-semi-bold: 'Urbanist-SemiBold', sans-serif;
  --urbanist-italic: 'Urbanist-Italic', sans-serif;
  --urbanist-bold-italic: 'Urbanist-BoldItalic', sans-serif;
  --urbanist-regular-variable: 'Urbanist-Regular-Variable', sans-serif;
  --urbanist-italic-variable: 'Urbanist-Italic-Variable', sans-serif;
  --din-bold: 'DIN-Bold', sans-serif;
  --din-regular: 'DIN-Regular', sans-serif;
  --din-ot-medium: 'DIN-OT-Medium', sans-serif;
  /* Font Settings (Original LESS aliases now point to Custom Properties) */
  --default-font: var(--urbanist-regular-variable);
  --title-font: var(--urbanist-bold);
  --supporting-text-font: var(--default-font);
  --input-font: var(--default-font);
  /* Main Color Settings (Original LESS @variables are now CSS --variables) */
  /* Text colors */
  --main-text: #1C1F33;
  --input-field-text: #D7D7D7;
  --disabled-text: #939494;
  --support-text: #666666;
  /* Action colors - BASE THEME */
  --main-color: #9D4EDD;
  --main-hover-color: #5E2F85;
  /* Pre-calculated from LESS darken(@main, 20%) */
  --dark-color: #1C1F33;
  --disabled-color: #DCDDDE;
  /* State colors */
  --success-color: #37CA45;
  --error-color: #FF2E2E;
  /* Support colors */
  --support-01: #FFC349;
  --support-03: #F5F6F7;
  --support-04: #70A37F;
  --support-06: #F46267;
  /* Accent colors */
  --accent-main: #FFFFFF;
  --accent-01: #FFF9ED;
  --accent-02: #F5EDFC;
  --accent-03: #F1F6F2;
  --accent-04: #FDE0E1;
  /* Control specific colors */
  --background-color: var(--accent-01);
  --calendar-selected-background-color: var(--background-color);
  --calendar-selected-text-color: var(--dark-color);
  --documentList-background-color: var(--background-color);
  --messageBox-text-color: var(--dark-color);
  --infoBox-color: var(--support-03);
  --successBox-color: var(--accent-03);
  --alertBox-color: rgba(237, 95, 0, 0.1);
  --errorBox-color: var(--accent-04);
  --autocomplete-hover-background-color: var(--background-color);
  --autocomplete-hover-font-color: var(--dark-color);
  --autocomplete-border-color: var(--disabled-color);
  --tab-selected-color: var(--main-color);
  --text-box-border-color: var(--dark-color);
  --control-hover-color: var(--dark-color);
  --idle-color: var(--disabled-color);
  /* Header */
  --header-background-color: var(--background-color);
  --header1-font-color: var(--dark-color);
  --header-bar-background-color: var(--main-color);
  /* Font weights */
  --header1-font-weight: bold;
  --header2-font-weight: var(--header1-font-weight);
  --label-font-weight: 700;
  --supporting-text-font-weight: 600;
  --input-font-weight: 500;
  /* Header fixed values */
  --header-bar-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  --header-bar-height: 40px;
  --header-overall-height: 130px;
  /* Font sizes desktop */
  --header1-font-size: 20px;
  --header2-font-size: 18px;
  --heading1-font-size: 18px;
  --heading2-font-size: 18px;
  --heading3-font-size: 18px;
  --text-font-size-normal: 18px;
  --text-font-size-medium: 14px;
  --text-font-size-small: 12px;
  --button-font-size: 18px;
  --input-font-size: 18px;
  --label-font-size: 14px;
  --supporting-text-font-size: 14px;
  /* Wizard */
  --wizard-background-color: var(--background-color);
  /* Footer */
  --footer-text-display: block;
  --footer-text-color: var(--accent-main);
  --footer-background-color: var(--main-color);
  --footer-height: 30px;
  /* Buttons */
  --primary-button-background: var(--main-color);
  --primary-button-color: var(--accent-main);
  --primary-button-background-hover: var(--main-hover-color);
  --secondary-button-background: var(--accent-main);
  --secondary-button-color: var(--main-color);
  --secondary-button-border-color: var(--main-color);
  --secondary-button-background-hover: var(--main-color);
  --secondary-button-color-hover: var(--accent-main);
  --secondary-button-border-color-hover: var(--main-color);
  --secondary-button-background-disabled: var(--accent-main);
  --tertiary-button-background: var(--accent-main);
  --tertiary-button-color: var(--dark-color);
}
/*
***********************************************
* Logo
***********************************************
*/
/* logo.png statt logo.svg (SDSWFH-4): das bisherige SVG war eine aeltere
   Fassung des Logos - Wortmarke in Grau (#666666) statt Schwarz und mit
   falschen width/height-Attributen (180x33 statt 2002x339), wodurch es rund
   8% gestaucht dargestellt wurde. Das offizielle RGB-Original liegt nur als
   Pixelbild vor; hier auf 720px Breite skaliert, was fuer die Kopfzeile
   (240px, also 3x fuer hochaufloesende Displays) reicht. Sobald SWW ein
   korrektes RGB-SVG liefert, kann wieder auf Vektor umgestellt werden. */
.customer-header {
  background-image: url(standard-theme/assets/tenant/industry-energy/logo.png);
}
.customer-header-hcm {
  background-image: url(standard-theme/assets/tenant/industry-energy/logo.png);
}
/*
***********************************************
* Titles and Text
***********************************************
*/
.textdraw p,
.titledraw p {
  margin: 0;
}
.titledraw {
  font-family: var(--title-font);
  font-size: 20px;
  line-height: 26px;
  font-weight: bold;
}
/*
***********************************************
* All Components
***********************************************
*/
a {
  color: var(--main-color);
}
body {
  font-family: var(--default-font);
  font-size: var(--text-font-size-normal);
  color: var(--dark-color);
  margin: 0;
  padding: 16px;
  background: var(--accent-main);
}
.guidefield {
  margin: 1em 0;
}
.guideFieldLabel {
  display: block;
  margin-bottom: 0.2em;
  font-family: var(--title-font);
  font-size: var(--label-font-size);
}
.validation-failure input,
.validation-failure select,
.validation-failure textarea {
  border-color: var(--error-color) !important;
}
.mobileLayout {
  display: none;
}
.col-md-1,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-10,
.col-md-11,
.col-md-12 {
  position: static;
}
@media (min-width: 992px) {
  :is(.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11):not(:first-of-type) {
    padding-left: 12px;
  }
  :is(.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11):not(:last-of-type) {
    padding-right: 12px;
  }
}
@media (max-width: 767px) {
  .guideLayout,
  [id$="_guide-item-container"] {
    overflow-x: visible;
  }
}
@media (max-width: 991px) {
  :is(.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11):not(:last-of-type) {
    margin-bottom: 1rem;
  }
}
h3 {
  margin-top: 40px;
  margin-bottom: 0;
}
/*
***********************************************
* Titles
***********************************************
*/
.afFormTitle h1 {
  text-align: center;
  padding: 0;
}
/*
***********************************************
* Radio Button, Check Box & Toggle Switch
***********************************************
*/
.checkbox .guideFieldLabel,
.radiobutton .guideFieldLabel,
.toggleswitch .guideFieldLabel {
  font-family: var(--title-font);
  font-size: var(--label-font-size);
  font-weight: var(--label-font-weight);
  line-height: 18px;
  color: var(--main-text);
}
.checkbox .guideRadioButtonItem,
.radiobutton .guideRadioButtonItem,
.toggleswitch .guideRadioButtonItem,
.checkbox .guideCheckBoxItem,
.radiobutton .guideCheckBoxItem,
.toggleswitch .guideCheckBoxItem {
  margin-top: 12px;
  margin-bottom: 12px;
}
.checkbox .guideRadioButtonItem label .form-element__label,
.radiobutton .guideRadioButtonItem label .form-element__label,
.toggleswitch .guideRadioButtonItem label .form-element__label,
.checkbox .guideCheckBoxItem label .form-element__label,
.radiobutton .guideCheckBoxItem label .form-element__label,
.toggleswitch .guideCheckBoxItem label .form-element__label,
.checkbox .guideRadioButtonItem label .ajila_forms_radiobutton_element_value,
.radiobutton .guideRadioButtonItem label .ajila_forms_radiobutton_element_value,
.toggleswitch .guideRadioButtonItem label .ajila_forms_radiobutton_element_value,
.checkbox .guideCheckBoxItem label .ajila_forms_radiobutton_element_value,
.radiobutton .guideCheckBoxItem label .ajila_forms_radiobutton_element_value,
.toggleswitch .guideCheckBoxItem label .ajila_forms_radiobutton_element_value,
.checkbox .guideRadioButtonItem .form-element__label,
.radiobutton .guideRadioButtonItem .form-element__label,
.toggleswitch .guideRadioButtonItem .form-element__label,
.checkbox .guideCheckBoxItem .form-element__label,
.radiobutton .guideCheckBoxItem .form-element__label,
.toggleswitch .guideCheckBoxItem .form-element__label {
  font-family: var(--default-font);
  font-size: var(--text-font-size-normal);
  line-height: 24px;
  margin-left: 32px;
  color: var(--main-text);
}
.checkbox .guideRadioButtonItem label .form-element__label p:first-of-type,
.radiobutton .guideRadioButtonItem label .form-element__label p:first-of-type,
.toggleswitch .guideRadioButtonItem label .form-element__label p:first-of-type,
.checkbox .guideCheckBoxItem label .form-element__label p:first-of-type,
.radiobutton .guideCheckBoxItem label .form-element__label p:first-of-type,
.toggleswitch .guideCheckBoxItem label .form-element__label p:first-of-type,
.checkbox .guideRadioButtonItem label .ajila_forms_radiobutton_element_value p:first-of-type,
.radiobutton .guideRadioButtonItem label .ajila_forms_radiobutton_element_value p:first-of-type,
.toggleswitch .guideRadioButtonItem label .ajila_forms_radiobutton_element_value p:first-of-type,
.checkbox .guideCheckBoxItem label .ajila_forms_radiobutton_element_value p:first-of-type,
.radiobutton .guideCheckBoxItem label .ajila_forms_radiobutton_element_value p:first-of-type,
.toggleswitch .guideCheckBoxItem label .ajila_forms_radiobutton_element_value p:first-of-type,
.checkbox .guideRadioButtonItem .form-element__label p:first-of-type,
.radiobutton .guideRadioButtonItem .form-element__label p:first-of-type,
.toggleswitch .guideRadioButtonItem .form-element__label p:first-of-type,
.checkbox .guideCheckBoxItem .form-element__label p:first-of-type,
.radiobutton .guideCheckBoxItem .form-element__label p:first-of-type,
.toggleswitch .guideCheckBoxItem .form-element__label p:first-of-type {
  margin-top: 0 !important;
}
.checkbox .guideRadioButtonItem label .form-element__label p:last-of-type,
.radiobutton .guideRadioButtonItem label .form-element__label p:last-of-type,
.toggleswitch .guideRadioButtonItem label .form-element__label p:last-of-type,
.checkbox .guideCheckBoxItem label .form-element__label p:last-of-type,
.radiobutton .guideCheckBoxItem label .form-element__label p:last-of-type,
.toggleswitch .guideCheckBoxItem label .form-element__label p:last-of-type,
.checkbox .guideRadioButtonItem label .ajila_forms_radiobutton_element_value p:last-of-type,
.radiobutton .guideRadioButtonItem label .ajila_forms_radiobutton_element_value p:last-of-type,
.toggleswitch .guideRadioButtonItem label .ajila_forms_radiobutton_element_value p:last-of-type,
.checkbox .guideCheckBoxItem label .ajila_forms_radiobutton_element_value p:last-of-type,
.radiobutton .guideCheckBoxItem label .ajila_forms_radiobutton_element_value p:last-of-type,
.toggleswitch .guideCheckBoxItem label .ajila_forms_radiobutton_element_value p:last-of-type,
.checkbox .guideRadioButtonItem .form-element__label p:last-of-type,
.radiobutton .guideRadioButtonItem .form-element__label p:last-of-type,
.toggleswitch .guideRadioButtonItem .form-element__label p:last-of-type,
.checkbox .guideCheckBoxItem .form-element__label p:last-of-type,
.radiobutton .guideCheckBoxItem .form-element__label p:last-of-type,
.toggleswitch .guideCheckBoxItem .form-element__label p:last-of-type {
  margin-bottom: 0 !important;
}
.checkbox .guideCheckBoxGroup[data-disabled="true"] .guideFieldWidget input ~ label > .forms-checkbox_faux,
.radiobutton .guideCheckBoxGroup[data-disabled="true"] .guideFieldWidget input ~ label > .forms-checkbox_faux,
.toggleswitch .guideCheckBoxGroup[data-disabled="true"] .guideFieldWidget input ~ label > .forms-checkbox_faux,
.checkbox .guideCheckBox[data-disabled="true"] .guideFieldWidget input ~ label > .forms-checkbox_faux,
.radiobutton .guideCheckBox[data-disabled="true"] .guideFieldWidget input ~ label > .forms-checkbox_faux,
.toggleswitch .guideCheckBox[data-disabled="true"] .guideFieldWidget input ~ label > .forms-checkbox_faux {
  border-color: var(--disabled-color);
  background-color: var(--accent-main);
}
.checkbox .guideCheckBoxGroup[data-disabled="true"] .ajila_forms_radiobutton_element_value,
.radiobutton .guideCheckBoxGroup[data-disabled="true"] .ajila_forms_radiobutton_element_value,
.toggleswitch .guideCheckBoxGroup[data-disabled="true"] .ajila_forms_radiobutton_element_value,
.checkbox .guideCheckBox[data-disabled="true"] .ajila_forms_radiobutton_element_value,
.radiobutton .guideCheckBox[data-disabled="true"] .ajila_forms_radiobutton_element_value,
.toggleswitch .guideCheckBox[data-disabled="true"] .ajila_forms_radiobutton_element_value,
.checkbox .guideCheckBoxGroup[data-disabled="true"] .ajila_forms_radiobutton_title,
.radiobutton .guideCheckBoxGroup[data-disabled="true"] .ajila_forms_radiobutton_title,
.toggleswitch .guideCheckBoxGroup[data-disabled="true"] .ajila_forms_radiobutton_title,
.checkbox .guideCheckBox[data-disabled="true"] .ajila_forms_radiobutton_title,
.radiobutton .guideCheckBox[data-disabled="true"] .ajila_forms_radiobutton_title,
.toggleswitch .guideCheckBox[data-disabled="true"] .ajila_forms_radiobutton_title,
.checkbox .guideCheckBoxGroup[data-disabled="true"] .form-element__label,
.radiobutton .guideCheckBoxGroup[data-disabled="true"] .form-element__label,
.toggleswitch .guideCheckBoxGroup[data-disabled="true"] .form-element__label,
.checkbox .guideCheckBox[data-disabled="true"] .form-element__label,
.radiobutton .guideCheckBox[data-disabled="true"] .form-element__label,
.toggleswitch .guideCheckBox[data-disabled="true"] .form-element__label,
.checkbox .guideCheckBoxGroup[data-disabled="true"] .forms-checkbox-label .forms-checkbox__label,
.radiobutton .guideCheckBoxGroup[data-disabled="true"] .forms-checkbox-label .forms-checkbox__label,
.toggleswitch .guideCheckBoxGroup[data-disabled="true"] .forms-checkbox-label .forms-checkbox__label,
.checkbox .guideCheckBox[data-disabled="true"] .forms-checkbox-label .forms-checkbox__label,
.radiobutton .guideCheckBox[data-disabled="true"] .forms-checkbox-label .forms-checkbox__label,
.toggleswitch .guideCheckBox[data-disabled="true"] .forms-checkbox-label .forms-checkbox__label {
  color: var(--disabled-text);
}
.checkbox .guideCheckBox.validation-failure .guideFieldLabel,
.radiobutton .guideCheckBox.validation-failure .guideFieldLabel,
.toggleswitch .guideCheckBox.validation-failure .guideFieldLabel,
.checkbox .guideCheckBoxGroup.validation-failure .guideFieldLabel,
.radiobutton .guideCheckBoxGroup.validation-failure .guideFieldLabel,
.toggleswitch .guideCheckBoxGroup.validation-failure .guideFieldLabel,
.checkbox .guideCheckBox.validation-failure .guideFieldError,
.radiobutton .guideCheckBox.validation-failure .guideFieldError,
.toggleswitch .guideCheckBox.validation-failure .guideFieldError,
.checkbox .guideCheckBoxGroup.validation-failure .guideFieldError,
.radiobutton .guideCheckBoxGroup.validation-failure .guideFieldError,
.toggleswitch .guideCheckBoxGroup.validation-failure .guideFieldError {
  color: var(--error-color);
}
.checkbox .guideFieldWidget:hover,
.radiobutton .guideFieldWidget:hover,
.toggleswitch .guideFieldWidget:hover {
  cursor: pointer;
}
.ajila_forms_radiobutton_container input:checked:focus ~ .ajila_forms_radiobutton_label > .ajila_forms_radiobutton_circle,
.ajila_forms_radiobutton_container input:focus:not(:checked) ~ .ajila_forms_radiobutton_label > .ajila_forms_radiobutton_circle,
.forms-checkbox [type="checkbox"]:focus:checked + .forms-checkbox__label .guideFieldWidget input:checked ~ label,
.forms-checkbox [type="checkbox"]:focus + .forms-checkbox__label .forms-checkbox_faux,
.forms-checkbox [type="checkbox"]:focus:checked + .forms-checkbox__label .forms-checkbox_faux,
.checkbox_toggle [type="checkbox"]:focus + .checkbox_faux_container .checkbox_faux {
  border: 1px solid var(--main-color);
  box-shadow: 0 0 6px var(--main-color);
  outline: none;
}
.ajila_forms_radiobutton_container input:checked:focus ~ .ajila_forms_radiobutton_label > .ajila_forms_radiobutton_circle,
.forms-checkbox [type="checkbox"]:focus:checked + .forms-checkbox__label .guideFieldWidget input:checked ~ label,
.forms-checkbox [type="checkbox"]:focus:checked + .forms-checkbox__label .forms-checkbox_faux {
  background-color: var(--main-color);
}
.forms-checkbox [type="checkbox"]:focus + .forms-checkbox__label .forms-checkbox_faux,
.ajila_forms_radiobutton_container input:focus:not(:checked) ~ .ajila_forms_radiobutton_label > .ajila_forms_radiobutton_circle {
  background-color: var(--accent-main);
}
/*
***********************************************
* Toggle Switch
***********************************************
*/
.toggleswitch {
  display: block;
}
.toggleswitch .form-element__label {
  margin-left: 0 !important;
}
.toggleswitch input:checked + .checkbox_faux_container .checkbox_faux {
  background-color: var(--main-color) !important;
  border-color: var(--main-color) !important;
}
.toggleswitch .checkbox_toggle input {
  display: block;
}
/*
***********************************************
* Radio Button
***********************************************
*/
.radiobutton input {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  margin: 0;
  box-sizing: border-box;
  cursor: pointer;
}
.radiobutton .ajila_forms_radiobutton_container input:checked ~ .ajila_forms_radiobutton_label > .ajila_forms_radiobutton_circle {
  border: 1px solid var(--main-color);
  background-color: var(--accent-main);
}
.radiobutton .ajila_forms_radiobutton_container input:checked ~ .ajila_forms_radiobutton_label > .ajila_forms_radiobutton_circle:after {
  border: 1px solid var(--main-color);
  background-color: var(--main-color);
}
.radiobutton .guideFieldWidget.ajila_forms_radiobutton_container {
  position: relative;
  width: 100%;
  box-sizing: border-box;
}
.radiobutton .guideFieldWidget.ajila_forms_radiobutton_container .ajila_forms_radiobutton_circle {
  cursor: pointer;
}
.radiobutton .guideFieldWidget.ajila_forms_radiobutton_container:hover input:not(:checked) ~ .ajila_forms_radiobutton_label > .ajila_forms_radiobutton_circle:after {
  background: var(--main-hover-color);
  border-color: var(--main-hover-color);
}
.radiobutton .ajila_forms_radiobutton_label {
  display: flex;
  align-items: center;
}
.radiobutton .guideCheckBox[data-disabled="true"] input {
  cursor: default;
}
.radiobutton .guideCheckBox[data-disabled="true"] .guideFieldWidget input:checked ~ label > .ajila_forms_radiobutton_circle {
  border: 1px solid var(--disabled-color);
  background-color: var(--accent-main);
}
.radiobutton .guideCheckBox[data-disabled="true"] .guideFieldWidget input:checked ~ label > .ajila_forms_radiobutton_circle:after {
  border: 1px solid var(--disabled-color);
  background-color: var(--disabled-color);
}
.radiobutton .guideCheckBox[data-disabled="true"] .guideFieldWidget:hover.ajila_forms_radiobutton_container input ~ .ajila_forms_radiobutton_label > .ajila_forms_radiobutton_circle:after {
  background: var(--accent-main);
}
.radiobutton .guideCheckBox[data-disabled="true"] .guideFieldWidget:hover.ajila_forms_radiobutton_container input:checked ~ .ajila_forms_radiobutton_label > .ajila_forms_radiobutton_circle:after {
  background: var(--disabled-color);
}
.radiobutton .guideCheckBox[data-disabled="true"] .ajila_forms_radiobutton_circle {
  border: 1px solid var(--disabled-color);
  cursor: default;
}
.ajila_forms_radiobutton_container input ~ .ajila_forms_radiobutton_label > .ajila_forms_radiobutton_circle:after,
.guideCheckBoxGroup[data-disabled="true"] .ajila_forms_radiobutton_container input ~ .ajila_forms_radiobutton_label > .ajila_forms_radiobutton_circle:after {
  top: 3px;
  left: 3px;
  width: 12px;
  height: 12px;
}
/*
***********************************************
* Check Box
***********************************************
*/
.forms-checkbox input ~ label .forms-checkbox_faux {
  width: 20px;
  height: 20px;
  border-radius: 4px;
  background: var(--accent-main);
  border-color: var(--dark-color);
  margin-top: 1px;
}
.forms-checkbox input[type="checkbox"]:checked + label.forms-checkbox__label .forms-checkbox_faux {
  background-color: var(--main-color);
  border-color: var(--main-color);
}
.forms-checkbox input[type="checkbox"]:checked + label.forms-checkbox__label .forms-checkbox_faux:after {
  border-bottom: 2px solid white;
  border-left: 2px solid white;
  width: 0.6rem;
  transform: translate3d(-50%, -50%, 0) rotate(-54deg);
}
.guideCheckBoxGroup[data-disabled="true"] .forms-checkbox__label {
  cursor: default;
}
.guideCheckBoxGroup[data-disabled="true"] .guideFieldWidget input:checked ~ label > .forms-checkbox_faux {
  background-color: var(--disabled-color);
  border-color: var(--disabled-color);
}
.guideCheckBoxGroup[data-disabled="true"] .guideFieldWidget input:checked ~ label > .forms-checkbox_faux:after {
  border-bottom: 2px solid var(--disabled-text);
  border-left: 2px solid var(--disabled-text);
}
.guideCheckBoxGroup:not([data-disabled="true"]) .guideFieldWidget:hover input[type="checkbox"] ~ label.forms-checkbox__label > .forms-checkbox_faux {
  background-color: var(--main-hover-color);
  border-color: var(--main-hover-color);
}
/*
***********************************************
* Progress Stepper
***********************************************
*/
.forms-navigator {
  font-size: 0;
  margin-top: 16px;
  margin-bottom: 16px;
  height: auto;
}
.forms-navigator .nav-container {
  display: flex;
  align-items: flex-start;
  flex-wrap: nowrap;
}
.forms-navigator .progress-stepper-item {
  display: inline-block;
}
.forms-navigator .progress-stepper-item-graphics {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  align-content: center;
}
.forms-navigator .progress-stepper-item-circle {
  width: 32px;
  height: 32px;
  border-radius: 16px;
  font-family: var(--urbanist-bold);
  font-weight: 700;
  font-size: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition-duration: 0.15s;
  transition-property: background-color;
  background-color: var(--idle-color);
  flex-grow: 0;
  margin-right: 8px;
  margin-left: 8px;
  color: white;
  position: relative;
}
.forms-navigator .stepped .progress-stepper-item-circle {
  background-color: var(--accent-02);
  color: var(--main-color);
}
.forms-navigator .active .progress-stepper-item-circle {
  background-color: var(--main-color);
  color: white;
}
.forms-navigator .progress-stepper-item-line {
  margin-top: 15px;
  border-top: 2px solid var(--idle-color);
  flex-grow: 1;
  transition-duration: 0.15s;
  transition-property: border-top-color;
}
.forms-navigator .stepped .progress-stepper-item-line,
.forms-navigator .active .progress-stepper-item-line.before {
  border-top: 2px solid var(--accent-02);
}
.forms-navigator .progress-stepper-item-line.transparent,
.forms-navigator .active .progress-stepper-item-line.transparent,
.forms-navigator .stepped .progress-stepper-item-line.transparent {
  border: none;
}
.forms-navigator .progress-stepper-item-text {
  margin-top: 16px;
  text-align: center;
  font-family: var(--default-font);
  font-size: 12px;
  color: var(--idle-color);
}
.forms-navigator .active .progress-stepper-item-text,
.forms-navigator .stepped .progress-stepper-item-text {
  color: var(--dark-color);
}
.forms-navigator .stepped:not(.active) .progress-stepper-item-circle::after {
  content: url("standard-theme/assets/tenant/industry-energy/checkmark.svg");
  position: absolute;
  top: 0;
  left: 0;
  width: 32px;
  height: 32px;
  border-radius: 16px;
  font-family: var(--default-font);
  font-size: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--accent-02);
}
@media only screen and (max-width: 768px) {
  .forms-navigator .progress-stepper-item-text {
    display: none;
  }
}
.forms-navigator .progress-stepper-item-text,
.forms-navigator .progress-stepper-item-circle {
  cursor: not-allowed;
}
.forms-navigator .stepped .progress-stepper-item-text,
.forms-navigator .stepped .progress-stepper-item-circle,
.forms-navigator .active .progress-stepper-item-text,
.forms-navigator .active .progress-stepper-item-circle {
  cursor: pointer;
}
/*
***********************************************
* Message Box
***********************************************
*/
.messagebox {
  font-family: var(--default-font);
  color: var(--dark-color);
  border-radius: 24px;
  padding: 32px 32px 32px 58px;
  margin: 0.75rem 0;
  position: relative;
}
.messagebox p {
  margin: 0 0 1em;
}
.messagebox p:last-child {
  margin-bottom: 0;
}
.messagebox::before {
  position: absolute;
  top: 32px;
  left: 32px;
}
.messagebox:has(.infobox) {
  background-color: var(--infoBox-color);
}
.messagebox:has(.infobox)::before {
  content: url("standard-theme/assets/tenant/industry-energy/information.svg");
}
.messagebox:has(.successbox) {
  background-color: var(--successBox-color);
}
.messagebox:has(.successbox)::before {
  content: url("standard-theme/assets/tenant/industry-energy/success.svg");
}
.messagebox:has(.alertbox) {
  background-color: var(--alertBox-color);
}
.messagebox:has(.alertbox)::before {
  content: url("standard-theme/assets/tenant/industry-energy/alert.svg");
}
.messagebox a {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--dark-color);
  font-family: var(--input-font);
  font-weight: 500;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: 0.5px;
  text-decoration: none;
  transition: gap 0.2s ease;
}
.messagebox a::after {
  content: "";
  display: inline-block;
  width: 26px;
  height: 26px;
  background: var(--dark-color);
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'><path d='M10 7 L16 13 L10 19' stroke='black' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>") center / contain no-repeat;
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'><path d='M10 7 L16 13 L10 19' stroke='black' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>") center / contain no-repeat;
  transition: transform 0.2s ease;
}
.messagebox a:hover {
  gap: 8px;
  text-decoration: none;
}
.messagebox a:hover::after {
  transform: translateX(4px);
}
.messagebox:has(.errorbox) {
  background-color: var(--errorBox-color);
}
.messagebox:has(.errorbox)::before {
  content: url("standard-theme/assets/tenant/industry-energy/error.svg");
}
.repeatable-element .messagebox,
.messagebox:has(.small) {
  border-radius: 24px;
  padding: 0;
  padding-left: 26px;
  margin: 0.75rem 0;
  position: relative;
  background: none !important;
  font-size: 14px;
}
.repeatable-element .messagebox::before,
.messagebox:has(.small)::before {
  position: absolute;
  top: 0;
  left: 0;
}
/*
***********************************************
* Input and Select fields
***********************************************
*/
.guideTextBox .guideFieldLabel,
.guideNumericBox .guideFieldLabel,
.guideDropDownList .guideFieldLabel,
.guideDatePicker .guideFieldLabel,
.dt-container .guideFieldLabel {
  display: inline-block;
  color: var(--dark-color);
  font-family: var(--title-font);
  font-size: var(--label-font-size);
  margin-bottom: 4px;
}
.guideTextBox[data-mandatory="true"] .guideFieldLabel::after,
.guideNumericBox[data-mandatory="true"] .guideFieldLabel::after,
.guideDropDownList[data-mandatory="true"] .guideFieldLabel::after,
.guideDatePicker[data-mandatory="true"] .guideFieldLabel::after,
.dt-container[data-mandatory="true"] .guideFieldLabel::after {
  content: " *";
}
.guideTextBox .guideFieldWidget,
.guideNumericBox .guideFieldWidget,
.guideDropDownList .guideFieldWidget,
.guideDatePicker .guideFieldWidget,
.dt-container .guideFieldWidget,
.guideTextBox .dt-layout-row,
.guideNumericBox .dt-layout-row,
.guideDropDownList .dt-layout-row,
.guideDatePicker .dt-layout-row,
.dt-container .dt-layout-row {
  width: 100%;
}
.guideTextBox .guideFieldWidget input,
.guideNumericBox .guideFieldWidget input,
.guideDropDownList .guideFieldWidget input,
.guideDatePicker .guideFieldWidget input,
.dt-container .guideFieldWidget input,
.guideTextBox .dt-layout-row input,
.guideNumericBox .dt-layout-row input,
.guideDropDownList .dt-layout-row input,
.guideDatePicker .dt-layout-row input,
.dt-container .dt-layout-row input,
.guideTextBox .guideFieldWidget select,
.guideNumericBox .guideFieldWidget select,
.guideDropDownList .guideFieldWidget select,
.guideDatePicker .guideFieldWidget select,
.dt-container .guideFieldWidget select,
.guideTextBox .dt-layout-row select,
.guideNumericBox .dt-layout-row select,
.guideDropDownList .dt-layout-row select,
.guideDatePicker .dt-layout-row select,
.dt-container .dt-layout-row select,
.guideTextBox .guideFieldWidget .select2,
.guideNumericBox .guideFieldWidget .select2,
.guideDropDownList .guideFieldWidget .select2,
.guideDatePicker .guideFieldWidget .select2,
.dt-container .guideFieldWidget .select2,
.guideTextBox .dt-layout-row .select2,
.guideNumericBox .dt-layout-row .select2,
.guideDropDownList .dt-layout-row .select2,
.guideDatePicker .dt-layout-row .select2,
.dt-container .dt-layout-row .select2 {
  height: 52px;
  border: 1px solid var(--text-box-border-color);
  border-radius: 8px;
  padding: 13px 12px;
  color: var(--dark-color);
  font-size: var(--input-font-size);
  font-family: var(--input-font);
  font-weight: var(--input-font-weight);
  box-sizing: border-box;
  width: 100%;
  background-color: white;
}
.guideTextBox .guideFieldWidget input.dt-input,
.guideNumericBox .guideFieldWidget input.dt-input,
.guideDropDownList .guideFieldWidget input.dt-input,
.guideDatePicker .guideFieldWidget input.dt-input,
.dt-container .guideFieldWidget input.dt-input,
.guideTextBox .dt-layout-row input.dt-input,
.guideNumericBox .dt-layout-row input.dt-input,
.guideDropDownList .dt-layout-row input.dt-input,
.guideDatePicker .dt-layout-row input.dt-input,
.dt-container .dt-layout-row input.dt-input,
.guideTextBox .guideFieldWidget select.dt-input,
.guideNumericBox .guideFieldWidget select.dt-input,
.guideDropDownList .guideFieldWidget select.dt-input,
.guideDatePicker .guideFieldWidget select.dt-input,
.dt-container .guideFieldWidget select.dt-input,
.guideTextBox .dt-layout-row select.dt-input,
.guideNumericBox .dt-layout-row select.dt-input,
.guideDropDownList .dt-layout-row select.dt-input,
.guideDatePicker .dt-layout-row select.dt-input,
.dt-container .dt-layout-row select.dt-input,
.guideTextBox .guideFieldWidget .select2.dt-input,
.guideNumericBox .guideFieldWidget .select2.dt-input,
.guideDropDownList .guideFieldWidget .select2.dt-input,
.guideDatePicker .guideFieldWidget .select2.dt-input,
.dt-container .guideFieldWidget .select2.dt-input,
.guideTextBox .dt-layout-row .select2.dt-input,
.guideNumericBox .dt-layout-row .select2.dt-input,
.guideDropDownList .dt-layout-row .select2.dt-input,
.guideDatePicker .dt-layout-row .select2.dt-input,
.dt-container .dt-layout-row .select2.dt-input {
  padding: 2px 8px;
  height: auto;
  max-width: 256px;
  width: auto;
}
.guideTextBox .guideFieldWidget input:not(.select2-search__field):hover,
.guideNumericBox .guideFieldWidget input:not(.select2-search__field):hover,
.guideDropDownList .guideFieldWidget input:not(.select2-search__field):hover,
.guideDatePicker .guideFieldWidget input:not(.select2-search__field):hover,
.dt-container .guideFieldWidget input:not(.select2-search__field):hover,
.guideTextBox .dt-layout-row input:not(.select2-search__field):hover,
.guideNumericBox .dt-layout-row input:not(.select2-search__field):hover,
.guideDropDownList .dt-layout-row input:not(.select2-search__field):hover,
.guideDatePicker .dt-layout-row input:not(.select2-search__field):hover,
.dt-container .dt-layout-row input:not(.select2-search__field):hover,
.guideTextBox .guideFieldWidget select:not(.select2-search__field):hover,
.guideNumericBox .guideFieldWidget select:not(.select2-search__field):hover,
.guideDropDownList .guideFieldWidget select:not(.select2-search__field):hover,
.guideDatePicker .guideFieldWidget select:not(.select2-search__field):hover,
.dt-container .guideFieldWidget select:not(.select2-search__field):hover,
.guideTextBox .dt-layout-row select:not(.select2-search__field):hover,
.guideNumericBox .dt-layout-row select:not(.select2-search__field):hover,
.guideDropDownList .dt-layout-row select:not(.select2-search__field):hover,
.guideDatePicker .dt-layout-row select:not(.select2-search__field):hover,
.dt-container .dt-layout-row select:not(.select2-search__field):hover,
.guideTextBox .guideFieldWidget .select2:not(.select2-search__field):hover,
.guideNumericBox .guideFieldWidget .select2:not(.select2-search__field):hover,
.guideDropDownList .guideFieldWidget .select2:not(.select2-search__field):hover,
.guideDatePicker .guideFieldWidget .select2:not(.select2-search__field):hover,
.dt-container .guideFieldWidget .select2:not(.select2-search__field):hover,
.guideTextBox .dt-layout-row .select2:not(.select2-search__field):hover,
.guideNumericBox .dt-layout-row .select2:not(.select2-search__field):hover,
.guideDropDownList .dt-layout-row .select2:not(.select2-search__field):hover,
.guideDatePicker .dt-layout-row .select2:not(.select2-search__field):hover,
.dt-container .dt-layout-row .select2:not(.select2-search__field):hover,
.guideTextBox .guideFieldWidget input.select2-container--hover,
.guideNumericBox .guideFieldWidget input.select2-container--hover,
.guideDropDownList .guideFieldWidget input.select2-container--hover,
.guideDatePicker .guideFieldWidget input.select2-container--hover,
.dt-container .guideFieldWidget input.select2-container--hover,
.guideTextBox .dt-layout-row input.select2-container--hover,
.guideNumericBox .dt-layout-row input.select2-container--hover,
.guideDropDownList .dt-layout-row input.select2-container--hover,
.guideDatePicker .dt-layout-row input.select2-container--hover,
.dt-container .dt-layout-row input.select2-container--hover,
.guideTextBox .guideFieldWidget select.select2-container--hover,
.guideNumericBox .guideFieldWidget select.select2-container--hover,
.guideDropDownList .guideFieldWidget select.select2-container--hover,
.guideDatePicker .guideFieldWidget select.select2-container--hover,
.dt-container .guideFieldWidget select.select2-container--hover,
.guideTextBox .dt-layout-row select.select2-container--hover,
.guideNumericBox .dt-layout-row select.select2-container--hover,
.guideDropDownList .dt-layout-row select.select2-container--hover,
.guideDatePicker .dt-layout-row select.select2-container--hover,
.dt-container .dt-layout-row select.select2-container--hover,
.guideTextBox .guideFieldWidget .select2.select2-container--hover,
.guideNumericBox .guideFieldWidget .select2.select2-container--hover,
.guideDropDownList .guideFieldWidget .select2.select2-container--hover,
.guideDatePicker .guideFieldWidget .select2.select2-container--hover,
.dt-container .guideFieldWidget .select2.select2-container--hover,
.guideTextBox .dt-layout-row .select2.select2-container--hover,
.guideNumericBox .dt-layout-row .select2.select2-container--hover,
.guideDropDownList .dt-layout-row .select2.select2-container--hover,
.guideDatePicker .dt-layout-row .select2.select2-container--hover,
.dt-container .dt-layout-row .select2.select2-container--hover {
  border-color: var(--control-hover-color);
  outline: 1px solid var(--control-hover-color);
}
.guideTextBox .guideFieldWidget input:not(.select2-search__field):focus,
.guideNumericBox .guideFieldWidget input:not(.select2-search__field):focus,
.guideDropDownList .guideFieldWidget input:not(.select2-search__field):focus,
.guideDatePicker .guideFieldWidget input:not(.select2-search__field):focus,
.dt-container .guideFieldWidget input:not(.select2-search__field):focus,
.guideTextBox .dt-layout-row input:not(.select2-search__field):focus,
.guideNumericBox .dt-layout-row input:not(.select2-search__field):focus,
.guideDropDownList .dt-layout-row input:not(.select2-search__field):focus,
.guideDatePicker .dt-layout-row input:not(.select2-search__field):focus,
.dt-container .dt-layout-row input:not(.select2-search__field):focus,
.guideTextBox .guideFieldWidget select:not(.select2-search__field):focus,
.guideNumericBox .guideFieldWidget select:not(.select2-search__field):focus,
.guideDropDownList .guideFieldWidget select:not(.select2-search__field):focus,
.guideDatePicker .guideFieldWidget select:not(.select2-search__field):focus,
.dt-container .guideFieldWidget select:not(.select2-search__field):focus,
.guideTextBox .dt-layout-row select:not(.select2-search__field):focus,
.guideNumericBox .dt-layout-row select:not(.select2-search__field):focus,
.guideDropDownList .dt-layout-row select:not(.select2-search__field):focus,
.guideDatePicker .dt-layout-row select:not(.select2-search__field):focus,
.dt-container .dt-layout-row select:not(.select2-search__field):focus,
.guideTextBox .guideFieldWidget .select2:not(.select2-search__field):focus,
.guideNumericBox .guideFieldWidget .select2:not(.select2-search__field):focus,
.guideDropDownList .guideFieldWidget .select2:not(.select2-search__field):focus,
.guideDatePicker .guideFieldWidget .select2:not(.select2-search__field):focus,
.dt-container .guideFieldWidget .select2:not(.select2-search__field):focus,
.guideTextBox .dt-layout-row .select2:not(.select2-search__field):focus,
.guideNumericBox .dt-layout-row .select2:not(.select2-search__field):focus,
.guideDropDownList .dt-layout-row .select2:not(.select2-search__field):focus,
.guideDatePicker .dt-layout-row .select2:not(.select2-search__field):focus,
.dt-container .dt-layout-row .select2:not(.select2-search__field):focus,
.guideTextBox .guideFieldWidget input.select2-container--focus,
.guideNumericBox .guideFieldWidget input.select2-container--focus,
.guideDropDownList .guideFieldWidget input.select2-container--focus,
.guideDatePicker .guideFieldWidget input.select2-container--focus,
.dt-container .guideFieldWidget input.select2-container--focus,
.guideTextBox .dt-layout-row input.select2-container--focus,
.guideNumericBox .dt-layout-row input.select2-container--focus,
.guideDropDownList .dt-layout-row input.select2-container--focus,
.guideDatePicker .dt-layout-row input.select2-container--focus,
.dt-container .dt-layout-row input.select2-container--focus,
.guideTextBox .guideFieldWidget select.select2-container--focus,
.guideNumericBox .guideFieldWidget select.select2-container--focus,
.guideDropDownList .guideFieldWidget select.select2-container--focus,
.guideDatePicker .guideFieldWidget select.select2-container--focus,
.dt-container .guideFieldWidget select.select2-container--focus,
.guideTextBox .dt-layout-row select.select2-container--focus,
.guideNumericBox .dt-layout-row select.select2-container--focus,
.guideDropDownList .dt-layout-row select.select2-container--focus,
.guideDatePicker .dt-layout-row select.select2-container--focus,
.dt-container .dt-layout-row select.select2-container--focus,
.guideTextBox .guideFieldWidget .select2.select2-container--focus,
.guideNumericBox .guideFieldWidget .select2.select2-container--focus,
.guideDropDownList .guideFieldWidget .select2.select2-container--focus,
.guideDatePicker .guideFieldWidget .select2.select2-container--focus,
.dt-container .guideFieldWidget .select2.select2-container--focus,
.guideTextBox .dt-layout-row .select2.select2-container--focus,
.guideNumericBox .dt-layout-row .select2.select2-container--focus,
.guideDropDownList .dt-layout-row .select2.select2-container--focus,
.guideDatePicker .dt-layout-row .select2.select2-container--focus,
.dt-container .dt-layout-row .select2.select2-container--focus {
  border-color: var(--main-color);
  outline: 1px solid var(--main-color);
}
.guideTextBox.validation-failure .guideFieldLabel,
.guideNumericBox.validation-failure .guideFieldLabel,
.guideDropDownList.validation-failure .guideFieldLabel,
.guideDatePicker.validation-failure .guideFieldLabel,
.dt-container.validation-failure .guideFieldLabel {
  color: var(--error-color);
}
.guideTextBox.validation-failure .guideFieldError,
.guideNumericBox.validation-failure .guideFieldError,
.guideDropDownList.validation-failure .guideFieldError,
.guideDatePicker.validation-failure .guideFieldError,
.dt-container.validation-failure .guideFieldError {
  font-size: var(--supporting-text-font-size);
  font-weight: var(--supporting-text-font-weight);
  font-family: var(--supporting-text-font);
  margin-top: 4px;
  color: var(--error-color);
}
.guideTextBox.validation-failure input,
.guideNumericBox.validation-failure input,
.guideDropDownList.validation-failure input,
.guideDatePicker.validation-failure input,
.dt-container.validation-failure input,
.guideTextBox.validation-failure select,
.guideNumericBox.validation-failure select,
.guideDropDownList.validation-failure select,
.guideDatePicker.validation-failure select,
.dt-container.validation-failure select,
.guideTextBox.validation-failure .select2,
.guideNumericBox.validation-failure .select2,
.guideDropDownList.validation-failure .select2,
.guideDatePicker.validation-failure .select2,
.dt-container.validation-failure .select2,
.guideTextBox.validation-failure textarea,
.guideNumericBox.validation-failure textarea,
.guideDropDownList.validation-failure textarea,
.guideDatePicker.validation-failure textarea,
.dt-container.validation-failure textarea {
  border-color: var(--error-color);
}
.guideFieldNode[data-disabled="true"] .guideFieldLabel {
  color: var(--disabled-text);
}
.guideFieldNode[data-disabled="true"] .guideFieldWidget input,
.guideFieldNode[data-disabled="true"] .guideFieldWidget select,
.guideFieldNode[data-disabled="true"] .guideFieldWidget .select2 {
  color: var(--disabled-text);
  font-family: var(--default-font);
  font-weight: 400;
  border-color: var(--disabled-text);
  border-width: 1px;
}
.guideFieldNode[data-disabled="true"] .guideFieldWidget input:hover,
.guideFieldNode[data-disabled="true"] .guideFieldWidget select:hover,
.guideFieldNode[data-disabled="true"] .guideFieldWidget .select2:hover,
.guideFieldNode[data-disabled="true"] .guideFieldWidget input.select2-container--hover,
.guideFieldNode[data-disabled="true"] .guideFieldWidget select.select2-container--hover,
.guideFieldNode[data-disabled="true"] .guideFieldWidget .select2.select2-container--hover {
  border-color: var(--disabled-text);
  border-width: 1px;
}
.guideFieldNode[data-disabled="true"] .guideFieldWidget input:focus,
.guideFieldNode[data-disabled="true"] .guideFieldWidget select:focus,
.guideFieldNode[data-disabled="true"] .guideFieldWidget .select2:focus,
.guideFieldNode[data-disabled="true"] .guideFieldWidget input.select2-container--focus,
.guideFieldNode[data-disabled="true"] .guideFieldWidget select.select2-container--focus,
.guideFieldNode[data-disabled="true"] .guideFieldWidget .select2.select2-container--focus {
  border-color: var(--disabled-text);
  border-width: 1px;
}
/*
 ***********************************************
 * Dropdown
 ***********************************************
 */
.select2-container {
  background-image: none !important;
  position: relative;
}
/* TODO: Merge this with other style for dropdown? */
.guideDropDownList .guideFieldWidget .select2:hover:not(.select2-container--focus):not(.select2-container--disabled) {
  border-color: var(--control-hover-color);
  outline: 1px solid var(--control-hover-color);
}
.select2-container--default.select2-container--disabled .select2-selection--single {
  background: none;
  min-height: auto;
  padding-top: 13px !important;
}
.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__rendered {
  color: var(--disabled-text);
}
.select2-container .selection .select2-selection .select2-selection__arrow {
  display: block;
  position: absolute;
  top: 12px;
  right: 12px;
  height: 24px;
  width: 24px;
  padding: 0;
  margin: 0;
  content: url(standard-theme/assets/tenant/industry-energy/icon_chevron_down.svg);
  transition: transform 0.2s ease;
}
.select2-container.select2-container--open .select2-selection__arrow {
  transform: rotate(180deg);
}
.guideFieldNode[data-disabled="true"] .select2-container .select2-selection__arrow {
  content: url(standard-theme/assets/tenant/industry-energy/icon_chevron_disabled.svg);
}
.select2-container .selection .select2-selection {
  border: none;
  outline: none;
}
.select2-container .select2-selection--single .select2-selection__rendered {
  padding: 13px 0 !important;
}
/* Select2 renders placeholderText into this span itself in the closed state (confirmed via
   real DOM: <span class="select2-selection__placeholder">...</span>). An external
   accessibility script (ajila.forms.industry.common.accessibility, not in this repo)
   sets visibility: hidden on it though - confirmed via computed styles, not declared
   anywhere in this theme. !important is required to outrank that. */
.select2-container--default .select2-selection--single .select2-selection__rendered .select2-selection__placeholder {
  color: var(--input-field-text);
  visibility: visible !important;
}
.select2-container.select2-container--open .select2-dropdown {
  margin-top: 4px;
  border-radius: 8px;
  border: none;
  box-shadow: 0 0 6px 0 rgba(28, 31, 51, 0.25);
}
/* select2's own default (.select2-container--default .select2-results > .select2-results__options,
   loaded from its core CSS, not in this repo) caps this at 200px and outranks the plain
   .select2-container--open .select2-results__options rule above on specificity, so it must be
   matched here. Raised so noticeably more options are visible at once before the list needs
   to scroll. */
.select2-container--default .select2-results > .select2-results__options {
  max-height: 400px;
}
.select2-results__option {
  padding: 13px 12px;
}
.select2-container--default .select2-results__option[aria-disabled="true"] {
  padding: 8px 12px;
  font-family: var(--title-font);
  font-size: var(--label-font-size);
  font-weight: 700;
  text-transform: uppercase;
  background-color: var(--accent-01);
  color: var(--support-text);
  cursor: default;
}
.select2-container--default .select2-results__option--highlighted[aria-selected]:not([aria-disabled="true"]) {
  background-color: #F5F6F7;
  color: var(--dark-color);
}
.select2-container--default .select2-results__option[aria-selected="true"] {
  background-color: var(--support-03);
  color: var(--main-color);
}
.select2-container--default .select2-results__option[aria-selected="true"]::after {
  content: url("standard-theme/assets/tenant/industry-energy/checkmark.svg");
  margin-left: 8px;
  vertical-align: middle;
}
.select2-container--default .select2-results__option--highlighted[aria-selected]:first-of-type,
.select2-container--default .select2-results__option[aria-selected="true"]:first-of-type,
.select2-container--default .select2-results__option[aria-disabled="true"]:first-of-type {
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}
.select2-container--default .select2-results__option--highlighted[aria-selected]:last-of-type,
.select2-container--default .select2-results__option[aria-selected="true"]:last-of-type,
.select2-container--default .select2-results__option[aria-disabled="true"]:last-of-type {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
  height: 52px;
  border: 1px solid var(--text-box-border-color);
  border-radius: 8px;
  padding: 13px 12px;
  color: var(--dark-color);
  font-size: var(--input-font-size);
  font-family: var(--input-font);
  font-weight: var(--input-font-weight);
  box-sizing: border-box;
  width: 100%;
  margin: 0;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
  background: #F5F6F7;
  border: 1px solid var(--main-text);
}
.select2-container {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.select2-results__option::before {
  content: none !important;
}
.select2-search__field {
  margin: 0 !important;
}
.select2-selection__choice {
  margin: 0 !important;
  padding: 14.5px 0 !important;
  border: none !important;
  background: none !important;
}
.select2-selection__choice__remove {
  display: none !important;
}
/*
 ***********************************************
 * Datepicker
 ***********************************************
 */
.guidedatepicker .datepicker-calendar-icon {
  position: absolute;
  top: 12px;
  right: 12px;
  height: 24px;
  width: 24px;
  padding: 0;
  margin: 0 !important;
  background-image: url(standard-theme/assets/tenant/industry-energy/calendar.svg);
}
.guidedatepicker .datepicker-calendar-icon:hover {
  background-image: url(standard-theme/assets/tenant/industry-energy/calendar_hover.svg);
}
.guideDatePicker[data-disabled="true"] .datepicker-calendar-icon {
  background-image: url(standard-theme/assets/tenant/industry-energy/calendar_disabled.svg);
}
/*
 ***********************************************
 * Placeholder
 ***********************************************
 */
input::placeholder,
textarea::placeholder,
select::placeholder {
  color: var(--idle-color);
  font-family: var(--default-font);
  font-weight: 400;
}
/*
***********************************************
* Header
***********************************************
*/
.guideheader {
  border-bottom: 1px solid var(--accent-02);
}
.afHeader {
  margin: auto;
  padding: 8px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  gap: 32px;
  border: none;
  background: none;
}
.afHeader .containerbar {
  order: 0;
  flex-grow: 0;
  flex-shrink: 0;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  width: 240px;
  height: 80px;
  display: none;
  background-image: url(standard-theme/assets/tenant/industry-energy/logo.png);
}
@media (min-width: 768px) {
  .afHeader {
    width: 720px;
  }
  .afHeader .containerbar {
    display: inline-block;
  }
}
@media (min-width: 992px) {
  .afHeader {
    width: 940px;
  }
}
@media (min-width: 1200px) {
  .afHeader {
    width: 1140px;
  }
}
.afHeader .container {
  order: 1;
  padding: 0;
  flex-grow: 0;
  flex-shrink: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.afHeader .container .textdraw {
  display: block;
  color: var(--dark-color);
}
.afHeader .container .textdraw.headerText1 {
  font-size: 24px;
}
.afHeader .container .textdraw p {
  margin: 0;
}
/*
***********************************************
* Footer
***********************************************
*/
.guidefooter {
  border-top: 1px solid var(--accent-02);
  text-align: center;
}
.guidefooter p {
  display: inline-block;
  padding: 0 !important;
  margin: 1em;
}
/*
***********************************************
* Buttons
***********************************************
*/
button,
.linkButton {
  border-radius: 60px;
  padding: 12px 24px;
  margin: 5px 5px 5px 0;
  justify-content: center;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  display: inline-block;
  text-align: center;
  font-family: var(--default-font);
  font-feature-settings: 'liga' off, 'clig' off;
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: 0.5px;
}
button:hover,
.linkButton:hover {
  cursor: pointer;
}
.primarybutton button,
.nextitemnav button,
.submit button,
.linkButton.primary button,
.linkButton.primary {
  background: var(--primary-button-background);
  border: 1px solid var(--primary-button-background);
  color: var(--primary-button-color);
  transition: background 0.2s, color 0.2s ease-in-out;
}
.primarybutton button:hover,
.nextitemnav button:hover,
.submit button:hover,
.linkButton.primary button:hover,
.linkButton.primary:hover {
  background: var(--primary-button-background-hover);
  border-color: var(--primary-button-background-hover);
}
.primarybutton button:disabled,
.nextitemnav button:disabled,
.submit button:disabled,
.linkButton.primary button:disabled,
.linkButton.primary:disabled {
  background: var(--disabled-color);
  border-color: var(--disabled-color);
  color: var(--disabled-text);
  cursor: not-allowed;
}
.primarybutton button:disabled:hover,
.nextitemnav button:disabled:hover,
.submit button:disabled:hover,
.linkButton.primary button:disabled:hover,
.linkButton.primary:disabled:hover {
  background: var(--disabled-color);
  border-color: var(--disabled-color);
  color: var(--disabled-text);
}
.secondarybutton button,
.previtemnav button,
.linkButton.secondary {
  color: var(--secondary-button-color);
  background: none;
  border: 1px solid var(--secondary-button-border-color);
  transition: background 0.2s, color 0.2s, border-color 0.2s ease-in-out;
}
.secondarybutton button:hover,
.previtemnav button:hover,
.linkButton.secondary:hover {
  background: var(--secondary-button-background-hover);
  color: var(--secondary-button-color-hover);
  border-color: var(--secondary-button-border-color-hover);
}
.secondarybutton button:disabled,
.previtemnav button:disabled,
.linkButton.secondary:disabled {
  background: var(--accent-main);
  border-color: var(--disabled-color);
  color: var(--disabled-text);
  cursor: not-allowed;
}
.secondarybutton button:disabled:hover,
.previtemnav button:disabled:hover,
.linkButton.secondary:disabled:hover {
  background: var(--accent-main);
  border-color: var(--disabled-color);
  color: var(--disabled-text);
}
.linkButton.secondary {
  color: var(--main-text);
  border: 1px solid var(--main-text);
}
.linkButton.secondary:hover {
  background: var(--main-text);
  color: var(--background-color);
  border-color: var(--main-text);
}
.tertiarybutton button,
.linkButton.tertiary {
  background: none;
  color: var(--tertiary-button-color);
  border: none;
  padding: 0;
}
.tertiarybutton button .icon,
.linkButton.tertiary .icon {
  content: url("standard-theme/assets/tenant/industry-energy/tertiaryButton.svg");
  padding-left: 6px;
  transition: padding-left ease-in-out 0.2s;
}
.tertiarybutton button:hover .icon,
.linkButton.tertiary:hover .icon {
  padding-left: 14px;
}
.tertiarybutton button:disabled,
.linkButton.tertiary:disabled {
  color: var(--disabled-text);
  cursor: not-allowed;
}
.tertiarybutton button:disabled:hover .icon,
.linkButton.tertiary:disabled:hover .icon {
  padding-left: 6px;
}
.linkButton.tertiary::after {
  content: url("standard-theme/assets/tenant/industry-energy/tertiaryButton.svg");
  padding-left: 6px;
  transition: padding-left ease-in-out 0.2s;
}
.linkButton.tertiary:hover::after {
  padding-left: 14px;
}
.afToolbarButton .nextitemnav,
.afToolbarButton .submit {
  float: right;
}
.afToolbarButton button {
  margin-top: 40px;
}
.afToolbarButton .previtemnav {
  float: left;
}
/*
***********************************************
* Summary Component
***********************************************
*/
.summary__step {
  background-color: var(--infoBox-color);
  border-radius: 8px;
  padding: 36px;
  margin: 1rem 0;
}
.step-label {
  font-family: var(--title-font);
  font-weight: bold;
  font-size: 22px;
  margin-top: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.step-label a span {
  display: none;
}
.step-label a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  background: var(--main-color);
  border-radius: 50%;
}
.step-label a:hover {
  background: var(--main-hover-color);
}
.step-label a svg {
  filter: invert(1);
}
.summary__step > .row:last-of-type,
.step-level > .row:last-of-type {
  margin-bottom: 0;
}
.step-level .step__title {
  display: none;
}
.step-level .line {
  display: none;
}
.step-level .row h3 {
  font-family: var(--supporting-text-font);
  font-weight: var(--supporting-text-font-weight);
  font-size: var(--supporting-text-font-size);
  line-height: 18px;
  color: var(--support-text);
  margin: 0;
  margin-top: 1em;
}
.step-level .row h3 .edit-button {
  display: none;
}
.step-level .row .field-label {
  font-family: var(--supporting-text-font);
  font-weight: 500;
  font-size: 18px;
  line-height: 24px;
  color: var(--dark-color);
  margin-bottom: 0;
}
.step-level .row .field-label {
  font-family: var(--supporting-text-font);
  font-weight: 500;
  font-size: 18px;
  line-height: 24px;
  color: var(--dark-color);
}
/*
***********************************************
* Repeatables
***********************************************
*/
.repeatable-element {
  background-color: var(--infoBox-color);
  border-radius: 8px;
  padding: 1px 32px;
  margin-top: 1em;
  margin-bottom: 1em;
  position: relative;
}
.repeatable-remove button {
  position: absolute !important;
  top: 0;
  right: 0;
  background: none;
  border: none;
  padding: 12px;
  width: 54px;
  height: 54px;
  display: flex;
  justify-content: center;
  align-items: end;
}
.repeatable-remove button:hover {
  background: none;
}
.repeatable-remove button:hover .iconButton-icon::before {
  filter: invert(1) brightness(40%);
}
.repeatable-remove button .iconButton-icon::before {
  content: url("standard-theme/assets/tenant/industry-energy/trash-2.svg");
}
.repeatable-remove button .iconButton-label {
  Display: none;
}
.repeatable-add button {
  display: block;
  width: 100%;
  background: none;
  color: var(--main-text);
  border: 1px solid transparent;
}
.repeatable-add .iconButton-icon::before {
  content: "+ ";
}
.repeatable-add button:hover {
  background: none;
  border: 1px solid var(--main-text);
}
/*
***********************************************
* Long description
***********************************************
*/
.guideFieldLabel label {
  display: inline-block;
}
.guideHelpQuestionMark {
  width: 16px;
  height: 16px;
  margin-left: 4px;
  display: inline-block;
  background-image: url("standard-theme/assets/tenant/industry-energy/information.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  cursor: pointer;
  position: relative;
  vertical-align: top;
}
.guideFieldDescription.long {
  display: none;
  position: absolute;
  top: 8px;
  left: 8px;
  width: 256px;
  background-color: var(--accent-02);
  padding: 1.5rem;
  border-radius: 1.5rem;
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.3), 0px 2px 6px 0px rgba(0, 0, 0, 0.15);
  font-family: var(--default-font);
  font-size: var(--supporting-text-font-size);
  font-weight: normal;
  z-index: 10000;
}
.guideFieldDescription.long > *:first-child {
  margin-top: 0;
}
.guideFieldDescription.long > *:last-child {
  margin-bottom: 0;
}
.guideHelpQuestionMark:hover ~ div > .guideFieldDescription.long,
.guideHelpQuestionMark:focus ~ div > .guideFieldDescription.long,
.guideFieldDescription:hover {
  display: block;
}
.legInformation {
  border: 8px solid var(--infoBox-color);
  border-radius: 24px;
  padding: 32px;
}
.legInformation label,
.legInformation .guideFieldLabel {
  color: var(--main-text) !important;
}
.legInformation input,
.legInformation select {
  border: none !important;
  outline: none !important;
  padding: 0 !important;
  height: auto !important;
  background: none !important;
  color: var(--main-text) !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  text-indent: 1px;
  text-overflow: '';
}
.legInformation .select2-container .selection .select2-selection .select2-selection__arrow {
  display: none !important;
}
.dt-layout-full {
  width: 100%;
}
.guideTableNode table {
  /*table-layout: auto !important;*/
}
.guideTableNode table th,
.guideTableNode table td {
  text-align: left !important;
}
.guideTableNode table th *,
.guideTableNode table td * {
  display: inline-block !important;
  width: auto !important;
  margin: 0;
  font-size: 16px !important;
}
.guideTableNode table th input,
.guideTableNode table td input {
  field-sizing: content !important;
  /*font-size: 14px !important;*/
}
.dt-layout-table {
  overflow-x: auto;
}
.dt-layout-table th,
.dt-layout-table td {
  padding: 16px;
  text-align: left;
}
.dt-layout-table table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 4px;
  margin-top: 4px;
}
table input {
  pointer-events: none !important;
}
tbody tr:nth-child(even) {
  background-color: #F4F5F5;
}
th {
  border-bottom: 1px solid var(--main-text);
}
th p {
  text-align: left;
}
.dt-layout-row {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  gap: 16px;
}
.dt-layout-cell {
  display: inline-block;
}
.dt-paging {
  text-align: center;
}
.dt-paging-button {
  background: none;
  border: none;
  font-weight: normal;
  padding: 0;
  margin: 0;
  margin-left: 4px;
  margin-right: 4px;
  text-decoration: underline;
}
.dt-paging-button.current {
  font-family: var(--title-font);
  font-weight: bold;
}
td input,
td select,
td input:hover,
td select:hover,
td input:focus,
td select:focus {
  color: var(--main-text) !important;
  padding: 0 !important;
  border: none !important;
  outline: none !important;
}
.headersLeft.nonIETable td:not(.child) input {
  border: none !important;
  outline: none !important;
}
.right.guideButton {
  text-align: right;
}
.download .iconButton-icon {
  background-image: url(standard-theme/assets/tenant/industry-energy/download.svg);
  width: 18px;
  height: 18px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  display: inline-block;
}
.download button:hover .iconButton-icon {
  filter: grayscale(100%) brightness(500%);
}
.download button {
  border: none !important;
}
.hidden {
  display: none !important;
}
/*
 =================================================================================================================
  Overrides of archetype and customer style definitions are placed here.
 =================================================================================================================
*/
body.industry-energy-sww {
  min-height: 100vh;
  padding: 0;
  display: flex;
  flex-direction: column;
  /* padding:0 above overrides project.less's base "body { padding: 16px }"
     (a class selector always wins over a bare tag one). On desktop that's
     invisible because .afHeader gets its own fixed width instead, but
     below that there's nothing left to keep fields/buttons off the
     viewport edge. Restore side spacing only where it's actually needed. */
  /* .guideheader/.guidefooter (project.less) draw their border-bottom/
     border-top as the header/footer divider line, sized to their own box —
     which on mobile is inset by the 24px side padding restored above, so
     the line stops short of the viewport edges instead of spanning it.
     Pull them back out to the full viewport width with a matching negative
     margin so the divider touches both sides again.
     The AEM grid column class on this element (aem-GridColumn--default--12)
     is a *floated* "width: 100%" column (old Bootstrap-style float grid,
     confirmed via getBoundingClientRect/getComputedStyle on the rendered
     markup) - a plain negative margin-left/right on a floated, non-auto-
     width box only translates it, it doesn't grow it, so the box still
     fell 48px (both margins combined) short of the right edge. "width:auto"
     doesn't fix this either: floats use shrink-to-fit sizing for auto width
     (like inline-block), collapsing to content size instead of filling the
     container. calc() sidesteps both problems by growing the box by exactly
     the 48px reclaimed from the two negative margins.
     The ~"..." escapes the expression as a literal string - AEM's LESS
     compiler otherwise evaluates calc()'s own arguments as LESS math (unlike
     a real browser, or the standalone lessc 4.x used to sanity-check this
     file locally, both of which pass mixed-unit calc() straight through
     unevaluated), silently mangling "100% + 48px" into the nonsensical
     "148%" - confirmed by inspecting the actual deployed CSS output.
     !important is needed too: the AEM grid's own column rule (responsive.css,
     ".aem-Grid.aem-Grid--12 > .aem-GridColumn.aem-GridColumn--default--12
     { width: 100% }") carries four class selectors against our two-class-
     plus-element one, so without it that rule wins on specificity alone
     and this whole override is silently dropped - confirmed live via
     getComputedStyle/matches() against the actual rendered element. */
  /* Header logo (project.less:910-931): .containerbar carries the SWW
     "Stadtwerk Winterthur" logo as a background-image, hidden outright
     (display:none) below the 768px breakpoint with nothing put in its
     place — so the header is just blank on mobile. Show it there too.

     Höhe passend zum Logo (SDSWFH-4 "Logo ist leicht verzogen"): die
     Originalproportion ist 2002x339, also 5.906:1, die Box war mit
     240x80 aber 3:1 und damit deutlich zu hoch. Höhe daher aus der
     Breite abgeleitet: 240/5.906 = 40.6px bzw. 140/5.906 = 23.7px.
     Zur eigentlichen Verzerrung siehe logo.svg - dort standen die
     width/height-Attribute auf 180x33 (5.455:1) und stauchten das Logo
     um rund 8% in der Höhe; die Datei trägt jetzt die Originalmasse. */
  /* Schriftart vorübergehend auf Arial (SDSWFH-4): die Lizenzfragen zu den
     DIN-Schriften sind bei SWW noch offen, darum dürfen sie aktuell nicht
     ausgeliefert werden. Statt jede einzelne Fundstelle umzubiegen, werden
     hier die drei --din-*-Variablen im SWW-Scope überschrieben - alle
     bestehenden var(--din-*)-Verwendungen unten lösen damit auf Arial auf.
     Sobald die Lizenz geklärt ist, genügt es, diesen Block zu entfernen;
     die @font-face-Deklarationen in variables.less bleiben dafür bestehen. */
  --din-regular: Arial, Helvetica, sans-serif;
  --din-bold: Arial, Helvetica, sans-serif;
  --din-ot-medium: Arial, Helvetica, sans-serif;
  --default-font: var(--din-regular);
  --title-font: var(--din-bold);
  --supporting-text-font: var(--din-ot-medium);
  --input-font: var(--din-ot-medium);
  --main-color: #ed5f00;
  --main-hover-color: #b34800;
  --dark-color: #0f1013;
  --main-text: #1C1F33;
  --input-field-text: #D7D7D7;
  --disabled-text: #939494;
  --support-text: #666666;
  --disabled-color: #dcddde;
  /* State colors */
  --success-color: #bbd6a8;
  --error-color: #a80000;
  --successBox-color: #bbd6a8;
  /* Support colors */
  --support-03: #f5f6f7;
  --accent-main: #ffffff;
  --accent-01: #ffd6ba;
  --accent-02: #ffd6ba;
  --primary-button-background: #ed5f00;
  --primary-button-background-hover: #b34800;
  --secondary-button-color: #ed5f00;
  --secondary-button-border-color: #ed5f00;
  --secondary-button-background-hover: #ed5f00;
  --secondary-button-border-color-hover: #ed5f00;
  --tab-selected-color: #ed5f00;
  --header-bar-background-color: #ed5f00;
  --footer-background-color: #ed5f00;
  /* --support-03 is the same grey as the --highlighted hover background (project.less), so
     the base theme's grey background on the selected option looked like a stuck hover even
     with the pointer elsewhere. Drop it here for sww only; the orange text + checkmark above
     are enough to mark the option as selected.
     Select2 also auto-highlights the selected option when the dropdown opens (so keyboard
     nav starts there), so it carries --highlighted alongside aria-selected="true". The
     project.less rule for that combination (line ~790) sets color: var(--dark-color), which
     wins over the plain aria-selected color rule below by specificity - the text showed up
     dark instead of orange. Setting color here too (same specificity tier as that rule once
     the body.industry-energy-sww ancestor is counted) keeps it orange in both cases. */
  /* Abschluss confirmation box */
  /* Each confirmation box's field name (guideField.name) is rendered as a class on
     its outer node, always present regardless of messageBoxType — used here to
     override the generic .messagebox:has(.successbox) styling (wrong padding/color
     for this box) without touching that shared rule used by other message boxes.
     All three variants are listed: the default box plus the per-form ones that
     root.js swaps in. They must be matched by their own field-name classes and NOT
     be given a shared css="..." hook — root.js shows/hides each variant via
     $('.' + fieldName), so a class common to all three would make it hide every box.
     The ::before reset below is why the per-form boxes have to be listed: without it
     the generic successbox icon renders alongside the .confirmationBox-caption icon
     and the box shows two checkmarks.
     margin-top matches the "h3 { margin-top: 40px }" gap used everywhere else
     between the stepper/previous content and a section — the Abschluss step's
     panel has no title (hideTitle) and this box isn't an h3, so without this it
     falls back to the base .messagebox's much smaller 0.75rem margin instead. */
  /* .afFormTitle h1 (project.less) centers the real form title, and .formtitle
     above adds its 60px top gap - these confirmation-page title textdraws need
     their own hook for both, since they aren't rendered by the formtitle
     component. Shared by every form's title via the css="confirmationTitle" hook
     so they all render identically; only the text differs per form. */
  /* Der Titel der Bestaetigungsseite bekommt dieselbe Typografie wie der
     Formulartitel oben. Beide zeigen dieselbe Ueberschrift, werden aber von
     verschiedenen Komponenten erzeugt: im Formular vom formtitle-Component,
     hier von einem textdraw mit handgeschriebenem <h1>. Ohne eigene Regel
     faellt dieses <h1> auf die Browser-Standardgroesse zurueck und erbt
     gleichzeitig die Absatz-Zeilenhoehe von .guideTextDraw - genau die
     Kombination, die bei .formtitle oben schon korrigiert wurde. */
  /* AEM renders an inner content div inside the field's own wrapper that carries
     the same field-name class, so the rule above (correctly, by
     itself) matches BOTH the outer wrapper and this inner div — doubling the
     padding/margin/background. Reset the nested occurrence so the box styling
     is applied only once; it keeps the flex/gap from the rule above, which is
     what actually spaces the three paragraph lines. */
  /* Colour comes from the theme, not the SVG file, so it always matches SWW
     branding regardless of whatever fill is baked into the source asset. */
  /* Repeatable Einsatzort blocks ("Weiteren Hydranten hinzufügen").
     Section-to-section spacing is driven solely by the shared "h3 { margin-top: 40px }"
     rule (project.less); the base .repeatable-element's own margin would add extra
     space on top of that, making this section's gaps inconsistent with its
     non-repeatable sibling sections, so margin is zeroed out here to line up with
     the others. The 1px top/bottom padding is kept (only left/right zeroed) because
     it deliberately blocks margin collapsing between this box and the "Einsatzort"
     h3 title — .repeatable-remove's absolutely positioned trash button is anchored
     to this box's padding edge (top:0; right:0), and removing that 1px would shift
     the box's effective top past the button, misplacing it relative to the title. */
  /* Base rule centers the icon inside the 54px hit area (justify-content: center),
     which leaves a visible gap between the icon and the button's own right:0 edge.
     Right-align it instead so the icon sits flush with the panel's right edge, and
     nudge it down from the box's top edge to sit level with the "Einsatzort" title. */
  /* "PV-Preis" (and every other step name shown in the summary, e.g.
     "Allgemein") is rendered as a .step-label, not an h3 - confirmed by
     walking the actual DOM, not just reading the review screenshot. Its
     sibling .row wraps that step's first section title as an h3 several
     levels down (.row > .col-md-12.step-level > .row > h3), which still
     carries the base rule's full 32px margin-top; the .step-label's own
     22px margin-bottom doesn't shrink that, since a following element's
     top margin is what's compared against a preceding one's bottom margin
     for collapsing, and 32 already exceeds 22. Target that first h3
     directly and bring it down to the same 8px used above for title-to-
     content spacing everywhere else. */
  /* Consecutive label/value pairs (.row.item) inside a section render with
     no gap between them, so nothing marks where one pair ends and the next
     begins. */
  /* The 50/50 split above is desktop-only; on mobile it crams label/value
     pairs into a 375px-wide column, so let each stack full-width instead. */
  /* ============================================================ */
  /* Compact field pairs (Strasse+Nummer, PLZ+Ort, ...)           */
  /* ============================================================ */
  /* Reusable across all forms: mark the narrow field of a two-field row
     with .sww-col-narrow and the wide field with .sww-col-wide (via the
     field's css attribute in the form's .content.xml). Below the point
     where the base grid would otherwise stack every column to 100% width,
     this keeps the pair side by side instead, matching the Figma mobile
     design (e.g. house number next to street, ZIP next to city). Uses
     :has() rather than hardcoded col-md-N selectors so it doesn't depend
     on which grid column width the base runtime happens to render.
     The actual runtime DOM nesting from a field-pair's .row down to the
     hook class is always exactly ".row > [col] > .guidefield > [hook]"
     (verified against the rendered Hydrant/EVG markup) — the ">" chain
     below matches that exact depth. Without it, :has()'s unbounded
     descendant search also matches the *outer* wizard row (whose
     col-md-10 panel column contains, many levels deep, every field of
     the current step, hook classes included), forcing that row into a
     flex layout too and breaking the stepper/prev-next-arrow layout. */
  /* ============================================================ */
  /* Wizard toolbar buttons (Weiter/Zurück)                       */
  /* ============================================================ */
  /* Shared by every wizard-based form (EVG, IBAN, Hydrant, Confirmation):
     .nextitemnav/.submit/.previtemnav (project.less) float left/right at
     all widths today, which is too cramped for two full-width touch
     targets on mobile. Stack them full-width instead.
     Each button has its own single-child .afToolbarButton wrapper — the
     real shared parent all three (previtemnav, nextitemnav, submit) sit
     under as siblings is .guidetoolbar (verified against the rendered
     markup), always in that DOM order regardless of which two are
     visible on a given step. column-reverse there puts whichever of
     next/submit is visible above previtemnav, matching the Figma mobile
     design (primary action on top) on every step. */
  /* ============================================================ */
  /* Progress stepper labels                                      */
  /* ============================================================ */
  /* project.less hides .progress-stepper-item-text entirely below 768px
     (circles-only stepper). For SWW the step names should stay visible
     on mobile too, so override that back to shown. */
  /**
  ** EVG REQUEST
  **/
  /* Disable Bootstrap clearfix spacing on this formula row */
  /* Main formula row */
  /* Formula items */
  /* Left card */
  /* Input */
  /* Result card */
  /* Inner wrappers */
  /* Price cards */
  /* Card text */
  /* Input field */
  /* Unit inside input */
  /* Minus icon */
  /* Equals icon */
  /* Mobile */
  /* ============================================================ */
  /* VZEV check — result list with checkbox per address           */
  /* ============================================================ */
  /**
  ** IBAN CREDIT (Rückzahlung, SWWNR-15)
  **/
  /* Read-only case-info box on the "Informationen zur Rückzahlung erfassen" step.
     Hook lives on a textdraw (css="sww-info-box"); the values are placeholders for
     now and get populated from the case data once the backend is wired. */
  /* Centered "Bestätigen" button on the Authentifizierung step. */
  /* Sits directly under the success box, which brings no bottom margin of its own. */
  /* Quittung download; the hook lives on a textdraw, the href is filled in at runtime. */
}
@media (max-width: 767px) {
  body.industry-energy-sww {
    padding: 0 24px;
  }
}
@media (max-width: 767px) {
  body.industry-energy-sww .guideheader,
  body.industry-energy-sww .guidefooter {
    width: calc(100% + 48px) !important;
    margin-left: -24px;
    margin-right: -24px;
  }
}
body.industry-energy-sww .guideContainer {
  flex: 1 0 auto;
}
body.industry-energy-sww .afHeader .containerbar {
  height: 41px;
}
@media (max-width: 767px) {
  body.industry-energy-sww .afHeader .containerbar {
    display: block;
    width: 140px;
    height: 24px;
  }
}
body.industry-energy-sww .formtitle {
  padding-top: 60px;
  /* The wrapper div also carries .guideTextDraw, which sets a fixed
       18px/22px paragraph line-height (font-paragraph-small(), below) that
       the <h1> inherits — its own font-size is left at the browser's H1
       default (36px) since nothing overrides it. On desktop the title
       usually fits on one line, so the mismatch is invisible; on mobile
       it wraps to 2+ lines and those lines visually overlap. Give the
       actual heading its own explicit, matching type style instead of
       inheriting the paragraph one. */
}
body.industry-energy-sww .formtitle h1 {
  font-family: var(--din-bold);
  font-size: 20px;
  line-height: 26px;
  font-weight: 700;
  margin: 0;
}
body.industry-energy-sww .guidefield:not(.messagebox) {
  margin-top: 3px;
  margin-bottom: 12px;
  padding-bottom: 6px;
}
body.industry-energy-sww button,
body.industry-energy-sww .linkButton {
  font-family: var(--din-ot-medium);
  font-size: 18px;
  line-height: 24px;
  font-weight: 600;
}
body.industry-energy-sww .guidePanelDescription {
  font-family: var(--din-bold);
  font-size: 20px;
  line-height: 26px;
  font-weight: 700;
}
body.industry-energy-sww .guideFieldLabel {
  font-family: var(--din-bold);
  font-size: 14px;
  line-height: 18px;
  font-weight: 700;
}
@media (max-width: 768px) {
  body.industry-energy-sww .guideFieldLabel {
    font-family: var(--din-regular);
    font-weight: 400;
  }
}
body.industry-energy-sww .guideTextDraw {
  font-family: var(--din-regular);
  font-size: 18px;
  line-height: 24px;
  font-weight: 400;
}
@media (max-width: 768px) {
  body.industry-energy-sww .guideTextDraw {
    line-height: 22px;
  }
}
body.industry-energy-sww .ajila_forms_radiobutton_title {
  font-family: var(--din-regular);
  font-size: 18px;
  line-height: 24px;
  font-weight: 400;
}
@media (max-width: 768px) {
  body.industry-energy-sww .ajila_forms_radiobutton_title {
    line-height: 22px;
  }
}
body.industry-energy-sww .sww-title {
  font-family: var(--din-bold);
  font-size: 20px;
  line-height: 26px;
  font-weight: 700;
}
body.industry-energy-sww .sww-subtitle {
  margin-top: 24px;
  font-family: var(--din-regular);
  font-size: 18px;
  line-height: 24px;
  font-weight: 400;
}
@media (max-width: 768px) {
  body.industry-energy-sww .sww-subtitle {
    line-height: 22px;
  }
}
body.industry-energy-sww .strompreis-box {
  display: inline-block;
  background-color: #F5F6F7;
  border-radius: 4px;
  padding: 8px 12px;
  font-family: Arial, Helvetica, sans-serif;
  color: #1a1a1a;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
body.industry-energy-sww .strompreis-title {
  font-size: 14px;
  font-weight: 400;
  margin: 0 0 8px 0;
}
body.industry-energy-sww .strompreis-rate {
  font-size: 18px;
  font-weight: 700;
  margin: 2px 0;
  letter-spacing: 0.2px;
}
body.industry-energy-sww .messagebox:has(.infobox) {
  background: none;
  border-radius: 0;
  margin: 12px 0;
  padding: 0 0 0 26px;
  color: var(--dark-color);
  position: relative;
  min-height: 14px;
}
body.industry-energy-sww .messagebox:has(.infobox)::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 14px;
  height: 14px;
  transform: translateY(-50%);
  background-color: #ed5f00;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath fill='%23000' fill-rule='evenodd' clip-rule='evenodd' d='M7 0A7 7 0 1 0 7 14A7 7 0 1 0 7 0ZM7.87482 3.58744C7.87482 4.02237 7.52224 4.37494 7.08731 4.37494C6.65238 4.37494 6.2998 4.02237 6.2998 3.58744C6.2998 3.15251 6.65238 2.79993 7.08731 2.79993C7.52224 2.79993 7.87482 3.15251 7.87482 3.58744ZM5.7749 5.63438C5.7749 5.32737 6.05141 5.07849 6.3925 5.07849H7.21597C7.55706 5.07849 7.83357 5.32737 7.83357 5.63438V10.8227C7.83357 11.1297 7.55706 11.3786 7.21597 11.3786C6.87488 11.3786 6.59837 11.1297 6.59837 10.8227V6.19027H6.3925C6.05141 6.19027 5.7749 5.94139 5.7749 5.63438Z'/%3E%3C/svg%3E") no-repeat center / 14px 14px;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath fill='%23000' fill-rule='evenodd' clip-rule='evenodd' d='M7 0A7 7 0 1 0 7 14A7 7 0 1 0 7 0ZM7.87482 3.58744C7.87482 4.02237 7.52224 4.37494 7.08731 4.37494C6.65238 4.37494 6.2998 4.02237 6.2998 3.58744C6.2998 3.15251 6.65238 2.79993 7.08731 2.79993C7.52224 2.79993 7.87482 3.15251 7.87482 3.58744ZM5.7749 5.63438C5.7749 5.32737 6.05141 5.07849 6.3925 5.07849H7.21597C7.55706 5.07849 7.83357 5.32737 7.83357 5.63438V10.8227C7.83357 11.1297 7.55706 11.3786 7.21597 11.3786C6.87488 11.3786 6.59837 11.1297 6.59837 10.8227V6.19027H6.3925C6.05141 6.19027 5.7749 5.94139 5.7749 5.63438Z'/%3E%3C/svg%3E") no-repeat center / 14px 14px;
}
body.industry-energy-sww .messagebox:has(.infobox) p {
  margin: 0;
  font-family: var(--din-ot-medium);
  font-size: 14px;
  line-height: 18px;
  font-weight: 600;
}
@media (max-width: 768px) {
  body.industry-energy-sww .messagebox:has(.infobox) p {
    font-family: var(--din-regular);
    font-weight: 400;
  }
}
body.industry-energy-sww .forms-navigator .stepped:not(.active) .progress-stepper-item-circle::after {
  content: url("standard-theme/assets/tenant/sww/checkmark.svg");
}
body.industry-energy-sww .select2-container--default .select2-results__option[aria-selected="true"]::after {
  content: url("standard-theme/assets/tenant/sww/checkmark.svg");
}
body.industry-energy-sww .select2-container--default .select2-results__option[aria-selected="true"] {
  background-color: transparent;
  color: var(--main-color);
}
body.industry-energy-sww .select2-container .selection .select2-selection .select2-selection__arrow {
  content: url("standard-theme/assets/tenant/sww/icon_chevron_down.svg");
}
body.industry-energy-sww .guideFieldNode[data-disabled="true"] .select2-container .select2-selection__arrow {
  content: url("standard-theme/assets/tenant/sww/icon_chevron_disabled.svg");
}
body.industry-energy-sww .confirmationMessage,
body.industry-energy-sww .ibanCreditConfirmationMessage,
body.industry-energy-sww .messagebox:has(.confirmationMessage),
body.industry-energy-sww .messagebox:has(.ibanCreditConfirmationMessage) {
  display: flex !important;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  margin: 40px auto 0 !important;
  background: var(--accent-03) !important;
  border-radius: 24px !important;
  padding: 36px !important;
}
body.industry-energy-sww .confirmationMessage::before,
body.industry-energy-sww .ibanCreditConfirmationMessage::before,
body.industry-energy-sww .messagebox:has(.confirmationMessage)::before,
body.industry-energy-sww .messagebox:has(.ibanCreditConfirmationMessage)::before {
  content: none !important;
}
body.industry-energy-sww .confirmationTitle {
  padding-top: 60px;
}
body.industry-energy-sww .confirmationTitle h1 {
  font-family: var(--din-bold);
  font-size: 20px;
  line-height: 26px;
  font-weight: 700;
  margin: 0;
  text-align: center;
}
body.industry-energy-sww .confirmationMessage .confirmationMessage,
body.industry-energy-sww .ibanCreditConfirmationMessage .ibanCreditConfirmationMessage,
body.industry-energy-sww .messagebox:has(.confirmationMessage) .confirmationMessage,
body.industry-energy-sww .messagebox:has(.ibanCreditConfirmationMessage) .ibanCreditConfirmationMessage {
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border-radius: 0 !important;
}
body.industry-energy-sww .confirmationBox-caption {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  color: var(--dark-color);
  font-family: var(--din-ot-medium);
  font-size: 14px;
  line-height: 18px;
  font-weight: 600;
}
@media (max-width: 768px) {
  body.industry-energy-sww .confirmationBox-caption {
    font-family: var(--din-regular);
    font-weight: 400;
  }
}
body.industry-energy-sww .confirmationBox-caption::before {
  content: "";
  display: inline-block;
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  background: url("standard-theme/assets/tenant/industry-energy/success.svg") no-repeat center / contain;
}
body.industry-energy-sww .confirmationBox-title {
  margin: 0;
  font-family: var(--din-bold);
  font-size: 20px;
  line-height: 26px;
  font-weight: 700;
}
body.industry-energy-sww .confirmationBox-body {
  margin: 0;
  font-family: var(--din-regular);
  font-size: 18px;
  line-height: 24px;
  font-weight: 400;
}
@media (max-width: 768px) {
  body.industry-energy-sww .confirmationBox-body {
    line-height: 22px;
  }
}
body.industry-energy-sww .guidedatepicker .datepicker-calendar-icon {
  background-image: none;
  background-color: var(--main-color);
  -webkit-mask: url("standard-theme/assets/tenant/sww/calendar.svg") no-repeat center / contain;
  mask: url("standard-theme/assets/tenant/sww/calendar.svg") no-repeat center / contain;
}
body.industry-energy-sww .guidedatepicker .datepicker-calendar-icon:hover {
  background-color: var(--main-hover-color);
  -webkit-mask-image: url("standard-theme/assets/tenant/sww/calendar_hover.svg");
  mask-image: url("standard-theme/assets/tenant/sww/calendar_hover.svg");
}
body.industry-energy-sww .guideDatePicker[data-disabled="true"] .datepicker-calendar-icon {
  background-image: none;
  background-color: var(--disabled-text);
  -webkit-mask: url("standard-theme/assets/tenant/sww/calendar.svg") no-repeat center / contain;
  mask: url("standard-theme/assets/tenant/sww/calendar.svg") no-repeat center / contain;
}
body.industry-energy-sww .repeatable-element {
  background-color: transparent;
  padding: 1px 0;
  margin-top: 0;
  margin-bottom: 0;
}
body.industry-energy-sww .repeatable-remove button {
  justify-content: flex-end;
  padding-right: 0;
  top: 8px;
}
body.industry-energy-sww .repeatable-add button {
  color: var(--main-color);
  text-align: left;
}
body.industry-energy-sww .repeatable-add button:hover {
  border-color: var(--main-color);
}
body.industry-energy-sww .repeatable-remove button .iconButton-icon::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-color: var(--error-color);
  -webkit-mask: url("standard-theme/assets/tenant/industry-energy/trash-2.svg") no-repeat center / contain;
  mask: url("standard-theme/assets/tenant/industry-energy/trash-2.svg") no-repeat center / contain;
}
body.industry-energy-sww .repeatable-remove button:hover .iconButton-icon::before {
  filter: none;
  background-color: #5c0000;
}
body.industry-energy-sww #summaryOutput h3 {
  margin-top: 32px !important;
  margin-bottom: 10px !important;
}
body.industry-energy-sww .step-level .row h3 {
  font-size: 18px;
  line-height: 24px;
  color: var(--dark-color);
}
body.industry-energy-sww .step-level .row .field-label {
  font-size: 14px;
  line-height: 18px;
  color: var(--support-text);
}
body.industry-energy-sww #summaryOutput h3 + .row.item,
body.industry-energy-sww #summaryOutput h3 + .panel-level--2,
body.industry-energy-sww #summaryOutput h3 + .panel-level--3 {
  margin-top: 8px;
}
body.industry-energy-sww #summaryOutput .step-label + .row h3 {
  margin-top: 8px !important;
}
body.industry-energy-sww #summaryOutput .row.item {
  margin-bottom: 12px;
}
body.industry-energy-sww #summaryOutput .col-md-8,
body.industry-energy-sww #summaryOutput .col-md-4 {
  width: 50%;
}
@media (max-width: 767px) {
  body.industry-energy-sww #summaryOutput .col-md-8,
  body.industry-energy-sww #summaryOutput .col-md-4 {
    width: 100% !important;
  }
}
@media (max-width: 991px) {
  body.industry-energy-sww .row:has(> [class*="col-"] > .guidefield > .sww-col-narrow):has(> [class*="col-"] > .guidefield > .sww-col-wide) {
    display: flex !important;
    flex-wrap: wrap;
    gap: 16px;
    /* Bootstrap's clearfix (content:" "; display:table) on .row::before/
         ::after was meant for the old float-based grid; once the row
         becomes a flex container those pseudo-elements turn into extra
         (invisible but width-bearing) flex items, each still eating one
         "gap" of space — one before the narrow/wide pair and one after,
         narrowing the wide field and adding phantom empty space at both
         row edges. Same fix already applied to the Strompreis row below. */
  }
  body.industry-energy-sww .row:has(> [class*="col-"] > .guidefield > .sww-col-narrow):has(> [class*="col-"] > .guidefield > .sww-col-wide)::before,
  body.industry-energy-sww .row:has(> [class*="col-"] > .guidefield > .sww-col-narrow):has(> [class*="col-"] > .guidefield > .sww-col-wide)::after {
    content: none !important;
    display: none !important;
  }
  body.industry-energy-sww .row:has(> [class*="col-"] > .guidefield > .sww-col-narrow):has(> [class*="col-"] > .guidefield > .sww-col-wide) > [class*="col-"] {
    float: none !important;
    width: auto !important;
    margin-bottom: 0 !important;
  }
  body.industry-energy-sww .row:has(> [class*="col-"] > .guidefield > .sww-col-narrow):has(> [class*="col-"] > .guidefield > .sww-col-wide) > [class*="col-"]:has(> .guidefield > .sww-col-narrow) {
    flex: 0 1 96px;
    min-width: 72px;
  }
  body.industry-energy-sww .row:has(> [class*="col-"] > .guidefield > .sww-col-narrow):has(> [class*="col-"] > .guidefield > .sww-col-wide) > [class*="col-"]:has(> .guidefield > .sww-col-wide) {
    flex: 1 1 200px;
  }
}
@media (max-width: 768px) {
  body.industry-energy-sww .guidetoolbar {
    display: flex;
    flex-direction: column-reverse;
    gap: 16px;
    /* The flex gap only spaces buttons apart from each other, not the
         toolbar from its neighbours - on a step with a single button
         (no previtemnav) there's no second gap to fall back on at all, so
         without this the button sits flush against whatever field/link
         precedes it and flush against the footer divider that follows. */
    margin: 32px 0;
  }
  body.industry-energy-sww .afToolbarButton {
    /* The standard field-wrapper spacing (.guidefield's own top/bottom
         margin, meant to separate stacked form fields) still applies here
         since each button is itself a "field" — on top of the 12px flex
         gap above, that doubles up the space between the two buttons. */
  }
  body.industry-energy-sww .afToolbarButton .guidefield {
    margin: 0;
  }
  body.industry-energy-sww .afToolbarButton .nextitemnav,
  body.industry-energy-sww .afToolbarButton .submit,
  body.industry-energy-sww .afToolbarButton .previtemnav {
    float: none;
    width: 100%;
    /* project.less's ".afToolbarButton button { margin-top: 40px }" is
           sized for the desktop float layout (space above the row); the
           12px gap above already spaces the two stacked buttons apart, so
           this desktop margin (plus the button's own 5px margin-bottom)
           just adds more on top of that. */
  }
  body.industry-energy-sww .afToolbarButton .nextitemnav button,
  body.industry-energy-sww .afToolbarButton .submit button,
  body.industry-energy-sww .afToolbarButton .previtemnav button,
  body.industry-energy-sww .afToolbarButton .nextitemnav .linkButton,
  body.industry-energy-sww .afToolbarButton .submit .linkButton,
  body.industry-energy-sww .afToolbarButton .previtemnav .linkButton {
    width: 100%;
    margin: 0;
  }
}
@media only screen and (max-width: 768px) {
  body.industry-energy-sww .forms-navigator .progress-stepper-item-text {
    display: block !important;
  }
}
body.industry-energy-sww .pnl-strompreisBerechnung,
body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout,
body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout {
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout > .row:first-child::before,
body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout > .row:first-child::after {
  content: none !important;
  display: none !important;
}
body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout > .row:first-child {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 38px !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout > .row:first-child > .col-md-4 {
  float: none !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative !important;
}
body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout > .row:first-child > .col-md-4:first-child {
  flex: 1 1 180px !important;
  min-width: 180px !important;
}
body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout > .row:first-child > .col-md-4:nth-child(2) {
  flex: 2 1 280px !important;
  min-width: 260px !important;
}
body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout > .row:first-child > .col-md-4:nth-child(3) {
  flex: 1 1 180px !important;
  min-width: 180px !important;
}
body.industry-energy-sww .pnl-strompreisBerechnung .guidefield,
body.industry-energy-sww .pnl-strompreisBerechnung .guideFieldNode,
body.industry-energy-sww .pnl-strompreisBerechnung .guideFieldWidget {
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.industry-energy-sww .pnl-strompreisBerechnung .strompreis-box {
  width: 100% !important;
  min-height: 72px !important;
  height: auto !important;
  padding: 8px 12px !important;
  border-radius: 4px !important;
  background: #f6f6f7 !important;
  box-sizing: border-box !important;
}
body.industry-energy-sww .pnl-strompreisBerechnung .strompreis-box p {
  width: auto !important;
  height: auto !important;
  margin: 0 0 2px 0 !important;
  font-family: Urbanist-Regular-Variable, sans-serif !important;
  color: #1C1F33 !important;
  line-height: 18px !important;
}
body.industry-energy-sww .pnl-strompreisBerechnung .strompreis-title {
  font-size: 12px !important;
  margin-bottom: 6px !important;
}
body.industry-energy-sww .pnl-strompreisBerechnung .strompreis-rate,
body.industry-energy-sww .pnl-strompreisBerechnung .strompreis-rate b {
  font-size: 14px !important;
  line-height: 18px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}
body.industry-energy-sww .pnl-strompreisBerechnung .txb-Abzug .guideFieldWidget {
  position: relative !important;
  width: 100% !important;
}
body.industry-energy-sww .pnl-strompreisBerechnung .txb-Abzug input {
  width: 100% !important;
  height: 52px !important;
  border-radius: 8px !important;
  border: 1px solid #1C1F33 !important;
  font-size: 18px !important;
  padding: 13px 90px 13px 12px !important;
  box-sizing: border-box !important;
}
body.industry-energy-sww .pnl-strompreisBerechnung .txb-Abzug .guideFieldWidget::after {
  content: "Rp./kWh";
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-family: Urbanist-Bold, sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: #1C1F33;
  white-space: nowrap;
  pointer-events: none;
}
body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout > .row:first-child > .col-md-4:nth-child(2)::before {
  content: "";
  position: absolute;
  left: -31px;
  top: 40px;
  width: 24px;
  height: 24px;
  background: #1C1F33;
  mask: url("standard-theme/assets/tenant/sww/electricityCalculationMinus.svg") center / contain no-repeat;
}
body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout > .row:first-child > .col-md-4:nth-child(3)::before {
  content: "";
  position: absolute;
  left: -31px;
  top: 40px;
  width: 24px;
  height: 24px;
  background: #1C1F33;
  mask: url("standard-theme/assets/tenant/sww/electricityCalculationEqual.svg") center / contain no-repeat;
}
body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout > .row::before,
body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout > .row::after {
  content: none;
}
@media (max-width: 768px) {
  body.industry-energy-sww {
    /* Desktop positions these with an absolute "left: -31px" alongside the
       row's flex layout, which only makes sense when the three cards sit
       side by side. Once they stack full-width above, that offset would
       place the icon off the left edge of the card instead of in the gap
       above it, so reposition (rather than hide) them: static in normal
       flow, centered, right where the card's own top padding used to be -
       i.e. between it and the card above. */
  }
  body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout > .row:first-child {
    gap: 16px !important;
  }
  body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout > .row:first-child > .col-md-4 {
    flex: 1 1 100% !important;
    min-width: 100% !important;
  }
  body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout > .row:first-child > .col-md-4:nth-child(2)::before,
  body.industry-energy-sww .pnl-strompreisBerechnung > .gridFluidLayout > .guideLayout > .row:first-child > .col-md-4:nth-child(3)::before {
    position: static !important;
    left: auto !important;
    top: auto !important;
    display: block !important;
    margin: 0 auto 8px !important;
  }
}
body.industry-energy-sww .btn-vzevCheck {
  display: flex;
  justify-content: flex-end;
}
body.industry-energy-sww .txb-vzevHidden {
  display: none !important;
}
body.industry-energy-sww .pnl-vzevResults {
  width: 100%;
  max-width: none;
  margin-top: 16px;
}
body.industry-energy-sww .pnl-vzevResults > .gridFluidLayout > .guideLayout > .row::before,
body.industry-energy-sww .pnl-vzevResults > .gridFluidLayout > .guideLayout > .row::after {
  content: none;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem {
  margin: 0 0 12px 0;
  /* Margin reset matters for the vertical alignment, not just the spacing:
         align-items: center centers the flex item's *margin* box, so the
         column's inherited bottom margin would push the 20px checkbox above
         the row's optical centre while the text column stays centred. */
  /* Collapse the grid cell of a hidden helper field so it takes no width in
         the flex row. Direct children only — a column holding a visible sibling
         (txt-vzevAddressLine) must survive. */
  /* top:50%/translateY centers the checkbox within its 20px ancestor
         box regardless of the box model - "top: 0" alone left it pinned to
         the ancestor's top edge, so the faux box's own 1px border
         (content-box by default, so it adds to rather than eats into the
         20px) pushed the visible box a little below the row's true
         vertical center instead of sitting on it. */
  /* !important on position/top/transform is required here (unlike most
         of this file's overrides, which don't need it): the base checkbox
         widget centers this box in its 20px-tall label via its own
         "top: 10px; transform: translateY(-10px)" (common.css) - a
         same-specificity-tier declaration that, being written after ours
         in source order, otherwise wins outright, so our top/transform
         were silently never applied - confirmed live via getComputedStyle
         (kept reporting the base rule's values, not ours) even though a
         plain selector-specificity read said we should already win. */
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem > .gridFluidLayout > .guideLayout > .row {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  margin: 0 !important;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem > .gridFluidLayout > .guideLayout > .row > [class*="col-"] {
  padding: 0 !important;
  margin: 0 !important;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem > .gridFluidLayout > .guideLayout > .row > [class*="col-"]:has(> .txb-vzevHidden) {
  display: none !important;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 .guidefield,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 .guideFieldNode,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 .guideCheckBoxGroup,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 .guideCheckBoxGroupItems,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 .guideCheckBoxItem,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 .guideFieldWidget {
  width: 20px !important;
  min-width: 20px !important;
  max-width: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 input[type="checkbox"] {
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
  width: 20px !important;
  height: 20px !important;
  opacity: 0;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 {
  align-self: center !important;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 .guidefield,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 .guideFieldNode,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 .guideCheckBoxGroup,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 .guideCheckBoxGroupItems,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 .guideFieldWidget,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 .guideCheckBoxItem {
  position: relative !important;
  width: 20px !important;
  height: 20px !important;
  display: block !important;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 .forms-checkbox_faux {
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  box-sizing: border-box;
  width: 20px;
  height: 20px;
  border: 1px solid #ED5F00;
  border-radius: 4px;
  background: #fff;
  display: block;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 input[type="checkbox"]:checked + .forms-checkbox__label .forms-checkbox_faux,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 input[type="checkbox"]:checked ~ .forms-checkbox__label .forms-checkbox_faux,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 .forms-checkbox-item.selected .forms-checkbox_faux {
  background: #ED5F00;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 input[type="checkbox"]:checked + .forms-checkbox__label .forms-checkbox_faux::after,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 input[type="checkbox"]:checked ~ .forms-checkbox__label .forms-checkbox_faux::after,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-1 .forms-checkbox-item.selected .forms-checkbox_faux::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 45%;
  width: 6px;
  height: 11px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: translate(-50%, -50%) rotate(45deg);
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-11 {
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: none !important;
  display: flex !important;
  align-items: center !important;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-11 .guidefield,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-11 .guideFieldNode,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .col-md-11 .guideTextDraw {
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  min-height: 24px;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem > .gridFluidLayout > .guideLayout > .row::before,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem > .gridFluidLayout > .guideLayout > .row::after {
  content: none;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem > .gridFluidLayout > .guideLayout > .row:not(:first-child) {
  display: none !important;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .txt-vzevAddressLine,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .txt-vzevAddressLine p {
  margin: 0;
  padding: 0;
  line-height: 24px;
  color: var(--dark-color);
  font-family: var(--default-font);
  font-size: var(--text-font-size-normal);
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .guidecheckbox,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .guideCheckBoxGroup,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .guideCheckBoxItem,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .XfaCheckBox,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .guidecheckbox *,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .guideCheckBoxGroup *,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .guideCheckBoxItem *,
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .XfaCheckBox * {
  pointer-events: auto !important;
}
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .guidecheckbox input[type="checkbox"],
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .guideCheckBoxGroup input[type="checkbox"],
body.industry-energy-sww .pnl-vzevResults .pnl-vzevAddressItem .XfaCheckBox input[type="checkbox"] {
  pointer-events: auto !important;
  cursor: pointer;
}
body.industry-energy-sww .pnl-vzevAddressItem__checkbox {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0;
  gap: 4px;
  height: 24px;
}
body.industry-energy-sww .pnl-vzevAddressItem__checkbox input[type="checkbox"] {
  width: 20px;
  height: 20px;
  border: 1px solid #ED5F00;
  border-radius: 4px;
  accent-color: #ED5F00;
}
body.industry-energy-sww .sww-info-box {
  background-color: var(--support-03);
  border-radius: 8px;
  padding: 20px 24px;
  margin: 16px 0;
  /* Each info line is a <p>; the leading <b> is the label column, the
       trailing text node the value column (values populated at runtime from
       the hidden helper fields via replacePlaceholders). */
  /* .font-supporting-text() loads DIN-OT-Medium (600); above 768px the value
       text is meant to look bold, which requires actually switching to the
       DIN-Bold face (not just raising font-weight on the Medium face, which
       the browser would only fake by synthesizing/stretching it). The label
       (p b) is reset back to the Medium face so it doesn't inherit the bold
       one. Below 768px .font-supporting-text() already switches everything to
       DIN-Regular/400, where both columns are meant to look the same, so no
       override is needed there. */
}
body.industry-energy-sww .sww-info-box .sww-info-box__label {
  margin: 0 0 8px 0;
  color: var(--support-text);
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
}
body.industry-energy-sww .sww-info-box p {
  display: flex;
  gap: 8px;
  margin: 0 0 4px 0;
  color: var(--main-text);
  font-family: var(--din-ot-medium);
  font-size: 14px;
  line-height: 18px;
  font-weight: 600;
  font-weight: 700;
}
@media (max-width: 768px) {
  body.industry-energy-sww .sww-info-box p {
    font-family: var(--din-regular);
    font-weight: 400;
  }
}
@media (min-width: 769px) {
  body.industry-energy-sww .sww-info-box p {
    font-family: var(--din-bold);
  }
}
body.industry-energy-sww .sww-info-box p b {
  flex: 0 0 40%;
  font-weight: 400;
  color: var(--main-text);
}
@media (min-width: 769px) {
  body.industry-energy-sww .sww-info-box p b {
    font-family: var(--din-ot-medium);
  }
}
body.industry-energy-sww .sww-info-box p.sww-info-box__cont::before {
  content: "";
  flex: 0 0 40%;
}
@media (max-width: 768px) {
  body.industry-energy-sww .sww-info-box p {
    flex-direction: column;
    gap: 0;
    margin-bottom: 8px;
  }
  body.industry-energy-sww .sww-info-box p b {
    flex-basis: auto;
  }
  body.industry-energy-sww .sww-info-box p.sww-info-box__cont::before {
    display: none;
  }
}
body.industry-energy-sww .widget_ajila_forms_fileupload .guideFieldError {
  margin-top: 4px;
  color: var(--error-color);
  font-family: var(--din-ot-medium);
  font-size: 14px;
  line-height: 18px;
  font-weight: 600;
}
@media (max-width: 768px) {
  body.industry-energy-sww .widget_ajila_forms_fileupload .guideFieldError {
    font-family: var(--din-regular);
    font-weight: 400;
  }
}
body.industry-energy-sww .btn-auth-confirm {
  display: flex;
  justify-content: center;
  margin-top: 24px;
}
body.industry-energy-sww .sww-receipt-hint {
  margin-top: 24px;
}
body.industry-energy-sww .sww-download {
  margin-top: 16px;
}
body.industry-energy-sww .sww-download a.sww-download-link {
  display: inline-block;
  padding: 12px 24px;
  border: 1px solid #ed5f00;
  border-radius: 4px;
  color: #ed5f00;
  text-decoration: none;
}
body.industry-energy-sww .sww-download a.sww-download-link:hover,
body.industry-energy-sww .sww-download a.sww-download-link:focus {
  background-color: #ed5f00;
  color: #ffffff;
}
