body.reingreso-page{background:#f8f7f2;font-family:'Plus Jakarta Sans',sans-serif;color:#082650}.form-brand{display:flex;align-items:center;justify-content:space-between;padding:20px 32px;background:#062247;color:white}.form-brand a{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:600;font-size:14px}.form-brand strong{font-size:24px}.form-brand img{width:42px;height:42px}.skip-link{position:absolute;left:16px;top:-70px;z-index:30;padding:12px;background:white;color:#05214a}.skip-link:focus{top:10px}body.reingreso-page .page-shell{max-width:1120px;padding-top:24px}body.reingreso-page .reingreso-welcome{display:grid;grid-template-columns:1.1fr 1fr;min-height:0!important;background:#e9eef4;border-radius:22px;overflow:hidden;color:#082650}body.reingreso-page .reingreso-welcome-copy{width:100%;padding:32px!important;align-self:center}body.reingreso-page .reingreso-welcome h1{font-size:clamp(32px,4vw,46px);line-height:1.08;color:#082650;letter-spacing:-.045em}body.reingreso-page .reingreso-kicker{color:#0065cf}body.reingreso-page .reingreso-welcome .lead{display:block;color:#40536b;font-size:15px;max-width:420px}body.reingreso-page .reingreso-welcome-photo{position:relative;inset:auto;height:100%;min-height:230px;margin:0}body.reingreso-page .reingreso-welcome-photo:after{display:none}body.reingreso-page .reingreso-welcome-photo img{height:100%;width:100%;object-fit:cover;object-position:center 20%}body.reingreso-page .reingreso-onboarding{border-radius:22px;box-shadow:0 12px 40px #05214a08;margin-top:30px}body.reingreso-page .reingreso-scene-heading h2{letter-spacing:-.035em}body.reingreso-page button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border-radius:10px;transition:background .2s,transform .2s}body.reingreso-page button:active{transform:translateY(1px)}body.reingreso-page button:disabled{opacity:.5;cursor:not-allowed}body.reingreso-page .choice-icon{flex:0 0 24px}body.reingreso-page .choice-card{align-items:center}body.reingreso-page input:focus-visible,body.reingreso-page select:focus-visible,body.reingreso-page button:focus-visible{outline:3px solid #0071ee;outline-offset:3px}body.reingreso-page .reingreso-scene-actions{gap:12px}body.reingreso-page [id]{scroll-margin-top:24px}
@media(max-width:600px){.form-brand{padding:15px 20px}.form-brand a{font-size:12px}.form-brand strong{font-size:21px}body.reingreso-page .page-shell{padding:20px 16px}body.reingreso-page .reingreso-welcome{grid-template-columns:1fr}body.reingreso-page .reingreso-welcome-copy{padding:25px!important}body.reingreso-page .reingreso-welcome h1{font-size:34px}body.reingreso-page .reingreso-welcome-photo{height:auto;min-height:0}body.reingreso-page .reingreso-welcome-photo img{height:auto;aspect-ratio:1.9;object-fit:cover;object-position:center 12%}body.reingreso-page .reingreso-welcome .lead{font-size:14px}body.reingreso-page .reingreso-progress-step small{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}html{scroll-behavior:auto}}
body.reingreso-page .reingreso-welcome{background:#e9eef4!important;background-image:none!important;box-shadow:none!important}body.reingreso-page .reingreso-welcome:before,body.reingreso-page .reingreso-welcome:after{display:none!important}body.reingreso-page .reingreso-welcome-copy{background:none!important}body.reingreso-page .reingreso-welcome .reingreso-kicker{color:#0065cf!important}body.reingreso-page .reingreso-welcome .lead{color:#40536b!important}body.reingreso-page .reingreso-welcome h1{color:#082650!important}body.reingreso-page .reingreso-welcome-photo:after{display:none!important}
body.reingreso-page button{border-radius:10px!important}body.reingreso-page [hidden]{display:none!important}
body.reingreso-page .choice-card{position:relative}body.nuevo-ingreso-page.reingreso-page [data-step="1"]>.choice-group .choice-card>input[type="radio"]{left:12px;top:50%}
body.nuevo-ingreso-page .appointment-submit-error{grid-column:1/-1;width:100%;min-width:0;overflow-wrap:anywhere}body.nuevo-ingreso-page .appointment-submit-error:focus{outline:3px solid #b42318;outline-offset:3px}
/* Existing validation messages remain legible within selectable cards. */
body.reingreso-page .choice-card{flex-wrap:wrap}body.reingreso-page .choice-card>.field-error{flex:0 0 100%;width:100%;margin-top:6px;line-height:1.45;overflow-wrap:anywhere}body.reingreso-page .choice-card .choice-copy{min-width:0;flex:1}
body.reingreso-page .choice-card{flex-wrap:nowrap;gap:10px;min-width:0}body.reingreso-page .choice-card>span{min-width:0;overflow-wrap:anywhere}body.reingreso-page .choice-icon{width:22px;flex:0 0 22px}body.reingreso-page .presentation-group-error{grid-column:1/-1;width:100%;margin:8px 0 0;color:#b32020;font-size:12px;line-height:1.5}body.reingreso-page .reingreso-whatsapp-choice{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:12px}body.reingreso-page .reingreso-whatsapp-choice>span{min-width:0;width:100%;max-width:none}body.reingreso-page .reingreso-whatsapp-choice input{position:static;width:20px;height:20px;margin-top:3px}

/* Preserve the existing live post-reservation confirmation and payment-link presentation. */
body.reingreso-page .reingreso-success-card { padding: 42px 54px; border-radius: 22px; }
body.reingreso-page .reingreso-success-heading {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}
body.reingreso-page .reingreso-success-heading .reingreso-result-check {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: #118653;
  font-size: 22px;
}
body.reingreso-page .reingreso-success-heading small {
  display: block;
  margin-bottom: 6px;
  color: #118653;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
body.reingreso-page .reingreso-success-heading h2 {
  margin: 0;
  color: var(--public-ink);
  font-size: clamp(28px, 3.4vw, 42px);
  line-height: 1.08;
  letter-spacing: -.04em;
}
body.reingreso-page .reingreso-success-heading p {
  margin: 8px 0 0;
  color: var(--public-muted);
  font-size: 13px;
  line-height: 1.5;
}
body.reingreso-page .reingreso-success-card .reservation-summary {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 4px;
}
body.reingreso-page .reingreso-success-card .summary-item {
  padding: 16px;
  border-radius: 12px;
  background: #fbfdff;
}
body.reingreso-page .reingreso-success-card .code-summary { grid-column: 1 / -1; background: #eef5ff; }
body.reingreso-page .reingreso-success-card .code-summary strong { font-size: 22px; letter-spacing: .02em; }
body.reingreso-page .reingreso-success-card .summary-item span {
  display: block;
  margin-top: 5px;
  color: var(--public-muted);
  font-size: 10px;
  line-height: 1.5;
}
body.reingreso-page .reingreso-success-card .action-row { justify-content: flex-end; margin-top: 2px; }
body.reingreso-page .button-with-icon { gap: 8px; }
body.reingreso-page .whatsapp-button,
body.reingreso-page .whatsapp-button:hover {
  border-color: #118653;
  background: #118653;
  box-shadow: 0 8px 18px rgba(17, 134, 83, .18);
}


@media (max-width: 520px) {
  body.reingreso-page .reingreso-success-card { padding: 26px 18px; border-radius: 18px; }
  body.reingreso-page .reingreso-success-heading { grid-template-columns: 40px minmax(0, 1fr); gap: 12px; }
  body.reingreso-page .reingreso-success-heading .reingreso-result-check { width: 40px; height: 40px; font-size: 18px; }
  body.reingreso-page .reingreso-success-heading h2 { font-size: 27px; }
  body.reingreso-page .reingreso-success-card .reservation-summary { grid-template-columns: 1fr; }
  body.reingreso-page .reingreso-success-card .code-summary { grid-column: 1; }
  body.reingreso-page .reingreso-success-card .action-row { display: grid; grid-template-columns: 1fr; }
}
