:root{
  --azul:#004C92;
  --indigo:#251A45;
  --morado:#5D409D;
  --magenta:#C71293;
  --blanco:#FFFFFF;
  --negro:#0A0A0F;
  --lima:#D6FF3F;
  --amarillo:#F5E960;
  --cian:#55D6E8;
  --violeta:#9B30FF;
  --navy:#111B5C;
  --font-display:'Baloo 2', 'Segoe UI', Arial, sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'Segoe UI', Arial, sans-serif;color:#222;line-height:1.6;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}

header{
  background:var(--indigo);padding:1rem 4vw;
}
.header-inner{
  display:flex;justify-content:space-between;align-items:center;
  max-width:1360px;margin:0 auto;flex-wrap:wrap;
}
header img.logo{height:125px;width:auto;}

.menu-toggle{display:none;background:none;border:none;padding:.4rem;cursor:pointer;}
.menu-toggle svg{width:28px;height:28px;stroke:var(--blanco);}
nav ul{display:flex;gap:2rem;list-style:none;flex-wrap:wrap;}
nav a{color:var(--blanco);font-weight:600;letter-spacing:.06em;font-size:.82rem;text-transform:uppercase;}
nav a.activo{color:var(--magenta);}
nav a:hover{color:var(--magenta);}

.dropdown{position:relative;}
.dropdown>a{display:inline-flex;align-items:center;gap:.35rem;}
.dropdown>a::after{content:"▾";font-size:.65rem;}
.dropdown-menu{position:absolute;top:100%;left:0;margin-top:.6rem;background:var(--indigo);border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:.4rem;min-width:230px;box-shadow:0 14px 30px rgba(0,0,0,.45);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease;z-index:60;list-style:none;}
.dropdown:hover .dropdown-menu,.dropdown:focus-within .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0);}
.dropdown-menu li{padding:0;}
.dropdown-menu a{display:block;padding:.65rem .8rem;font-size:.76rem;text-transform:none;letter-spacing:normal;border-radius:6px;color:var(--blanco);font-weight:500;}
.dropdown-menu a:hover{background:rgba(199,18,147,.2);color:var(--magenta);}

.whatsapp-float{position:fixed;bottom:22px;right:22px;width:58px;height:58px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 22px rgba(0,0,0,.4);z-index:999;transition:transform .15s ease;}
.whatsapp-float:hover{transform:scale(1.08);}
.whatsapp-float svg{width:30px;height:30px;fill:#fff;}

.volver-arriba{position:fixed;bottom:90px;right:24px;width:46px;height:46px;border-radius:50%;background:var(--indigo);border:none;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(0,0,0,.35);z-index:998;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .25s ease,transform .25s ease,visibility .25s ease,background .2s ease;cursor:pointer;}
.volver-arriba.visible{opacity:1;visibility:visible;transform:translateY(0);}
.volver-arriba:hover{background:var(--magenta);}
.volver-arriba svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;}

.hero{
  position:relative;min-height:55vh;display:flex;align-items:flex-start;
  background:linear-gradient(135deg, var(--azul) 0%, var(--indigo) 35%, var(--morado) 65%, var(--magenta) 100%);
  color:var(--blanco);padding:6vw 4vw;
}
.hero-content{position:relative;max-width:820px;padding-top:2vw;}
.hero-content h1{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.4rem);line-height:1.08;margin-bottom:1rem;}
.hero-content p.promesa{font-size:clamp(1.1rem,2.2vw,1.4rem);font-weight:500;max-width:680px;}

section{padding:5vw 4vw;}
section.intro p{max-width:820px;font-size:1.08rem;margin-bottom:1rem;}
section.intro strong{color:var(--morado);}
section.intro h2{font-family:var(--font-display);color:var(--indigo);font-size:clamp(1.4rem,2.6vw,1.9rem);margin:1.6rem 0 .8rem;}

