@charset "UTF-8";
/* ==========================================================================
   알앤디파트너 — 온라인 견적문의 폼 스타일
   기존 페이지의 9pt 스타일과 섞이지 않도록 .rq 안에서만 적용됩니다.
   색상만 바꾸시려면 아래 :root 변수를 고치세요.
   ========================================================================== */

.rq{
  --rq-navy:#0f2547;
  --rq-navy-2:#17365c;
  --rq-blue:#0d6efd;
  --rq-cyan:#0aa2c0;
  --rq-ink:#1f2937;
  --rq-ink-2:#4b5563;
  --rq-mute:#6b7280;
  --rq-line:#e3e7ee;
  --rq-bg:#f7f9fc;
  --rq-r:12px;

  font-family:"Pretendard","Malgun Gothic","맑은 고딕",-apple-system,BlinkMacSystemFont,sans-serif;
  font-size:15px; line-height:1.65; color:var(--rq-ink);
  text-align:left; box-sizing:border-box;
}
.rq *,.rq *::before,.rq *::after{box-sizing:border-box}
.rq p,.rq h2,.rq h3,.rq ul,.rq li,.rq label{margin:0;padding:0;font-size:inherit;color:inherit;line-height:inherit}
.rq ul{list-style:none}
.rq a{font-size:inherit;font-family:inherit}

