/* FlowTech Systems - premium questionnaire V18 */
#quoteModal .modal-backdrop{
  background:rgba(2,8,18,.82);
  backdrop-filter:blur(12px);
}
#quoteModal .modal-panel{
  max-width:1080px;
  max-height:94vh;
  margin:3vh auto;
  border-radius:28px;
  border:1px solid rgba(90,183,255,.22);
  background:#eef3f8;
  box-shadow:0 40px 120px rgba(0,9,24,.58),0 0 0 1px rgba(255,255,255,.06) inset;
}
#quoteModal .modal-head{
  position:relative;
  padding:24px 28px 22px;
  color:#07192d;
  border-bottom:1px solid #d9e7f1;
  background:linear-gradient(135deg,#ffffff 0%,#f3f9fd 100%);
}
#quoteModal .modal-head::after{
  content:"AEROGRID / ENGINEERING INPUT";
  position:absolute;
  right:84px;
  top:30px;
  font:700 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace;
  letter-spacing:.18em;
  color:rgba(11,111,183,.55);
}
#quoteModal .q-brand-intro{display:flex;align-items:center;gap:22px;padding-right:52px}
#quoteModal .q-brand-lockup{
  display:flex;align-items:center;gap:8px;flex:0 0 260px;height:82px;padding:0;
  border:0;background:transparent;box-shadow:none;
}
#quoteModal .q-brand-mark{width:62px;height:62px;object-fit:contain;flex:0 0 62px}
#quoteModal .q-brand-wordmark{width:166px;height:auto;object-fit:contain}
#quoteModal .q-brand-copy{min-width:0}
#quoteModal .modal-title{
  max-width:680px;
  font-size:clamp(22px,2.2vw,31px);
  line-height:1.08;
  letter-spacing:-.035em;
}
#quoteModal .modal-sub{max-width:720px;margin-top:9px;color:#60788d;line-height:1.5}
#quoteModal .modal-sub .small{display:none}
#quoteModal .modal-head .btn.icon{color:#466278;border-color:#d4e2ec;background:#f5f9fc}
#quoteModal .modal-body{padding:22px 28px 28px;background:linear-gradient(180deg,#f4f7fa,#eaf0f6)}
#quoteModal .progress{height:4px;background:rgba(7,29,53,.1)}
#quoteModal .progress>div{background:linear-gradient(90deg,#0d74d5,#54bcff);box-shadow:0 0 14px rgba(25,149,239,.45)}
#quoteModal .stepper{margin:12px 1px 18px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:#5b7186}
#quoteModal #qStepLabel{color:#0b67b8}
#quoteModal .q-card{
  position:relative;
  overflow:hidden;
  padding:24px;
  border-radius:22px;
  border:1px solid rgba(12,49,82,.11);
  background:rgba(255,255,255,.96);
  box-shadow:0 16px 42px rgba(9,35,60,.08);
}
#quoteModal .q-card::before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(180deg,#118ee8,#74d4ff);
}
#quoteModal .q-card h3{font-size:21px;letter-spacing:-.025em;color:#07192c;margin-bottom:7px}
#quoteModal .q-card>p{font-size:14px;color:#60758a;margin-bottom:18px}
#quoteModal .field>label{font-weight:750;font-size:12px;letter-spacing:.025em;color:#334b61}
#quoteModal input:not([type="radio"]):not([type="checkbox"]),
#quoteModal textarea,#quoteModal select{
  min-height:48px;
  border-radius:13px;
  border:1px solid #ced9e3;
  background:#f8fafc;
  color:#0a1c2e;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