.pasos{list-style:none;max-width:820px;margin:1.5rem 0;}
.pasos li{padding:.9rem 0;border-bottom:1px solid #E4DEF0;font-size:1.02rem;}
.pasos li strong{color:var(--azul);}

/* --- Bloque oscuro de credibilidad (home) --- */
.intro-dark{background:var(--negro);color:var(--blanco);}
.intro-dark .destacado{font-family:var(--font-display);font-size:clamp(1.4rem,3vw,2.3rem);font-weight:700;max-width:1000px;margin:0 auto 2.5rem;line-height:1.4;text-align:center;color:var(--cian);}
.intro-dark .destacado strong{color:var(--magenta);}
.intro-dark .destacado .roi{text-decoration:underline;text-decoration-color:var(--lima);color:var(--blanco);}
.intro-dark .destacado .real{color:var(--amarillo);}
.intro-dark .destacado .anio{color:var(--violeta);font-weight:800;}
.checks{list-style:none;max-width:760px;margin:0 auto 3rem;}
.checks li{display:flex;align-items:flex-start;gap:.9rem;padding:.7rem 0;font-size:1.02rem;}
.check-ico{flex-shrink:0;width:24px;height:24px;border-radius:50%;background:var(--lima);color:var(--indigo);font-weight:900;font-size:.85rem;display:flex;align-items:center;justify-content:center;margin-top:.15rem;}
.checks li strong{color:var(--lima);}
.intro-media{display:grid;grid-template-columns:1fr 1.1fr;gap:2.5rem;align-items:center;max-width:1100px;margin:0 auto;}
.intro-media .foto{position:relative;overflow:hidden;}
.intro-media .foto img{display:block;width:100%;height:auto;}
.intro-media .foto::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 90px 45px var(--negro);pointer-events:none;}
.intro-media h2{font-family:var(--font-display);font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:700;background:linear-gradient(90deg,#FF6F61,#A855F7);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:1rem;line-height:1.15;}
.intro-media p{color:#C9C3D9;font-size:1rem;max-width:480px;}
@media (max-width:760px){ .intro-media{grid-template-columns:1fr;} }

.servicios{background:var(--negro);text-align:center;}
.servicios h2, .comparativa h2{font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2.2rem);color:var(--blanco);margin-bottom:2.5rem;}
.grid-servicios{display:flex;flex-wrap:wrap;justify-content:center;gap:2.4rem 2rem;max-width:1000px;margin:0 auto;}
.servicio{width:230px;}
.icon-circle{width:165px;height:165px;border-radius:50%;margin:0 auto 1rem;overflow:hidden;box-shadow:0 6px 18px rgba(199,18,147,.35);}
.icon-circle img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.55);}
.servicio h3{color:var(--cian);font-size:.92rem;font-weight:600;line-height:1.35;}

.card{background:var(--blanco);border-radius:14px;padding:1.6rem;border:1px solid #E4DEF0;box-shadow:0 4px 14px rgba(93,64,157,.08);}
.card h3{color:var(--azul);font-size:1.05rem;margin-bottom:.5rem;}
.card p{font-size:.92rem;color:#555;}

@media (max-width:760px){
  .header-inner{justify-content:center;position:relative;}
  header img.logo{height:82px;}
  .menu-toggle{display:block;position:absolute;right:0;top:50%;transform:translateY(-50%);}
  nav{width:100%;}
  nav ul{
    display:none;flex-direction:column;gap:0;width:100%;
    background:var(--indigo);margin-top:1rem;border-top:1px solid rgba(255,255,255,.12);
  }
  nav ul.abierto{display:flex;}
  nav ul li{width:100%;border-bottom:1px solid rgba(255,255,255,.1);}
  nav ul > li > a{display:block;padding:.9rem 0;}
  .dropdown-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:none;background:rgba(255,255,255,.04);margin-top:0;display:none;padding:0 0 .5rem 1rem;}
  .dropdown.abierto .dropdown-menu{display:block;}
  .dropdown>a::after{float:right;margin-right:.2rem;}
}

.comparativa{
  position:relative;color:var(--blanco);
  background:linear-gradient(160deg, rgba(0,76,146,.55), rgba(37,26,69,.75) 45%, rgba(199,18,147,.55)),
    url('https://assets.zyrosite.com/cdn-cgi/image/format=auto,w=1600,fit=crop/2yeahHv0JQFxHmr1/169887-edificio-morado-de_colores-horizonte-ambiente-7680x4320-dTTXEld6bndl7o9c.jpg');
  background-size:cover;background-position:center;
  display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;
}
.comparativa h2{grid-column:1/-1;color:var(--blanco);}
.comparativa .col{padding:2rem;border-radius:14px;background:rgba(255,255,255,.1);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.18);}
.comparativa h3{margin-bottom:1rem;color:var(--blanco);}
.comparativa ul{list-style:none;}
.comparativa li{position:relative;padding:.5rem 0 .5rem 1.8rem;border-bottom:1px solid rgba(255,255,255,.14);font-size:.95rem;}
.comparativa .no li::before{content:"❌";position:absolute;left:0;}
.comparativa .si li::before{content:"✅";position:absolute;left:0;}