/* ---------- 머리말 ---------- */
.rq__head{
  background:linear-gradient(135deg,var(--rq-navy),var(--rq-navy-2));
  border-radius:var(--rq-r) var(--rq-r) 0 0; padding:26px 26px 24px; color:#fff;
}
.rq__eyebrow{
  display:inline-block; font-size:11px; font-weight:700; letter-spacing:.14em;
  color:#7fd6ea; text-transform:uppercase; margin-bottom:8px;
}
.rq__head h2{font-size:22px; font-weight:800; letter-spacing:-.02em; color:#fff; line-height:1.35}
.rq__head p{margin-top:10px; font-size:13.5px; color:rgba(255,255,255,.78)}
.rq__quick{display:flex; flex-wrap:wrap; gap:8px; margin-top:16px}
.rq__quick a{
  display:inline-flex; align-items:center; gap:6px; text-decoration:none;
  padding:8px 14px; border-radius:999px; font-size:12.5px; font-weight:700;
  background:rgba(255,255,255,.12); color:#fff; border:1px solid rgba(255,255,255,.2);
  transition:.18s;
}
.rq__quick a:hover{background:#fff; color:var(--rq-navy); text-decoration:none}
.rq__quick a.is-kakao{background:#FEE500; color:#3C1E1E; border-color:#FEE500}
.rq__quick a.is-kakao:hover{filter:brightness(.94); color:#3C1E1E}

/* ---------- 본문 ---------- */
.rq__body{
  background:#fff; border:1px solid var(--rq-line); border-top:0;
  border-radius:0 0 var(--rq-r) var(--rq-r); padding:26px;
}
.rq__sec{font-size:12px; font-weight:800; letter-spacing:.08em; color:var(--rq-cyan);
  text-transform:uppercase; margin:0 0 14px}
.rq__sec + .rq__grid{margin-top:0}

.rq__grid{display:grid; grid-template-columns:1fr 1fr; gap:14px 16px}
.rq__f{display:flex; flex-direction:column; gap:6px}
.rq__f.full{grid-column:1/-1}
.rq__f label{font-size:13px; font-weight:700; color:var(--rq-ink-2)}
.rq__req{color:#e11d48; margin-left:2px}

.rq input[type=text],.rq input[type=tel],.rq input[type=email],.rq textarea{
  width:100%; font-family:inherit; font-size:14.5px; color:var(--rq-ink);
  padding:11px 13px; border:1px solid var(--rq-line); border-radius:9px;
  background:var(--rq-bg); transition:.16s; -webkit-appearance:none; appearance:none;
}
.rq textarea{min-height:150px; resize:vertical; line-height:1.7}
.rq input:focus,.rq textarea:focus{
  outline:0; border-color:var(--rq-cyan); background:#fff;
  box-shadow:0 0 0 3px rgba(10,162,192,.14);
}
.rq input::placeholder,.rq textarea::placeholder{color:#9aa3af}

/* ---------- 첨부 ---------- */
.rq__drop{
  border:2px dashed #cdd6e3; border-radius:11px; background:var(--rq-bg);
  padding:22px 18px; text-align:center; cursor:pointer; transition:.18s;
}
.rq__drop:hover,.rq__drop.is-over{border-color:var(--rq-cyan); background:#f0fbfd}
.rq__drop b{display:block; font-size:14.5px; color:var(--rq-navy); font-weight:700}
.rq__drop span{display:block; margin-top:5px; font-size:12.5px; color:var(--rq-mute)}
.rq__drop input[type=file]{display:none}

.rq__files{margin-top:12px; display:flex; flex-direction:column; gap:8px}
.rq__file{
  display:flex; align-items:center; gap:10px; padding:9px 12px;
  background:#fff; border:1px solid var(--rq-line); border-radius:9px; font-size:13px;
}
.rq__file .nm{flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:600}
.rq__file .sz{color:var(--rq-mute); font-size:12px; white-space:nowrap}
.rq__file .del{
  border:0; background:#f1f3f7; color:#64748b; width:24px; height:24px; border-radius:6px;
  cursor:pointer; font-size:15px; line-height:1; font-family:inherit; flex:none;
}
.rq__file .del:hover{background:#fee2e2; color:#dc2626}
.rq__file.is-big{border-color:#fcd34d; background:#fffbeb}
.rq__file.is-bad{border-color:#fca5a5; background:#fef2f2}

/* ---------- 동의 / 버튼 ---------- */
.rq__agree{
  display:flex; align-items:flex-start; gap:9px; margin-top:20px;
  font-size:13px; color:var(--rq-ink-2); cursor:pointer;
}
.rq__agree input{width:17px; height:17px; margin-top:2px; flex:none; accent-color:var(--rq-cyan)}

.rq__foot{display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-top:18px}
.rq__btn{
  display:inline-flex; align-items:center; justify-content:center; gap:7px;
  padding:13px 26px; border-radius:10px; font-size:15px; font-weight:800;
  font-family:inherit; border:1px solid transparent; cursor:pointer; text-decoration:none; transition:.18s;
}
.rq__btn--go{background:var(--rq-navy); color:#fff; box-shadow:0 6px 16px rgba(15,37,71,.22)}
.rq__btn--go:hover{background:var(--rq-blue); color:#fff; text-decoration:none}
.rq__btn--go:disabled{opacity:.55; cursor:default; box-shadow:none}
.rq__btn--re{background:#fff; color:var(--rq-ink-2); border-color:var(--rq-line)}
.rq__btn--re:hover{border-color:#c7ced9; color:var(--rq-ink); text-decoration:none}
.rq__note{flex:1; min-width:180px; font-size:12px; color:var(--rq-mute); text-align:right}

/* ---------- 진행바 ---------- */
.rq__bar{display:none; height:6px; background:#e8edf4; border-radius:99px; overflow:hidden; margin-top:16px}
.rq__bar.is-on{display:block}
.rq__bar i{display:block; height:100%; width:0; background:linear-gradient(90deg,var(--rq-cyan),var(--rq-blue)); transition:width .2s}

/* ---------- 알림 ---------- */
.rq__msg{display:none; margin-top:16px; padding:14px 16px; border-radius:10px; font-size:13.5px; font-weight:600; line-height:1.7}
.rq__msg.is-on{display:block}
.rq__msg--err{background:#fffbeb; border:1px solid #fcd34d; color:#92400e}
.rq__msg--ok{background:#ecfdf5; border:1px solid #6ee7b7; color:#065f46}
.rq__msg b{font-weight:800}
.rq__msg .sub{display:block; margin-top:8px; font-weight:500; font-size:12.5px; opacity:.85}

/* ---------- 완료 ---------- */
.rq__done{text-align:center; padding:34px 16px}
.rq__done .ic{
  width:58px; height:58px; margin:0 auto 16px; border-radius:50%;
  background:#ecfdf5; color:#059669; display:flex; align-items:center; justify-content:center;
  font-size:30px; font-weight:800;
}
.rq__done h3{font-size:19px; font-weight:800; color:var(--rq-navy)}
.rq__done p{margin-top:10px; font-size:14px; color:var(--rq-ink-2)}
.rq__done .rq__quick{justify-content:center; margin-top:20px}
.rq__done .rq__quick a{background:var(--rq-navy); border-color:var(--rq-navy)}
.rq__done .rq__quick a.is-kakao{background:#FEE500; border-color:#FEE500}

/* ---------- 좁은 화면 ---------- */
@media (max-width:620px){
  .rq__grid{grid-template-columns:1fr}
  .rq__head,.rq__body{padding:20px 16px}
  .rq__head h2{font-size:19px}
  .rq__note{text-align:left}
}