#quoteModal input:focus,#quoteModal textarea:focus,#quoteModal select:focus{
  border-color:#268fdc;
  background:#fff;
  box-shadow:0 0 0 4px rgba(27,138,218,.12);
}
#quoteModal .radio{
  min-height:68px;
  border-radius:15px;
  border:1px solid #d5dee7;
  background:linear-gradient(180deg,#fff,#f7f9fb);
  box-shadow:0 4px 12px rgba(7,35,59,.035);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
#quoteModal .radio:hover{transform:translateY(-1px);border-color:#82bce6;box-shadow:0 9px 22px rgba(15,91,150,.09)}
#quoteModal .radio:has(input:checked){border-color:#1989dc;background:linear-gradient(145deg,#eef8ff,#fff);box-shadow:0 0 0 3px rgba(25,137,220,.1)}
#quoteModal .radio input{accent-color:#1384d7}
#quoteModal .radio strong{font-size:13px;color:#102b43}
#quoteModal .radio span{color:#718497}
#quoteModal .modal-footer{padding:14px 28px 18px;border-top:1px solid rgba(10,45,75,.1);background:rgba(249,251,253,.96);backdrop-filter:blur(14px)}
#quoteModal .q-controls{border:0;padding:0;background:none}
#quoteModal .q-controls .btn{min-width:116px}
#quoteModal .q-controls .btn.primary{background:linear-gradient(135deg,#0b65b8,#1499ea);box-shadow:0 10px 24px rgba(11,111,190,.22)}
#quoteModal .warn{border-color:rgba(220,145,20,.24);background:#fff7e8;color:#744c0b}
#quoteModal .result{border:0;background:transparent;padding:0}
#quoteModal .result pre{
  max-height:300px;
  overflow:auto;
  padding:18px;
  border-radius:16px;
  border:1px solid rgba(15,67,108,.12);
  background:#f2f6f9;
  color:#263f55;
  font-size:12px;
  line-height:1.55;
}
.q-hidden-legacy-actions{display:none!important}
.q-pdf-delivery{display:flex;align-items:center;gap:14px;margin-top:16px;padding:15px 16px;border:1px solid rgba(17,132,215,.18);border-radius:16px;background:linear-gradient(135deg,rgba(17,132,215,.08),rgba(70,190,255,.035))}
.q-pdf-delivery strong{display:block;color:#0c3150;font-size:14px}
.q-pdf-delivery span{display:block;margin-top:3px;color:#60788d;font-size:12px;line-height:1.45}
.q-pdf-icon{display:grid;place-items:center;flex:0 0 48px;height:58px;border-radius:10px 10px 13px 13px;background:linear-gradient(145deg,#0c6eba,#18a4ed);color:#fff;font:900 12px/1 system-ui;letter-spacing:.08em;box-shadow:0 10px 20px rgba(11,112,188,.2)}
.q-turnstile{margin-top:14px;min-height:24px;color:#637c91;font-size:12px}
.q-turnstile>span{display:block;padding:9px 11px;border-radius:10px;background:#f3f7fa;border:1px solid #dce5ec}
.q-send-pdf{width:100%;min-height:54px;margin-top:12px;font-size:15px!important;letter-spacing:.01em;background:linear-gradient(135deg,#075ba8,#149eea)!important;box-shadow:0 14px 28px rgba(8,105,179,.23)!important}
.q-send-pdf:disabled{filter:saturate(.55)}
.q-pdf-status{min-height:22px;margin-top:10px;text-align:center;font-size:13px;font-weight:750;color:#496276}
.q-pdf-status[data-state="success"]{padding:11px;border-radius:12px;background:#e9f8ef;color:#176c3a}
.q-pdf-status[data-state="error"]{padding:11px;border-radius:12px;background:#fff0ee;color:#a23027}
.q-pdf-status[data-state="sending"]{color:#0b6fb7}
#quoteModal .field[data-conditional-hidden="true"]{display:none}

@media(max-width:700px){
  #quoteModal .modal-panel{max-width:calc(100vw - 10px);max-height:calc(100vh - 10px);margin:5px auto;border-radius:20px}
  #quoteModal .modal-head{padding:20px 18px 17px}
  #quoteModal .modal-head::after{display:none}
  #quoteModal .q-brand-intro{display:block;padding-right:36px}
  #quoteModal .q-brand-lockup{width:220px;height:62px;margin-bottom:13px;padding:6px 11px 6px 7px;border-radius:14px}
  #quoteModal .q-brand-mark{width:48px;height:48px;flex-basis:48px}
  #quoteModal .q-brand-wordmark{width:142px}
  #quoteModal .modal-title{font-size:22px;padding-right:42px}
  #quoteModal .modal-sub{font-size:12px;padding-right:38px}
  #quoteModal .modal-body{padding:16px 13px 22px}
  #quoteModal .q-card{padding:18px 15px;border-radius:18px}
  #quoteModal .modal-footer{padding:12px 14px calc(12px + env(safe-area-inset-bottom))}
  #quoteModal .q-row,#quoteModal .q-row-3,#quoteModal .q-grid,#quoteModal .q-grid-3{gap:10px}
  #quoteModal .radio{min-height:58px}
  .q-pdf-delivery{align-items:flex-start}
}

@media(prefers-reduced-motion:reduce){#quoteModal *{transition:none!important}}