.faq{max-width:860px;}
.faq details{background:#F7F5FA;border-radius:12px;padding:1rem 1.4rem;margin-bottom:.9rem;}
.faq summary{font-weight:700;color:var(--indigo);cursor:pointer;font-size:1.02rem;}
.faq p{margin-top:.6rem;color:#444;}

.cta{background:linear-gradient(120deg, var(--indigo), var(--morado));color:var(--blanco);text-align:center;padding:5vw 4vw;}
.cta h2{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.1rem);margin-bottom:1.5rem;}
.cta .boton{display:inline-block;background:var(--lima);color:var(--indigo);padding:1rem 2.4rem;border-radius:999px;font-weight:700;letter-spacing:.03em;font-size:1rem;}
.cta .boton:hover{background:var(--amarillo);}

.cierre{background:var(--negro);color:var(--magenta);text-align:center;padding:4vw;}
.cierre h2{font-family:var(--font-display);font-size:clamp(1.4rem,3.4vw,2.4rem);letter-spacing:.02em;}

/* --- Título con degradado (reutilizable en páginas internas) --- */
.titulo-degradado{font-family:var(--font-display);font-weight:800;background:linear-gradient(90deg,#FF6F61,#A855F7);-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1.15;}
.titulo-degradado.centrado{text-align:center;}

/* --- Acelerador IA (foto + checklist numerada) --- */
.acelerador{background:var(--negro);color:var(--blanco);}
.acelerador-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:2.8rem;align-items:start;max-width:1100px;margin:0 auto;}
.acelerador .foto{position:relative;overflow:hidden;}
.acelerador .foto img{display:block;width:100%;height:auto;}
.acelerador .foto::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 90px 45px var(--negro);pointer-events:none;}
.acelerador-texto h2{display:flex;align-items:center;gap:.7rem;font-family:var(--font-display);color:var(--cian);font-size:clamp(1.4rem,2.6vw,1.9rem);margin-bottom:1.4rem;}
.acelerador-texto ol{list-style:none;counter-reset:paso;margin-bottom:1.4rem;}
.acelerador-texto ol li{position:relative;padding:.6rem 0 .6rem 2.2rem;border-bottom:1px solid rgba(255,255,255,.1);font-size:.98rem;}
.acelerador-texto ol li::before{counter-increment:paso;content:counter(paso)".";position:absolute;left:0;color:var(--lima);font-weight:700;}
.acelerador-texto ol li strong{color:var(--blanco);}
.acelerador-texto>p{color:#C9C3D9;font-size:.95rem;}
@media (max-width:760px){ .acelerador-grid{grid-template-columns:1fr;} }

/* --- Resultado + tarjeta destacada --- */
.resultado{text-align:center;}
.resultado h2{margin-bottom:1.5rem;}
.resultado p{max-width:760px;margin:0 auto 2rem;font-size:1.05rem;color:#333;}
.tarjeta-destacada{display:inline-flex;align-items:center;gap:.7rem;background:#F7F5FA;border-radius:14px;padding:1rem 1.6rem;font-weight:700;color:var(--indigo);box-shadow:0 10px 30px rgba(93,64,157,.15);font-size:1.02rem;}
.tarjeta-destacada .check-ico{margin-top:0;}

/* --- Página Ecosistemas IA --- */
.acento{color:var(--magenta);}
.hero.hero-split{display:grid;grid-template-columns:1fr 1fr;gap:3rem;background:var(--navy);align-items:start;}
.hero-extra{padding-top:2vw;}
.hero-extra p{color:#D8D0E8;font-size:1rem;margin-bottom:1.3rem;}
.hero-extra .titulo-degradado{font-size:clamp(1.8rem,3.2vw,2.6rem);background:linear-gradient(90deg,#8B5CF6,#22D3EE);-webkit-background-clip:text;background-clip:text;}
@media (max-width:900px){ .hero.hero-split{grid-template-columns:1fr;} }
.callout{display:inline-flex;align-items:center;gap:.6rem;background:rgba(255,255,255,.12);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:.6rem 1.3rem;font-weight:700;color:var(--blanco);margin-bottom:1.2rem;font-size:.95rem;}

.foto-full{position:relative;overflow:hidden;background:var(--negro);}
.foto-full img{display:block;width:100%;height:auto;}
.foto-full.oscuro::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 110px 55px var(--negro);pointer-events:none;}

.foto-marco{padding:3vw 4vw;background:var(--blanco);text-align:center;}
.foto-marco.oscuro{background:var(--navy);}
.foto-marco img{max-width:900px;width:100%;display:block;margin:0 auto;border-radius:14px;box-shadow:0 14px 40px rgba(0,0,0,.3);}

.claim{text-align:left;max-width:900px;margin:0 auto;}
.claim h2{margin-bottom:1.3rem;font-size:clamp(1.8rem,3.4vw,2.6rem);}
.claim p{font-size:1.1rem;line-height:1.7;color:#333;}
.claim strong{color:var(--morado);}

.estrategia{text-align:left;max-width:900px;margin:0 auto;}
.estrategia h2{margin-bottom:0;font-size:clamp(1.8rem,3.4vw,2.6rem);}
.titulo-degradado.mayus{text-transform:uppercase;letter-spacing:.01em;}
.checks-claro{list-style:none;margin:2rem 0 0;text-align:left;}
.checks-claro li{display:flex;align-items:flex-start;gap:.9rem;padding:.8rem 0;border-bottom:1px solid #E4DEF0;font-size:1rem;color:#333;}
.checks-claro li strong{color:var(--indigo);}

.porque{background:linear-gradient(160deg, var(--indigo), var(--morado));color:var(--blanco);padding:5vw 4vw;}
.porque-inner{display:grid;grid-template-columns:340px 1fr;gap:2.4rem;align-items:start;max-width:920px;margin:0 auto 3rem;}
.porque-inner .foto{border-radius:14px;overflow:hidden;}
.porque-inner .foto img{display:block;width:100%;height:auto;}
.porque-texto h2{margin-bottom:1.2rem;font-size:clamp(1.4rem,2.4vw,1.9rem);}
.qa-p{margin-bottom:1.2rem;font-size:.96rem;line-height:1.55;}
.qa-p strong{color:var(--cian);display:block;margin-bottom:.25rem;}
.cierre-final{margin-top:0;font-size:clamp(1.3rem,2.6vw,2rem);max-width:900px;margin-left:auto;margin-right:auto;}
@media (max-width:760px){ .porque-inner{grid-template-columns:1fr;} }

.cierre-gradiente{background:var(--negro);text-align:center;padding:4vw;}
.cierre-gradiente h2{font-size:clamp(1.3rem,2.6vw,2rem);max-width:900px;margin:0 auto;}

/* --- Página Diseño Gráfico --- */
.hero.centrado{justify-content:center;}
.hero.centrado .hero-content{margin:0 auto;text-align:center;}
.hero.centrado .promesa{margin:0 auto;}

.intro-diseno{max-width:820px;margin:0 auto;text-align:center;}
.intro-diseno p{font-size:1.1rem;line-height:1.7;color:#333;}

.foto-duo{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;max-width:1100px;margin:0 auto;padding:0 4vw 5vw;}
.foto-duo img{width:100%;height:100%;object-fit:cover;border-radius:14px;display:block;box-shadow:0 14px 34px rgba(93,64,157,.18);}
@media (max-width:760px){ .foto-duo{grid-template-columns:1fr;} }

.incluye{max-width:900px;margin:0 auto;text-align:center;}
.lista-numerada{list-style:none;max-width:820px;margin:2rem auto 0;text-align:left;}
.lista-numerada li{padding:.8rem 0;border-bottom:1px solid #E4DEF0;font-size:1rem;color:#333;}
.lista-numerada li strong{color:var(--indigo);}

.foto-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:1100px;margin:0 auto;padding:0 4vw 5vw;}
.foto-trio img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:14px;display:block;box-shadow:0 14px 34px rgba(93,64,157,.18);}
@media (max-width:760px){ .foto-trio{grid-template-columns:1fr 1fr;} }

/* --- Cursor personalizado (todo el sitio, solo desktop) --- */
html.cursor-custom, html.cursor-custom *{cursor:none !important;}
.cursor-dot{position:fixed;top:0;left:0;width:8px;height:8px;border-radius:50%;background:var(--indigo);box-shadow:0 0 0 2px rgba(255,255,255,.9);pointer-events:none;z-index:9999;transform:translate(-50%,-50%);}
.cursor-ring{position:fixed;top:0;left:0;width:34px;height:34px;border-radius:50%;border:1.5px solid var(--indigo);box-shadow:0 0 0 1px rgba(255,255,255,.9), 0 0 10px rgba(0,0,0,.18);pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:width .22s ease,height .22s ease,border-color .22s ease,opacity .22s ease;animation:cursor-pulse 2.4s ease-in-out infinite;}
.cursor-ring.activo{width:56px;height:56px;border-color:var(--magenta);}
.cursor-ring.click{width:22px;height:22px;}
@keyframes cursor-pulse{0%,100%{opacity:.6;}50%{opacity:1;}}
@media (hover:none), (pointer:coarse){ .cursor-dot,.cursor-ring{display:none;} }

/* --- Modal FSC (Formulario → Sheet → Correo) --- */
.modal-overlay{display:none;position:fixed;inset:0;background:rgba(10,10,15,.82);backdrop-filter:blur(4px);z-index:1000;justify-content:center;align-items:center;padding:16px;}
.modal-overlay.open{display:flex;}
.modal-box{background:var(--blanco);border-radius:20px;padding:2.2rem;width:100%;max-width:460px;position:relative;box-shadow:0 25px 60px rgba(0,0,0,.5);max-height:90vh;overflow-y:auto;}
.modal-box .btn-close{position:absolute;top:16px;right:18px;background:none;border:none;font-size:1.5rem;color:#94A3B8;cursor:pointer;line-height:1;}
.modal-box h3{font-family:var(--font-display);margin:0 0 .3rem;font-size:1.3rem;color:var(--indigo);}
.modal-subtitle{font-size:.85rem;color:#64748B;margin:0 0 1.4rem;}
.modal-box .input-group{margin-bottom:.9rem;text-align:left;}
.modal-box .input-group label{display:block;font-size:.7rem;font-weight:700;margin-bottom:.35rem;text-transform:uppercase;letter-spacing:.03em;color:#334155;}
.modal-box .input-group input{width:100%;padding:.8rem .9rem;border:1px solid #CBD5E1;border-radius:10px;font-size:.92rem;font-family:inherit;color:#0F172A;background:#F8FAFC;box-sizing:border-box;}
.modal-box .input-group input:focus{outline:none;border-color:var(--morado);background:var(--blanco);}
.modal-box .input-group input[readonly]{background:#EDE9F5;font-weight:700;color:var(--indigo);cursor:not-allowed;}
.modal-box .btn-submit{width:100%;padding:.95rem;background:var(--magenta);color:var(--blanco);border:none;border-radius:10px;font-weight:700;cursor:pointer;text-transform:uppercase;margin-top:.4rem;font-size:.85rem;letter-spacing:.03em;}
.modal-box .btn-submit:hover{background:var(--morado);}
.modal-box .btn-submit:disabled{opacity:.6;cursor:not-allowed;}
#successContainer{display:none;text-align:center;padding:.5rem 0;}
#successContainer .check-exito{font-size:2.8rem;color:#25D366;}
#successContainer h4{font-family:var(--font-display);font-size:1.25rem;color:var(--indigo);margin:.6rem 0;}
#successContainer p{font-size:.9rem;color:#475569;margin-bottom:1.4rem;}
.btn-whatsapp-direct{display:inline-block;width:100%;box-sizing:border-box;padding:.95rem;background:#25D366;color:var(--blanco);text-decoration:none;border-radius:10px;font-weight:700;font-size:.85rem;text-transform:uppercase;box-shadow:0 10px 20px rgba(37,211,102,.25);}
.btn-whatsapp-direct:hover{background:#1EBD5B;}
.nota-privacidad{font-size:.72rem;color:#94A3B8;margin-top:1rem;margin-bottom:0;}
button.boton{font-family:inherit;border:none;cursor:pointer;}

footer{background:var(--indigo);color:#D8D0E8;padding:2.5rem 4vw;text-align:center;font-size:.9rem;}
footer img.logo{height:64px;margin:0 auto 1rem;}
footer .redes{margin-top:.8rem;display:flex;gap:1.4rem;justify-content:center;}
footer .redes a{color:var(--blanco);font-weight:600;}
footer .redes a:hover{color:var(--magenta);}

@media (max-width:760px){
  .comparativa{grid-template-columns:1fr;}
}

/* --- Marcadores de material pendiente (solo para revisión de diseño) --- */
.marcador-media{
  display:flex;align-items:center;justify-content:center;text-align:center;
  border:2px dashed var(--magenta);border-radius:14px;background:rgba(199,18,147,.06);
  color:var(--magenta);font-weight:700;font-family:var(--font-display);
  padding:3rem 1.5rem;min-height:220px;font-size:1rem;letter-spacing:.02em;
}
.marcador-media.video::before{content:"🎬 ";}
.marcador-media.imagen::before{content:"🖼️ ";}
