.elementor-widget-container.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-container .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-container .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-container .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-container .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-1722 .elementor-element.elementor-element-f24a640{--display:flex;}.elementor-widget-html.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-html .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-html .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-html .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-html .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-widget-spacer.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-spacer .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-spacer .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-spacer .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-spacer .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-1722 .elementor-element.elementor-element-1f6e95f{--spacer-size:50px;}.elementor-1722 .elementor-element.elementor-element-46c4a4c{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-widget-section .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-section .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-section .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-widget-section.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-section .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-1722 .elementor-element.elementor-element-519fc8f{padding:100px 0px 100px 0px;}.elementor-widget-column.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-column .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-column .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-column .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-column .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-widget-form.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-form .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-form .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-form .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-form .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1722 .elementor-element.elementor-element-647c594 .elementor-field-group{padding-right:calc( 43px/2 );padding-left:calc( 43px/2 );margin-bottom:22px;}.elementor-1722 .elementor-element.elementor-element-647c594 .elementor-form-fields-wrapper{margin-left:calc( -43px/2 );margin-right:calc( -43px/2 );margin-bottom:-22px;}.elementor-1722 .elementor-element.elementor-element-647c594 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-1722 .elementor-element.elementor-element-647c594 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-1722 .elementor-element.elementor-element-647c594 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-1722 .elementor-element.elementor-element-647c594 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-1722 .elementor-element.elementor-element-647c594 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-1722 .elementor-element.elementor-element-647c594 .elementor-field-type-html{padding-bottom:0px;}.elementor-1722 .elementor-element.elementor-element-647c594 .elementor-field-group .elementor-field{color:var( --e-global-color-bf893da );}.elementor-1722 .elementor-element.elementor-element-647c594 .elementor-field-group .elementor-field, .elementor-1722 .elementor-element.elementor-element-647c594 .elementor-field-subgroup label{font-family:"Roboto", Sans-serif;font-weight:500;text-transform:uppercase;}.elementor-1722 .elementor-element.elementor-element-647c594 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;border-width:02px 02px 02px 02px;border-radius:0px 0px 0px 0px;}.elementor-1722 .elementor-element.elementor-element-647c594 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;border-width:02px 02px 02px 02px;border-radius:0px 0px 0px 0px;}.elementor-1722 .elementor-element.elementor-element-647c594 .elementor-button{font-family:"Roboto", Sans-serif;font-weight:500;text-transform:uppercase;border-style:none;border-radius:0px 0px 0px 0px;}.elementor-1722 .elementor-element.elementor-element-647c594 .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-f9a618e );color:#ffffff;}.elementor-1722 .elementor-element.elementor-element-647c594 .elementor-button[type="submit"]{background-color:var( --e-global-color-f9a618e );color:#ffffff;}.elementor-1722 .elementor-element.elementor-element-647c594 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-1722 .elementor-element.elementor-element-647c594 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-1722 .elementor-element.elementor-element-647c594 .e-form__buttons__wrapper__button-next:hover{background-color:var( --e-global-color-1099312 );color:#ffffff;}.elementor-1722 .elementor-element.elementor-element-647c594 .elementor-button[type="submit"]:hover{background-color:var( --e-global-color-1099312 );color:#ffffff;}.elementor-1722 .elementor-element.elementor-element-647c594 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-1722 .elementor-element.elementor-element-647c594 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-1722 .elementor-element.elementor-element-647c594{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-1722 .elementor-element.elementor-element-9838b27{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-1722 .elementor-element.elementor-element-46c4a4c{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-1722 .elementor-element.elementor-element-46c4a4c{--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for html, class: .elementor-element-1d63927 *//* ==========================================================
   J40 – ANMELDUNG HEADER
   HTML-BLOCK ÜBER DEM ELEMENTOR FORMULAR
   ========================================================== */

.j40-registration-header{
    width:100%;
    padding:0;
    margin:0 0 38px 0;
}


/* ==========================================================
   INNERER BEREICH
   ========================================================== */

.j40-registration-header-inner{
    position:relative;

    padding:0 0 32px 0;

    border-bottom:1px solid #e5e5e2;
}


/* ==========================================================
   EYEBROW
   ========================================================== */

.j40-registration-header-eyebrow{

    margin-bottom:17px;

    color:#c98a18;

    font-family:Arial,Helvetica,sans-serif;
    font-size:11px;
    font-weight:700;

    letter-spacing:2.2px;
    line-height:1.3;

    text-transform:uppercase;
}


