/* ===========================================================
   ThinkTQ - styles-responsive.css
   Bootstrap 5.1.3 based responsive theme
   Color palette & fonts preserved from legacy ThinkTQ site
   =========================================================== */

:root{
  --tq-navy:#000099;
  --tq-navy-dark:#000044;
  --tq-gold:#FFCC33;
  --tq-red:#CC0000;
  --tq-blue:#0000CC;
  --tq-link:#0000FF;
  --tq-link-hover:#990000;
  --tq-purple:#8866AD;
  --tq-gray-field:#999999;
}

body{
  font-family: Arial, Helvetica, sans-serif;
  background-color:#000099;
  background-image:url('https://thinktq.com/images/standard/Rev_bluewhitebkgrd4-new-1.gif');
  color:#333;
}

a{ color:var(--tq-link); text-decoration:underline; }
a:hover{ color:var(--tq-link-hover); }

/* ---------- layout helpers ---------- */
.tq-container{
  max-width:960px;
  margin-left:auto;
  margin-right:auto;
}

.tq-max-width{
  max-width:960px;
}

.tq-grid-border{
  border:3px solid var(--tq-gold);
}

/* ---------- header / masthead ---------- */
.navbar-tq{
  background:var(--tq-navy);
}
.navbar-tq .step-banner{
  background:var(--tq-gold);
  font-weight:bold;
  font-size:13px;
  padding:6px 12px;
  text-align:center;
  justify-content:center !important;
}
.tq-masthead img{
  max-width:100%;
  height:auto;
}

.b-title{
  color:var(--tq-red);
  font-size:20px;
  font-weight:bold;
}

/* slim mobile/tablet masthead */
.tq-masthead-mobile{
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:linear-gradient(to right, #0d6efd, #c0c0c0);
  padding:0.5rem;
}
.tq-masthead-mobile img{
  height:32px;
  width:auto;
}
.tq-masthead-mobile .tq-contact-icon{
  width:36px;
  height:36px;
  background:#fff;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  text-decoration:none;
}
.tq-masthead-mobile .tq-contact-icon i{
  font-size:16px;
}
@media (min-width:992px){
  .tq-masthead-mobile{ display:none !important; }
}
@media (max-width:991.98px){
  .tq-masthead-desktop{ display:none !important; }
}

/* hide fixed floating elements on tablet/mobile */
.tq-floating-icons{
  position:fixed;
  left:10px;
  top:45px;
  z-index:1050;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:.5rem;
}
.tq-floating-icons img{
  width:60px;
  height:auto;
}
@media (min-width:768px){
  .tq-floating-icons img{ width:90px; }
}
@media (max-width:991.98px){
  .tq-floating-icons{ display:none !important; }
}

.tq-tagline{
  width:130px;
  color:#fff;
  font-size:13px;
  text-align:center;
  font-weight:600;
  margin:.25rem 0 0;
}

/* ---------- content panels ---------- */
.tq-content-card{
  background:#ffffff;
  background-image: url(/images/standard/tqcellbg.gif);
  background-repeat: no-repeat;
}

/* order summary panel - keep navy bg + gold accents like original */
.tq-summary{
  background:var(--tq-navy);
  color:#fff;
  border-radius:6px;
  padding:1rem;
}
.tq-summary h5{
  color:var(--tq-gold);
  font-weight:bold;
  text-align:center;
  margin-bottom:.5rem;
}
.tq-summary hr{
  border-color:var(--tq-gold);
  opacity:1;
}
.tq-summary table{
  width:100%;
  font-size:12px;
}
.tq-summary td{ padding:2px 0; }
.tq-summary .total-row td{
  font-weight:bold;
  font-size:13px;
}

/* promise box */
.tq-promise{
  background:var(--tq-navy);
  color:#fff;
  border-radius:6px;
  padding:1rem;
  font-size:12px;
  text-align:center;
}
.tq-promise h3{
  color:var(--tq-gold);
  font-size:16px;
  font-weight:bold;
}
.tq-promise hr{
  border-color:var(--tq-navy-dark);
  width:40px;
  margin:.5rem auto;
  opacity:1;
}

hr.gold{ border-color:var(--tq-gold); opacity:1; }

/* ---------- form styling, matching legacy dataForm* classes ---------- */
.dataFormTable{ width:100%; }
.dataFormCellTitle{
  background-color:var(--tq-navy);
  color:#fff;
  font-weight:bold;
  font-size:14px;
  padding:6px 10px;
}
.dataFormCellLabel{
  color:var(--tq-navy);
  font-size:12px;
  font-weight:600;
}
.dataFormCellField{
  color:#555;
  font-size:12px;
}
.dataFormField{
  font-family: Arial, Helvetica, sans-serif;
  font-size:13px;
}
.dataFormButton{
  background-color:#990000;
  color:#fff;
  font-weight:bold;
  border:none;
}
.dataFormButton:hover{
  background-color:#7a0000;
  color:#fff;
}

/* ---------- footer ---------- */
footer.tq-footer{
  background:var(--tq-navy);
  color:var(--tq-purple);
  font-size:11px;
  text-align:center;
  padding:1.25rem 1rem;
  padding-top:0;
}
footer.tq-footer a{
  color:#9999FF;
}

footer.tq-footer .tq-container {
  background-color: #282828;
  padding:1.25rem 1rem;
}

/* ---------- loading overlay ---------- */
#loadingWrap{
  width:100%;
  height:100%;
  top:0;
  z-index:900000;
  position:fixed;
  background-color:rgba(255,255,255,.46);
  display:none;
}
#loadingInner{
  position:fixed;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  text-align:center;
}
#loadingInner img{ width:80px; }
#loadingInner p{
  font-weight:bold;
  font-size:16px;
  margin-top:.5rem;
  color:#000;
}

/* ---------- complain / contact modal ---------- */
.complain-popup{
  display:none;
  position:fixed;
  z-index:2000;
  top:5%;
  left:50%;
  transform:translateX(-50%);
  background:#fff;
  border-radius:6px;
  max-width:90vw;
  width:600px;
  max-height:90vh;
  overflow-y:auto;
  padding:1rem 1.25rem;
}
.complain-modal-bg{
  display:none;
  position:fixed;
  z-index:1999;
  top:0; left:0; width:100%; height:100%;
  background:rgba(0,0,0,.4);
}
.complain-close{
  position:absolute;
  right:10px;
  top:0;
  font-size:28px;
  font-weight:900;
  color:#000;
  cursor:pointer;
  text-decoration:none;
}
.h2-complain{
  color:var(--tq-navy);
  font-size:22px;
  font-weight:bold;
}

.form-section-title {
  background-color: #000099;
  color: #ffffff;
  font-family: arial;
  font-size: 14px;
  font-weight: bold;
  padding: 4px 10px;
  text-align: left;
  margin-bottom: 8px;
}

.tq-content-card label {
  text-align: right;
  width: 100%;
  color: #000099;
}
