/* ********************************** ********************************** */
/* *                              FORMS                                * */
/* ********************************** ********************************** */


.ly-form-area{
    zbackground: var(--ly-color-green);
    zpadding:50px;
}
.ly-form-background{
    background: #fff;    
    border-radius:var(--ly-border-radius-default);
    box-shadow: 0px 0px 10px 5px #e0e0e0;
}



section legend {
    color: var(--ly-font-color-default);
    border-bottom: 2px solid var(--ly-color-green);
    padding-bottom: 5px;
    margin-top: 0;
    margin-bottom: 1.0rem !important;
    
    /* text-transform: uppercase !important;  */
    
    font-family: var(--ly-font-family-large) !important ;
    font-size: var(--ly-font-size-large) !important;  
    line-height: var(--ly-line-height-large) !important;
    letter-spacing: var(--ly-letter-spacing-large) !important;
}

section fieldset {   
    margin-bottom: 50px !important;
}


section .form-label {
    margin-top: 1.7rem !important;
    
    font-family: var(--ly-font-family-medium) !important;
    font-size: var(--ly-font-size-medium) !important;  
    line-height: var(--ly-line-height-medium) !important;
    letter-spacing: var(--ly-letter-spacing-medium) !important;    
}

section .form-check-label {    
    color: var(--ly-font-color-default);    
    
    font-family: var(--ly-font-family-medium) !important;
    font-size: var(--ly-font-size-medium) !important;  
    line-height: var(--ly-line-height-medium) !important;
    letter-spacing: var(--ly-letter-spacing-medium) !important;
}

section select {
    width: 100%;
    background: #fff;
    zcolor: var(--ly-font-color-default);
    border: 1px solid var(--ly-color-grey-light);
    padding: 10px;
    color: var(--ly-font-color-form-user-text) !important;
    
    font-family: var(--ly-font-family-medium) !important;
    font-size: var(--ly-font-size-medium) !important;  
    line-height: var(--ly-line-height-medium) !important;
    letter-spacing: var(--ly-letter-spacing-medium) !important;
}

section input[type="checkbox"],
section input[type="radio"] {
    float: left;
    
    margin-top: 6px !important;
    margin-right: 5px !important;
    
    font-family: var(--ly-font-family-medium) !important;
    font-size: var(--ly-font-size-medium) !important;  
    line-height: var(--ly-line-height-medium) !important;
    letter-spacing: var(--ly-letter-spacing-medium) !important;
}

section input {
    zcolor: var(--ly-font-color-default);
    color: var(--ly-font-color-form-user-text) !important;
    
    font-family: var(--ly-font-family-medium) !important;
    font-size: var(--ly-font-size-medium) !important;  
    line-height: var(--ly-line-height-medium) !important;
    letter-spacing: var(--ly-letter-spacing-medium) !important;
}

/* Platzhalter Text in Eingabefeldern */
section .form-control::placeholder {
    font-style: italic;
    color: var(--ly-color-grey);    

    font-family: var(--ly-font-family-small) !important;
    font-size: var(--ly-font-size-small) !important;  
    line-height: var(--ly-line-height-small) !important;
    letter-spacing: var(--ly-letter-spacing-small) !important;
}

/* Wenn ein Eingabefeld angeklickt wird und den Fokus bekopmmt */
section .form-control:focus {
    background-color: var(--bs-body-bg);
    border-color: var(--ly-font-color-form-user-text) !important;
    /* box-shadow: 0 0 0 .25rem rgba(102, 36, 131,.25); */
    /* box-shadow: 0 0 0 0.25rem rgba(var(--ly-color-grey), 0.25) !important; */
    box-shadow: none !important;
    color: var(--bs-body-color);
    outline: 0;
}

section .form-select,
section .form-control {  
    margin-bottom: 1.5rem !important;
    
    color: var(--ly-font-color-form-user-text) !important;
    
    font-family: var(--ly-font-family-medium) !important;
    font-size: var(--ly-font-size-medium) !important;  
    line-height: var(--ly-line-height-medium) !important;
    letter-spacing: var(--ly-letter-spacing-medium) !important;    
}

/* Wenn ein DropDown_Menü angeklickt wird*/
section .form-select:focus {
    zbox-shadow: 0 0 0 0.25rem rgba(var(--ly-color-violett), 0.25);
    outline: 0;
    border-color: var(--ly-font-color-form-user-text);
}

