@font-face{font-family:Vazirmatn;src:url(fonts/Vazirmatn-Regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Vazirmatn;src:url(fonts/Vazirmatn-Bold.woff2) format("woff2");font-weight:700;font-display:swap}
:root{--navy:#1E2761;--teal:#028090;--mint:#02C39A;--bg:#fff;--soft:#F3F6FA;--line:#D8DEE9;--text:#1c2233;--muted:#5d6782;--red:#C62828}
*{box-sizing:border-box}
html,body{margin:0;background:var(--soft);color:var(--text);font-family:Vazirmatn,Tahoma,"Segoe UI",sans-serif;font-size:16px;line-height:1.8}
.wrap{max-width:760px;margin:0 auto;padding:16px}
.hero{background:var(--navy);color:#fff;border-radius:16px;padding:24px 22px;margin-bottom:16px;border-bottom:6px solid var(--mint)}
.hero h1{margin:0 0 4px;font-size:1.35rem;line-height:1.6}
.hero .sub{color:var(--mint);font-weight:700}
.hero p{margin:10px 0 0;opacity:.9;font-size:.95rem}
.card{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:18px 18px 6px;margin-bottom:14px}
.card h2{margin:0 0 12px;font-size:1.05rem;color:var(--teal);border-bottom:2px solid var(--soft);padding-bottom:8px}
.field{margin-bottom:18px}
.label{display:block;font-weight:700;margin-bottom:4px}
.req{color:var(--red)}.opt{color:var(--muted);font-weight:400;font-size:.85rem}
.help{color:var(--muted);font-size:.85rem;margin:-2px 0 6px}
input[type=text],input[type=tel],input[type=url],select,textarea{width:100%;font:inherit;padding:10px 12px;border:1.5px solid var(--line);border-radius:10px;background:#fff;color:var(--text)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(2,128,144,.15)}
input[dir=ltr]{text-align:left}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.choices{display:grid;gap:6px}
.choices.cols{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.choices.inline{grid-template-columns:repeat(2,minmax(0,160px))}
.choice{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1.5px solid var(--line);border-radius:10px;cursor:pointer;background:#fff;font-size:.95rem}
.choice input{accent-color:var(--teal);width:18px;height:18px;flex:none;margin:0}
.choice:has(input:checked){border-color:var(--teal);background:#E6F6F4}
.other-text{margin-top:8px;display:none}
.other-text.show{display:block}
.err{color:var(--red);font-size:.85rem;min-height:0}
.has-error input[type=text],.has-error input[type=tel],.has-error input[type=url],.has-error select,.has-error textarea,.has-error .choice{border-color:var(--red)}
.alert{background:#FDECEA;color:var(--red);border:1px solid #F5C2C0;border-radius:10px;padding:10px 14px;margin-bottom:14px}
.btn{display:block;width:100%;padding:16px;font:inherit;font-size:1.15rem;font-weight:700;color:#fff;background:var(--teal);border:0;border-radius:12px;cursor:pointer;margin-top:6px}
.btn:hover{background:var(--navy)}.btn:disabled{opacity:.6;cursor:wait}
.note{color:var(--muted);font-size:.85rem;text-align:center}
.hp{position:absolute;left:-9999px;top:-9999px;height:0;overflow:hidden}
.thanks{text-align:center;background:#fff;border-radius:16px;padding:32px 20px;border:1px solid var(--line)}
.thanks .ok{width:64px;height:64px;border-radius:50%;background:var(--mint);color:#fff;font-size:34px;line-height:64px;margin:0 auto 12px}
.thanks a.btn{text-decoration:none;max-width:320px;margin:18px auto 0}
table{border-collapse:collapse;font-size:.8rem;background:#fff}td,th{border:1px solid var(--line);padding:4px 6px;vertical-align:top}th{background:var(--navy);color:#fff;position:sticky;top:0}
@media (max-width:480px){.row2{grid-template-columns:1fr}.hero h1{font-size:1.15rem}.card{padding:14px 12px 4px}}
