/* Variables */
:root {
    --primary: rgb(255, 204, 0);
    --secondary: rgb(157, 157, 157);
    --white: #fff;
    --black: #000;
    --text-color: var(--black);
    --header-space: 0px;
    --header-height: 87px;
    --font: "FiraSans", Verdana, Swiss, Helvetica, Arial, sans-serif;
    --max-width: 1200px;
}

/* Font Faces */
@font-face {
    font-family: "FiraSans";
    src: url("fonts/FiraSans-Book.ttf") format("truetype"),
    url("fonts/fira-sans-v8-latin-regular.woff") format("woff");
    font-weight: normal;
    font-display: swap;
}

@font-face {
    font-family: "FiraSans";
    src: url("fonts/FiraSans-Bold.ttf") format("truetype"),
    url("fonts/fira-sans-v8-latin-regular.woff") format("woff");
    font-weight: bold;
    font-display: swap;
}

@font-face {
    font-family: "FiraSansMedium";
    src: url("fonts/FiraSans-Medium.ttf") format("truetype"),
    url("fonts/fira-sans-v8-latin-regular.woff") format("woff");
    font-weight: normal;
    font-display: swap;
}

html {
    font-size: 20px;
    scroll-padding-top: 190px;
}

body {
    font-size: 1rem;
    -webkit-text-size-adjust: 100%;
    hyphens: auto;
    -moz-hyphens: auto;
    -o-hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    word-wrap: break-word;
}

html,
body {
    scroll-behavior: smooth;
    box-sizing: border-box;
    font-family: var(--font);
    font-weight: 400;
    color: var(--text-color);
    background-color: var(--white);
    line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: bold;
    font-family: var(--font);
    line-height: 1.1;
    margin: 0;
    padding: 0;
    margin-bottom: 0.4rem;
}

h1 {
    font-size: 2.5rem;
}

h2 {
    font-size: 1.6875rem;
}

h3,
h4,
h5 {
    font-size: 1.2rem;
}

.menu.sf-menu li,
b,
optgroup,
strong,
#page .ui-widget {
    font-family: var(--font);
}

p,
ol,
ul {
    margin-top: 0;
    margin-bottom: 1rem;
}

#page li {
    margin-bottom: 0.4rem;
    font-size: 1rem;
    line-height: 1.5rem;
}

#main ol,
#main ul {
    padding-left: 24px;
}

li::marker {
    /* font-size: 24px;
    color: #243b70; */
}

ol {
    font-weight: 600;
}

p {
    font-weight: 400;
    margin-bottom: 1rem;
}

figure {
    margin: 0;
}

/* General Styles */
*,
*::before,
*::after {
    box-sizing: inherit;
}

.node__content {
    font-size: 1rem;
}

#login_links .form-item, #login_links .form-actions {
    margin-top: 1em;
    margin-bottom: 0.3em;
}

.entra_login {
    margin-top: 1em;
}

.entra_login a,
#main button:not(.trigger),
input[type="button"],
input[type="submit"],
.button {
    font-family: "FiraSansMedium";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    text-align: center;
    background-color: var(--primary);
    color: var(--text-color);
    padding: 0.375rem 0.75rem;
    font-size: 18px;
    letter-spacing: .018125rem;
    line-height: 1.5;
    border-radius: 0px;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    cursor: pointer;
    border: none;
}
#main  .slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 20px;
    height: 20px;
    padding: 5px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.entra_login a {
    display: block;
}

.ee_track_login_form_reset_password {
    font-size: 18px;
}

.entra_login a:hover,
#main button:not(.trigger):hover,
input[type="button"]:hover,
input[type="submit"]:hover,
.button:hover {
    background-color: var(--black);
    color: var(--primary);
}

.button.zeichnung {
    min-width: 300px;
    font-size: 1.3rem;
    line-height: 1.25;
}

.modal_login .item-list {
    display: none;
}

.modal_login .button {
    width: 100%;
    margin: 0;
}

#log_overlay {
    position: fixed;
    display: none;
    width: 100%;
    height: 120vh;
    top: -30px;
    left: 0px;
    overflow: hidden;
    background-color: rgba(0, 0, 0, 0.1);
    z-index: 1000;
}

