/* GET A QUOTE (owner 31 Oct 2026): sonoxr.media's one-page quote form (app/capture.css .cq rules, tokens written out), beside the
   side panel with the SonoXR contact QR. */
.sxq { padding:clamp(72px,8vw,112px) 0; }
.sxq-wrap { width:min(1320px, calc(100% - 48px)); margin-inline:auto; }
.sxq-head { max-width:760px; }
.sxq-eyebrow { margin:0 0 14px; color:#cbd2d9; font:500 12px/1.4 'SXR Space Grotesk',sans-serif; letter-spacing:.2em; }
.sxq-head h2 { margin:0; color:#fff; font:600 clamp(40px,5vw,72px)/1.02 'SXR Space Grotesk',sans-serif; letter-spacing:-.035em; text-transform:none; }
.sxq-head h2 em { font-style:normal; color:transparent; background:linear-gradient(180deg,#f4f7fa,#a9b2bc); -webkit-background-clip:text; background-clip:text; }
.sxq-head > p:not(.sxq-eyebrow) { margin:18px 0 0; color:#a9b2bc; font-size:clamp(16px,1.3vw,19px); line-height:1.6; }
.sxq-grid { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:24px; align-items:start; margin-top:clamp(28px,3vw,40px); }
.sxq-grid .cq { margin-top:0; max-width:none; }
.sxq-grid .qw-side { position:sticky; top:110px; }
.cq-field.is-full { grid-column:1 / -1; }
.cq-error[hidden] { display:none; }
.qw-side-qr img { height:auto !important; aspect-ratio:1; }
@media (max-width:1000px) { .sxq-grid { grid-template-columns:1fr; } .sxq-grid .qw-side { position:static; } }
.cq { display:grid; gap:30px; max-width:1040px; margin-top:clamp(28px,3vw,40px); padding:clamp(24px,4vw,56px); border:1px solid rgba(232,237,244,.14); border-radius:22px; background:linear-gradient(160deg,rgba(169,178,188,.07),transparent 55%),#0b0e12; }
.cq-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 40px; }
.cq-field { display:grid; gap:10px; min-width:0; }
.cq-field > span, .cq legend { color:#fff; font:500 16px/1.3 'SXR Space Grotesk',sans-serif; }
.cq-field i, .cq legend i { color:#cbd2d9; font-style:normal; }
.cq-field input, .cq-field select, .cq-field textarea { width:100%; min-height:48px; padding:10px 2px; border:0; border-bottom:1px solid rgba(232,237,244,.3); border-radius:0; background:transparent; color:#fff; font:400 17px/1.4 'SXR Space Grotesk',sans-serif; color-scheme:dark; transition:border-color .25s cubic-bezier(.22,1,.36,1); }
.cq-field textarea { resize:vertical; }
.cq-field input::placeholder, .cq-field textarea::placeholder { color:rgba(238,242,246,.34); }
.cq-field input:focus, .cq-field select:focus, .cq-field textarea:focus { outline:none; border-bottom-color:#f4f7fa; box-shadow:0 1px 0 #f4f7fa; }
.cq-field select { appearance:none; -webkit-appearance:none; background:linear-gradient(45deg,transparent 50%,#cbd2d9 50%) calc(100% - 14px) 50% / 6px 6px no-repeat, linear-gradient(135deg,#cbd2d9 50%,transparent 50%) calc(100% - 8px) 50% / 6px 6px no-repeat; cursor:pointer; }
.cq-field select option { background:#0b0e12; color:#fff; }
.cq-set { margin:0; padding:0; border:0; }
.cq legend { margin-bottom:14px; padding:0; }
.cq-hint { margin:-6px 0 18px; color:#a9b2bc; font-size:15px; line-height:1.5; }
.cq-chips { display:flex; flex-wrap:wrap; gap:10px; }
.cq-chips label { position:relative; display:inline-flex; align-items:center; min-height:48px; padding:0 20px; border:1px solid rgba(232,237,244,.3); border-radius:12px; color:#a9b2bc; font-size:15px; cursor:pointer; transition:border-color .25s cubic-bezier(.22,1,.36,1), background-color .25s cubic-bezier(.22,1,.36,1), color .25s cubic-bezier(.22,1,.36,1); }
.cq-chips label:hover { color:#fff; border-color:#cbd2d9; }
.cq-chips label.is-on, .cq-chips label.is-on * { border-color:transparent; background:linear-gradient(180deg,#f4f7fa,#c3cbd3); color:#0b0d10; }
.cq-chips input { position:absolute; opacity:0; pointer-events:none; }
.cq-chips label:has(input:focus-visible) { outline:2px solid #cbd2d9; outline-offset:2px; }

/* the budget range: one track, a chrome fill between the two handles */
.cq-range { position:relative; height:36px; }
.cq-track { position:absolute; left:0; right:0; top:50%; height:34px; transform:translateY(-50%); border-radius:999px; background:rgba(238,242,246,.08); border:1px solid rgba(232,237,244,.14); }
/* the fill runs between the thumbs' centres: a native thumb travels inside the track, inset by half its width (15px) */
.cq-track i { position:absolute; top:-1px; bottom:-1px; left:calc(15px + (100% - 30px) * var(--lo) - 17px); right:calc(100% - 15px - (100% - 30px) * var(--hi) - 17px); border-radius:999px; background:linear-gradient(180deg,#f4f7fa,#a9b2bc); box-shadow:0 0 18px rgba(238,242,246,.25); }
.cq-range input { position:absolute; inset:0; width:100%; height:100%; margin:0; background:none; pointer-events:none; -webkit-appearance:none; appearance:none; outline:none; }
.cq-range input::-webkit-slider-runnable-track { background:none; border:0; }
.cq-range input::-moz-range-track { background:none; border:0; }
.cq-range input::-webkit-slider-thumb { -webkit-appearance:none; pointer-events:auto; width:30px; height:30px; border:3px solid #0b0d10; border-radius:50%; background:#f4f7fa; box-shadow:0 2px 10px rgba(0,0,0,.5); cursor:grab; }
.cq-range input::-moz-range-thumb { pointer-events:auto; width:30px; height:30px; box-sizing:border-box; border:3px solid #0b0d10; border-radius:50%; background:#f4f7fa; box-shadow:0 2px 10px rgba(0,0,0,.5); cursor:grab; }
.cq-range input:focus-visible::-webkit-slider-thumb { outline:2px solid #cbd2d9; outline-offset:3px; }
.cq-range input:focus-visible::-moz-range-thumb { outline:2px solid #cbd2d9; outline-offset:3px; }
.cq-budget { display:flex; justify-content:space-between; align-items:center; gap:12px; max-width:420px; margin:16px 0 0; color:#a9b2bc; }
.cq-budget b { color:#fff; font:600 clamp(20px,2vw,26px)/1 'SXR Space Grotesk',sans-serif; letter-spacing:-.01em; }

.cq-error { margin:0; padding:12px 14px; border:1px solid rgba(255,160,160,.4); border-radius:12px; background:rgba(255,120,120,.06); color:#ffd9d9; font-size:14px; }
.cq-error a { color:#fff; text-decoration:underline; }
.cq-submit { min-height:60px; border:0; border-radius:14px; background:linear-gradient(180deg,#f4f7fa,#c3cbd3); color:#0b0d10; font:600 16px/1 'SXR Space Grotesk',sans-serif; letter-spacing:.14em; text-transform:uppercase; cursor:pointer; transition:filter .25s cubic-bezier(.22,1,.36,1), transform .25s cubic-bezier(.22,1,.36,1); }
.cq-submit:hover { filter:brightness(1.06); transform:translateY(-1px); }
.cq-submit:focus-visible { outline:2px solid #cbd2d9; outline-offset:3px; }
.cq-submit[disabled] { opacity:.6; cursor:progress; }
.cq-foot { margin:-14px 0 0; color:#a9b2bc; font-size:14px; text-align:center; }
.cq-foot a { color:#fff; }
.cq-trap { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.cq-done { padding:clamp(28px,4vw,56px); text-align:center; }
.cq-done h3 { margin:12px 0 10px; font:600 clamp(28px,3vw,40px)/1.1 'SXR Space Grotesk',sans-serif; }
.cq-done p:not(.cap-tag) { margin:0; color:#a9b2bc; font-size:17px; }
@media (max-width:700px) {
  .cq-grid { grid-template-columns:1fr; gap:24px; }
  .cq-chips label { min-height:44px; padding:0 14px; font-size:14px; }
}
@media (prefers-reduced-motion: reduce) { .cq-submit, .cq-chips label, .cq-field input { transition:none; } }

