/* Contacto Forms v4 — Manrope + Poppins */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@300;400;600;700;800&family=Poppins:wght@300;400;500;600&display=swap');
:root{--ctco-c:#37937e;--ctco-cd:#2a7a68;--ctco-cl:#e6f4f1;--ctco-bg:#f2f4f3;--ctco-w:#fff;--ctco-dark:#1c2226;--ctco-mid:#4a5568;--ctco-light:#9aa5b1;--ctco-border:#dde2e8;--ctco-err:#e53e3e;--ctco-err-l:#fff5f5;--ctco-r:.7em;--ctco-dur:.4s;}
[class*=ctco-type-] *,[class*=ctco-type-] *::before,[class*=ctco-type-] *::after,.ctco-thanks *{box-sizing:border-box;margin:0;padding:0;}
.ctco-wrap.ctco-type-multistep,.ctco-wrap.ctco-type-multistep_clone{width:100%;min-height:100vh;display:flex;font-family:'Poppins',sans-serif;font-size:1vw;color:var(--ctco-dark);background:var(--ctco-bg);}
.ctco-type-multistep .ctco-left,.ctco-type-multistep_clone .ctco-left{width:50%;min-height:100vh;background:var(--ctco-bg);display:flex;align-items:center;padding:4em 3.2em;position:sticky;top:0;height:100vh;overflow:hidden;}
.ctco-lp{width:100%;max-width:38em;animation:ctcoFu .5s ease both;}
@keyframes ctcoFu{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.ctco-hero{font-family:'Manrope',sans-serif;font-weight:300;font-size:2.6vw;line-height:1.2;color:var(--ctco-dark);margin-bottom:1.5em;}
.ctco-hero span{color:var(--ctco-c);font-weight:700;}
.ctco-video{width:100%;max-width:30em;border-radius:.7em;overflow:hidden;aspect-ratio:16/9;background:#c8cdd3;}
.ctco-video video{width:100%;height:100%;object-fit:cover;display:block;}
.ctco-video-ph{width:100%;height:100%;background:linear-gradient(135deg,#c8cdd3,#b5bcc4);display:flex;align-items:center;justify-content:center;}
.ctco-play{width:3.5em;height:3.5em;border-radius:50%;background:rgba(55,147,126,.85);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s;}
.ctco-play:hover{transform:scale(1.1);background:var(--ctco-c);}
.ctco-play svg{width:1.4em;height:1.4em;margin-left:.2em;}
.ctco-left-intro{font-size:1vw;color:var(--ctco-mid);line-height:1.7;margin-bottom:1.6em;}
.ctco-feats{list-style:none;display:flex;flex-direction:column;gap:.9em;}
.ctco-feats li{display:flex;align-items:flex-start;gap:.6em;}
.ctco-feat-icon{width:2.4em;height:2.4em;border-radius:50%;background:var(--ctco-cl);border:1.5px solid var(--ctco-c);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--ctco-c);}
.ctco-feat-icon svg{width:1.1em;height:1.1em;}
.ctco-feats strong{font-family:'Manrope',sans-serif;font-weight:600;font-size:1.05vw;display:block;}
.ctco-feats span{font-size:.9vw;color:var(--ctco-mid);}
.ctco-antes-h{font-family:'Manrope',sans-serif;font-weight:300;font-size:1.8vw;margin-bottom:.8em;}
.ctco-antes-body{font-size:1vw;color:var(--ctco-mid);line-height:1.75;}
.ctco-antes-body p{margin-bottom:.6em;}
.ctco-antes-body strong{font-weight:600;color:var(--ctco-dark);}
.ctco-type-multistep .ctco-right,.ctco-type-multistep_clone .ctco-right{width:50%;min-height:100vh;background:var(--ctco-w);display:flex;align-items:center;padding:4em 3.2em;}
.ctco-type-multistep .ctco-card,.ctco-type-multistep_clone .ctco-card{width:100%;max-width:36em;}
.ctco-wrap.ctco-type-simple,.ctco-wrap.ctco-type-contact,.ctco-wrap.ctco-type-popup{font-family:'Poppins',sans-serif;font-size:1vw;color:var(--ctco-dark);}
.ctco-type-simple .ctco-left,.ctco-type-contact .ctco-left,.ctco-type-popup .ctco-left{display:none;} .ctco-wrap.ctco-type-simple,.ctco-wrap.ctco-type-contact{display:block;width:100%;}
.ctco-type-simple .ctco-right,.ctco-type-contact .ctco-right,.ctco-type-popup .ctco-right{width:100%;min-width:0;}
.ctco-type-simple .ctco-card,.ctco-type-contact .ctco-card,.ctco-type-popup .ctco-card{background:var(--ctco-w);border-radius:1em;box-shadow:0 4px 24px rgba(0,0,0,.09);padding:2em 2em 1.5em;width:100%;}
.ctco-prog{height:4px;background:var(--ctco-border);border-radius:4px;margin-bottom:1.75em;overflow:hidden;}
.ctco-prog-bar{height:100%;border-radius:4px;transition:width .6s cubic-bezier(.4,0,.2,1);}
.ctco-step{display:none;position:relative;}
.ctco-step.ctco-step-active{display:block;animation:ctcoSin var(--ctco-dur) cubic-bezier(.4,0,.2,1) both;}
.ctco-step.ctco-step-exit{display:block;animation:ctcoSout var(--ctco-dur) cubic-bezier(.4,0,.2,1) both;pointer-events:none;position:absolute;width:100%;top:0;}
.ctco-step.ctco-step-back.ctco-step-active{animation:ctcoSinB var(--ctco-dur) cubic-bezier(.4,0,.2,1) both;}
@keyframes ctcoSin{from{opacity:0;transform:translateX(32px)}to{opacity:1;transform:translateX(0)}}
@keyframes ctcoSout{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-32px)}}
@keyframes ctcoSinB{from{opacity:0;transform:translateX(-32px)}to{opacity:1;transform:translateX(0)}}
.ctco-step-lbl{font-size:.75em;font-weight:500;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.4em;display:block;}
.ctco-card-title{font-family:'Manrope',sans-serif;font-weight:700;font-size:1.5em;color:var(--ctco-dark);margin-bottom:.9em;line-height:1.2;}
.ctco-card-sub{font-size:.9em;color:var(--ctco-mid);margin-bottom:1.2em;}
.ctco-row2{display:grid;grid-template-columns:1fr 1fr;gap:.75em;}
.ctco-field{margin-bottom:.8em;}
.ctco-field input,.ctco-field select,.ctco-field textarea{width:100%;padding:.75em 1em;border:1.5px solid var(--ctco-border)!important;border-radius:.6em!important;background:var(--ctco-w)!important;font-family:'Poppins',sans-serif!important;font-size:1em!important;color:var(--ctco-dark)!important;transition:border-color .2s,box-shadow .2s!important;appearance:none;-webkit-appearance:none;outline:none!important;box-shadow:none!important;}
.ctco-field input::placeholder,.ctco-field textarea::placeholder{color:var(--ctco-light);}
.ctco-field input:focus,.ctco-field select:focus,.ctco-field textarea:focus{border-color:var(--ctco-c)!important;box-shadow:0 0 0 3px rgba(55,147,126,.13)!important;}
.ctco-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239aa5b1' stroke-width='1.8' fill='none' stroke-linecap='round'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 1em center!important;padding-right:2.5em!important;cursor:pointer;}
.ctco-field textarea{resize:vertical;min-height:5em;line-height:1.6;}
.ctco-field input.ctco-err,.ctco-field select.ctco-err,.ctco-field textarea.ctco-err{border-color:var(--ctco-err)!important;background:var(--ctco-err-l)!important;animation:ctcoShake .35s ease;}
@keyframes ctcoShake{0%,100%{transform:translateX(0)}20%{transform:translateX(-5px)}40%{transform:translateX(5px)}60%{transform:translateX(-3px)}80%{transform:translateX(3px)}}
.ctco-check-label,.ctco-radio-label{display:flex;align-items:center;gap:.5em;font-size:.9em;color:var(--ctco-mid);cursor:pointer;margin-bottom:.4em;}

/* ─── GDPR — checkbox nativo del navegador ─ */
.ctco-gdpr{margin:.4em 0 .8em;}
/* ─────────────────────────────────────────── */

.ctco-hr{border:none;border-top:1px solid var(--ctco-border);margin:.8em 0;}
.ctco-note{font-size:.78em;color:var(--ctco-light);line-height:1.5;margin-bottom:.8em;}
[class*=ctco-type-] button.ctco-btn,[class*=ctco-type-] input[type=submit].ctco-btn,.ctco-popup-overlay button.ctco-btn,button.ctco-open-popup{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.55em!important;width:100%!important;padding:.9em 1.6em!important;background:#37937e!important;color:#fff!important;border:none!important;border-radius:.6em!important;font-family:'Poppins',sans-serif!important;font-size:1em!important;font-weight:500!important;line-height:1.4!important;cursor:pointer!important;text-decoration:none!important;text-shadow:none!important;box-shadow:0 4px 14px rgba(55,147,126,.28)!important;transition:transform .18s ease,box-shadow .18s ease,background .15s!important;-webkit-font-smoothing:antialiased!important;margin-top:.8em!important;position:relative!important;overflow:hidden!important;}
[class*=ctco-type-] button.ctco-btn:hover,button.ctco-open-popup:hover{transform:translateY(-2px)!important;box-shadow:0 8px 22px rgba(55,147,126,.38)!important;}
[class*=ctco-type-] button.ctco-btn svg,.ctco-popup-overlay button.ctco-btn svg,button.ctco-open-popup svg{width:1em!important;height:1em!important;flex-shrink:0!important;stroke:#fff!important;fill:none!important;transition:transform .18s!important;}
[class*=ctco-type-] button.ctco-btn:hover svg{transform:translateX(3px)!important;}
[class*=ctco-type-] button.ctco-btn.ctco-btn-back{background:transparent!important;color:var(--ctco-mid)!important;border:1.5px solid var(--ctco-border)!important;box-shadow:none!important;width:auto!important;}
[class*=ctco-type-] button.ctco-btn.ctco-btn-back svg{stroke:var(--ctco-mid)!important;}
[class*=ctco-type-] button.ctco-btn.ctco-btn-back:hover{background:var(--ctco-cl)!important;border-color:var(--ctco-c)!important;color:var(--ctco-c)!important;box-shadow:none!important;}
[class*=ctco-type-] button.ctco-btn.ctco-btn-back:hover svg{stroke:var(--ctco-c)!important;transform:translateX(-3px)!important;}
[class*=ctco-type-] button.ctco-btn.ctco-loading,.ctco-popup-overlay button.ctco-btn.ctco-loading{opacity:.8!important;pointer-events:none!important;}
[class*=ctco-type-] button.ctco-btn.ctco-loading svg,.ctco-popup-overlay button.ctco-btn.ctco-loading svg{display:none!important;}
[class*=ctco-type-] button.ctco-btn.ctco-loading::after,.ctco-popup-overlay button.ctco-btn.ctco-loading::after{content:''!important;display:inline-block!important;width:.95em!important;height:.95em!important;border:2.5px solid rgba(255,255,255,.35)!important;border-top-color:#fff!important;border-radius:50%!important;animation:ctcoSpin .65s linear infinite!important;margin-left:.5em!important;}
@keyframes ctcoSpin{to{transform:rotate(360deg)}}
.ctco-btn-row{display:flex;gap:.7em;align-items:center;flex-wrap:wrap;margin-top:.2em;}
.ctco-notice{padding:.75em 1em;border-radius:.5em;font-size:.9em;margin-bottom:1em;}
.ctco-notice.ctco-notice-err{background:#fff5f5;border:1px solid var(--ctco-err);color:var(--ctco-err);}
.ctco-notice.ctco-notice-ok{background:#f0faf7;border:1px solid var(--ctco-c);color:var(--ctco-cd);}
.ctco-thanks{position:fixed;inset:0;z-index:9999;background:#1c2226 center/cover no-repeat;display:flex;align-items:center;justify-content:center;padding:2em;}
.ctco-thanks::before{content:'';position:absolute;inset:0;background:rgba(28,34,38,.55);}
.ctco-thanks-inner{position:relative;text-align:center;max-width:520px;}
.ctco-thanks-check{width:3.5em;height:3.5em;border-radius:50%;background:var(--ctco-c);display:flex;align-items:center;justify-content:center;margin:0 auto 1em;}
.ctco-thanks-check svg{width:2em;height:2em;color:#fff;}
.ctco-thanks-h{font-family:'Manrope',sans-serif;font-weight:300;font-size:2.2em;color:#fff;line-height:1.2;margin-bottom:.5em;}
.ctco-thanks-h em{font-style:normal;font-weight:700;color:var(--ctco-c);}
.ctco-thanks-body{font-size:1.05em;color:rgba(255,255,255,.82);line-height:1.7;}
.ctco-thanks-body p{margin-bottom:.4em;}
