.turnstile-consent-card { box-sizing: border-box; padding: clamp(1.1rem, 3vw, 1.75rem); border: 1px solid #b5c7aa; border-inline-start: 4px solid #507d00; border-radius: 1rem; background: #f0f5eb; color: #253d2c; line-height: 1.65; box-shadow: 0 5px 18px rgb(30 50 30 / .06); }
.turnstile-consent-card[hidden] { display: none; }
.turnstile-consent-heading { display: flex; align-items: center; gap: .75rem; margin-bottom: .75rem; font-size: 1.15rem; line-height: 1.4; }
.turnstile-consent-heading svg { flex-shrink: 0; color: #507d00; }
.turnstile-consent-card p { margin: .65rem 0; }
.turnstile-consent-card .turnstile-consent-detail, .turnstile-consent-card .turnstile-consent-alternative { font-size: .875rem; }
.turnstile-consent-card a { color: inherit; text-decoration: underline; text-underline-offset: .15em; }
.turnstile-consent-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1.15rem 0; }
.turnstile-consent-actions button { flex: 1 1 12rem; padding: .8rem 1rem; min-height: 48px; border: 1px solid #507d00; border-radius: .6rem; background: #fff; color: #365300; font: inherit; font-size: .95rem; font-weight: 600; line-height: 1.4; cursor: pointer; }
.turnstile-consent-actions button[data-turnstile-consent=grant] { background: #507d00; color: #fff; }
.turnstile-consent-actions button:hover { box-shadow: inset 0 0 0 2px currentColor; }
.turnstile-consent-actions button:focus-visible { outline: 3px solid #253d2c; outline-offset: 3px; }
.contact-inputs { min-width: 0; border: 0; padding: 0; margin: 0; display: grid; gap: 1.25rem; transition: opacity .2s; }
.contact-inputs:disabled { opacity: .45; filter: grayscale(1); }
.contact-inputs:disabled :is(input, textarea, button) { cursor: not-allowed; }
