/* RYGSA | Consulta de vuelos v1.0.5
   Un solo ancho de contenedor para cabecera de contenido, buscador y resultados.
   Sin zoom, transform ni alteraciones de los controles de Travelpayouts. */
.rygsa-vuelos { background: #f3f6f9; color: #1b2936; }
.rygsa-vuelos *, .rygsa-vuelos *::before, .rygsa-vuelos *::after { box-sizing: border-box; }
.rygsa-vuelos .rv-hero { background: linear-gradient(110deg,#104969 0%,#0875aa 100%); color: #fff; padding: 54px 0 58px; }
.rygsa-vuelos .rv-kicker { margin: 0 0 14px; letter-spacing: 2px; font-size: 11px; font-weight: 700; color: #c6e9fb; }
.rygsa-vuelos .rv-hero h1 { color: #fff; font-size: 42px; line-height: 1.2; font-weight: 600; margin: 0 0 17px; text-transform: none; }
.rygsa-vuelos .rv-hero p:not(.rv-kicker) { color: #e4f1f8; font-size: 16px; line-height: 1.6; max-width: 730px; margin: 0; }
.rygsa-vuelos .rv-section { padding: 36px 0 56px; }
/* Respetamos el .container global de Bootstrap que emplea la web. */
.rygsa-vuelos .rv-section > .container,
.rygsa-vuelos .rv-hero > .container { box-sizing: border-box; }
.rygsa-vuelos .rv-panel { width: 100%; background: #fff; border: 1px solid #dce6ee; border-radius: 13px; box-shadow: 0 7px 22px rgba(20,64,91,.04); }
.rygsa-vuelos .rv-search-panel { padding: 23px 23px 18px; }
.rygsa-vuelos .rv-search-panel h2 { border-left: 4px solid #087bb9; padding-left: 12px; margin: 0 0 14px; font-size: 20px; line-height: 1.3; color: #142d3c; text-transform: none; }
/* Centrado vertical del formulario dentro de la zona disponible, sin afectar la altura variable del widget. */
.rygsa-vuelos .rv-search-content { display: flex; align-items: center; width: 100%; min-height: 140px; }
.rygsa-vuelos #tpwl-search { width: 100%; min-width: 0; margin: 0 auto; }
.rygsa-vuelos .rv-results-header { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin: 32px 0 12px; }
.rygsa-vuelos .rv-results-header h2 { margin: 0; font-size: 20px; color: #142d3c; text-transform: none; }
.rygsa-vuelos .rv-results-header p { margin: 0; font-size: 12px; color: #5b7081; }
.rygsa-vuelos .rv-results-panel { padding: 14px; min-height: 160px; }
.rygsa-vuelos #tpwl-tickets { width: 100%; min-width: 0; }
.rygsa-vuelos .rv-disclaimer { margin: 22px 0 0; font-size: 12px; line-height: 1.6; color: #627788; }
@media (max-width: 767px) {
  .rygsa-vuelos .rv-hero { padding: 32px 0 38px; }
  .rygsa-vuelos .rv-hero h1 { font-size: 30px; }
  .rygsa-vuelos .rv-hero p:not(.rv-kicker) { font-size: 14px; }
  .rygsa-vuelos .rv-section { padding: 20px 0 36px; }
  .rygsa-vuelos .rv-search-panel { padding: 18px 14px; }
  .rygsa-vuelos .rv-search-content { min-height: 0; display: block; }
  .rygsa-vuelos .rv-results-panel { padding: 10px 8px; }
  .rygsa-vuelos .rv-results-header { margin-top: 24px; }
}

/* Ajuste validado visualmente con 14px: aplica solo a vuelos.asp,
   dado que este CSS no se enlaza desde otras páginas del sitio.
   Los widgets que usan rem toman esta medida desde el elemento raíz.
   No alterar el tamaño del viewport ni aplicar zoom/transform al widget. */
html { font-size: 14px !important; }