.system_messages_wrapper {
    background-color: var(--primary) !important;
    color: var(--black) !important;
}

/* Hide scrollbar for Chrome, Safari and Opera */
.system_messages_wrapper::-webkit-scrollbar {
    display: none;
}

.system_messages_wrapper .messages {
    display: block;
    clear: both;
    margin-bottom: 0;
    border: none !important;
    background-color: var(--white) !important;
    box-shadow: none;
    color: var(--text-color) !important;
    border-radius: 0;
}

.messages__wrapper.layout-container {
    max-width: 100%;
}

.system_messages_wrapper .closer {
    float: right;
    cursor: pointer;
    font-size: 18px;
    padding: 5px;
    margin-right: 0;
    color: var(--white);
}

.ui-dialog-titlebar {
    background-color: var(--primary) !important;
    color: var(--white);
}

.contextual-region .contextual .contextual-links a {
    color: #333 !important;
}

/* Allgemeine Styles */
a,
.link {
    color: var(--primary);
    transition: color 0.3s;
}

.ee_content_block {
    position: relative;
}

.undeline {
    text-decoration: underline;
}

.color-primary {
    color: var(--primary);
}

.color-secondary {
    color: var(--secondary);
}

.bg-primary {
    background: var(--primary);
}

.bg-secondary {
    background: var(--secondary);
}

.bg-white {
    background: var(--white);
}

.bg-padding {
    padding: 50px 0;
}

.text-center {
    text-align: center;
}

.margin-top {
    margin-top: 110px !important;
}

.padding10 {
    padding: 10%;
}

.eu-cookie-compliance-message button {
    color: var(--text-color);
}

/* Header */
.toolbar-fixed.toolbar-tray-open {
    --header-space: 29px;
}

.toolbar-fixed {
    --header-space: 39px;
}

.toolbar-fixed.toolbar-horizontal.toolbar-tray-open {
    --header-space: 79px;
}

#page > header {
    position: relative;
    width: 100%;
    background-color: var(--white);
    top: 0;
    z-index: 300;
    border-bottom: thick solid var(--primary);
}

#header_inner {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    width: 100%;
    margin: 0 auto;
    padding: 0.4rem 0.8rem;
}

#logo,
#logo a.site-logo,
#logo .eueco-logo {
    display: flex;
    align-items: center;
}

#logo {
    gap: 1.5em;
}

#logo img {
    width: auto;
    height: 40px;
}

#page.header_fixt {
    margin-top: var(--header-height);
}

#page.header_fixt > header {
    position: fixed;
    top: var(--header-space);
}

.header_fixt #header_inner {
    /* margin-left: auto;
    margin-right: auto;
    max-width: var(--max-width);
    padding-top: 0;
    padding-bottom: 0; */
}

/* Header Image */
#preface_top {
}

#preface_top .view-content > div {
    position: relative;
}

.headertext {
    position: relative;
    bottom: 0;
}

.headerimage,
.headerimage * {
    width: 100%;
    height: auto;
}

.headerbild_image {
    position: relative;
}

.headerbild_image img {
    margin: 0 auto;
    display: block;
    object-fit: cover;
    object-position: center;
}

/* Headertext */
.headertext .slideshow_content_inner_wrapper {
    z-index: 1;
    max-width: var(--max-width);
    margin-right: auto;
    margin-left: auto;
    position: relative;
    padding: 0 20px;
}

.headertext .slideshow_content_inner_wrapper > .gb-container {
    display: flex;
    max-width: 50%;
}

.headertext h1.gb-headline {
    color: var(--text-color);
    margin: 0;
    min-height: 3.5em;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    background-color: rgba(255, 204, 0, 0.8);
    top: -4rem;
    position: relative;
    padding: 1.2rem;
}

/* Login Logout Bar */
.login_out_block a {
    display: flex;
    align-items: center;
    font-family: var(--font);
    color: rgb(157, 157, 157);
    hyphens: none;
    text-decoration: none;
    border: none;
    font-weight: 400;
    text-transform: uppercase;
    margin: 0;
    line-height: 1.5;
    transition: unset;
    font-size: 19.2px;
    line-height: 28.8px;
    padding: 19.2px 1.6px 0;
    border-bottom: 2px solid transparent;
}

