/* ============================================================
   Get Quote page — Taxi & Tempo Traveller enquiry
   ============================================================ */

.gq-hero {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(800px 400px at 88% -8%, rgba(227, 197, 103, .18), transparent 55%),
    linear-gradient(160deg, #134E5E 0%, var(--hhj-navy) 55%, var(--hhj-navy-deep) 100%);
  color: #fff;
}
.gq-hero-in { position: relative; z-index: 2; text-align: center; padding: 56px 28px 64px; }
.gq-hero .crumbs { color: #A9BEC4; font-size: 12px; margin-bottom: 14px; }
.gq-hero .crumbs a { color: var(--hhj-gold-2); text-decoration: none; }
.gq-hero h1 { font-size: 42px; letter-spacing: -.8px; font-weight: 600; margin: 0 0 12px; }
.gq-hero p { color: #C9D6DA; font-size: 15.5px; max-width: 580px; margin: 0 auto; line-height: 1.7; }

.gq-main { display: grid; grid-template-columns: 1.15fr .85fr; gap: 28px; align-items: start; padding: 52px 28px 80px; max-width: 1180px; margin: 0 auto; }

.gq-form-card {
  background: #fff;
  border: 1px solid var(--hhj-line);
  border-radius: 22px;
  padding: 34px;
  box-shadow: var(--hhj-shadow);
}
.gq-form-card h2 { font-size: 26px; color: var(--hhj-navy); letter-spacing: -.4px; margin: 0 0 6px; }
.gq-form-card .sub { color: var(--hhj-slate); font-size: 13.5px; margin: 0 0 24px; }
.gq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.gq-grid label { display: block; font-size: 10.5px; letter-spacing: 1.2px; color: var(--hhj-slate); text-transform: uppercase; font-weight: 700; margin-bottom: 7px; }
.gq-grid input, .gq-grid select, .gq-grid textarea {
  width: 100%;
  background: var(--hhj-ivory);
  border: 1.5px solid var(--hhj-line);
  border-radius: 12px;
  padding: 13px 15px;
  color: var(--hhj-ink);
  font-size: 14px;
  font-family: 'Inter', sans-serif;
  outline: none;
  transition: all .2s;
}
.gq-grid input:focus, .gq-grid select:focus, .gq-grid textarea:focus {
  border-color: var(--hhj-gold);
  box-shadow: 0 0 0 4px rgba(201, 162, 39, .12);
  background: #fff;
}
.gq-grid input::placeholder, .gq-grid textarea::placeholder { color: #9aa7ba; }
.gq-grid .full { grid-column: 1 / -1; }
.gq-grid .check-row { display: flex; align-items: center; gap: 8px; font-size: 12px; text-transform: none; letter-spacing: 0; color: var(--hhj-ink); font-weight: 500; }
.gq-grid .check-row input { width: auto; }
.gq-go { width: 100%; margin-top: 22px; padding: 16px; font-size: 15px; }
.gq-note { text-align: center; color: var(--hhj-slate); font-size: 11.5px; margin: 14px 0 0; }
.gq-note b { color: var(--hhj-green); }
.form-status { margin-top: 14px; padding: 12px 16px; border-radius: 12px; font-size: 13px; font-weight: 600; text-align: center; }
.form-status.success { background: var(--hhj-green-tint); color: var(--hhj-green); }
.form-status.error { background: #fdecee; color: #b3261e; }

.gq-side { display: grid; gap: 20px; }
.gq-side-card { background: #fff; border: 1px solid var(--hhj-line); border-radius: 18px; padding: 24px; box-shadow: 0 8px 26px rgba(7, 28, 61, .06); }
.gq-side-card h3 { font-size: 17px; color: var(--hhj-navy); margin: 0 0 14px; letter-spacing: -.2px; }
.gq-rate { display: flex; justify-content: space-between; align-items: center; padding: 10px 0; border-bottom: 1px dashed var(--hhj-line); font-size: 13px; }
.gq-rate:last-child { border-bottom: 0; }
.gq-rate b { color: var(--hhj-navy); }
.gq-rate .r { font-family: 'Fraunces', serif; font-weight: 700; color: var(--hhj-green); font-size: 15px; }
.gq-rate .r small { font-family: 'Inter', sans-serif; font-size: 10px; color: var(--hhj-slate); font-weight: 500; }
.gq-contact { display: flex; align-items: center; gap: 12px; background: #E8F2F3; border-radius: 12px; padding: 14px; text-decoration: none; color: var(--hhj-blue); font-weight: 700; font-size: 14px; transition: all .2s; }
.gq-contact:hover { background: var(--hhj-blue); color: #fff; }
.gq-contact .ic { width: 38px; height: 38px; flex: none; border-radius: 50%; background: #fff; display: grid; place-items: center; font-size: 16px; }
.gq-wa { display: flex; align-items: center; gap: 12px; background: var(--hhj-green-tint); border-radius: 12px; padding: 14px; text-decoration: none; color: var(--hhj-green); font-weight: 700; font-size: 14px; margin-top: 10px; transition: all .2s; }
.gq-wa:hover { background: var(--hhj-green); color: #fff; }
.gq-wa .ic { width: 38px; height: 38px; flex: none; border-radius: 50%; background: #fff; display: grid; place-items: center; font-size: 16px; }
.gq-tick { display: flex; gap: 10px; align-items: flex-start; color: var(--hhj-slate); font-size: 12.5px; padding: 6px 0; }
.gq-tick b { color: var(--hhj-green); }

@media (max-width: 960px) {
  .gq-main { grid-template-columns: 1fr; padding: 40px 16px 60px; }
  .gq-hero h1 { font-size: 32px; }
  .gq-form-card { padding: 24px 18px; }
  .gq-grid { grid-template-columns: 1fr; }
}