/* Smart Contact Form - Frontend */
.scf-wrapper { box-sizing:border-box; font-family:inherit; width:100%;
    background:var(--scf-bg,#fff);
    padding:var(--scf-pad,30px);
    border-radius:var(--scf-radius,8px);
    box-shadow:var(--scf-shadow,0 2px 20px rgba(0,0,0,.08));
    max-width:var(--scf-maxw,600px);
    border:var(--scf-border,none);
    margin:0 auto;
}
.scf-wrapper *,.scf-wrapper *::before,.scf-wrapper *::after { box-sizing:border-box; }
.scf-title { margin:0 0 8px; line-height:1.3; }
.scf-subtitle { margin:0 0 24px; opacity:.7; }
.scf-field { margin-bottom:18px; }
.scf-label { display:block; margin-bottom:6px;
    color:var(--scf-lc,#333);
    font-weight:var(--scf-lw,600);
    font-size:var(--scf-fs,15px);
}
.scf-required { color:#e53e3e; margin-left:3px; }
.scf-input { display:block; width:100%; padding:10px 14px; line-height:1.5; outline:none; transition:border-color .2s,box-shadow .2s;
    border:var(--scf-i-brd,1px solid #ddd);
    border-radius:var(--scf-i-rad,5px);
    background:var(--scf-i-bg,#fafafa);
    color:var(--scf-i-col,#333);
    font-size:var(--scf-fs,15px);
}
.scf-input:focus { border-color:#BC8E50!important; box-shadow:0 0 0 3px rgba(188,142,80,.15); }
.scf-input.scf-err { border-color:#e53e3e!important; }
.scf-textarea { resize:vertical; min-height:110px; }
.scf-select { appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath fill='%23666' d='M6 8L0 0h12z'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 14px center; padding-right:36px; cursor:pointer; }
.scf-checkbox-label,.scf-radio-label { display:flex; align-items:flex-start; gap:8px; cursor:pointer; font-size:var(--scf-fs,15px); }
.scf-checkbox,.scf-radio-label input[type="radio"] { width:18px; height:18px; margin-top:2px; flex-shrink:0; cursor:pointer; accent-color:var(--scf-bb,#BC8E50); }
.scf-radio-group { display:flex; flex-direction:column; gap:8px; }
.scf-submit-wrap { margin-top:22px; }
.scf-btn { display:block; width:100%; font-weight:600; letter-spacing:.3px; transition:opacity .2s,transform .1s; cursor:pointer;
    background:var(--scf-bb,#BC8E50);
    color:var(--scf-bc,#fff);
    border-radius:var(--scf-br,5px);
    padding:var(--scf-bp,12px 30px);
    font-size:var(--scf-bfs,16px);
    border:none;
}
.scf-btn:hover { opacity:.88; }
.scf-btn:active { transform:scale(.98); }
.scf-btn:disabled { opacity:.55; cursor:not-allowed; }
.scf-success { background:#f0fdf4; border:1px solid #86efac; border-radius:6px; color:#166534; padding:14px 18px; margin-bottom:20px; font-weight:500; }
.scf-error { background:#fef2f2; border:1px solid #fca5a5; border-radius:6px; color:#991b1b; padding:14px 18px; margin-bottom:20px; }
