/* CSP SEC contact form: production-conservative addition without altering branding. */
.contact-form-card{padding:clamp(22px,3vw,36px);max-width:none;width:100%;min-width:0}
.contact-layout{align-items:start}
.contact-form-eyebrow{letter-spacing:.14em;font-size:.77rem!important;font-weight:800;color:#226741!important;margin:0 0 22px!important}
.contact-form-card form{display:grid;gap:16px}
.contact-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.contact-form-card form label:not(.contact-privacy-check){display:flex;flex-direction:column;gap:8px;color:#163d29;font-size:.87rem;font-weight:700}
.contact-form-card input:not([type=checkbox]),.contact-form-card select,.contact-form-card textarea{
 width:100%;min-width:0;border:1px solid #cbdccf;border-radius:9px;padding:13px 14px;background:#fff;
 color:#173829;font:inherit;font-weight:400;line-height:1.45;box-shadow:none;outline-offset:3px}
.contact-form-card textarea{resize:vertical;min-height:126px}
.contact-form-card input:focus-visible,.contact-form-card select:focus-visible,.contact-form-card textarea:focus-visible{outline:2px solid #348856;border-color:#348856}
.contact-form-card input[aria-invalid="true"],.contact-form-card select[aria-invalid="true"],.contact-form-card textarea[aria-invalid="true"]{border-color:#b43b38}
.contact-privacy-check{display:flex!important;align-items:flex-start;gap:11px;font-size:.78rem!important;line-height:1.6;color:#425a4a!important;font-weight:400!important}
.contact-privacy-check input{margin-top:5px;accent-color:#2c8851;min-width:17px;height:17px;flex:0 0 auto}
.contact-privacy-check a,.contact-fallback a{color:#226c3d;text-decoration:underline;text-underline-offset:3px;font-weight:650}
.contact-form-hint{font-size:.76rem!important;color:#647569!important;margin:0!important;line-height:1.55}
.contact-send-button{border:none;cursor:pointer;justify-content:center!important;width:fit-content;min-width:175px}
.contact-send-button[disabled]{opacity:.66;cursor:wait}
.contact-form-status{display:none;padding:12px 14px;border-radius:9px;font-size:.84rem!important;line-height:1.55;margin:0!important}
.contact-form-status.is-shown{display:block}
.contact-form-status.is-success{background:#eaf6ec;color:#154a2b;border:1px solid #aad6b3}
.contact-form-status.is-error{background:#fff3ed;color:#763522;border:1px solid #e1b5a4}
.contact-fallback{margin:20px 0 0!important;font-size:.83rem!important;color:#466450!important}
.contact-trap{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
@media(max-width:750px){.contact-fields-grid{grid-template-columns:1fr}.contact-form-card{padding:21px 18px}.contact-send-button{width:100%}}
/* Keep input fields legible against the dark green contact-section background. */
.contact-layout{grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr);gap:clamp(28px,4vw,72px)}
.contact-form-card{background:#f7faf6;color:#173a28;border:1px solid #dae6da;border-radius:12px;box-shadow:0 26px 70px rgba(0,0,0,.14)}
@media(max-width:990px){.contact-layout{grid-template-columns:1fr}.contact-form-card{max-width:740px;width:100%}}

/* Balanced typography for the wider form. */
@media(min-width:991px){.contact-layout h2{font-size:clamp(2.9rem,4vw,4.15rem)}}
