/* Reservations Page Styles - ElRincónFino */

/* Section grid adjustments for better stacking on mobile */
.reserva-opciones__methods {
  margin-top: var(--space-6);
  margin-bottom: var(--space-2);
}
@media (max-width: 800px) {
  .reserva-opciones__methods {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }
}

/* CTA alignment for methods section */
.reserva-opciones__cta {
  display: flex;
  align-items: flex-end;
  margin-top: var(--space-6);
}

/* Numbered steps for reservation process */
.reserva-proceso__steps {
  counter-reset: reserva-paso;
  list-style: none;
  padding-left: 0;
}
.reserva-proceso__steps li {
  counter-increment: reserva-paso;
  margin-bottom: var(--space-2);
  position: relative;
  padding-left: var(--space-6);
}
.reserva-proceso__steps li::before {
  content: counter(reserva-paso) ".";
  position: absolute;
  left: 0;
  top: 1px;
  color: var(--color-primary);
  font-weight: bold;
  font-size: 1.25em;
}

/* Highlighted quote/testimonial styles */
.reserva-testimonial__quote {
  margin-bottom: var(--space-4);
  border-left: 4px solid var(--color-primary);
  padding-left: var(--space-4);
  font-style: italic;
}
.reserva-testimonial__quote blockquote {
  color: var(--color-primary-hover);
  margin-bottom: var(--space-2);
}
.reserva-testimonial__quote figcaption {
  color: var(--gray-700);
  font-size: var(--font-size-sm);
  font-style: normal;
}

/* FAQ style */
.reserva-faq__list dt {
  margin-top: var(--space-4);
  font-weight: bold;
  color: var(--color-primary-hover);
}
.reserva-faq__list dd {
  margin-left: 0;
  margin-top: var(--space-1);
  margin-bottom: var(--space-3);
  color: var(--gray-700);
}

/* Updates and policies for better visual grouping */
.reserva-politicas__list,
.reserva-beneficios__list,
.reserva-actualizaciones__list,
.reserva-asistencia__info {
  padding-left: var(--space-6);
  margin-bottom: var(--space-4);
}

/* Responsive main margin */
@media (max-width: 600px) {
  main.container {
    padding-top: var(--space-4);
    padding-bottom: var(--space-4);
  }
}

/* Minor tweak for visually hidden accessibility */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}
