@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap');:root{--navy:#0b1431;--blue:#5364ed;--purple:#8d68f9;--text:#27304c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--text);background:white}a{text-decoration:none;color:inherit}.top{height:82px;display:flex;align-items:center;gap:42px;justify-content:space-between;padding:0 max(5%,calc((100vw - 1250px)/2));position:sticky;top:0;background:#ffffffed;backdrop-filter:blur(16px);z-index:10;border-bottom:1px solid #edf0f7}.logo,footer strong{font-weight:800;font-size:22px;color:#4d61e9;letter-spacing:-1px;white-space:nowrap}.logo span,footer strong span{color:#192448}.logo sup{font-size:10px;color:#8d68f9}.top nav{display:flex;gap:26px;font-size:13px;font-weight:700}.top nav a:hover{color:var(--blue)}.btn{background:linear-gradient(110deg,#5667eb,#8b60e7);color:#fff;border-radius:35px;display:inline-flex;gap:25px;align-items:center;justify-content:center;padding:17px 29px;font-weight:700;box-shadow:0 12px 26px #6473ed33;transition:transform .2s}.btn:hover{transform:translateY(-3px)}.btn.small{padding:13px 19px;font-size:12px;white-space:nowrap}.menu{display:none;border:0;background:none;font-size:25px}.hero{text-align:center;padding:94px 20px 90px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 20%,#f0edff 0%,#fff 60%)}.eyebrow,.tag{display:inline-block;color:#6972dd;font-weight:800;font-size:12px;letter-spacing:2px;margin-bottom:20px}.hero h1{max-width:1000px;margin:0 auto 23px;font-size:clamp(42px,5.7vw,77px);line-height:1.13;letter-spacing:-3px;color:#101b3c;font-weight:800}.hero h1 em,h2 em{font-style:normal;background:linear-gradient(100deg,#5667ed,#ac66dc);-webkit-background-clip:text;background-clip:text;color:transparent}.hero h1 span{color:#5067ee}.hero p{font-size:18px;line-height:1.8;max-width:770px;margin:0 auto 8px}.hero .sub{font-size:16px;margin-bottom:26px}.logos{display:flex;flex-wrap:wrap;justify-content:center;gap:28px;color:#7c849c;font-weight:700;font-size:15px;margin:60px 0 38px}.dashboard{width:min(100%,950px);margin:0 auto;background:#fff;border:1px solid #e4e8fb;border-radius:19px;box-shadow:0 35px 70px #2e367129;text-align:left;overflow:hidden;transform:perspective(1200px) rotateX(4deg)}.dashhead{background:#111d42;color:white;display:flex;justify-content:space-between;padding:19px 28px;font-size:13px}.dashhead span:first-child{font-weight:800}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;padding:28px}.cards article{background:#f7f8fe;padding:22px;border-radius:13px}.cards small{display:block;color:#79829e;font-size:10px;font-weight:800}.cards strong{display:block;font-size:34px;margin:9px 0;color:#1b2550}.cards i{color:#21a984;font-size:12px;font-style:normal}.chart{height:160px;background:repeating-linear-gradient(to bottom,#fff 0,#fff 31px,#eef1f9 32px);margin:0 28px 28px;position:relative;border-radius:10px;overflow:hidden}.line{height:90px;position:absolute;left:5%;right:5%;top:20px;background:linear-gradient(130deg,transparent 48%,#6879ee 49%,#6879ee 51%,transparent 52%);clip-path:polygon(0 80%,10% 64%,20% 74%,30% 42%,40% 60%,50% 31%,60% 47%,70% 20%,80% 34%,90% 5%,100% 15%,100% 100%,0 100%);background:#a4abff66;border-top:4px solid #5967e9}.chart span{position:absolute;bottom:10px;left:15px;color:#8c95ae;font-size:11px}.section{padding:110px max(6%,calc((100vw - 1150px)/2));text-align:center}.section h2,.cta h2{font-size:clamp(32px,4vw,53px);letter-spacing:-1.8px;line-height:1.2;color:#111c3b;max-width:850px;margin:0 auto 45px}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;text-align:left}.grid article,.steps article{border:1px solid #e9ebf7;border-radius:19px;padding:35px;background:white;box-shadow:0 10px 35px #13215b09}.grid h3,.steps h3{font-size:21px;color:#142145}.grid p,.steps p{line-height:1.8;color:#6c7489}.icon{display:inline-flex;background:#efefff;color:#6c6ce7;border-radius:12px;font-size:30px;width:58px;height:58px;align-items:center;justify-content:center}.dark{background:#111b3a;color:#dfe4ff}.dark h2{color:#fff}.dark>p{max-width:700px;line-height:1.8;margin:0 auto 35px}.pills{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}.pills span{border:1px solid #53628a;padding:15px 22px;border-radius:40px}.center{max-width:680px;margin:auto;line-height:1.8}.world{padding:40px;background:#f6f5ff;border-radius:20px;margin-top:35px;color:#6d72a5;letter-spacing:2px;line-height:2.5}.soft{background:#f7f8ff}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;text-align:left}.steps article{padding:26px}.steps b{font-size:40px;color:#b4a4f7}details{text-align:left;border-bottom:1px solid #e3e7f2;padding:22px 8px;max-width:860px;margin:auto}summary{cursor:pointer;font-weight:700;color:#1b2547}details p{line-height:1.8;color:#69728a}.cta{background:linear-gradient(120deg,#ecedff,#f7f2ff);padding:95px 20px;text-align:center}.cta small{display:block;margin-top:20px;color:#7d8398}footer{padding:38px 7%;display:flex;justify-content:space-between;align-items:center}footer p{color:#8b92a6;font-size:12px}@media(max-width:850px){.top{padding:0 5%;height:70px}.top nav{display:none;position:absolute;top:70px;left:0;right:0;background:white;flex-direction:column;padding:25px;box-shadow:0 15px 25px #0001}.top nav.open{display:flex}.top .small{display:none}.menu{display:block}.hero{padding-top:70px}.hero h1{letter-spacing:-1.5px}.hero p{font-size:16px}.grid,.steps{grid-template-columns:1fr}.section{padding:75px 6%}.cards{gap:6px;padding:12px}.cards article{padding:12px}.cards strong{font-size:22px}.dashhead{padding:15px;font-size:10px}.dashhead span:last-child{display:none}.logos{gap:16px}footer{display:block;text-align:center}}