/* ==========================================================
   ÜBERSCHRIFT
   ========================================================== */

.j40-registration-header h2{

    max-width:680px;

    margin:0;

    color:#292929;

    font-family:Arial,Helvetica,sans-serif;

    font-size:clamp(36px,3.7vw,50px);

    font-weight:700;

    letter-spacing:-1.4px;

    line-height:1.08;
}


/* ORANGE HIGHLIGHT */

.j40-registration-header h2 span{
    color:#e7a42b;
}


/* ==========================================================
   BESCHREIBUNG
   ========================================================== */

.j40-registration-header p{

    max-width:650px;

    margin:20px 0 0 0;

    color:#666666;

    font-family:Arial,Helvetica,sans-serif;

    font-size:16px;

    font-weight:400;

    line-height:1.8;
}


/* ==========================================================
   ANMELDESCHLUSS
   ========================================================== */

.j40-registration-header-deadline{

    display:flex;

    align-items:center;

    gap:14px;

    width:max-content;
    max-width:100%;

    margin-top:25px;

    padding:13px 17px;

    border-left:3px solid #e7a42b;

    background:#f5f5f3;
}


/* ==========================================================
   ICON
   ========================================================== */

.j40-registration-header-deadline-icon{

    display:flex;

    align-items:center;
    justify-content:center;

    flex:0 0 28px;

    width:28px;
    height:28px;

    border-radius:50%;

    background:#e7a42b;

    color:#ffffff;

    font-size:13px;
    font-weight:700;

    line-height:1;
}


/* ==========================================================
   DEADLINE TEXT
   ========================================================== */

.j40-registration-header-deadline strong{

    display:block;

    color:#292929;

    font-family:Arial,Helvetica,sans-serif;

    font-size:13px;

    font-weight:700;

    line-height:1.4;
}


.j40-registration-header-deadline span{

    display:block;

    margin-top:2px;

    color:#888888;

    font-family:Arial,Helvetica,sans-serif;

    font-size:11px;

    line-height:1.5;
}


/* ==========================================================
   DEZENTER ORANGE AKZENT
   ========================================================== */

.j40-registration-header-inner:before{

    content:"";

    position:absolute;

    top:0;
    right:0;

    width:55px;
    height:1px;

    background:#e7a42b;

}


/* ==========================================================
   MOBILE
   ========================================================== */

