/* Popup-Styling */
.expose-anfragen-popup {
    display: none;
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0,0,0,0.4);
}

.popup-content {
    background-color: #fefefe;
    margin: 10% auto;
    padding: 20px;
    border: 1px solid #888;
    width: 90%;
    max-width: 500px;
    position: relative;
    border-radius: 5px;
}

.close-popup {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
}

.close-popup:hover,
.close-popup:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
}

/* Formular-Styling */
.expose-anfragen-form {
    display: flex;
    flex-direction: column;
}

.expose-anfragen-form label {
    margin-top: 10px;
    margin-bottom: 5px;
    font-weight: bold;
}

.expose-anfragen-form input[type="text"],
.expose-anfragen-form input[type="email"],
.expose-anfragen-form input[type="tel"],
.expose-anfragen-form textarea {
    width: 100%;
    padding: 8px;
    margin-bottom: 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 16px;
}

.expose-anfragen-form textarea {
    height: 100px;
    resize: vertical;
}

.expose-anfragen-form input[type="checkbox"] {
    margin-right: 5px;
}

.expose-anfragen-form button[type="submit"] {
    background-color: #4CAF50;
    border: none;
    color: white;
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    margin-top: 20px;
    cursor: pointer;
    transition: background-color 0.3s;
}

.expose-anfragen-form button[type="submit"]:hover {
    background-color: #45a049;
}

/* Button-Styling */
.expose-anfragen-button {
    background-color: #4CAF50;
    border: none;
    color: white;
    padding: 10px 20px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    margin: 4px 2px;
    cursor: pointer;
    border-radius: 4px;
    transition: background-color 0.3s;
}

.expose-anfragen-button:hover {
    background-color: #45a049;
}

/* FacetWP-Kompatibilität */
.fwp-marker-content .expose-anfragen-button {
    margin-top: 10px;
    display: block;
    width: 100%;
}

/* Responsive Design */
@media screen and (max-width: 600px) {
    .popup-content {
        width: 95%;
        margin: 5% auto;
        padding: 15px;
    }

    .expose-anfragen-form input[type="text"],
    .expose-anfragen-form input[type="email"],
    .expose-anfragen-form input[type="tel"],
    .expose-anfragen-form textarea {
        font-size: 16px; /* Verhindert Zoom auf iOS */
    }

    .expose-anfragen-button {
        width: 100%;
        padding: 15px 20px;
    }
}

/* Zusätzliche Anpassungen für bessere Lesbarkeit und Zugänglichkeit */
.expose-anfragen-form label[for="zustimmung"] {
    display: inline-block;
    margin-left: 5px;
    font-weight: 300;
    font-size: 0.9rem;
}

.expose-anfragen-form .required-field::after {
    content: "*";
    color: red;
    margin-left: 3px;
}

/* Fehlermeldungen */
.expose-anfragen-form .error-message {
    color: red;
    font-size: 14px;
    margin-top: -5px;
    margin-bottom: 10px;
}

/* Erfolgsmeldung */
.success-message {
    background-color: #dff0d8;
    border: 1px solid #d6e9c6;
    color: #3c763d;
    padding: 15px;
    margin-bottom: 20px;
    border-radius: 4px;
}