
.registration-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:54px;align-items:start}
.registration-form{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}
.registration-form label{display:flex;flex-direction:column;gap:7px;font-weight:600;color:#073b69}
.registration-form input,.registration-form select,.registration-form textarea{width:100%;border:1px solid #d5e0eb;border-radius:8px;padding:12px 13px;font:inherit;background:#fff;color:#162a3a}
.registration-form textarea{min-height:120px;resize:vertical}
.registration-form .full{grid-column:1/-1}
.registration-form .privacy-check{flex-direction:row;align-items:flex-start;gap:10px;font-weight:400;color:#172b3b;line-height:1.45}
.registration-form .privacy-check input{width:auto;margin-top:4px;flex:0 0 auto}
.registration-form .privacy-check a,.legal-inline-link{color:#065bb3;text-decoration:underline;font-weight:600;cursor:pointer}
.registration-image-placeholder{min-height:460px;border:2px dashed #b8cce0;border-radius:18px;background:#f6f9fc;display:flex;align-items:center;justify-content:center;text-align:center;color:#6f8598;padding:30px;box-shadow:0 12px 30px rgba(15,46,78,.08)}
.registration-image-placeholder strong{display:block;color:#0b4f8a;font-size:1.15rem;margin-bottom:8px}
.registration-note{background:#eef6fd;border-left:4px solid #0b63b6;border-radius:8px;padding:14px 16px;margin:18px 0;color:#22384b}
.legal-modal{position:fixed;inset:0;background:rgba(5,20,35,.58);display:none;align-items:center;justify-content:center;padding:24px;z-index:99999}
.legal-modal.open{display:flex}
.legal-modal-box{background:#fff;border-radius:14px;width:min(920px,96vw);height:min(720px,90vh);box-shadow:0 22px 65px rgba(0,0,0,.3);display:flex;flex-direction:column;overflow:hidden}
.legal-modal-head{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid #dde6ef}
.legal-modal-head h3{margin:0;color:#0b4f8a}
.legal-modal-close{border:0;background:transparent;font-size:28px;line-height:1;cursor:pointer;color:#203a50}
.legal-modal-body{padding:18px;overflow:auto;flex:1}
.legal-modal-body iframe{width:100%;height:100%;border:0;min-height:580px}
.legal-source{font-size:1rem;line-height:1.6;color:#23394c}
.legal-source h4{color:#0b4f8a;margin-top:0}
@media(max-width:820px){.registration-layout{grid-template-columns:1fr}.registration-form{grid-template-columns:1fr}.registration-image-placeholder{min-height:300px}}

/* Ajustes compactos y confirmación de envío */
.legal-modal-box{width:min(600px,94vw);height:auto;max-height:80vh}
.legal-modal-body{flex:0 1 auto;max-height:62vh}
.legal-modal-box.is-document{width:min(920px,96vw);height:min(720px,90vh)}
.legal-modal-box.is-document .legal-modal-body{flex:1;max-height:none}
.form-success{background:#0b63b6;color:#fff;border-radius:8px;padding:12px 16px;font-weight:700;width:fit-content;max-width:100%;margin-top:4px}
.form-error{background:#fff1f1;color:#8b1e1e;border:1px solid #e7bcbc;border-radius:8px;padding:12px 16px;font-weight:600;margin-top:4px}
.form-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.registration-form input[type=file]{padding:10px;background:#f9fbfd}
