/* Enquiry form validation messages (additive only — base form styles unchanged) */
.contact-field.has-error input,
.contact-field.has-error select,
.contact-field.has-error textarea { border-color: #e5484d; }
.contact-field .cf-error { color: #ff8a8a; font-size: 0.8rem; line-height: 1.3; }
.contact-form .cf-form-msg {
    grid-column: 1 / -1;
    background-color: rgba(229,72,77,0.12);
    border: 1px solid rgba(229,72,77,0.45);
    color: #ffb3b5;
    border-radius: 4px;
    padding: 0.8rem 1rem;
    font-size: 0.9rem;
    line-height: 1.5;
}
.contact-form .cf-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.contact-submit[disabled] { opacity: 0.7; cursor: wait; transform: none; }

/* Inline thank-you message shown in place of the form after a successful submit */
.cf-success {
    width: 100%;
    text-align: center;
    padding: 2.5rem 1rem;
    outline: none;
    animation: cfFadeIn 0.4s ease;
}
.cf-success-icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 1.2rem;
    border-radius: 50%;
    background-color: rgba(254,193,16,0.15);
    color: #FEC110;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.7rem;
}
.cf-success-title {
    color: #fff;
    font-size: 1.6rem;
    font-weight: 700;
    margin: 0 0 0.8rem;
}
.cf-success-text {
    color: #c9d1dc;
    font-size: 1rem;
    line-height: 1.7;
    max-width: 520px;
    margin: 0 auto;
}
@keyframes cfFadeIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