.login_out_block a:hover {
    border-bottom-color: #e9ecef;
    font-weight: bold;
    color: var(--black);
}

/* Primary Menu */
#primary-menu {
    display: flex;
}

#primary-menu .block-superfish {
    width: auto;
}

#primary-menu .content,
#primary-menu .content > .menu {
    line-height: normal;
}

#primary-menu .content .menu {
    display: flex;
    gap: 5em;
}

#primary-menu .content > .menu > li {
    display: flex;
}

#primary-menu .content .sf-menu > li ul {
    background: var(--white) !important;
    opacity: 1;
    width: auto !important;
    border-top: none;
    top: 100%;
    box-shadow: 1px 1px 0 rgba(0, 0, 0, .1);
}

#primary-menu .content .sf-menu > li ul ul {
    top: 0;
}

#primary-menu .content ul li a {
    font-family: var(--font);
    color: rgb(157, 157, 157);
    background-color: transparent;
    font-weight: 400;
    text-transform: uppercase;
    margin: 0;
    transition: unset;
    font-size: 19.2px;
    line-height: 28.8px;
    padding: 19.2px 1.6px 0;
    border-bottom: 2px solid transparent;
}

#primary-menu .content ul li a:hover {
    border-bottom-color: #e9ecef;
    font-weight: bold;
}

#primary-menu a.menuparent:after {
    font-family: "Font Awesome 5 Free";
    content: "\f078";
    padding-left: 10px;
    font-weight: 600;
    font-size: 10px;
}

#primary-menu .content .sf-menu > li ul a {
    line-height: normal;
    padding: 10px 20px;
    font-size: 1rem;
}

#primary-menu .content .sf-menu li:hover,
#primary-menu .sfHover {
    color: var(--primary);
}

#primary-menu .content .sf-menu li:hover > a {
    color: var(--black);
}

a:hover,
a:active,
a:focus,
.link:hover,
.link:active,
.link:focus {
    text-decoration: none;
    border-bottom-style: none;
}

#primary_menu_wrapper {
}

/* Mobile Menu */
#mm_navibutton_wrapper {
    display: none;
}

.hamburger {
    padding: 14px 0 10px;
    display: inline-block;
    cursor: pointer;
    transition-property: opacity, filter;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    font: inherit;
    color: inherit;
    text-transform: none;
    background-color: transparent;
    border: 0;
    margin: 0;
    overflow: visible;
}

.hamburger.is-active:hover,
.hamburger:hover {
    opacity: 0.7;
}

.hamburger-box {
    width: 15px;
    height: 13px;
    display: inline-block;
    position: relative;
}

.hamburger-inner {
    display: block;
    top: 50%;
    margin-top: -2px;
}

.hamburger-inner,
.hamburger-inner::after,
.hamburger-inner::before {
    width: 15px;
    height: 2px;
    background-color: var(--secondary);
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease;
}

.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::after,
.hamburger.is-active .hamburger-inner::before {
    background-color: var(--secondary);
}

.slick-list,
.slick-slider,
.slick-track {
    position: relative;
    display: block;
}

.hamburger-inner::after,
.hamburger-inner::before {
    content: "";
    display: block;
}

.hamburger-inner::before {
    top: -14px;
}

.hamburger-inner::after {
    bottom: -14px;
    right: 0;
}

.hamburger--slider .hamburger-inner {
    top: 2px;
}

.hamburger--slider .hamburger-inner::before {
    top: 5px;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: 0.15s;
}

.hamburger--slider .hamburger-inner::after {
    top: 10px;
}

.hamburger--slider.is-active .hamburger-inner::after {
    top: 28px;
}

.hamburger--slider.is-active .hamburger-inner {
    transform: translate3d(0, 14px, 0) rotate(45deg);
}

.hamburger--slider.is-active .hamburger-inner::before {
    transform: rotate(-45deg) translate3d(-5.43px, -10px, 0);
    opacity: 0;
}

.hamburger--slider.is-active .hamburger-inner::after {
    transform: translate3d(0, -28px, 0) rotate(-90deg);
}

