.wsq { --navy:#0b1733; --orange:#ff6a00; --muted:#667085; --line:#dfe4eb; color:#101828; }
.wsq * { box-sizing:border-box; }
.wsq-form { max-width:920px; margin:0 auto; }
.wsq-honeypot { position:absolute!important; left:-99999px!important; opacity:0!important; }
.wsq-progress { display:flex; align-items:center; justify-content:center; max-width:360px; margin:0 auto 30px; }
.wsq-progress span { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; color:#667085; background:#e9edf3; font-weight:900; transition:.2s; }
.wsq-progress span.is-active { color:#fff; background:var(--orange); box-shadow:0 8px 18px rgba(255,106,0,.26); }
.wsq-progress i { height:3px; flex:1; background:#e9edf3; }
.wsq-step { display:none; }
.wsq-step.is-active { display:block; animation:wsqIn .2s ease; }
@keyframes wsqIn { from { opacity:.25; transform:translateY(6px); } to { opacity:1; transform:none; } }
.wsq-kicker { margin:0 0 4px; color:var(--orange); text-transform:uppercase; letter-spacing:.1em; font-size:.76rem; font-weight:900; }
.wsq h3 { margin:0 0 22px; color:var(--navy); font-size:clamp(1.55rem,3vw,2.2rem); line-height:1.12; }
.wsq-grid { display:grid; gap:18px; }
.wsq-grid--2 { grid-template-columns:1fr 1fr; }
.wsq-field { display:grid; gap:7px; margin-bottom:18px; font-weight:800; color:#344054; }
.wsq-field span { font-size:.92rem; }
.wsq-field small { color:var(--muted); font-weight:500; }
.wsq input[type=text], .wsq input[type=email], .wsq input[type=tel], .wsq input[type=number], .wsq input[type=date], .wsq select, .wsq textarea, .wsq input[type=file] { width:100%; min-height:48px; border:1px solid #cfd6df; border-radius:12px; background:#fff; color:#101828; padding:11px 13px; outline:none; }
.wsq textarea { resize:vertical; }
.wsq input:focus, .wsq select:focus, .wsq textarea:focus { border-color:var(--orange); box-shadow:0 0 0 4px rgba(255,106,0,.12); }
.wsq-options { border:0; padding:0; margin:6px 0 0; }
.wsq-options legend { margin-bottom:10px; color:var(--navy); font-weight:900; }
.wsq-options { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.wsq-options legend { grid-column:1/-1; }
.wsq-options label { display:flex; align-items:flex-start; gap:12px; min-height:72px; padding:15px; border:1px solid var(--line); border-radius:14px; background:#fff; cursor:pointer; }
.wsq-options label:has(input:checked) { border-color:var(--orange); background:#fff8f2; }
.wsq-options input { margin-top:4px; accent-color:var(--orange); }
.wsq-options span { display:grid; gap:2px; }
.wsq-options b { color:var(--navy); }
.wsq-options small { color:var(--muted); }
.wsq-actions { display:flex; justify-content:space-between; gap:12px; margin-top:28px; }
.wsq-btn { min-height:50px; padding:0 22px; border:2px solid transparent; border-radius:13px; cursor:pointer; font-weight:900; transition:.2s; display:inline-flex; align-items:center; justify-content:center; }
.wsq-btn:hover { transform:translateY(-1px); }
.wsq-btn--primary { color:#fff; background:var(--orange); }
.wsq-btn--secondary { color:var(--navy); background:#fff; border-color:#cfd6df; }
.wsq-estimate { padding:24px; border-radius:18px; color:#fff; background:linear-gradient(135deg,#0b1733,#17376d); box-shadow:0 16px 36px rgba(11,23,51,.18); }
.wsq-estimate div { display:flex; align-items:end; justify-content:space-between; gap:20px; }
.wsq-estimate span { color:#dce5f3; font-weight:800; }
.wsq-estimate strong { color:#fff; font-size:clamp(2.2rem,7vw,4.1rem); line-height:1; letter-spacing:-.05em; }
.wsq-estimate p { margin:13px 0 0; color:#f5b482; }
.wsq-summary { display:grid; gap:8px; margin:20px 0; padding:18px; border:1px solid var(--line); border-radius:15px; background:#fff; }
.wsq-summary div { display:flex; justify-content:space-between; gap:20px; }
.wsq-summary span { color:var(--muted); }
.wsq-summary b { color:var(--navy); text-align:right; }
.wsq-notice { padding:15px; border-left:4px solid var(--orange); background:#fff3e9; color:#7a3410; border-radius:8px 12px 12px 8px; font-size:.9rem; }
.wsq-consent { display:flex; align-items:flex-start; gap:11px; margin:8px 0 0; color:#475467; font-size:.88rem; }
.wsq-consent input { margin-top:4px; accent-color:var(--orange); }
.wsq-submit-status { min-height:24px; margin-top:15px; color:#b42318; font-weight:750; }
.wsq-success { max-width:650px; margin:0 auto; padding:42px 24px; text-align:center; }
.wsq-success__icon { width:68px; height:68px; margin:0 auto 18px; display:grid; place-items:center; border-radius:50%; color:#fff; background:var(--orange); font-size:2rem; font-weight:900; }
.wsq-success p { color:var(--muted); margin:0 auto 24px; max-width:540px; }
.wsq-btn[disabled] { opacity:.65; cursor:wait; transform:none; }
@media (max-width:700px) { .wsq-grid--2, .wsq-options { grid-template-columns:1fr; } .wsq-estimate div { align-items:flex-start; flex-direction:column; } .wsq-actions { flex-wrap:wrap; } .wsq-btn { width:100%; } .wsq-actions > span { display:none; } }
.wsq-photo-preview{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:-4px 0 12px}
.wsq-photo-preview:empty{display:none}
.wsq-photo-preview div{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#fff}
.wsq-photo-preview img{width:100%;aspect-ratio:4/3;object-fit:cover}
.wsq-photo-preview span{display:block;overflow:hidden;padding:7px 8px;color:var(--muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}
.wsq-success__actions{display:flex;justify-content:center;flex-wrap:wrap;gap:11px}
@media(max-width:700px){.wsq-photo-preview{grid-template-columns:repeat(2,1fr)}.wsq-success__actions .wsq-btn{width:100%}}
