.sr{margin-top:22px;padding:20px 18px 18px;border:1px solid rgba(215,232,188,.16);border-radius:18px;background:rgba(215,232,188,.03);display:grid;gap:14px;animation:sr-in var(--d-ui,500ms) var(--e-ui,ease) both}
.sr[hidden],.sr-ok[hidden]{display:none}
.sr-h{margin:0;font:400 24px/1.15 var(--serif);color:var(--paper)}
.sr-row{display:grid;gap:14px}
.sr-f{display:grid;gap:6px;margin:0;padding:0;border:0;min-width:0}
.sr-f>span,.sr-f legend{font:500 12px/1.3 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--label,rgba(215,232,188,.64));padding:0}
.sr-f input[type=text],.sr-f input[type=email],.sr-f input[type=tel],.sr-f select,.sr-f textarea{width:100%;min-height:46px;padding:10px 14px;background:rgba(215,232,188,.05);border:1px solid rgba(215,232,188,.2);border-radius:12px;color:var(--text);font:16px/1.4 var(--sans)}
.sr-f textarea{min-height:64px;resize:vertical}
.sr-f select{appearance:none;-webkit-appearance:none}
.sr-f select option{color:#1d2021}
.sr-f input:focus,.sr-f select:focus,.sr-f textarea:focus{outline:none;border-color:rgba(233,240,86,.55)}
.sr-seg{display:flex;flex-wrap:wrap;gap:8px}
.sr-seg legend{width:100%;margin-bottom:6px}
.sr-seg label{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid rgba(215,232,188,.2);border-radius:999px;font-size:15px;color:var(--text);cursor:pointer}
.sr-seg label:has(input:checked){border-color:var(--acid);color:var(--paper)}
.sr-seg input{accent-color:var(--acid)}
.sr-c{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.5;color:var(--muted)}
.sr-c input{flex:none;width:20px;height:20px;margin-top:2px;accent-color:var(--acid)}
.sr-note{margin:0;font-size:15px;line-height:1.55;color:var(--body,var(--text))}
.sr-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.sr-err{margin:0;min-height:0;font-size:14px;color:#f3a58f}
.sr-err:empty{display:none}
.sr-acts{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.sr-priv{margin-left:auto;font-size:12px;color:var(--muted)}
.sr-ok{margin-top:22px;padding:20px 18px;border:1px solid var(--acid);border-radius:18px;animation:sr-in var(--d-ui,500ms) var(--e-ui,ease) both}
.sr-ok p{margin:6px 0 0}
@media (min-width:640px){.sr-row{grid-template-columns:1fr 1fr}.sr{padding:24px}}
@keyframes sr-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.sr,.sr-ok{animation:none}}