#mobile_menu_wrapper {
    background: rgb(44 88 161 / 20%);
    position: fixed;
    height: 100vh;
    width: 0%;
    top: 0;
    right: 0;
    transition: width 0.5s;
    z-index: 20;
}

#mobile_menu_wrapper.open {
    width: 100%;
}

#mobile_menu_wrapper #menu {
    width: 66.6666666667%;
    background-color: var(--white);
    position: absolute;
    right: 0;
    top: var(--header-space);
    height: calc(100vh - var(--header-space));
    overflow: auto;
}

#mobile_menu_wrapper #menu > div {
    padding: 2rem 2rem 2rem 8rem;
}

#mobile_menu_wrapper #menu > div > .menu > .menu-item,
#mobile_menu_wrapper .content > .menu > .menu-item {
    padding-bottom: 1rem;
}

#mobile_menu_wrapper ul.menu li {
    list-style: none;
    text-align: center;
}

#mobile_menu_wrapper ul.menu li a {
    color: var(--text-color);
    font-size: 15px;
    font-weight: 600;
    text-transform: uppercase;
    width: 100%;
    position: relative;
    z-index: 2;
    line-height: 40px;
}

#mobile_menu_wrapper ul.menu li a::before {
    content: "";
    width: 12px;
    position: absolute;
    right: -4px;
    top: 10px;
    height: 100%;
    z-index: -1;
    background-color: var(--white);
}

#mobile_menu_wrapper ul.menu li a:hover::after {
    right: -15px;
}

#menu .navigation-trigger {
    position: absolute;
    top: 0;
    right: 0;
}

.login-logout-mobile {
    display: none;
    float: left;
    padding: 0 20px;
}

.login-logout-mobile .anmelden_toggle,
.login-logout-mobile .abmelden_toggle {
    color: var(--primary);
    font-weight: 600;
    position: relative;
    background: none;
    line-height: 40px;
    padding: 0;
    border: none;
}

/* Form */
body .form-text,
body .form-email,
body .form-date,
body .form-time,
body .form-number,
body .form-select,
body .form-textarea {
    box-sizing: border-box !important;
    width: 100%;
    line-height: 1;
    font-family: var(--font);
    background-color: var(--white);
    padding: 12px 16px !important;
    max-width: unset !important;
    color: var(--text-color) !important;
    border-radius: 5px;
    border: 1px solid #dadada;
    height: auto !important;
}

body .form-textarea {
    min-height: 160px;
}

.webform-button--submit {
    float: right;
}

.webform-submission-form .form-item label {
    display: inline;
}

/* FAQ */
.text-element--content.faq {
    flex-wrap: wrap;
    margin-top: 2rem;
}

.faq_header {
    width: 100%;
    display: flex;
    justify-content: space-between;
    gap: 20px;
}

.faq_header a {
    position: relative;
    display: block;
    background-color: var(--primary);
    text-align: center;
    color: var(--white);
    flex: 1;
    min-width: unset;
    width: 49%;
    padding: 14.2px;
    font-size: 18px;
    border-radius: 15px;
}

.faq_header a:hover {
    text-decoration: none;
    border: none;
}

.faq_header a.active {
    color: var(--text-color);
    background-color: #9b9b9b;
}

.block-ee-faq {
    width: 100%;
}

.faq_headline {
    font-size: 1rem;
    margin-bottom: 1rem;
}

.faq_block {
    width: 100%;
    margin: 0 auto;
    padding: 1em 0;
}

.faq_block .accordion {
    margin-bottom: 2em;
}

.block-ee-faq .ui-accordion-content {
    padding: 7px 2.2em 20px 2.2em;
    border-top: 0;
    margin-top: -2px;
    position: relative;
    top: 1px;
    margin-bottom: 2px;
    overflow: auto;
    display: none;
    zoom: 1;
    height: auto !important;
    border: none;
    border-radius: 0;
    margin-left: 20px;
}

.block-ee-faq .ui-accordion-header-icon {
    display: none;
}

.block-ee-faq .ui-accordion-header {
    position: relative;
    color: var(--text-color);
    padding: 0.9em;
    border: none;
    background: transparent;
    font-size: 20px;
    font-weight: 600;
    text-align: left;
    border-radius: 0;
    line-height: 1.4;
    padding: 48px 80px 48px 20px;
    margin-left: 20px;
    margin-top: 4px;
    position: relative;
    box-shadow: 0 2px 80px 0 rgba(0, 0, 0, 0.07);
}

