/* Formulario corporativo ACMEX V2 */
.form-return{color:#d9f4f1;font-size:13px;font-weight:650;white-space:nowrap;border-bottom:1px solid rgba(255,255,255,.3);padding-bottom:7px}
.form-return:hover{color:#4fe5d0}
.form-page{background:linear-gradient(130deg,#f5f9f9 10%,#ecf5f4 90%);min-height:77vh;padding:88px 0 106px}
.form-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:7%;align-items:start}
.form-intro{padding-top:35px}
.form-intro h1{font-size:clamp(35px,3.5vw,55px);line-height:1.13;letter-spacing:-.05em;max-width:520px;margin-bottom:26px}
.form-intro>p:not(.eyebrow){color:#536a74;font-size:16px;line-height:1.75;max-width:460px}
.form-aside{margin:45px 0 38px;border-top:1px solid #d1e2e3}
.form-aside-step{padding:17px 0;border-bottom:1px solid #d1e2e3;display:flex;gap:17px;color:#2c4858;font-size:14px;line-height:1.5}
.form-aside-step span{color:#148d86;font-weight:800;font-size:12px}
.form-direct{padding:24px 26px;background:#e1efee;border-left:3px solid #20b8a5}
.form-direct small{display:block;font-size:10px;letter-spacing:.1em;color:#39766f;font-weight:800;margin-bottom:8px}
.form-direct strong{font-size:16px;overflow-wrap:anywhere}
.form-direct p{font-size:12px;color:#4a666d;margin:14px 0 0}
.form-surface{background:white;border:1px solid #dce8e9;padding:40px 42px 38px;box-shadow:0 24px 65px rgba(9,47,65,.075)}
.form-card-head{margin-bottom:29px;border-bottom:1px solid #e3ebed;padding-bottom:22px}
.form-card-head p{font-size:10px;letter-spacing:.18em;color:#0f9185;font-weight:800;margin-bottom:12px}
.form-card-head h2{font-size:29px;margin:0 0 12px;line-height:1.18}
.form-card-head span{font-size:12px;color:#647782}
.form-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px 18px}
.form-full{grid-column:1/-1}
.form-field label{display:block;font-size:12px;font-weight:730;color:#254454;margin-bottom:8px}
.form-field label span{color:#c8523b}
.form-field input,.form-field select,.form-field textarea{display:block;width:100%;border:1px solid #cddde1;border-radius:4px;outline:0;background:#fbfdfd;color:#132e3d;font:inherit;font-size:14px;padding:12px 13px;transition:border-color .15s,box-shadow .15s}
.form-field input,.form-field select{min-height:47px}
.form-field textarea{resize:vertical;min-height:125px;line-height:1.6}
.form-field input::placeholder,.form-field textarea::placeholder{color:#8b9fa8}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#199e93;box-shadow:0 0 0 3px rgba(23,175,158,.14)}
.privacy-accept{display:flex;align-items:flex-start;gap:12px;font-size:12px;color:#4d6773;line-height:1.6;margin:26px 0 20px;cursor:pointer}
.privacy-accept input{flex:none;width:17px;height:17px;accent-color:#169d92;margin:2px 0 0}
.privacy-accept a{color:#007e7d;font-weight:700;text-decoration:underline}
.form-submit{width:100%;border:0;cursor:pointer;min-height:54px}
.form-submit:hover{background:#29c7b5}
.form-footnote{font-size:11px;color:#68808a;margin:16px 0 0;line-height:1.6}
.form-trap{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-alert{border-left:3px solid #be5737;background:#fff3ed;padding:16px 18px;margin-bottom:24px;color:#733d2d;font-size:13px}
.form-alert p{font-size:13px;line-height:1.5;margin:8px 0 0}
.form-state{padding:24px 0;text-align:center}
.form-state-icon{display:inline-flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:50%;background:#e4f7f1;color:#168674;font-size:35px;font-weight:800;margin:0 auto 20px}
.form-state h2{font-size:32px;margin:0 0 18px}
.form-state p{font-size:15px;color:#536d79;margin:0 auto 28px;max-width:450px}
.form-state .btn{display:inline-flex}
@media(max-width:890px){.form-page{padding:57px 0 78px}.form-layout{grid-template-columns:1fr;gap:38px}.form-intro{padding:0}.form-intro h1{max-width:670px}.form-aside{margin:28px 0}.form-direct{max-width:600px}}
@media(max-width:520px){.form-page{padding:39px 0 65px}.form-intro h1{font-size:37px}.form-surface{padding:29px 20px}.form-columns{grid-template-columns:1fr;gap:17px}.form-card-head h2{font-size:26px}.form-return{font-size:11px}.form-direct{padding:20px}}

/* V3 — ajustes para pantallas pequeñas y accesibilidad */
.form-layout,.form-intro,.form-surface,.form-field{min-width:0}
.form-field input,.form-field textarea,.form-field select{max-width:100%}
.form-alert,.form-state,.form-card-head{overflow-wrap:anywhere}
.form-submit:focus-visible,.form-return:focus-visible{outline:3px solid #0a9f91;outline-offset:3px}
@media(max-width:600px){
 .form-page{padding-top:30px;padding-bottom:55px}
 .form-intro h1{font-size:clamp(30px,9vw,40px);letter-spacing:-.04em}
 .form-intro>p:not(.eyebrow){font-size:15px}
 .form-surface{padding:25px 18px}
 .form-field input,.form-field select,.form-field textarea{font-size:16px;min-height:48px}
 .form-submit{min-height:56px}
 .form-state .btn{width:100%}
}
@media(max-width:420px){
 .header-inner{gap:10px}
 .brand{gap:6px;min-width:0}
 .brand-symbol{width:36px;height:36px;flex:none}
 .brand-type strong{font-size:18px;letter-spacing:.065em}
 .brand-type small{font-size:7px;letter-spacing:.12em;margin-top:5px}
 .form-return{font-size:11px;white-space:normal;max-width:98px;text-align:right;line-height:1.35;flex-shrink:0}
 .form-card-head h2{font-size:24px}
 .form-direct{padding:18px}
}
@media(max-width:330px){.brand-type strong{font-size:16px}.form-return{font-size:10px;max-width:76px}.form-surface{padding:22px 14px}}