@media(max-width:700px){

    .j40-registration-header{

        margin-bottom:28px;

    }


    .j40-registration-header-inner{

        padding-bottom:27px;

    }


    .j40-registration-header-eyebrow{

        margin-bottom:13px;

        font-size:9px;

        letter-spacing:1.8px;

    }


    .j40-registration-header h2{

        font-size:39px;

        letter-spacing:-1px;

        line-height:1.08;

    }


    .j40-registration-header p{

        margin-top:17px;

        font-size:15px;

        line-height:1.7;

    }


    .j40-registration-header-deadline{

        width:100%;

        margin-top:21px;

        padding:12px 14px;

    }


    .j40-registration-header-deadline-icon{

        flex:0 0 26px;

        width:26px;
        height:26px;

    }

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-46c4a4c */.j40-registration-header{
    width:100%;
    margin:0;
    padding:0;
}

.j40-registration-header-inner{
    width:100%;
    margin:0;
    padding:0 0 32px 0;
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-519fc8f */```css
/* ==========================================================
   LOEPKE 40 JAHRE
   ELEMENTOR FORMULAR
   ========================================================== */


/* ----------------------------------------------------------
   FORMULAR-CONTAINER
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f{
    padding:40px;
    border:1px solid #e5e5e2;
    background:#fff;
}


/* ----------------------------------------------------------
   FORMULAR-TITEL
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-form-title{
    margin:0 0 8px;
    color:#292929;
    font-family:Arial,Helvetica,sans-serif;
    font-size:21px;
    font-weight:700;
    letter-spacing:-.4px;
    line-height:1.2;
}


/* ----------------------------------------------------------
   FORMULAR-BESCHREIBUNG
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-form-description{
    margin:0 0 28px;
    color:#888;
    font-family:Arial,Helvetica,sans-serif;
    font-size:14px;
    line-height:1.6;
}


/* ----------------------------------------------------------
   LABELS
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-field-label{
    margin-bottom:7px;
    color:#292929;
    font-family:Arial,Helvetica,sans-serif;
    font-size:12px;
    font-weight:700;
    line-height:1.3;
}


/* ----------------------------------------------------------
   INPUTS + SELECT
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-field-textual{
    width:100%;
    min-height:50px;
    padding:0 14px;

    border:1px solid #d9d8d3;
    border-radius:4px;

    background:#fff;
    color:#333;

    font-family:Arial,Helvetica,sans-serif;
    font-size:14px;

    box-shadow:none;
    outline:none;

    transition:
        border-color .2s ease,
        box-shadow .2s ease;
}


/* ----------------------------------------------------------
   TEXTAREA – falls später benötigt
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f textarea.elementor-field-textual{
    min-height:120px;
    padding:14px;
    resize:vertical;
}


/* ----------------------------------------------------------
   FOCUS
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-field-textual:focus{
    border-color:#e7a42b;
    box-shadow:0 0 0 1px #e7a42b;
}


/* ----------------------------------------------------------
   PLACEHOLDER
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-field-textual::placeholder{
    color:#aaa;
    opacity:1;
}


/* ----------------------------------------------------------
   SELECT
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f select.elementor-field-textual{
    cursor:pointer;
    appearance:auto;
}


/* ----------------------------------------------------------
   FELD-ABSTÄNDE
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-field-group{
    margin-bottom:17px;
}


/* ----------------------------------------------------------
   BUTTON
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-button{
    width:100%;
    min-height:50px;

    padding:13px 22px;

    border:0;
    border-radius:4px;

    background:#e7a42b;
    color:#fff;

    font-family:Arial,Helvetica,sans-serif;
    font-size:14px;
    font-weight:700;

    cursor:pointer;

    box-shadow:none;

    transition:
        background .2s ease,
        transform .2s ease;
}


/* ----------------------------------------------------------
   BUTTON HOVER
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-button:hover{
    background:#d69520;
    color:#fff;

    transform:translateY(-1px);
}


/* ----------------------------------------------------------
   BUTTON FOCUS
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-button:focus-visible{
    outline:2px solid #e7a42b;
    outline-offset:4px;
}


/* ----------------------------------------------------------
   REQUIRED STERNE
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-mark-required{
    color:#e7a42b;
}


/* ----------------------------------------------------------
   FEHLERMELDUNGEN
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-message-danger,
.elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-error{
    color:#b42318;
    font-family:Arial,Helvetica,sans-serif;
    font-size:12px;
}


/* ----------------------------------------------------------
   ERFOLGSMELDUNG
   ---------------------------------------------------------- */

.elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-message-success{
    margin-top:20px;
    padding:16px 18px;

    border-left:3px solid #e7a42b;

    background:#f5f5f3;
    color:#292929;

    font-family:Arial,Helvetica,sans-serif;
    font-size:14px;
    line-height:1.6;
}


/* ----------------------------------------------------------
   RESPONSIVE
   ---------------------------------------------------------- */

@media(max-width:700px){

    .elementor-1722 .elementor-element.elementor-element-519fc8f{
        padding:25px 20px;
    }

    .elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-field-group{
        margin-bottom:15px;
    }

    .elementor-1722 .elementor-element.elementor-element-519fc8f .elementor-button{
        min-height:50px;
    }

}
```/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1869a36 *//* ==========================================================
   J40 – PREMIUM ANMELDUNG & ABSCHLUSS
   Dieses CSS ganz ans ENDE des bestehenden CSS setzen.
   ========================================================== */


/* ==========================================================
   ANMELDUNG
   ========================================================== */

.j40-registration{
    position:relative;
    padding:110px 0 115px;
    background:#fff;
    overflow:hidden;
}

/* dezente vertikale Designlinie */

.j40-registration:before{
    content:"";
    position:absolute;
    top:0;
    right:11%;
    width:1px;
    height:100%;
    background:linear-gradient(
        to bottom,
        transparent,
        #e9e9e5 18%,
        #e9e9e5 82%,
        transparent
    );
    pointer-events:none;
}

.j40-registration-grid{
    position:relative;
    z-index:2;

    display:grid;
    grid-template-columns:40% 60%;
    gap:75px;
    align-items:start;
}


/* ==========================================================
   LINKER ANMELDEBEREICH
   ========================================================== */

.j40-registration-copy{
    position:relative;
    padding-top:8px;
}

.j40-registration-copy .j40-eyebrow{
    margin-bottom:18px;
}

.j40-registration-copy h2{
    max-width:520px;

    margin:0;

    color:var(--j40-anthrazit);

    font-family:Arial,Helvetica,sans-serif !important;
    font-size:clamp(38px,3.7vw,50px);
    font-weight:700 !important;
    line-height:1.08;
    letter-spacing:-1.2px;
}

.j40-registration-copy h2 span{
    color:var(--j40-orange);
}

.j40-registration-copy > p{
    max-width:480px;

    margin-top:24px;

    color:#666;

    font-family:Arial,Helvetica,sans-serif;
    font-size:16px;
    font-weight:400;
    line-height:1.8;
}

.j40-registration-copy > p + p{
    margin-top:16px;
}

.j40-registration-copy strong{
    color:var(--j40-anthrazit);
    font-weight:700;
}


/* ==========================================================
   ANMELDESCHLUSS
   ========================================================== */

.j40-deadline{
    display:flex;
    align-items:center;
    gap:16px;

    margin-top:32px;
    padding:18px 20px;

    border:1px solid var(--j40-border);
    border-left:3px solid var(--j40-orange);

    background:var(--j40-light);
}

.j40-deadline-icon{
    display:flex;
    align-items:center;
    justify-content:center;

    flex:0 0 34px;

    width:34px;
    height:34px;

    border-radius:50%;

    background:var(--j40-orange);

    color:#fff;

    font-size:14px;
    font-weight:700;
}

.j40-deadline strong{
    display:block;

    color:var(--j40-anthrazit);

    font-size:13px;
    font-weight:700;
}

.j40-deadline span{
    display:block;

    margin-top:3px;

    color:#888;

    font-size:12px;
    line-height:1.5;
}


/* ==========================================================
   KLEINER HINWEIS UNTER DEM DEADLINE-BLOCK
   ========================================================== */

.j40-registration-note{
    display:flex;
    align-items:flex-start;
    gap:14px;

    margin-top:30px;
}

.j40-registration-note-line{
    flex:0 0 22px;

    width:22px;
    height:1px;

    margin-top:10px;

    background:var(--j40-orange);
}

.j40-registration-note p{
    max-width:390px;

    color:#999;

    font-size:12px;
    line-height:1.7;
}


/* ==========================================================
   RECHTER FORMULARBEREICH
   ========================================================== */

.j40-registration-form-area{
    position:relative;

    padding:38px 40px 40px;

    border:1px solid var(--j40-border);

    background:#fff;

    box-shadow:
        0 18px 55px rgba(25,25,25,.07);
}


/* obere orange Linie */

.j40-registration-form-area:before{
    content:"";

    position:absolute;

    top:-1px;
    left:-1px;

    width:110px;
    height:3px;

    background:var(--j40-orange);
}


/* ==========================================================
   FORMULAR HEADER
   ========================================================== */

.j40-form-heading{
    display:flex;
    align-items:center;
    gap:18px;

    margin-bottom:28px;
}

.j40-form-number{
    display:flex;
    align-items:center;
    justify-content:center;

    flex:0 0 48px;

    width:48px;
    height:48px;

    border:1px solid #ddd;

    color:var(--j40-orange-dark);

    font-size:12px;
    font-weight:700;
    letter-spacing:1px;
}

.j40-form-heading .j40-eyebrow{
    margin-bottom:5px;

    font-size:10px;
}

.j40-form-heading h3{
    margin:0;

    color:var(--j40-anthrazit);

    font-family:Arial,Helvetica,sans-serif !important;
    font-size:24px;
    font-weight:700 !important;
    line-height:1.15;
    letter-spacing:-.5px;
}


/* ==========================================================
   ELEMENTOR FORMULAR
   ----------------------------------------------------------
   Diese Regeln greifen auch auf das Formular-Widget,
   wenn es innerhalb von .j40-registration-form-area liegt.
   ========================================================== */

.j40-registration-form-area .elementor-form{
    width:100%;
}

.j40-registration-form-area .elementor-field-group{
    margin-bottom:17px;
}

.j40-registration-form-area .elementor-field-label{
    margin-bottom:7px;

    color:var(--j40-anthrazit);

    font-family:Arial,Helvetica,sans-serif !important;
    font-size:12px !important;
    font-weight:700 !important;
}

.j40-registration-form-area .elementor-field,
.j40-registration-form-area input,
.j40-registration-form-area select,
.j40-registration-form-area textarea{
    width:100%;

    min-height:50px;

    padding:0 14px;

    border:1px solid #d9d8d3 !important;
    border-radius:4px !important;

    background:#fff !important;

    color:#333 !important;

    font-family:Arial,Helvetica,sans-serif !important;
    font-size:14px !important;

    box-shadow:none !important;
}

.j40-registration-form-area .elementor-field:focus,
.j40-registration-form-area input:focus,
.j40-registration-form-area select:focus,
.j40-registration-form-area textarea:focus{
    border-color:var(--j40-orange) !important;
    outline:none !important;
}


/* Placeholder */

.j40-registration-form-area input::placeholder,
.j40-registration-form-area textarea::placeholder{
    color:#aaa;
    opacity:1;
}


/* Select */

.j40-registration-form-area select{
    cursor:pointer;
}


/* Submit Button */

.j40-registration-form-area .elementor-button{
    display:flex;
    align-items:center;
    justify-content:center;

    width:100%;
    min-height:52px;

    margin-top:8px;

    border:0 !important;
    border-radius:4px !important;

    background:var(--j40-orange) !important;

    color:#fff !important;

    font-family:Arial,Helvetica,sans-serif !important;
    font-size:14px !important;
    font-weight:700 !important;

    transition:
        background .2s ease,
        transform .2s ease,
        box-shadow .2s ease;
}

.j40-registration-form-area .elementor-button:hover{
    background:#d69520 !important;

    transform:translateY(-1px);

    box-shadow:0 8px 22px rgba(201,138,24,.22);
}


/* ==========================================================
   SPONTAN VORBEIKOMMEN
   ========================================================== */

.j40-spontan{
    position:relative;

    padding:65px 0;

    background:var(--j40-orange);

    overflow:hidden;
}


/* große dezente 40 */

.j40-spontan:before{
    content:"40";

    position:absolute;

    right:-10px;
    top:-80px;

    color:transparent;

    font-family:Arial,Helvetica,sans-serif;
    font-size:280px;
    font-weight:700;
    line-height:.8;
    letter-spacing:-25px;

    -webkit-text-stroke:1px rgba(255,255,255,.13);

    pointer-events:none;
    user-select:none;
}


/* feine Linie */

.j40-spontan:after{
    content:"";

    position:absolute;

    left:0;
    top:0;

    width:100%;
    height:1px;

    background:rgba(255,255,255,.25);
}


.j40-spontan-inner{
    position:relative;
    z-index:2;

    display:grid;
    grid-template-columns:1fr auto;
    align-items:center;

    gap:60px;

    min-height:135px;
}


.j40-spontan-content{
    position:relative;
}


.j40-spontan .j40-eyebrow{
    margin-bottom:12px;

    color:rgba(255,255,255,.72);
}


.j40-spontan h3{
    margin:0;

    color:#fff;

    font-family:Arial,Helvetica,sans-serif !important;
    font-size:clamp(27px,2.7vw,36px);
    font-weight:700 !important;
    line-height:1.1;
    letter-spacing:-1px;
}


.j40-spontan h3 span{
    color:#fff;
}


.j40-spontan p{
    max-width:650px;

    margin-top:10px;

    color:rgba(255,255,255,.88);

    font-family:Arial,Helvetica,sans-serif;
    font-size:15px;
    line-height:1.7;
}


.j40-spontan-action{
    position:relative;
    z-index:3;
}


.j40-spontan .j40-btn{
    min-width:215px;
    min-height:52px;

    box-shadow:0 10px 28px rgba(0,0,0,.13);
}


.j40-spontan .j40-btn:hover{
    transform:translateY(-2px);
    box-shadow:0 14px 32px rgba(0,0,0,.19);
}


/* ==========================================================
   FINAL CTA
   ========================================================== */

.j40-final{
    position:relative;

    padding:125px 0 110px;

    background:
        radial-gradient(
            circle at 50% 35%,
            rgba(231,164,43,.12) 0%,
            transparent 38%
        ),
        var(--j40-dark);

    text-align:center;

    overflow:hidden;
}


/* riesige 40 im Hintergrund */

.j40-final:before{
    content:"40";

    position:absolute;

    left:50%;
    top:38px;

    color:transparent;

    font-family:Arial,Helvetica,sans-serif;
    font-size:440px;
    font-weight:700;
    line-height:.8;
    letter-spacing:-35px;

    -webkit-text-stroke:1px rgba(231,164,43,.09);

    transform:translateX(-50%);

    pointer-events:none;
    user-select:none;
}


/* vertikale Designlinie */

.j40-final:after{
    content:"";

    position:absolute;

    left:50%;
    top:0;

    width:1px;
    height:100%;

    background:linear-gradient(
        to bottom,
        transparent,
        rgba(231,164,43,.17) 25%,
        rgba(231,164,43,.04) 75%,
        transparent
    );

    pointer-events:none;
}


.j40-final-content{
    position:relative;
    z-index:2;
}


/* Eyebrow */

.j40-final .j40-eyebrow{
    margin-bottom:22px;

    color:var(--j40-orange);

    font-size:12px;
    font-weight:700;
    letter-spacing:2.5px;
}


/* Headline */

.j40-final h2{
    max-width:900px;

    margin:0 auto 25px;

    color:#fff;

    font-family:Arial,Helvetica,sans-serif !important;
    font-size:clamp(42px,5.2vw,68px);
    font-weight:700 !important;
    line-height:1.05;
    letter-spacing:-1.8px;
}


.j40-final h2 span{
    color:var(--j40-orange);
}


/* Text */

.j40-final p{
    max-width:680px;

    margin:0 auto 36px;

    color:rgba(255,255,255,.62);

    font-family:Arial,Helvetica,sans-serif;
    font-size:17px;
    font-weight:400;
    line-height:1.8;
}


/* Buttons */

.j40-final-actions{
    position:relative;
    z-index:3;

    display:flex;
    justify-content:center;
    align-items:center;

    gap:13px;
    flex-wrap:wrap;
}


.j40-final-actions .j40-btn{
    min-width:190px;
    min-height:52px;

    font-family:Arial,Helvetica,sans-serif !important;
}


/* Adresse */

.j40-final-address{
    margin-top:45px;

    color:rgba(255,255,255,.35);

    font-family:Arial,Helvetica,sans-serif;
    font-size:12px;
    line-height:1.6;
    letter-spacing:.3px;
}

.j40-final-address span{
    margin:0 5px;
    color:var(--j40-orange);
}


/* ==========================================================
   ELEMENTOR – MOBILE / TABLET
   ========================================================== */

@media(max-width:1000px){

    .j40-registration-grid{
        grid-template-columns:1fr;
        gap:50px;
    }

    .j40-registration:before{
        right:7%;
    }

    .j40-registration-form-area{
        max-width:760px;
    }

    .j40-spontan-inner{
        grid-template-columns:1fr;
        gap:30px;
    }

    .j40-spontan-action{
        justify-self:start;
    }
}


@media(max-width:700px){

    /* Anmeldung */

    .j40-registration{
        padding:75px 0;
    }

    .j40-registration:before{
        display:none;
    }

    .j40-registration-grid{
        gap:40px;
    }

    .j40-registration-copy h2{
        font-size:39px;
        letter-spacing:-1px;
    }

    .j40-registration-copy > p{
        font-size:15px;
    }

    .j40-deadline{
        padding:16px;
    }

    .j40-registration-note{
        margin-top:24px;
    }


    /* Formular */

    .j40-registration-form-area{
        padding:30px 20px 25px;
    }

    .j40-registration-form-area:before{
        width:75px;
    }

    .j40-form-heading{
        gap:13px;
        margin-bottom:23px;
    }

    .j40-form-number{
        flex:0 0 40px;
        width:40px;
        height:40px;
    }

    .j40-form-heading h3{
        font-size:21px;
    }


    /* Spontan */

    .j40-spontan{
        padding:48px 0;
    }

    .j40-spontan:before{
        top:-30px;
        right:-10px;
        font-size:180px;
        letter-spacing:-15px;
    }

    .j40-spontan h3{
        font-size:28px;
    }

    .j40-spontan p{
        font-size:14px;
    }

    .j40-spontan-action{
        width:100%;
    }

    .j40-spontan .j40-btn{
        width:100%;
    }


    /* Final */

    .j40-final{
        padding:85px 0 75px;
    }

    .j40-final:before{
        top:60px;
        font-size:255px;
        letter-spacing:-20px;
    }

    .j40-final h2{
        font-size:42px;
        letter-spacing:-1.2px;
    }

    .j40-final p{
        font-size:15px;
        line-height:1.75;
    }

    .j40-final-actions{
        flex-direction:column;
    }

    .j40-final-actions .j40-btn{
        width:100%;
    }

    .j40-final-address{
        margin-top:30px;
    }
}/* End custom CSS */