.dwf-form,.dwf-modal{--g9:#0b3d22;--g8:#11552f;--g7:#15803d;--g6:#16a34a;--g1:#dcf3e4;--g0:#eaf7ef;--cr:#f4ede1;--ink:#13281c;--bd:#4a5a50;--mu:#6b7b71;--ln:#e0d3c7;--er:#b42318}
.dwf-form,.dwf-form *,.dwf-modal,.dwf-modal *{box-sizing:border-box;font-family:inherit}
.dwf-ic{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* layout */
.dwf-wrap{max-width:860px;margin:0 auto}
.dwf-wrap .dwf-form{padding:36px;background:#fff;border:1px solid var(--ln);border-radius:24px;box-shadow:0 30px 60px -40px rgba(11,61,34,.45)}
.dwf-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px}
.dwf-full{grid-column:1/-1}
.dwf-field{display:flex;flex-direction:column;gap:7px;min-width:0}
.dwf-field label{color:var(--ink);font-size:.9rem;font-weight:700;line-height:1.3}
.dwf-field label b{color:var(--g6)}
.dwf-field label i{color:var(--mu);font-style:normal;font-weight:500;font-size:.82rem}
.dwf-field input[type=text],.dwf-field input[type=email],.dwf-field input[type=tel],.dwf-field textarea{width:100%;padding:13px 16px;border:1.5px solid var(--ln);border-radius:14px;background:var(--cr);color:var(--ink);font-size:.97rem;line-height:1.4;transition:.2s;box-shadow:none;margin:0;-webkit-appearance:none;appearance:none}
.dwf-field textarea{min-height:110px;resize:vertical}
.dwf-field input::placeholder,.dwf-field textarea::placeholder{color:#8a978f}
.dwf-field input:focus,.dwf-field textarea:focus{outline:0;background:#fff;border-color:var(--g6);box-shadow:0 0 0 4px rgba(22,163,74,.16)}
.dwf-field input[type=file]{width:100%;padding:9px;border:1.5px dashed var(--g6);border-radius:14px;background:var(--g0);color:var(--ink);font-size:.9rem;cursor:pointer}
.dwf-field input[type=file]::file-selector-button{margin-right:12px;padding:9px 16px;border:0;border-radius:50px;background:var(--g6);color:#fff;font-weight:700;font-size:.85rem;cursor:pointer;transition:.2s}
.dwf-field input[type=file]::file-selector-button:hover{background:var(--g7)}
.dwf-hint{color:var(--mu);font-size:.78rem}
.dwf-err{display:none;color:var(--er);font-size:.8rem;font-weight:600;line-height:1.35}
.dwf-field.has-err .dwf-err{display:block}
.dwf-field.has-err input:not([type=file]),.dwf-field.has-err textarea{border-color:var(--er);background:#fff7f6}

/* honeypot */
.dwf-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden}

/* button */
.dwf-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;width:100%;margin-top:22px;padding:15px 28px;border:2px solid transparent;border-radius:50px;background:linear-gradient(135deg,#22c55e,#15803d);color:#fff;font-size:1rem;font-weight:700;line-height:1.2;cursor:pointer;transition:.2s ease;box-shadow:0 12px 26px -10px rgba(22,163,74,.85),inset 0 1px 0 rgba(255,255,255,.3)}
.dwf-btn:hover{background:linear-gradient(135deg,#16a34a,#0f6b32);transform:translateY(-2px);box-shadow:0 16px 30px -10px rgba(22,163,74,.9),inset 0 1px 0 rgba(255,255,255,.3);color:#fff}
.dwf-btn:hover .dwf-ic{transform:translateX(3px)}
.dwf-btn .dwf-ic{transition:transform .2s ease}
.dwf-btn:focus-visible{outline:3px solid var(--g6);outline-offset:3px}
.dwf-btn:disabled{opacity:.8;cursor:progress;transform:none}
.dwf-btn.is-loading .dwf-ic{display:none}
.dwf-btn.is-loading::after{content:"";width:18px;height:18px;border-radius:50%;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;animation:dwfspin .7s linear infinite}
@keyframes dwfspin{to{transform:rotate(360deg)}}

.dwf-status{margin:14px 0 0;font-size:.92rem;font-weight:600;text-align:center}
.dwf-status:empty{display:none}
.dwf-status.is-err{color:var(--er)}

/* success */
.dwf-done{display:none;flex-direction:column;align-items:center;text-align:center;gap:14px;padding:30px 10px}
.dwf-done:focus{outline:0}
.dwf-done .dwf-ic-big{width:62px;height:62px;padding:12px;border-radius:50%;background:var(--g0);color:var(--g6)}
.dwf-done p{margin:0;color:var(--ink);font-size:1.05rem;font-weight:700;line-height:1.5;max-width:420px}
.dwf-form.is-done .dwf-fields{display:none}
.dwf-form.is-done .dwf-done{display:flex}

/* popup */
.dwf-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:20px}
.dwf-modal.is-open{display:flex;animation:dwffade .25s ease}
@keyframes dwffade{from{opacity:0}to{opacity:1}}
@keyframes dwfpop{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
.dwf-overlay{position:absolute;inset:0;background:rgba(7,36,20,.72);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.dwf-dialog{position:relative;width:100%;max-width:520px;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;padding:38px 34px 32px;background:#fff;border-radius:26px;box-shadow:0 0 0 8px rgba(255,255,255,.12),0 40px 80px -30px rgba(0,0,0,.6);animation:dwfpop .3s ease}
.dwf-dialog:focus{outline:0}
.dwf-x{position:absolute;top:14px;right:14px;width:38px;height:38px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:var(--g0);color:var(--g8);cursor:pointer;transition:.2s}
.dwf-x:hover{background:var(--g6);color:#fff}
.dwf-x svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.dwf-x:focus-visible{outline:3px solid var(--g6);outline-offset:2px}
.dwf-eb{display:inline-block;margin:0 0 10px;padding:5px 13px;border-radius:30px;background:var(--g1);color:var(--g7);font-size:.74rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.dwf-dialog h2{margin:0 0 8px;padding-right:34px;color:var(--ink);font-size:1.65rem;font-weight:800;line-height:1.2}
.dwf-sub{margin:0 0 22px;color:var(--bd);font-size:.96rem;line-height:1.55}
.dwf-form--popup .dwf-grid{grid-template-columns:1fr;gap:15px}
.dwf-form--popup .dwf-field textarea{min-height:90px}
.dwf-form--popup .dwf-btn{margin-top:18px}
html.dwf-lock,html.dwf-lock body{overflow:hidden}

@media(max-width:700px){
 .dwf-wrap .dwf-form{padding:24px 18px;border-radius:20px}
 .dwf-grid{grid-template-columns:1fr}
 .dwf-dialog{padding:32px 20px 24px;border-radius:22px}
 .dwf-dialog h2{font-size:1.4rem}
}
@media(prefers-reduced-motion:reduce){.dwf-modal.is-open,.dwf-dialog,.dwf-btn.is-loading::after{animation:none !important}.dwf-btn,.dwf-field input,.dwf-field textarea{transition:none}}

/* ---- v1.0.1: beat theme / Elementor global button styles ---- */
.dwf-form button.dwf-btn,.dwf-form .dwf-btn[type=submit]{display:inline-flex !important;visibility:visible !important;align-items:center !important;justify-content:center !important;gap:9px !important;position:relative !important;float:none !important;width:100% !important;min-height:52px !important;height:auto !important;margin:22px 0 0 !important;padding:15px 28px !important;border:2px solid transparent !important;border-radius:50px !important;background-color:#16a34a !important;background-image:linear-gradient(135deg,#22c55e,#15803d) !important;color:#fff !important;font-size:1rem !important;font-weight:700 !important;line-height:1.2 !important;letter-spacing:normal !important;text-transform:none !important;text-decoration:none !important;text-shadow:none !important;box-shadow:0 12px 26px -10px rgba(22,163,74,.85),inset 0 1px 0 rgba(255,255,255,.3) !important;cursor:pointer !important;-webkit-appearance:none !important;appearance:none !important}
.dwf-form button.dwf-btn:hover,.dwf-form button.dwf-btn:focus,.dwf-form button.dwf-btn:active{background-color:#16a34a !important;background-image:linear-gradient(135deg,#16a34a,#0f6b32) !important;color:#fff !important;border-color:transparent !important;text-decoration:none !important}
.dwf-form .dwf-btn .dwf-btn-t{display:inline !important;color:#fff !important;font-size:1rem !important;font-weight:700 !important}
.dwf-form .dwf-btn .dwf-ic{display:inline-block !important;width:18px !important;height:18px !important;fill:none !important;stroke:#fff !important}
.dwf-form .dwf-btn.is-loading .dwf-ic{display:none !important}
.dwf-form--popup button.dwf-btn{margin-top:18px !important}
.dwf-modal button.dwf-x{position:absolute !important;top:14px !important;right:14px !important;width:38px !important;height:38px !important;min-height:0 !important;padding:0 !important;display:grid !important;place-items:center !important;border:0 !important;border-radius:50% !important;background:#eaf7ef !important;color:#11552f !important;box-shadow:none !important;cursor:pointer !important}
.dwf-modal button.dwf-x:hover,.dwf-modal button.dwf-x:focus{background:#16a34a !important;color:#fff !important}
.dwf-modal button.dwf-x svg{display:block !important;width:18px !important;height:18px !important;fill:none !important;stroke:currentColor !important}
.dwf-form .dwf-field input,.dwf-form .dwf-field textarea{max-width:100% !important}