.block-ee-faq .ui-accordion-header.ui-accordion-header-active {
    color: var(--text-color);
    border: none !important;
    border-radius: 0;
}

/*.block-ee-faq .ui-accordion-header::before {*/
/*    content: " ";*/
/*    color: #f90;*/
/*    font-size: 20px;*/
/*    width: 40px;*/
/*    height: 40px;*/
/*    line-height: 1.3;*/
/*    position: absolute;*/
/*    left: -22px;*/
/*    top: 35%;*/
/*    text-align: center;*/
/*    font-weight: 100;*/
/*    margin-top: -10px;*/
/*    border: 2px solid #f90;*/
/*    border-radius: 50%;*/
/*}*/

.block-ee-faq .ui-accordion-header::before {
    font: var(--fa-font-regular);
    content: "\f13a";
    color: #f90;
    font-size: 40px;
    font-weight: 300;
    margin-right: 20px;
    float: left;
    margin-top: -8px;
}


.block-ee-faq .ui-accordion-header.ui-accordion-header-active::before {
    content: "\f139";
    color: #00c261;
    border: none;
}


/* Div Table */
.divTable {
    display: table;
    width: 100%;
}

.divTableRow {
    display: table-row;
}

.divTableHeading {
    background-color: #eee;
    display: table-header-group;
}

.divTableCell,
.divTableHead {
    display: table-cell;
    padding-top: 1rem;
    padding-right: 0.5rem;
}

.divTableHeading {
    background-color: #eee;
    display: table-header-group;
    font-weight: bold;
}

.divTableFoot {
    background-color: #eee;
    display: table-footer-group;
    font-weight: bold;
}

.divTableBody {
    display: table-row-group;
}

/* Datenschutz */
.divrow {
    display: table-row;
}

.divrow > div {
    display: table-cell;
    padding: 0.5rem 0;
}

.divrow:first-child > div {
    border-top: none;
}

.divtable .divrow > div:first-child {
    width: 38%;
}

.divtable .divrow > div:last-child {
    text-align: right;
    width: 60%;
}

.divtable .divrow:last-child > div {
    border-bottom: none;
}

.datenschutz .divrow > div {
    display: table-cell;
    border-bottom: 1px solid var(--primary);
    padding: 10px;
}

.datenschutz .divrow > div:nth-child(3) {
    width: 150px;
}

.datenschutz .divrow > div:first-child {
    font-weight: 700;
    font-size: 1.25rem;
    color: var(--primary);
}

.datenschutz .divrow > div:first-child {
    font-weight: 600;
    font-size: inherit;
    color: var(--primary);
    width: auto;
}

.datenschutz .divrow.th {
    font-weight: 600;
    color: var(--primary);
}

.datenschutz .divrow > div:last-child {
    text-align: left;
    width: auto;
}

.datenschutz .divrow {
    width: 100%;
    float: none;
    display: table-row;
    padding-right: 5%;
    border-left: none;
    margin-bottom: 2rem;
    padding-left: 1rem;
    border-bottom: 1px solid var(--primary);
}

.datenschutz.divtable .divrow:last-child > div {
    border-bottom: 1px solid var(--primary) !important;
}

/* Footer */
footer .bg-primary {
    background-color: var(--primary);
    padding: 0.8rem;
}

footer a {
    color: var(--text-color);
}

#footer {
    background: none;
}

.region-footer,
.region-footer-middle {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.region-footer > div,
.region-footer-middle > div {
    width: 50%;
}

.footer_logo {
    padding-left: 0 !important;
}

.footer_logo img {
    height: 75px;
    width: auto;
}

.footer_address .flex_block.column {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    text-align: right;
    padding: 30px;
    margin-bottom: 25px;
    border-radius: 5px;
}

.footer_address a {
    color: var(--text-color);
}

.footer_address a:hover {
    color: var(--primary);
}

#block-eueco-site-menu-menu-footermenu {

}

#block-eueco-site-menu-menu-footermenu ul {
    text-align: right;
    display: flex;
    justify-content: center;
    gap: 20px;
}

