/* Checkout multi-step styles moved from template */
/* Multi-step checkout styles: ocultar todos los pasos por defecto y mostrar solo el primero */
.checkout_pas {
  display: none;
}
.checkout_pas1 {
  display: block;
}

/* Layout centralizado y ancho máximo para título, formulario y footer */
.checkout_page_wrapper,
.checkout_passos_container,
.carta_gastronomica_header,
.formgen_footer {
  display: flex;
  justify-content: center;
}
.checkout_passos,
.carta_gastronomica_header .carta_gastronomica_title,
.formgen_footer {
  width: 100%;
  box-sizing: border-box;
  padding: 12px;
}
/* Responsive widths: fixed and percentage */
@media (min-width: 900px) {
  .checkout_passos,
  .carta_gastronomica_header .carta_gastronomica_title,
  .formgen_footer {
    max-width: 720px;
  }
}
@media (min-width: 1200px) {
  .checkout_passos,
  .carta_gastronomica_header .carta_gastronomica_title,
  .formgen_footer {
    max-width: 60%;
  }
}

/* Espaciado homogéneo entre campos y bloques */
.checkout_passos {
  padding: 18px;
}
.checkout_label {
  margin-bottom: 6px;
}
.checkout_label p {
  margin: 0 0 8px 0;
}
.checkout_passos input[type="text"],
.checkout_passos select,
.checkout_passos textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 10px 12px;
  margin-bottom: 18px;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: 15px;
}
.checkout_radios,
.checkout_radios_list,
.checkout_comentarios {
  margin-bottom: 18px;
}

/* Convert rating radio tables to a responsive grid for consistency */
.checkout_radios table {
  display: grid;
  grid-template-columns: repeat(10, auto);
  gap: 6px 14px;
  justify-content: start;
  align-items: center;
}
.checkout_radios table td {
  text-align: center;
}

/* Smaller screens: use fewer columns for the ratings */
@media (max-width: 600px) {
  .checkout_radios table {
    grid-template-columns: repeat(5, 1fr);
  }
  .checkout_radios table td {
    padding: 6px 4px;
  }
  .checkout_passos {
    padding: 12px;
  }
  .checkout_siguiente,
  .checkout_enviar,
  .checkout_nueva {
    width: 100%;
    box-sizing: border-box;
  }
}

/* Botones: apariencia coherente con el resto del sitio */
.checkout_siguiente,
.checkout_enviar,
.checkout_nueva {
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 28px;
  color: #ffffff;
  background-color: #4a4843;
  transition: 0.2s;
  border: 1px solid #4a4843;
  border-radius: 4px;
  text-align: center;
  font-weight: 400; /* quitar grosor */
  font-size: 15px;
  box-sizing: border-box;
}
.checkout_siguiente .btn-text,
.checkout_enviar .btn-text,
.checkout_nueva {
  font-weight: 400;
}
.checkout_enviar .btn-text,
.checkout_siguiente .btn-text {
  display: inline-block;
  line-height: 1;
}
.checkout_siguiente,
.checkout_enviar,
.checkout_nueva {
  margin-top: 12px;
}
.checkout_siguiente:hover,
.checkout_enviar:hover,
.checkout_nueva:hover {
  background-color: #f7f6ef;
  color: #4a4843;
  border: 1px solid #4a4843;
}

.checkout_thankyou span {
  font-weight: 700;
}

/* 'No he visitado' style */
.checkout_radios_null {
  margin-top: 12px;
}
.checkout_radios_null label {
  display: inline-block;
  margin-left: 6px;
}

/* Footer pequeño: centrar y alinear con formulario */
.formgen_footer {
  padding: 12px;
  text-align: left;
}
.formgen_footer a {
  color: inherit;
}

/* SweetAlert2 custom overrides to match site look */
/* Target SweetAlert2 popup and add high specificity + !important so overrides apply even if library CSS loads after ours */
.swal2-container .swal2-popup,
.swal2-popup {
  font-family: inherit !important;
  color: #333 !important;
  background: #fff !important;
  border-radius: 6px !important;
  padding: 36px 28px !important;
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.25) !important;
}
.swal2-container .swal2-title,
.swal2-title {
  font-size: 20px !important;
  margin-bottom: 18px !important;
  color: #333 !important;
}
.swal2-container .swal2-html-container,
.swal2-html-container {
  font-size: 16px !important;
  color: #666 !important;
  margin-bottom: 22px !important;
}
.swal2-container .swal2-actions .swal2-confirm,
.swal2-actions .swal2-confirm {
  background-color: #4a4843 !important;
  color: #fff !important;
  border: 1px solid #4a4843 !important;
  padding: 12px 28px !important;
  border-radius: 6px !important;
}
.swal2-container .swal2-actions .swal2-cancel,
.swal2-actions .swal2-cancel {
  display: none !important;
}

/* Fallback styles for legacy SweetAlert (v1) which uses .sweet-alert */
.sweet-alert {
  font-family: inherit !important;
  color: #333 !important;
  background: #fff !important;
  border-radius: 6px !important;
  padding: 36px 28px !important;
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.25) !important;
}
.sweet-alert h2 {
  font-size: 20px !important;
  margin-bottom: 18px !important;
}
.sweet-alert p {
  font-size: 16px !important;
  color: #666 !important;
}
.sweet-alert .confirm {
  background-color: #4a4843 !important;
  color: #fff !important;
  border: 1px solid #4a4843 !important;
  padding: 12px 28px !important;
  border-radius: 6px !important;
}

/* Final thank-you bubble styling */
.checkout_pas5 {
  text-align: center;
}
.checkout_thankyou_bocadillo img {
  max-width: 320px;
  height: auto;
  display: block;
  margin: 0 auto 18px;
}
.checkout_thankyou_txt {
  margin: 18px auto 36px;
  max-width: 680px;
  color: #333;
  font-size: 18px;
}
.checkout_nueva {
  display: inline-flex;
}

/* Small polish: ensure inputs and labels align nicely */
.checkout_label p {
  font-size: 16px;
  color: #333;
}

/* Ocultar footer global SOLO en el cuestionario de salud */
body.page-template-template-encuesta-check-out .nectar_hook_global_section_footer, body.page-template-template-check-out-en .nectar_hook_global_section_footer, body.page-template-template-cuestionario-salud .nectar_hook_global_section_footer, body.page-template-template-cuestionario-salud-en .nectar_hook_global_section_footer {
    display:none;
}