.ecf{max-width:1100px;margin:0 auto;font-family:inherit;container-type:inline-size}
.ecf-form{position:relative}
.ecf-form label{display:block;font-weight:600;margin:0 0 14px;font-size:15px}
.ecf-form input[type=text],.ecf-form input[type=email],.ecf-form input[type=tel],.ecf-form select,.ecf-form textarea{display:block;width:100%;box-sizing:border-box;margin-top:5px;padding:11px 12px;font-size:16px;border:1px solid #c9ced6;border-radius:6px;background:#fff;font-weight:400}
.ecf-form input:focus,.ecf-form select:focus,.ecf-form textarea:focus{outline:2px solid #1e6fd9;outline-offset:1px}
.ecf-row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ecf-check{display:flex!important;gap:10px;align-items:flex-start;font-weight:400!important}
.ecf-check input{margin-top:4px;width:18px;height:18px}
.ecf-hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.ecf-hint{background:#eef5ff;border-left:4px solid #1e6fd9;padding:8px 12px;margin:0 0 14px;font-size:14px;border-radius:4px}
.ecf-error{background:#fdecec;border-left:4px solid #c0392b;padding:10px 12px;margin:0 0 14px;font-size:14px;border-radius:4px;color:#7a1f16}
.ecf-btn{display:inline-block;background:#1e6fd9;color:#fff!important;border:0;border-radius:6px;padding:13px 26px;font-size:16px;font-weight:600;cursor:pointer;text-decoration:none}
.ecf-btn[disabled]{opacity:.6;cursor:wait}
.ecf-wa{background:#1a9a4a}
.ecf-faq{background:#f6f8fb;border:1px solid #e1e6ee;border-radius:10px;padding:14px 16px;margin:0 0 14px;box-sizing:border-box}
.ecf-faq h3{margin:0 0 8px;font-size:18px}
.ecf-faq-empty,.ecf-team{font-size:14px;color:#55606e;margin:0 0 10px}
.ecf-q{border:1px solid #dde3ec;background:#fff;border-radius:6px;margin:0 0 8px}
.ecf-q button{width:100%;text-align:left;background:none;border:0;padding:11px 12px;font-size:15px;font-weight:600;cursor:pointer;color:#1b2430}
.ecf-q .a{display:none;padding:0 12px 12px;font-size:14px;line-height:1.5;color:#333}
.ecf-q.open .a{display:block}
.ecf-thanks{text-align:center;padding:30px 10px}
.ecf-thanks h3{font-size:22px;margin:0 0 20px}
/* Wide container (>=760px): FAQ panel beside the form, never taller than the form. Narrow (e.g. the 450px Elementor column, phones): one column, panel under the message box. */
@container (min-width:760px){.ecf-form{padding-right:calc(38% + 28px)}.ecf-faq{position:absolute;top:0;right:0;width:38%;max-height:100%;overflow:auto;margin:0}}
@media(max-width:767px){.ecf-btn{width:100%;text-align:center;box-sizing:border-box}}
@media(max-width:420px){.ecf-row2{grid-template-columns:1fr;gap:0}}
