.am-form form,
.am-form div.am-row {
    border: none;
}
.am-form div.am-row .am-element:first-child,
.am-form div.am-row.am-no-label .am-element { /* when there is no div.am-element-title preceding div.am-element */
    padding: 1em 0 0.5em;
    width: 100%;
}
/* login bar on signup page */
.am-page-signup .am-info {
    border-radius: 0;
    margin: -3rem -30px 15px;
}
#header .container {
    margin: 0;
    max-width: none;
    width: 100%;
}
.am-form .am-element h3 + h4 {
    font-weight: bold;
}
h3.title {
    margin-bottom: 0.75em;
}
/* Copy h4 styling from the salespage
    Apply to fieldset legend (section title) and the first field label, which is visually promoted to fieldset legend
*/
.am-form fieldset legend,
form.am-signup-form fieldset#qfauto-0 + div[id^=row-product_id] div.am-element-title label {
    background: none;
    border: none;
    color: #606060;
    font-family: Poppins, sans-serif;
    font-weight: bold;
    font-size: 20px;
    line-height: 27px;
    margin: 0;
    padding: 0;
    text-align: left;
    text-transform: none;
}
/* Copy the 'hipsterline' feature from the salespage */
.am-form fieldset legend::after,
form.am-signup-form fieldset#qfauto-0 + div[id^=row-product_id] div.am-element-title::after {
    content: "";
    display: block;
    width: 150px;
    padding: 14px 0 0;
    border-bottom: 1px solid #e2a09c;
}
/* Display payment terms on a separate line, indented to match the title */
.am-form .am-product-desc, .am-form .am-product-terms {
    display: block;
    padding-left: 29px;
}
.am-form div.am-element-title label {
    color: #606060;
    font-weight: bold;
}
@media (min-width: 500px) {
    .am-form div.am-element {
        float: right;
        margin: 0;
        width: 65%;
        padding: 1em 1em 1em 0.5em;
    }
    .am-form .am-no-label div.am-element {
        float: none;
        margin: 0;
        width: 100%;
        padding: 1em 1em 1em 0.5em;
    }
    .am-login-form.am-form div.am-element,
    #am-sendpass-form div.am-element {
        float: unset;
        margin: 0;
        width: unset;
        padding: 0.2em 1em 1em 0.5em;
    }
}
/* Suppress first form element displaying program title
    as the title is already shown in the hero section
    */
form.am-signup-form fieldset#qfauto-0 {
    display: none;
}
/*  Display product selector label as fieldset legend */
form.am-signup-form fieldset#qfauto-0 + div[id^=row-product_id] div.am-element-title {
    float: none;
    padding: 0;
    text-align: left;
    width: 100%;
}
/*  Hide the 'required' asterisk in product selector */
form.am-signup-form fieldset#qfauto-0 + div[id^=row-product_id] div.am-element-title .required {
    display: none;
}
/* display product selector in full width now that the label has been promoted to fieldset legend */
form.am-signup-form fieldset#qfauto-0 + div[id^=row-product_id] div.am-element {
    float: none;
    width: 100%;
}
.am-form form.am-signup-form input[type="text"] {
    width: 100%;
}
.am-form input.am-error, .am-form textarea.am-error, .am-form select.am-error,
.am-form input, .am-form textarea, .am-form select, .am-form .form-control {
    border-left: none;
    border-radius: 0;
    border-right: none;
    border-top: none;
    font-size: unset; /* use default setting for body */
}
.am-form input, .am-form textarea, .am-form select, .am-form .form-control {
    border-bottom: solid 1px rgba(0, 0, 0, 0.2);
}
.am-form input.am-error, .am-form textarea.am-error, .am-form select.am-error {
    border-bottom-color: rgb(219, 112, 147);
    box-shadow: rgb(219, 112, 147) 0 1px;   /* makes border look thicker without changing field height */
}
form#profile div[id^="row-_newsletter-"] .am-element-title {
    width: 100%;
    text-align: left;
}
form#profile div[id^="row-_newsletter-"] .am-element {
    display: none;
}
/***************************************
 ***    Hero section backgrounds
 */
.am-page-signup-BodyShape-Anfaenger #willkommen {
    background-image: url('/application/default/themes/202003/public/img/BodyShape-Anfaenger.jpg');
}
.am-page-signup-BodyShape-Baender #willkommen {
    background-image: url('/application/default/themes/202003/public/img/BodyShape-Baender.jpg');
}
.am-page-signup-BodyShape-Ball-Baender #willkommen {
    background-image: url('/application/default/themes/202003/public/img/BodyShape-Ball-Baender.jpg');
}
.am-page-signup-BodyShape-BodyBoost #willkommen {
    background-image: url('/application/default/themes/202003/public/img/BodyShape-BodyBoost.jpg');
}
.am-page-signup-BodyShape-Explosive #willkommen {
    background-image: url('/application/default/themes/202003/public/img/BodyShape-Explosive.jpg');
}
.am-page-signup-BodyShape-Fortgeschritten #willkommen {
    background-image: url('/application/default/themes/202003/public/img/BodyShape-Fortgeschritten.jpg');
}
.am-page-signup-Bodyshape-Hanteln #willkommen {
    background-image: url('/application/default/themes/202003/public/img/Bodyshape-Hanteln.jpg');
}
.am-page-signup-BodyShape-SOS #willkommen {
    background-image: url('/application/default/themes/202003/public/img/BodyShape-SOS.jpg');
}

