/* Vertical form */
.brevo-newsletter.vertical form {
    display:flex;
    flex-direction:column;
}
.brevo-newsletter.vertical input,
.brevo-newsletter.vertical button {
    width:100%;
    margin-bottom:10px;
    padding:10px;
    box-sizing:border-box;
}
.brevo-newsletter.vertical label {
    display:flex;
    align-items:center;
    gap:5px;
    margin-bottom:10px;
}
.brevo-newsletter.vertical .brevo-messages {
    list-style:none;
    padding:0;
    margin-bottom:10px;
}
.brevo-newsletter.vertical .brevo-messages li.success {
    background:#d4edda;
    color:#155724;
    padding:8px 10px;
    margin-bottom:5px;
    border-radius:4px;
}
.brevo-newsletter.vertical .brevo-messages li.error {
    background:#f8d7da;
    color:#721c24;
    padding:8px 10px;
    margin-bottom:5px;
    border-radius:4px;
}
.brevo-newsletter.vertical .brevo-captcha-wrapper {
    display:block;
    margin-bottom:10px;
}
.brevo-newsletter.vertical input[type=checkbox] {
    width:auto;
    margin-bottom:0;
}

/* Horizontal form */
.brevo-newsletter.horizontal form {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:center;
}
.brevo-newsletter.horizontal input[type="text"],
.brevo-newsletter.horizontal input[type="email"] {
    flex:1 1 auto;
    min-width:150px;
    padding:10px;
}
.brevo-newsletter.horizontal button {
    flex:0 0 auto;
    padding:10px 20px;
}
.brevo-newsletter.horizontal label {
    flex-basis:100%;
    display:flex;
    align-items:center;
    gap:5px;
}
.brevo-newsletter.horizontal .brevo-messages {
    list-style:none;
    padding:0;
    width:100%;
    margin-bottom:10px;
}
.brevo-newsletter.horizontal .brevo-messages li.success {
    background:#d4edda;
    color:#155724;
    padding:8px 10px;
    margin-bottom:5px;
    border-radius:4px;
}
.brevo-newsletter.horizontal .brevo-messages li.error {
    background:#f8d7da;
    color:#721c24;
    padding:8px 10px;
    margin-bottom:5px;
    border-radius:4px;
}
.brevo-newsletter.horizontal .brevo-captcha-wrapper {
    flex:1 1 auto;
    min-width:150px;
    margin-right:10px;
    display:flex;
    align-items:center;
}

/* ===== New styles for required asterisk & error highlighting ===== */

.brevo-form {
}

.brevo-field {
    display:flex;
    flex-direction:column;
}

.brevo-label {
    font-weight:600;
    margin-bottom:3px;
}

.brevo-required {
    color:#dc3545;
    margin-left:2px;
}

/* Highlight required fields when server error occurs */
.brevo-form-has-error .brevo-field-required input,
.brevo-form-has-error .brevo-field-required .brevo-gdpr-text {
    border-color:#dc3545;
}

/* GDPR text */
.brevo-gdpr-field {
    font-size:0.9rem;
}

.brevo-gdpr-text a {
    text-decoration:underline;
}