.hero-visual{width:min(680px,92vw);margin:36px auto 8px;border-radius:24px;overflow:hidden;box-shadow:0 22px 60px #121d4d24}.hero-visual img{display:block;width:100%;height:auto}.gallery-section{text-align:center}.gallery-section>p{max-width:690px;margin:0 auto 28px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:1150px;margin:auto}.gallery img{width:100%;border-radius:22px;box-shadow:0 16px 35px #111c4520}@media(max-width:700px){.gallery{grid-template-columns:1fr}.hero-visual{margin-top:25px}}

/* Identidad Ez-Ai */
.logo{display:flex;align-items:center;gap:10px;text-decoration:none}.brand-image{width:48px;height:48px;object-fit:cover;border-radius:9px}.brand-text{font-weight:800;color:inherit;font-size:22px;letter-spacing:-.04em}.ez-form{max-width:780px;margin:35px auto 0;background:#f5eee6;color:#1e1e1e;border-radius:20px;padding:30px;text-align:left;box-shadow:0 15px 35px #0002}.ez-form label{display:block;font-size:14px;font-weight:650;margin:0 0 18px}.ez-form label span,.ez-form legend span{color:#222}.ez-form input:not([type=radio]){display:block;width:100%;box-sizing:border-box;margin-top:8px;padding:14px 15px;border:1px solid #d5cbc0;background:#fff;border-radius:9px;font:inherit;color:#222}.ez-form input:focus{outline:2px solid #25a86a;outline-offset:1px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.ez-form fieldset{border:0;padding:0;margin:0 0 17px}.ez-form legend{font-weight:700;margin-bottom:12px}.radio-group{display:flex;flex-wrap:wrap;gap:12px 20px}.radio-group label{display:flex;gap:7px;align-items:center;margin:0;font-weight:500}.radio-group input{accent-color:#111}.whatsapp-btn{display:block;background:#0aaf61;color:#fff;font-weight:800;font-size:17px;border:0;border-radius:11px;padding:17px 25px;cursor:pointer;width:100%;transition:opacity .2s,background .2s}.whatsapp-btn[aria-disabled=true]{background:#87bda0;color:#e9f7ee;cursor:not-allowed}.form-notice{min-height:24px;color:#a42c2c;font-weight:650;font-size:14px;margin-bottom:10px}.ez-form small{display:block;margin-top:10px;color:#555}@media(max-width:650px){.form-grid{grid-template-columns:1fr}.ez-form{padding:20px}.brand-image{width:38px;height:38px}.brand-text{font-size:18px}}

/* Formulario compacto: botones tipo tarjeta con radio negro */
.compact-form{max-width:740px;padding:23px 26px;margin-top:25px;border-radius:16px}
.compact-form .form-grid{display:block}.compact-form .compact-name label{margin-bottom:15px}
.compact-form label{font-size:13px}.compact-form input:not([type=radio]){margin-top:6px;padding:11px 13px}
.compact-form fieldset{margin:0 0 15px;padding:0}.compact-form legend{font-size:13px;margin-bottom:8px}
.compact-form .compact-choices{gap:7px;display:flex;flex-wrap:wrap}
.compact-form .compact-choices label{border:1px solid #d9d0c6;background:#fff;border-radius:9px;padding:9px 11px;display:flex;align-items:center;gap:7px;cursor:pointer;font-size:12px;line-height:1.25;transition:background .15s,border-color .15s}
.compact-form .compact-choices label:has(input:checked){background:#e9e1d7;border-color:#111}
.compact-form .compact-choices input{margin:0;accent-color:#111;width:15px;height:15px;flex-shrink:0}
.compact-form .whatsapp-btn{padding:13px;font-size:15px}.compact-form .form-notice{min-height:18px;margin:0 0 5px}
.compact-form small{margin-top:8px;font-size:11px}
@media(max-width:650px){.compact-form{padding:17px 14px}.compact-form .compact-choices{gap:6px}.compact-form .compact-choices label{padding:8px;font-size:12px}.compact-form fieldset{margin-bottom:13px}}

/* Centrado integral del formulario */
.ez-form.compact-form{text-align:center;}
.ez-form.compact-form .compact-name label{text-align:center;}
.ez-form.compact-form input:not([type=radio]){text-align:center;}
.ez-form.compact-form fieldset{text-align:center;}
.ez-form.compact-form legend{width:100%;text-align:center;float:none;}
.ez-form.compact-form .compact-choices{justify-content:center;align-items:center;}
.ez-form.compact-form .compact-choices label{justify-content:center;text-align:center;}
.ez-form.compact-form .form-notice{text-align:center;}
.ez-form.compact-form small{text-align:center;}


/* CORRECCIÓN: centrado real de todos los campos y controles */
#ez-contact-form{
  width:min(100% - 24px,740px);
  margin:25px auto 0;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
#ez-contact-form .compact-name,
#ez-contact-form fieldset{
  width:100%;
  min-width:0;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
#ez-contact-form .compact-name label{
  display:flex;
  flex-direction:column;
  align-items:center;
  width:100%;
  text-align:center;
}
#ez-contact-form .compact-name input{
  width:min(100%,480px);
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
#ez-contact-form fieldset legend{
  display:table;
  width:100%;
  padding:0;
  margin:0 auto 10px;
  text-align:center;
}
#ez-contact-form .compact-choices{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  width:100%;
  margin:0 auto;
  gap:8px;
}
#ez-contact-form .compact-choices label{
  display:inline-flex;
  width:auto;
  margin:0;
  justify-content:center;
  align-items:center;
  text-align:center;
}
#ez-contact-form .form-notice,
#ez-contact-form small{
  width:100%;
  text-align:center;
}
#ez-contact-form .whatsapp-btn{
  width:min(100%,420px);
  margin:0 auto;
}
@media(max-width:650px){
  #ez-contact-form{width:calc(100% - 20px)}
}
