/* Contáctenos: mismo verde y trazo ligero del resto del sitio */
.cto-section{position:relative;padding:70px 0 90px;background:linear-gradient(180deg,#f4fbf8 0%,#fff 100%)}
.cto-sub{display:flex;align-items:center;gap:10px;margin-bottom:14px;color:#32c788;font-size:15px;text-transform:uppercase;letter-spacing:1px}
.cto-sub i{font-size:14px}
.cto-sub span{color:#19274d}

/* Contacto directo */
.cto-directo{background:#fff;border-radius:14px;box-shadow:0 8px 28px rgba(25,39,77,.07);padding:30px 34px;margin-bottom:40px}
.cto-directo-grid{display:flex;flex-wrap:wrap;align-items:center;gap:24px 34px}
.cto-dato{display:flex;align-items:center;gap:14px;min-width:230px}
.cto-dato .ic{width:48px;height:48px;border-radius:50%;background:#eefaf4;color:#32c788;display:flex;align-items:center;justify-content:center;font-size:19px;flex:none}
.cto-dato h5{margin:0;font-size:16px;color:#19274d}
.cto-dato a,.cto-dato p{margin:0;font-size:15px;color:#6b7690}
.cto-dato a:hover{color:#32c788}
.cto-nota{flex:1 1 280px;margin:0;padding-left:24px;border-left:1px solid #e3f6ed;font-size:15px;line-height:1.6;color:#6b7690}

/* Tarjetas */
.cto-cols{display:flex;flex-wrap:wrap;gap:30px;align-items:flex-start}
.cto-form-col{flex:1 1 560px;min-width:0}
.cto-book-col{flex:1 1 340px;min-width:0}
.cto-card{background:#fff;border:1px solid #e6efeb;border-radius:14px;box-shadow:0 8px 28px rgba(25,39,77,.07);padding:34px}
.cto-card h3{margin:0 0 24px;font-size:28px;line-height:1.25;color:#19274d}
.cto-card .cto-lead{margin:0 0 20px;font-size:15px;line-height:1.6;color:#000}

/* Formulario */
.cto-row{display:flex;flex-wrap:wrap;gap:0 18px}
.cto-row>.cto-campo{flex:1 1 200px}
.cto-row>.cto-campo.ancho{flex:2 1 260px}
.cto-campo{margin-bottom:18px}
.cto-campo label{display:block;margin-bottom:6px;font-size:14px;color:#000}
.cto-campo label b{color:#32c788;font-weight:inherit}
.cto-campo input,.cto-campo select,.cto-campo textarea{display:block;width:100%;padding:12px 15px;border:1px solid #dfe8e4;border-radius:8px;background:#fff;color:#19274d;font-size:15px;line-height:1.4;outline:none;transition:border-color .2s,box-shadow .2s}
.cto-campo textarea{resize:vertical;min-height:130px}
.cto-campo input:focus,.cto-campo select:focus,.cto-campo textarea:focus{border-color:#32c788;box-shadow:0 0 0 3px rgba(50,199,136,.15)}
.cto-btn{display:inline-block;padding:14px 34px;border:0;border-radius:8px;background:#32c788;color:#fff;font-size:15px;cursor:pointer;transition:background .2s,transform .2s}
.cto-btn:hover{background:#28a870;transform:translateY(-1px)}
.cto-btn:disabled{opacity:.6;cursor:default;transform:none}
.cto-btn.w100{width:100%;text-align:center}
.cto-btn.chico{padding:11px 24px}
.cto-oculto{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Agendar demostración */
.cto-paso-t{display:block;margin:0 0 10px;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#000}
.cto-dias{display:flex;gap:8px;padding-bottom:6px;margin-bottom:18px;overflow-x:auto}
.cto-dia{flex:1;min-width:62px;padding:9px 4px;text-align:center;border:1px solid #dfe8e4;border-radius:8px;background:#fdfdfd;cursor:pointer;transition:all .2s}
.cto-dia:hover{border-color:#32c788;background:#eefaf4}
.cto-dia.activo{background:#32c788;border-color:#32c788}
.cto-dia .d,.cto-dia .m{font-size:10px;text-transform:uppercase;color:#6b7690}
.cto-dia .n{margin:2px 0;font-size:17px;color:#19274d}
.cto-dia.activo .d,.cto-dia.activo .n,.cto-dia.activo .m{color:#fff}
.cto-horas{display:flex;gap:8px;margin-bottom:6px}
.cto-hora{flex:1;padding:10px 6px;text-align:center;border:1px solid #dfe8e4;border-radius:8px;background:#fdfdfd;font-size:13px;color:#19274d;cursor:pointer;transition:all .2s}
.cto-hora:hover{border-color:#32c788;background:#eefaf4}
.cto-hora.activo{background:#32c788;border-color:#32c788;color:#fff}
.cto-paso2{display:none;margin-top:18px;padding-top:18px;border-top:1px solid #e3f6ed}
.cto-resumen{margin:0 0 14px;font-size:14px;color:#1fa36d}
.cto-paso2 .cto-campo{margin-bottom:10px}
.cto-paso2 input,.cto-paso2 select{padding:10px 13px;font-size:14px}
.cto-ok{display:none;text-align:center;padding:20px 0}
.cto-ok i{font-size:48px;color:#32c788}
.cto-ok h4{margin:14px 0 8px;font-size:21px;color:#19274d}
.cto-ok p{margin:0 0 18px;font-size:15px;color:#6b7690}

/* Aviso */
.cto-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:rgba(25,39,77,.6)}
.cto-modal .caja{width:90%;max-width:440px;padding:32px 26px;border-top:4px solid #32c788;border-radius:12px;background:#fff;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,.15)}
.cto-modal .caja.err{border-top-color:#8a94a8}
.cto-modal .ic{margin-bottom:12px;font-size:48px;color:#32c788}
.cto-modal .err .ic{color:#8a94a8}
.cto-modal h4{margin:0 0 10px;font-size:21px;color:#19274d}
.cto-modal p{margin:0 0 22px;font-size:15px;line-height:1.6;color:#6b7690}

@media (max-width:767px){
  .cto-section{padding:50px 0 70px}
  .cto-directo,.cto-card{padding:24px 20px}
  .cto-nota{padding-left:0;border-left:0}
  .cto-card h3{font-size:23px}
}
.cto-dia,.cto-dia *,.cto-hora{font-weight:400}

.cto-ts{margin:6px 0 14px}