/* Checkboxen */
section .form-check-input:checked {
    background-color: var(--ly-color-violett) !important;
    border-color: var(--ly-color-violett) !important;
}
section .form-check-input:focus {
    border-color: var(--ly-color-violett);
    zbox-shadow: 0 0 0 0.25rem rgba(var(--ly-color-violett), 0.25);
    outline: 0;
}
section .form-check-input[type="checkbox"] {
    border-radius: 0.25em;
    font-size: 3.0rem;
    color: #ffcc00;
}

/* Zwischenüberschriften der Infotexte */
section fieldset h6 {    
    margin-bottom: 0 !important;
    margin-top: 2rem !important;
    color: var(--ly-color-grey-dark) !important;
    text-transform: uppercase !important;
    
    font-family: var(--ly-font-family-medium) !important;
    font-size: var(--ly-font-size-medium) !important;  
    line-height: var(--ly-line-height-medium) !important;
    letter-spacing: var(--ly-letter-spacing-medium) !important;
}

/* Erklärungstext / Infotexte im Formular */
section fieldset p {  
    color: var(--ly-color-grey-dark) !important;
    
    font-family: var(--ly-font-family-small) !important;
    font-size: var(--ly-font-size-small) !important;  
    line-height: var(--ly-line-height-small) !important;
    letter-spacing: var(--ly-letter-spacing-small) !important;
}

/* erforderlich */
section fieldset .text-muted.small{
    background:var(--ly-color-green) !important;
    color:#fff;
    padding:5px;
    padding-bottom:0px;
    
    font-family: var(--ly-font-family-small) !important;
    font-size: var(--ly-font-size-small) !important;  
    line-height: var(--ly-line-height-small) !important;
    letter-spacing: var(--ly-letter-spacing-small) !important;    
}

/* ***** Captcha anpassen ***** */
section .captcha div:first-child {
    width: 100%;
    float: none;
    margin-left: auto;
    margin-right: auto;
}

section .captcha img.ccm-captcha-image {
    margin: 0;
    width: 100%;
}

section .form-group.captcha {
    display: flex;
    flex-direction: column;
    row-gap: 10px;
    /* background:var(--ly-color-white-dark); */
    padding-left: 20px;
    padding-right: 20px;
    padding:20px;
    border: 1px solid var(--ly-color-grey-light);
    margin-bottom: 0;
    margin-top: -50px;
}

section .form-group.captcha br{
    display:none;
}

section .form-group.captcha label {
    display:none;
    
    font-family: var(--ly-font-family-medium) !important;
    font-size: var(--ly-font-size-medium) !important;  
    line-height: var(--ly-line-height-medium) !important;
    letter-spacing: var(--ly-letter-spacing-medium) !important;    
}

#ccm-captcha-code{
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

/* ****** Senden-Button anpassen ****** */
section .form-actions {
    width: 100%;
    float: left;
    clear: both;
    margin-top: 0;
    display: flex;
    justify-content: center;
    zbackground: var(--ly-color-green);
    padding: 50px;
    
    font-family: var(--ly-font-family-medium) !important;
    font-size: var(--ly-font-size-medium) !important;  
    line-height: var(--ly-line-height-medium) !important;
    letter-spacing: var(--ly-letter-spacing-medium) !important;    
}


/* .................................. .................................. */
/* .                            Media-Queries                          . */
/* ..................................................................... */

/* Styles für Bildschirme mit einer Mindestbreite von 0px */
@media only screen and (min-width: 0px) {
    
    .ly-form-background{
        padding:10px;
    }        
}


/* Styles für Bildschirme mit einer Mindestbreite von 576px */
@media only screen and (min-width: 576px) {

    .ly-form-background{
        padding:50px;
    }    
}


/* Styles für Bildschirme mit einer Mindestbreite von 992px */
@media only screen and (min-width: 768px) {
   
}


/* Styles für Bildschirme mit einer Mindestbreite von 992px */
@media only screen and (min-width: 992px) {
    
}


/* Styles für Bildschirme mit einer Mindestbreite von 1200px */
@media only screen and (min-width: 1200px) {
    
    /* ***** Captcha anpassen ***** */
    section .captcha div:first-child {
        width: 50%;
    }

    section .captcha img.ccm-captcha-image {
        margin: 0;
        width: 100%;
    }
    
}


/* Styles für Bildschirme mit einer Mindestbreite von 1400px */
@media only screen and (min-width: 1400px) {
    
}