footer .content ul.menu li {
    line-height: 1rem;
    font-size: 0.8rem !important;
    padding: 0;
}

footer .content ul.menu li:last-child {
    border: none;
    margin: 0;
}

footer .content ul.menu a {
    color: var(--text-color);
    align-items: center;
    display: flex;
}

#footer_bottom {
    font-size: 0.6rem !important;
}

.region-footer-bottom {
    padding: 0.8rem 0;
    display: flex;
    justify-content: space-between;
    margin-bottom: 25px;
    align-items: center;
}

.footer-bottom-menu {
    margin-bottom: 0px;
}

.region-footer-bottom img {
    height: 35px;
    width: auto;
}

#main-content:has(#content_top_wrapper) {
    display: flex;
}

#main-content #content_top_wrapper {
    margin-top: 4rem;
    width: 30%;
    min-width: 30%;
}

#main-content #content_top {
    margin: 0;
}

#main-content .region-content {
    flex-grow: 1;
}

#mobile_menu_wrapper #block-hauptnavigation {
    margin-top: 50px;
}

#webform-submission-contact-add-form {
    background-color: rgb(236, 236, 236);
    padding: 0.8rem;
}

#webform-submission-contact-add-form #edit-actions-submit {
    margin-bottom: 0.8rem;
}

.platform #main #user-form * {
    box-sizing: border-box;
    max-width: 670px;
}

.eu-cookie-compliance-message button {
    color: var(--black);
}

/* Benutzeranmeldung Front */
.logged-in .anmeldung {
    display: none;
}

.anmeldung h2 {
    text-align: center;
}

#block-euecofaq-2,
#main .block-tfa-user-login-block,
#main .block-user-login-block {
    max-width: 500px;
    margin: 0 auto;
}

#block-euecofaq-2 {
    width: 100%;
    max-width: var(--max-width);
    margin-left: auto;
    margin-right: auto;
}

#main .block-user-login-block .item-list {
    display: none;
}

#main .user-login-form > div:first-child {
    display: none;
}

.anmeldung .form-actions {
    display: flex;
    justify-content: end;
}

#ee_portfolio_details .detail.contract-type {
    display: none;
}

#pid-user-password #main {
    max-width: 100%;
    width: 700px;
    margin: 50px auto;
    margin-top: 150px;
}

#ee-customer-insert-block-form {
    margin-bottom: 100px;
}

#ee_subscription_block #ee-submit-button {
    color: #ffffff;
    background-color: var(--primary);
    border: none;
}
#block-contractdetailsbar #stepswrapper > .step {
    background-color: var(--primary);
    color: #ffffff;
}
#stepswrapper .step.completed::before,
#stepswrapper .step.completed::after {
    font: var(--fa-font-duotone);
    color: var(--primary);
    font-size: 30.5px;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    text-align: center;
    float: right;
    position: absolute;
    right: 30px;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    position: absolute;
    left: auto;
    top: 50%;
    transform: translateY(-50%);
    width: 1.25em;
    text-align: center;
}

#stepswrapper .step.completed::before {
    content: "\f058";
}

#stepswrapper .step.completed::after {
    content: "\f058\f058";
    color: #ffffff;
}
#block-contractdetailsbar #stepswrapper > .step.open::before,
#block-contractdetailsbar #stepswrapper > .step.active::before {
    display: none;
}
#block-contractdetailsbar #stepswrapper .step.active,
#block-contractdetailsbar #stepswrapper .step.open {
    background-color: rgb(255 0 0);
}
#block-contractdetailsbar #stepswrapper .step.active a,
#block-contractdetailsbar #stepswrapper .step.open a{
    color: #ffffff;
}
#block-contractdetailsbar #stepswrapper #step3.step.active a::after {
    font: var(--fa-font-regular);
    color: #ffffff;
    font-size: 24px;
    content: "\f08E";
    width: 25px;
    height: 25px;
    text-align: center;
    float: right;
    position: absolute;
    right: 30px;
}
#block-contractdetailsbar #contract_identifier {
    border-bottom: 2px solid var(--primary);
    color: var(--primary);
}
.block-tfa-user-login-block .request-password-link {
    display: none;
}
