.rsf-wrap{--g:#2f6b3a;--gd:#245430;--cream:#f6efdc;--card:#fffaf0;--line:#d9ceb0;--txt:#23361f;--mut:#6b7a5f;width:100vw;max-width:none;min-height:100vh;margin:0 calc(50% - 50vw);font-family:Vazirmatn,Tahoma,sans-serif;color:var(--txt);line-height:1.8}
.rsf-wrap *{box-sizing:border-box}
.rsf-head{background:var(--g);color:#fff;border-radius:0;padding:22px 18px;text-align:center}
.rsf-head h2{margin:0;color:#fff;font-size:1.3rem}
.rsf-head p{margin:4px 0 0;font-size:.9rem;opacity:.9}
.rsf-form{width:100%;min-height:calc(100vh - 90px);background:var(--card);border:0;border-radius:0;padding:clamp(20px,4vw,48px);}
.rsf-form h3{font-size:1rem;color:var(--g);margin:22px 0 10px;padding-bottom:6px;border-bottom:2px solid var(--line)}
.rsf-form h3:first-child{margin-top:0}
.rsf-form>label{display:block;font-size:.92rem;font-weight:600;margin:12px 0 4px}
.rsf-form input[type=text],.rsf-form input[type=tel],.rsf-form select,.rsf-form textarea{width:100%;padding:11px 12px;border:1.5px solid var(--line);border-radius:10px;background:var(--cream);color:var(--txt);font:inherit;font-size:1rem;box-shadow:none}
.rsf-form input:focus,.rsf-form select:focus,.rsf-form textarea:focus{outline:none;border-color:var(--g)}
.rsf-form textarea{min-height:90px;resize:vertical}
.rsf-chk{display:flex!important;align-items:center;gap:10px;padding:11px 12px;margin:8px 0;border:1.5px solid var(--line);border-radius:10px;background:var(--cream);cursor:pointer;font-weight:400}
.rsf-chk input{width:20px;height:20px;accent-color:var(--g);flex:none;margin:0}
.rsf-chk:has(input:checked){border-color:var(--g)}
.rsf-btn{width:100%;margin-top:22px;padding:14px;border:0;border-radius:12px;background:var(--g);color:#fff;font:inherit;font-size:1.05rem;font-weight:700;cursor:pointer}
.rsf-btn:hover:not(:disabled){background:var(--gd)}
.rsf-btn:disabled{background:#b9c4ac;cursor:not-allowed}
.rsf-note{text-align:center;color:var(--mut);font-size:.85rem;margin:10px 0 0}
.rsf-msg{text-align:center;color:#b3261e;font-size:.9rem;margin:8px 0 0}
.rsf-hp{position:absolute!important;left:-9999px!important;height:0;width:0;opacity:0}
.rsf-ok{display:none;min-height:calc(100vh - 90px);text-align:center;padding:30px 10px;background:var(--card);border:0;border-radius:0}
.rsf-ok h3{color:var(--g);margin:6px 0}

html,body{overflow-x:hidden}
@media (max-width:600px){.rsf-form{padding:18px 14px}}
