﻿/* ===============================
   Scoped form refinements v2 (Kontakt & Neukunden)
   - Stronger specificity
   - Works with DevExpress and native inputs
   - Reduced spacing & font-size only in targeted sections
   =============================== */
#Kontakt + section, #Vertragsabschluss {
    --form-height: 44px;
    --form-padding-x: 12px;
    --form-radius: 8px;
    --form-gap-y: 12px;
    --form-border: #e6e6e6;
    --form-label: #202327;
    --form-placeholder: #9aa1a6;
}

    #Kontakt + section .sec-title,
    #Vertragsabschluss .sec-title {
        font-size: 1.6rem;
        line-height: 1.25;
    }

    #Kontakt + section .sub-title,
    #Vertragsabschluss .sub-title {
        font-size: .95rem;
    }

    #Kontakt + section label,
    #Vertragsabschluss label {
        font-size: .95rem;
        color: var(--form-label);
        margin-bottom: 6px;
        font-weight: 500;
    }

    #Kontakt + section input,
    #Kontakt + section select,
    #Kontakt + section textarea,
    #Vertragsabschluss input,
    #Vertragsabschluss select,
    #Vertragsabschluss textarea {
        height: var(--form-height) !important;
        padding: 0 var(--form-padding-x) !important;
        border-radius: var(--form-radius) !important;
        border-color: var(--form-border) !important;
        font-size: 15px !important;
        line-height: 1.35 !important;
    }

    #Kontakt + section textarea,
    #Vertragsabschluss textarea {
        min-height: 130px !important;
        height: auto !important;
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

        #Kontakt + section input::placeholder,
        #Kontakt + section textarea::placeholder,
        #Vertragsabschluss input::placeholder,
        #Vertragsabschluss textarea::placeholder {
            color: var(--form-placeholder);
        }

        #Kontakt + section input:focus,
        #Kontakt + section select:focus,
        #Kontakt + section textarea:focus,
        #Vertragsabschluss input:focus,
        #Vertragsabschluss select:focus,
        #Vertragsabschluss textarea:focus {
            box-shadow: 0 0 0 2px rgba(255,192,0,.12) !important;
            border-color: #FFC000 !important;
            outline: 0;
        }

    /* Compact grid spacing */
    #Kontakt + section .row.g-3 > [class*="col-"],
    #Vertragsabschluss .row.g-3 > [class*="col-"] {
        margin-bottom: 12px;
    }

    /* Buttons */
    #Kontakt + section .th-btn,
    #Vertragsabschluss .th-btn {
        padding: .55rem 1.1rem !important;
        border-radius: 10px !important;
        font-size: .95rem !important;
    }

    /* Validation summary spacing */
    #Kontakt + section .text-danger.mb-3,
    #Vertragsabschluss .text-danger.mb-3 {
        margin-bottom: 10px !important;
    }

/* Meldeanschrift animation */
#pnlMelde {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-5px);
    transition: all .35s ease;
}

    #pnlMelde.show {
        max-height: 600px;
        opacity: 1;
        transform: translateY(0);
    }

@media (max-width: 576px) {
    #Kontakt + section, #Vertragsabschluss {
        --form-height: 42px;
        --form-padding-x: 10px;
        --form-gap-y: 10px;
    }

        #Kontakt + section .sec-title, #Vertragsabschluss .sec-title {
            font-size: 1.45rem;
        }
}
