/* Existing form design, separated with its responsive rules. */
#meolink-lp .meolink-contact input,
#meolink-lp .meolink-contact select,
#meolink-lp .meolink-contact textarea { font:inherit }
#meolink-lp .meolink-contact input,
#meolink-lp .meolink-contact select,
#meolink-lp .meolink-contact textarea { -webkit-tap-highlight-color:transparent }
#meolink-lp .meolink-contact input:focus,
#meolink-lp .meolink-contact select:focus,
#meolink-lp .meolink-contact textarea:focus { outline:2px solid var(--blue);outline-offset:2px }
#meolink-lp .form { background:white;border-top:6px solid var(--blue);border-radius:6px;padding:30px;box-shadow:0 20px 50px #162c5012;min-width:0 }
#meolink-lp .form h3 { text-align:center;color:var(--navy);font-size:24px;line-height:1.5;font-weight:900 }
#meolink-lp .hform h3 { font-size:22px }
#meolink-lp .form-sub { font-size:12px;text-align:center;margin:12px 0 22px }
#meolink-lp .notice { background:#fffbed;border:1px solid #efbe33;border-radius:4px;padding:20px;margin-bottom:24px;font-size:12px }
#meolink-lp .notice>b { display:inline-block;background:#d53b3b;color:white;padding:2px 10px;margin-bottom:10px;border-radius:2px }
#meolink-lp .notice p { color:var(--navy);font-weight:700 }
#meolink-lp .notice strong { color:#dc3838 }
#meolink-lp .form-progress { display:flex;align-items:center;gap:12px;font-size:12px;color:#8392a9;margin:0 0 24px;white-space:nowrap }
#meolink-lp .form-progress b { color:var(--blue) }
#meolink-lp .meolink-contact progress { width:100%;min-width:0;height:6px;border:0;border-radius:10px;overflow:hidden;background:#e4ecf7 }
#meolink-lp .meolink-contact progress::-webkit-progress-bar { background:#e4ecf7 }
#meolink-lp .meolink-contact progress::-webkit-progress-value { background:var(--blue);transition:width .2s }
#meolink-lp .meolink-contact progress::-moz-progress-bar { background:var(--blue) }
#meolink-lp .fg { margin:0 0 17px }
#meolink-lp .fg label { display:block;font-size:14px;font-weight:800;color:var(--navy);margin-bottom:6px }
#meolink-lp .req,
#meolink-lp .opt { font-size:11px;padding:2px 6px;border-radius:3px;margin-left:8px;line-height:1.3 }
#meolink-lp .req { background:#de4141;color:white }
#meolink-lp .opt { background:#e5ecef;color:#60717c }
#meolink-lp .meolink-contact input:not([type=hidden]):not([type=submit]),
#meolink-lp .meolink-contact select,
#meolink-lp .meolink-contact textarea { display:block;width:100%;min-height:48px;background:#f7f9fc;color:var(--ink);border:1px solid #cfdbeb;border-radius:5px;padding:11px 13px;font-size:16px }
#meolink-lp .meolink-contact input::placeholder,
#meolink-lp .meolink-contact textarea::placeholder { color:#95a4b8 }
#meolink-lp .meolink-contact textarea { height:100px;resize:vertical }
#meolink-lp .form .btn { width:100%;margin-top:6px }
#meolink-lp .priv { font-size:12px;text-align:center;margin-top:14px;color:#8395a6;line-height:1.7 }
#meolink-lp .priv a { color:var(--teal) }
#meolink-lp .contact .form h3 { font-size:26px }
@media(max-width:1000px) {
#meolink-lp .form { padding:24px }
}
@media(max-width:899px) {
#meolink-lp .hform { max-width:600px;width:100%;margin:15px auto 0 }
#meolink-lp .contact .form { max-width:600px;width:100%;margin:auto }
}
@media(max-width:600px) {
#meolink-lp .form { padding:24px 20px }
#meolink-lp .hform h3 { font-size:21px }
#meolink-lp .notice { padding:16px }
#meolink-lp .contact .form h3 { font-size:24px }
}
/* CF7 inserts its own form and field wrappers inside the existing design frame. */
#meolink-lp .meolink-contact .wpcf7 { margin:0; width:100%; min-width:0; }
#meolink-lp .meolink-contact .wpcf7-form { margin:0; padding:0; border:0; background:transparent; box-shadow:none; }
#meolink-lp .meolink-contact .wpcf7-form-control-wrap { display:block; width:100%; min-width:0; }
#meolink-lp .meolink-contact .wpcf7-form .fg > p { margin:0; }
#meolink-lp .meolink-contact .wpcf7-submit { display:block; width:100%; min-height:48px; margin:6px 0 0; padding:12px 24px; border:1px solid transparent; border-radius:999px; color:#fff; background:linear-gradient(#ffb837,#fa9700); box-shadow:0 7px 18px #cf810025; font:800 14px/1.5 var(--sans); text-align:center; cursor:pointer; appearance:none; -webkit-appearance:none; }
#meolink-lp .meolink-contact .wpcf7-submit:disabled { opacity:.6; cursor:wait; }
#meolink-lp .meolink-contact .wpcf7-submit:focus-visible { outline:3px solid #df9000; outline-offset:4px; }
#meolink-lp .meolink-contact .wpcf7-spinner { display:none; margin:12px auto 0; }
#meolink-lp .meolink-contact form.submitting .wpcf7-spinner { display:block; }
#meolink-lp .meolink-contact [aria-invalid="true"] { border-color:#cf3535; }
#meolink-lp .meolink-contact .wpcf7-not-valid-tip { color:#b52828; font-size:13px; line-height:1.6; margin-top:5px; }
#meolink-lp .meolink-contact .wpcf7-response-output { margin:20px 0 0; padding:12px; border-radius:5px; font-size:14px; line-height:1.7; overflow-wrap:anywhere; }
#meolink-lp .meolink-contact form.sent .wpcf7-response-output { border-color:#32815a; }
#meolink-lp .meolink-contact form.invalid .wpcf7-response-output,
#meolink-lp .meolink-contact form.unaccepted .wpcf7-response-output { border-color:#d49c15; }
#meolink-lp .meolink-contact form.failed .wpcf7-response-output,
#meolink-lp .meolink-contact form.aborted .wpcf7-response-output,
#meolink-lp .meolink-contact form.spam .wpcf7-response-output { border-color:#cf3535; }
#meolink-lp .meolink-form-placeholder { border:2px dashed #bdcce1; border-radius:8px; padding:32px 20px; background:#f7f9fc; text-align:center; }
#meolink-lp .meolink-form-placeholder p { margin:12px 0 0; color:#667c94; font-size:13px; line-height:1.8; }
#meolink-lp .meolink-form-placeholder .meolink-placeholder-title { color:#142b60; font-size:16px; font-weight:800; margin:0; }
@media(max-width:600px){#meolink-lp .meolink-form-placeholder{padding:28px 16px;}}
