#atc-quote-form, #atc-quote-form *{ box-sizing: border-box !important; }

#atc-quote-form{
  --navy:#153A66; --navy-deep:#0B2440;
  --yellow:#c5913e; --yellow-dim:#D3AC6E;
  --sand:#FFF9EC; --line:#e7e2d6; --text:#22334a; --muted:#6b7a8e;
  max-width: 640px !important; margin: 0 auto !important;
  background:#fff !important; border-radius:18px !important;
  padding:36px 34px !important; box-shadow: 0 20px 50px rgba(11,36,64,0.12) !important;
  font-family:'Public Sans', Arial, sans-serif !important; color:var(--text) !important;
}

#atc-quote-form h3{
  font-family:'Fraunces', Georgia, serif !important; font-size:1.4rem !important;
  color:var(--navy-deep) !important; font-weight:600 !important; margin:0 0 6px 0 !important;
}
#atc-quote-form .atc-qf-sub{ font-size:0.88rem !important; color:var(--muted) !important; margin:0 0 24px 0 !important; }

#atc-quote-form .atc-qf-grid{
  display:grid !important; grid-template-columns:1fr 1fr !important; gap:16px !important; margin-bottom:16px !important;
}
@media (max-width:600px){ #atc-quote-form .atc-qf-grid{ grid-template-columns:1fr !important; } }

#atc-quote-form .atc-qf-field{ margin-bottom:16px !important; }
#atc-quote-form label{
  display:block !important; font-size:0.72rem !important; font-weight:700 !important;
  color:var(--muted) !important; text-transform:uppercase !important; letter-spacing:0.03em !important;
  margin-bottom:6px !important;
}
#atc-quote-form .atc-qf-optional{ text-transform:none !important; font-weight:400 !important; color:#9aa7b8 !important; letter-spacing:0 !important; }

#atc-quote-form input, #atc-quote-form textarea{
  width:100% !important; padding:11px 13px !important; border:1px solid var(--line) !important;
  border-radius:9px !important; font-family:'Public Sans', Arial, sans-serif !important;
  font-size:0.9rem !important; color:var(--text) !important; background:#fff !important;
}
#atc-quote-form input:focus, #atc-quote-form textarea:focus{
  outline:none !important; border-color:var(--yellow-dim) !important;
}

#atc-quote-form .atc-qf-submit{
  display:flex !important; align-items:center !important; justify-content:center !important; gap:8px !important;
  width:100% !important; background:var(--yellow) !important; color:var(--navy-deep) !important;
  border:none !important; border-radius:100px !important; padding:15px 20px !important;
  font-weight:700 !important; font-size:0.95rem !important; cursor:pointer !important;
  font-family:'Public Sans', Arial, sans-serif !important; margin-top:6px !important;
  transition: background 0.15s, box-shadow 0.15s !important;
  box-shadow: 0 4px 14px rgba(197,145,62,0.35) !important;
}
#atc-quote-form .atc-qf-submit:hover{ background:var(--yellow-dim) !important; box-shadow: 0 6px 18px rgba(197,145,62,0.45) !important; }
#atc-quote-form .atc-qf-submit:disabled{ opacity:0.7 !important; cursor:not-allowed !important; }

#atc-quote-form .atc-qf-spinner{
  width:14px !important; height:14px !important; border:2px solid rgba(11,36,64,0.3) !important;
  border-top-color:var(--navy-deep) !important; border-radius:50% !important;
  animation: atcQfSpin 0.7s linear infinite !important;
}
@keyframes atcQfSpin{ to{ transform: rotate(360deg); } }

#atc-quote-form .atc-qf-error{
  margin-top:14px !important; padding:11px 14px !important; background:#fdeceb !important;
  border:1px solid #f3b9b3 !important; color:#a33 !important; border-radius:9px !important; font-size:0.85rem !important;
}

#atc-quote-form .atc-qf-success{
  text-align:center !important; padding:30px 10px !important;
}
#atc-quote-form .atc-qf-success .atc-qf-check{ font-size:2.4rem !important; margin-bottom:10px !important; }
#atc-quote-form .atc-qf-success h3{ margin-bottom:10px !important; }
#atc-quote-form .atc-qf-success p{ font-size:0.9rem !important; color:var(--muted) !important; }