/*****************************
 ***    the 'Kaufen" button + other main buttons
 ***    common styles
 ***/
#am-login-form input[type=submit],
#am-sendpass-form input[type=submit],
#row-_submit_-0 .am-cta-profile,
div#row-buttons input.am-cta-signup,
.am-page-profile .am-cta-profile,
.am-signup-form button.am-cta-signup,
.order-form button.am-cta-signup {
    background-color: #8eb7cc;
    background-image: none;
    border-radius: 4px;
    box-sizing: border-box;
    color: #ffffff;
    cursor: pointer;
    display: block;
    font-family: Poppins, sans-serif;
    font-size: 1.3rem;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 1.42857;
    margin: 0 auto;
    outline: none !important;
    padding: 0.6rem 3rem;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    transition: all 0.1s;
    user-select: none;
    white-space: nowrap;
}
#am-login-form input[type=submit]:hover,
#am-sendpass-form input[type=submit]:hover,
div#row-buttons input.am-cta-signup:hover,
#row-_submit_-0 .am-cta-profile:hover,
.am-signup-form button.am-cta-signup:hover,
.am-page-profile .am-cta-profile:hover {
    background-color: #5995b4;
}
.am-popup input[type=button], .am-popup input[type=submit],
.am-popup input[type=button]:hover, .am-popup input[type=submit]:hover {
    background-image: none;
}
.back-button {
    background: none;
    border: none;
    color: #777;
    cursor: pointer;
    text-transform: none;
}
.back-button i:before {
    content: '«';
    margin-right: 0.2em;
}
.back-button:hover {
    background: none;
    border: none;
    color: #000;
}
/***    the 'Kaufen' button
 ***    specific properties
 */
/* 'Shaping' programs' */
.am-page-signup-BodyShape-Anfaenger div#row-buttons input.am-cta-signup,
.am-page-signup-BodyShape-Fortgeschritten div#row-buttons input.am-cta-signup {
    background-color: #ded3b0;
    border-color: #ded3b0;
}
.am-page-signup-BodyShape-Anfaenger .einzelseite-header .header-contentbox-box1,
.am-page-signup-BodyShape-Fortgeschritten .einzelseite-header .header-contentbox-box1 {
    background-color: rgba(244, 232, 193, 0.6);
}

/* 'Fatburn' programs */
.am-page-signup-BodyShape-BodyBoost div#row-buttons input.am-cta-signup,
.am-page-signup-BodyShape-SOS div#row-buttons input.am-cta-signup,
.am-page-signup-BodyShape-Explosive div#row-buttons input.am-cta-signup {
    background-color: #8eb7cb;
    border-color: #8eb7cb;
}
.am-page-signup-BodyShape-BodyBoost .einzelseite-header .header-contentbox-box1,
.am-page-signup-BodyShape-SOS .einzelseite-header .header-contentbox-box1,
.am-page-signup-BodyShape-Explosive .einzelseite-header .header-contentbox-box1 {
    background-color: rgba(142, 183, 203, 0.6);
}

/* 'Power' programs */
.am-page-signup-BodyShape-Baender div#row-buttons input.am-cta-signup,
.am-page-signup-BodyShape-Ball-Baender div#row-buttons input.am-cta-signup,
.am-page-signup-Bodyshape-Hanteln div#row-buttons input.am-cta-signup {
    background-color: #e2a09c;
    border-color: #e2a09c #e2a09c #d77b75;
}
.am-page-signup-BodyShape-Baender .einzelseite-header .header-contentbox-box1,
.am-page-signup-BodyShape-Ball-Baender .einzelseite-header .header-contentbox-box1,
.am-page-signup-Bodyshape-Hanteln .einzelseite-header .header-contentbox-box1 {
    background-color: rgba(225, 160, 157, 0.6);
}

@media all and (min-width: 500px) {
    .am-login-form.am-form div.am-element-title,
    #am-sendpass-form .am-element-title
    {
        background-color: #f9f9f9;
        width: unset;
        float: unset;
        text-align: unset;
        padding: .5em 1em;
    }
}
.am-form-login-switch {
    margin: 1em 0 0 1em;
    display: block;
}
.payment .btn,
#membership .btn {
    font-family: Poppins, sans-serif;
    font-weight: bold;
    text-transform: uppercase;
}
#membership .row + .row {
    border-top: solid 1px rgba(0, 0, 0, 0.08);
}
.members .membership {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px 0;
}
#member-main-links a.btn {
    font-family: Poppins, sans-serif;
    font-weight: bold;
    margin-bottom: 6px;
    max-width: 32em;
    text-transform: uppercase;
}
#member-main-links .btn-block + .btn-block {
    margin-top: 0.75rem;
}

