/* =========================================================
   Shared styles for Flights / Visa / Passport pages
   ========================================================= */

/* Trip type tabs (Flights) */
.trip-type-tabs { display: flex; gap: 10px; margin-bottom: 24px; }
.trip-type-btn {
  font-family: var(--font-label);
  font-size: 13px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 12px 22px;
  border-radius: 30px;
  border: 1.5px solid var(--line);
  background: var(--white);
  color: var(--slate);
  cursor: pointer;
  font-weight: 700;
  transition: all 0.15s ease;
}
.trip-type-btn.active { border-color: var(--gold); background: var(--paper); color: var(--navy); }

/* Multi-city legs */
.leg-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr auto;
  gap: 12px;
  align-items: end;
  padding: 16px;
  background: var(--paper);
  border-radius: 8px;
  margin-bottom: 12px;
}
.leg-row .field label { font-size: 10px; }
.leg-remove {
  background: var(--white);
  border: 1.5px solid var(--red);
  color: var(--red);
  width: 40px;
  height: 40px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 14px;
}
.leg-remove:hover { background: rgba(196,39,43,0.08); }
.leg-number {
  font-family: var(--font-label);
  font-size: 10.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 700;
  margin-bottom: 8px;
}

/* Service catalog cards (Visa / Passport) — reuses .ticket look */
.service-catalog-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; margin-bottom: 40px; }

.custom-request-banner {
  background: var(--navy);
  color: var(--white);
  border-radius: 10px;
  padding: 30px 32px;
  text-align: center;
  margin-bottom: 44px;
}
.custom-request-banner h3 { color: var(--white); font-size: 20px; margin-bottom: 8px; }
.custom-request-banner p { color: rgba(255,255,255,0.65); margin-bottom: 20px; max-width: 50ch; margin-left: auto; margin-right: auto; }

@media (max-width: 720px) {
  .leg-row { grid-template-columns: 1fr; }
  .service-catalog-grid { grid-template-columns: 1fr; }
  .trip-type-tabs { flex-wrap: wrap; }
}
