/* Start custom CSS *//* Contact Form 7 styling for the Requirements Map email-capture card (same system as the Try 3 Lessons page) */
.elementor-65240 .wpcf7 { font-family: "IBM Plex Sans", sans-serif; }
.elementor-65240 .wpcf7 form { display: flex; flex-direction: column; gap: 14px; margin: 0; }
.elementor-65240 .wpcf7 form > p { margin: 0; display: flex; flex-direction: column; gap: 14px; }
.elementor-65240 .wpcf7 label { display: block; font-size: 0.85rem; font-weight: 600; color: #1a1f26; margin: 0 0 6px 0; line-height: 1.3; }
.elementor-65240 .wpcf7 .wpcf7-form-control-wrap { display: block; }
.elementor-65240 .wpcf7 input:not([type=submit]):not([type=radio]):not([type=checkbox]):not([type=file]),
.elementor-65240 .wpcf7 select,
.elementor-65240 .wpcf7 textarea { width: 100%; box-sizing: border-box; padding: 12px 14px; border: 1px solid #d6dbe3; border-radius: 10px; background: #fff; font-family: "IBM Plex Sans", sans-serif; font-size: 1rem; line-height: 1.4; color: #111; transition: border-color .15s, box-shadow .15s; }
.elementor-65240 .wpcf7 select.wpcf7-form-control { height: auto !important; min-height: 50px !important; line-height: 1.4 !important; padding: 12px 42px 12px 14px !important; font-size: 1rem !important; color: #111 !important; background-color: #fff !important; -webkit-appearance: none; -moz-appearance: none; appearance: none; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%231a1f26' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") !important; background-repeat: no-repeat !important; background-position: right 14px center !important; background-size: 14px 14px !important; cursor: pointer; }
.elementor-65240 .wpcf7 input:not([type=radio]):focus, .elementor-65240 .wpcf7 select:focus, .elementor-65240 .wpcf7 textarea:focus { outline: none; border-color: #61cc2f; box-shadow: 0 0 0 3px rgba(97,204,47,.25); }
.elementor-65240 .wpcf7 input::placeholder, .elementor-65240 .wpcf7 textarea::placeholder { color: #8a909a; }
.elementor-65240 .wpcf7 .wpcf7-submit { width: 100%; margin-top: 6px; padding: 16px 30px; border: 0; border-radius: 10px; background: #61cc2f; color: #000; font-family: "IBM Plex Sans", sans-serif; font-size: 16px; font-weight: 700; cursor: pointer; transition: background .15s; }
.elementor-65240 .wpcf7 .wpcf7-submit:hover { background: #55b529; }
.elementor-65240 .wpcf7 .wpcf7-spinner { margin: 8px auto 0; display: block; }
.elementor-65240 .wpcf7 .wpcf7-not-valid-tip { font-size: 0.8rem; color: #c0392b; margin-top: 4px; }
.elementor-65240 .wpcf7 .wpcf7-not-valid { border-color: #c0392b; }
.elementor-65240 .wpcf7 .wpcf7-response-output { margin: 12px 0 0; padding: 12px 14px; border-radius: 10px; border: 1px solid #d6dbe3; font-size: 0.9rem; }
.elementor-65240 .wpcf7 form.sent .wpcf7-response-output { border-color: #61cc2f; background: #eefbe7; color: #1f5a0b; }
.elementor-65240 .wpcf7 form.invalid .wpcf7-response-output, .elementor-65240 .wpcf7 form.failed .wpcf7-response-output { border-color: #c0392b; background: #fdf0ee; color: #8a2419; }/* End custom CSS */