.mandatetext dl, .mandatetext dt, .mandatetext dd,
.prepay-data dl, .prepay-data dt, .prepay-data dd {
    display: block;
}
.mandatetext dt,
.prepay-data dt {
    float: left;
    text-align: right;
}
.mandatetext dt {
    width: 16em;
}
.prepay-data dt {
    width: 12em;
}
.mandatetext dd,
.prepay-data dd {
    padding-left: 0.4em;
}
.mandatetext dd {
    margin: 0 0 5px 16em;
}
.prepay-data dd {
    margin: 0 0 5px 12em;
}

.mandatetext dd:after,
.prepay-data dd:after {
    content: "";
    display: block;
    height: 0;
}
@media all and (max-width: 640px) {
    .mandatetext dl, .mandatetext dt, .mandatetext dd,
    .prepay-data dl, .prepay-data dt, .prepay-data dd {
        float: none;
        margin: 0;
        text-align: left;
    }
    .mandatetext dd,
    .prepay-data dd {
        padding: 0 0 0 2em;
    }
}

div.uploadviewfile {
    margin: 0 auto;
    max-width: 600px;
    text-align: center;
}
@media screen and (max-width: 839px){
    div.uploadviewfile,
    div.uploadviewfile img {
        width: 100%;
    }
}
@media screen and (min-width: 840px) {
    div.uploadviewfile > div.uploadviewfile-inner {
        background-color: rgba(144,144,144,0.2);
        display: block;
        height: 0;
        overflow: hidden;
        padding: 0 0 75%;
        position: relative;
    }
    div.uploadviewfile > div.uploadviewfile-inner .img-wrap {
        bottom: 0;
        display: block;
        left: 0;
        position: absolute;
        right: 0;
        top: 0;
    }
    div.uploadviewfile > div.uploadviewfile-inner .img-wrap img {
        max-height: 100%;
        max-width: 100%;
    }
}
.uploadviewfile .file-rotate {
    display: block;
    margin: 20px auto 20px auto;
}

form .am-element label {
    position: relative;
}
.am-element label input[type=checkbox], .am-element label input[type=radio] {
    left: -2000px;
    position: relative;
}
.am-element label input + .after {
    display: inline-block;
    height: 1em;
    left: -18px;
    margin-right: -13px;
    padding: 0;
    position: relative;
    width: 18px;
}
.am-element label input[type=checkbox] + .after::before,
.am-element label input[type=radio] + .after::before {
    background: none;
    border: 1px solid rgba(0, 0, 0, 0.2);
    content: "";
    display: inline-block;
    height: 1.5em;
    position: absolute;
    width: 1.5em;
}
.am-element label input[type=checkbox] + .after::before {
    border-radius: 3px;
    top: -2px;
}
.am-element label input[type=radio] + .after::before {
    border-radius: 0.8em;
    top: -2px;
}
.am-element label input[type=checkbox]:checked + .after::before,
.am-element label input[type=radio]:checked + .after::before {
    border-color: rgba(0, 0, 0, 0.5);
}
.am-element label input:active + .after::before {
    background-color: rgba(0,0,0,0.2);
    box-shadow: rgba(0,0,0,0.2) 0 0 2px 5px;
}
.am-element label input[type=checkbox]:checked + .after::after,
.am-element label input[type=radio]:checked + .after::after {
    border-color: #5995b4;
    border-style: solid;
    box-sizing: border-box;
    content: "";
    display: inline-block;
    position: absolute;
}
.am-element label input[type=checkbox]:checked + .after::after {
    border-width: 0 0 4px 4px;
    height: 0.7em;
    left: 4px;
    top: 2px;
    transform: rotate(-45deg);
    width: 1em;
}
.am-element label input[type=radio]:checked + .after::after {
    border-radius: 50%;
    border-width: 6.5px;
    height: 13px;
    left: 4px;
    top: 2px;
    width: 13px;
}

.agreement {
    font-size: unset;
    max-height: 65vh;
}
.alert {
    margin: 1rem 0;
}
.alert .container {
    padding-left: 30px;
    padding-right: 30px;
}
.alert .container .alert-icon {
    display: inline-block;
    left: 12px;
    position: absolute;
    top: 50%;
    transform: translateY(-55%);
}
.alert .container button.close {
    display: inline-block;
    right: 0.75rem;
    position: absolute;
    top: 0.75rem;
}
body.modal-open {
    overflow: visible;
}