/* WP93 contact form (Contact Form 7) inside the AJDN.com ecosystem templates.
 * Mobile first; visible labels; tap targets >= 48px; 16px inputs (no iOS zoom); visible focus. */
.ajdn-contact-panel{margin-top:18px;background:#fff;color:#07111f;border-radius:24px;padding:clamp(20px,5vw,40px);box-shadow:0 24px 60px rgb(0 0 0 / 28%)}
.ajdn-contact-form .wpcf7{margin:0;max-width:none}
.ajdn-contact-form .wpcf7-form{display:grid;gap:18px}
.ajdn-contact-form .ajdn-cf{display:grid;gap:18px}
.ajdn-contact-form .ajdn-cf p{margin:0}
.ajdn-contact-form .ajdn-cf-row{display:grid;gap:18px;grid-template-columns:minmax(0,1fr)}
.ajdn-contact-form .ajdn-cf-field{display:grid;gap:8px;min-width:0}
.ajdn-contact-form .ajdn-cf-field br{display:none}
.ajdn-contact-form label{color:#07111f;font-weight:700;font-size:1rem;line-height:1.4}
.ajdn-contact-form .ajdn-cf-required{color:#9b1c1c;margin-inline-start:2px}
.ajdn-contact-form .ajdn-cf-note{color:#3a4a5c;font-size:.95rem}
.ajdn-contact-form .ajdn-cf-note a,.ajdn-contact-form .ajdn-cf-consent a{color:#07111f;text-decoration:underline;text-underline-offset:3px}
.ajdn-contact-form :is(input[type="text"],input[type="email"],input[type="tel"],select,textarea){display:block;width:100%;min-height:52px;padding:12px 14px;font:inherit;font-size:16px;line-height:1.4;color:#07111f;background:#fff;border:2px solid #7d8b9b;border-radius:12px;appearance:none}
.ajdn-contact-form select{background-image:linear-gradient(45deg,transparent 50%,#07111f 50%),linear-gradient(135deg,#07111f 50%,transparent 50%);background-position:calc(100% - 22px) 50%,calc(100% - 16px) 50%;background-size:6px 6px;background-repeat:no-repeat;padding-inline-end:44px}
.ajdn-contact-form textarea{min-height:160px;resize:vertical}
.ajdn-contact-form :is(input,select,textarea):focus-visible{outline:3px solid #62d8ff;outline-offset:2px;border-color:#07111f}
.ajdn-contact-form [aria-invalid="true"]{border-color:#9b1c1c;background:#fff7f7}
.ajdn-contact-form .wpcf7-not-valid-tip{display:block;margin-top:6px;color:#9b1c1c;font-size:.95rem;font-weight:700}
.ajdn-contact-form .ajdn-cf-consent .wpcf7-list-item{margin:0}
.ajdn-contact-form .ajdn-cf-consent label{display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:start;font-weight:500;min-height:48px;cursor:pointer}
.ajdn-contact-form .ajdn-cf-consent input[type="checkbox"]{width:24px;height:24px;margin:2px 0 0;accent-color:#07111f}
.ajdn-contact-form .ajdn-cf-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.ajdn-contact-form .ajdn-cf-submit{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.ajdn-contact-form .ajdn-cf-button{width:100%;min-height:56px;padding:14px 24px;border:0;border-radius:999px;background:#b9f56a;color:#07111f;font:inherit;font-weight:800;font-size:1rem;cursor:pointer}
.ajdn-contact-form .ajdn-cf-button:hover{background:#a6ea4f}
.ajdn-contact-form .ajdn-cf-button:focus-visible{outline:3px solid #07111f;outline-offset:3px}
.ajdn-contact-form .ajdn-cf-button:disabled{opacity:.6;cursor:not-allowed}
.ajdn-contact-form .wpcf7 form .wpcf7-response-output{margin:4px 0 0;padding:12px 16px;border:0;border-inline-start:4px solid #62d8ff;border-radius:8px;background:#f2f7fb;color:#07111f;font-weight:600}
.ajdn-contact-form .wpcf7 form.invalid .wpcf7-response-output,.ajdn-contact-form .wpcf7 form.unaccepted .wpcf7-response-output,.ajdn-contact-form .wpcf7 form.failed .wpcf7-response-output,.ajdn-contact-form .wpcf7 form.spam .wpcf7-response-output{border-inline-start-color:#9b1c1c;background:#fff7f7}
.ajdn-contact-form .wpcf7 form.sent .wpcf7-response-output{border-inline-start-color:#2f7d32;background:#f3fbf3}
.ajdn-contact-fallback a,.ajdn-contact-channels a{text-decoration:underline;text-underline-offset:3px}
.ajdn-contact-channels{display:grid;gap:4px;margin:12px 0}
.ajdn-contact-channels dt{font-weight:700;margin-top:8px}
.ajdn-contact-channels dd{margin:0}
.ajdn-contact-channels a,.eco-contact-cta{display:inline-flex;align-items:center;min-height:48px}
@media (min-width:720px){
 .ajdn-contact-form .ajdn-cf-row{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ajdn-contact-form .ajdn-cf-button{width:auto}
}
@media (prefers-reduced-motion:reduce){.ajdn-contact-form *{transition:none!important}}
/* WP93-1 contrast (WCAG AA) op de witte formulierkaart: expliciete kleuren, geen inherit/opacity.
 * Nodig omdat o.a. ".ajdn-ecosystem .eco-detail-content p{color:#bfd0df}" (1,5:1 op wit) en de cyaan focusrand (1,7:1) doorwerkten in de kaart.
 * Tekst >= 4.5:1, randen/focus >= 3:1; gecontroleerd met checks/contrast-check.py (WP93-1). */
.ajdn-ecosystem .ajdn-contact-panel{background:#fff;color:#07111f;color-scheme:light;opacity:1}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form{--eco-paper:#07111f;--eco-cyan:#0b5fa5;color:#07111f;opacity:1}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form :is(p,span,div,li,small,strong,em,label,legend,output){opacity:1}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form :is(p,li,label,legend,strong,em,small,.wpcf7-list-item-label){color:#07111f}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form .ajdn-cf-note{color:#334155}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form .ajdn-cf-consent,.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form .ajdn-cf-consent label,.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form .ajdn-cf-consent .wpcf7-list-item-label{color:#07111f}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form a{color:#07111f;text-decoration:underline;text-underline-offset:3px}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form a:hover{color:#0b5fa5}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form :is(input[type="text"],input[type="email"],input[type="tel"],select,textarea){color:#07111f;-webkit-text-fill-color:#07111f;background-color:#fff;border-color:#64748b;opacity:1}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form :is(input,textarea)::placeholder{color:#5b6573;-webkit-text-fill-color:#5b6573;opacity:1}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form select option{color:#07111f;background-color:#fff}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form :is(input,select,textarea):focus-visible{outline:3px solid #0b5fa5;outline-offset:2px;border-color:#07111f}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form a:focus-visible,.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form .ajdn-cf-button:focus-visible{outline:3px solid #07111f;outline-offset:3px}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form input[type="checkbox"]{accent-color:#07111f;opacity:1}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form [aria-invalid="true"]{border-color:#9b1c1c;background-color:#fff7f7}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form .ajdn-cf-required{color:#9b1c1c}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form .wpcf7-not-valid-tip{color:#9b1c1c;opacity:1}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form .wpcf7 form .wpcf7-response-output{color:#07111f;background-color:#eef4f9;border-inline-start-color:#0b5fa5;opacity:1}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form .wpcf7 form:is(.invalid,.unaccepted,.failed,.spam,.aborted,.payment-required) .wpcf7-response-output{color:#07111f;background-color:#fff7f7;border-inline-start-color:#9b1c1c}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form .wpcf7 form.sent .wpcf7-response-output{color:#07111f;background-color:#f3fbf3;border-inline-start-color:#2f7d32}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form .ajdn-cf-button{color:#07111f;background-color:#b9f56a;opacity:1}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form .ajdn-cf-button:hover{color:#07111f;background-color:#a6ea4f}
.ajdn-ecosystem .ajdn-contact-panel .ajdn-contact-form .ajdn-cf-button:disabled{color:#334155;background-color:#e2e8f0;opacity:1}
