/* Contact-only styling; Cloudflare's internal widget stays unmodified. */
.contact-form .contact-turnstile-field { min-width: 0; gap: 10px; }
.contact-form .contact-turnstile {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 0;
    padding: 18px;
    border: 1px solid #eedfd2;
    border-radius: 12px;
    background: #fffaf5;
    box-sizing: border-box;
}
.contact-form .contact-turnstile-widget { width: 100%; min-width: 0; text-align: center; }
.contact-form .contact-turnstile small {
    color: #667085;
    font-size: 12px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}
.contact-form .contact-turnstile[data-state="success"] small { color: #087b55; }
.contact-form .contact-turnstile[data-state="error"] small { color: #b42318; }
.contact-form .contact-turnstile .booking-turnstile-retry {
    align-self: flex-start;
    min-height: 44px;
    padding: 10px 14px;
    border: 1px solid #ffbc86;
    border-radius: 8px;
    background: #fff7ed;
    color: #9a3412;
    font: inherit;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}
.contact-form .contact-turnstile .booking-turnstile-retry[hidden] { display: none; }
.contact-form .contact-turnstile:focus-visible,
.contact-form .contact-turnstile .booking-turnstile-retry:focus-visible { outline: 2px solid #ff8816; outline-offset: 3px; }
@media (max-width: 480px) {
    .contact-form .contact-turnstile { padding: 14px 10px; }
}
