.rq{padding:3.5rem 0 4rem}
.rq h1{font-size:clamp(1.9rem,4vw,2.8rem)}
.rq-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:2rem;align-items:start}
.rq form{min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:1.8rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem 1.2rem}
.rq .full{grid-column:1/-1}
.rq label{display:flex;flex-direction:column;gap:.35rem;font-weight:600;font-size:.95rem}
.rq label small{color:var(--muted);font-weight:400}
.rq input,.rq select,.rq textarea{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:.65rem .8rem}
.rq textarea{min-height:96px;resize:vertical}
.rq input:focus,.rq select:focus,.rq textarea:focus{outline:2px solid var(--blue);border-color:var(--blue)}
.rq fieldset{border:1px dashed var(--line);border-radius:10px;padding:1rem;display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.rq legend{padding:0 .4rem;font-weight:700}
.rq .hp{position:absolute;left:-9999px}
.rq button.btn{cursor:pointer;font:inherit;font-weight:700;justify-self:start}
.rq aside{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:1.6rem}
.rq aside ol{padding-left:1.2rem;color:var(--muted)}.rq aside h3{margin-top:0}
@media (max-width:860px){.rq-grid{grid-template-columns:1fr}.rq form{min-width:0;grid-template-columns:1fr}.rq fieldset{grid-template-columns:1fr}}
.rq input[type=file]{min-width:0;width:100%}
