:root{--azul:#f40044;--azul-osc:#3a393e;--verde:#f40044;--claro:#f3f4f6;--txt:#333;--gris:#5b5b5b;--r:14px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--txt);line-height:1.55;background:#fff}
img{max-width:100%}
.wrap{max-width:1100px;margin:0 auto;padding:0 20px}
h1,h2,h3{line-height:1.2}
h2{font-size:clamp(1.6rem,3vw,2.2rem);color:var(--azul-osc);margin-bottom:12px}
section{padding:72px 0}
.sub{color:var(--gris);max-width:640px;margin-bottom:36px}
.btn{display:inline-block;padding:13px 26px;border-radius:999px;background:var(--verde);color:#fff;font-weight:700;text-decoration:none;border:0;cursor:pointer;font-size:1rem;transition:transform .15s,filter .15s}
.btn:hover{transform:translateY(-2px);filter:brightness(1.08)}
.btn.sec{background:transparent;border:2px solid #fff}
.btn.out{background:transparent;color:var(--azul);border:2px solid var(--azul)}

header{position:sticky;top:0;background:#3a393e;box-shadow:0 1px 8px #0003;z-index:10}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{font-weight:800;font-size:1.4rem;color:#fff;text-decoration:none;display:flex;align-items:center;gap:14px}
.logo img{height:34px}
.logo em{font-style:normal;font-size:.7rem;font-weight:600;opacity:.7;border-left:1px solid #fff6;padding-left:14px}
.logo span{color:var(--verde)}
nav a{margin-left:22px;color:#fff;text-decoration:none;font-weight:600;font-size:.95rem}
nav a:not(.btn):hover{color:#ff8aa9}
@media(max-width:700px){nav a:not(.btn){display:none}}

.promo{background:#d9003c;color:#fff;text-align:center;padding:10px;font-weight:700;font-size:.95rem}
.hero{background:linear-gradient(135deg,#d9003c,#f40044 60%,#fc0146);color:#fff;padding:96px 0}
.hero h1{font-size:clamp(2rem,5vw,3.4rem);max-width:720px;margin-bottom:18px}
.hero p{max-width:560px;opacity:.9;margin-bottom:28px;font-size:1.1rem}
.hero .btn:not(.sec){background:#fff;color:var(--azul)}
.hero .btns{display:flex;gap:14px;flex-wrap:wrap}

.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px}
.card{background:#fff;border:1px solid #e5e7eb;border-radius:var(--r);padding:28px;display:flex;flex-direction:column;gap:12px}
.card .tag{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--verde)}
.card h3{color:var(--azul);font-size:1.4rem}
.card p{color:var(--gris);flex:1}
.plan:hover{box-shadow:0 8px 24px #f4004422}
.alt{background:var(--claro)}
.ben{text-align:center}
.ben .ic{font-size:2rem}

.pasos{counter-reset:p;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px}
.paso{counter-increment:p;padding-left:56px;position:relative}
.paso::before{content:counter(p);position:absolute;left:0;top:0;width:42px;height:42px;border-radius:50%;background:var(--azul);color:#fff;display:grid;place-items:center;font-weight:800}

.contacto{background:var(--azul-osc);color:#fff}
.contacto h2{color:#fff}
.contacto .sub{color:#d9d9d9}
form{display:grid;gap:14px;max-width:520px}
input,select{padding:13px 14px;border-radius:10px;border:0;font-size:1rem;width:100%}
footer{background:#2a292d;color:#a9b7cf;font-size:.85rem;padding:32px 0}
footer p+p{margin-top:8px}
.flotantes{position:fixed;right:18px;bottom:18px;display:flex;flex-direction:column;gap:12px;z-index:20}
.ig-b{background:linear-gradient(45deg,#f09433,#dc2743,#bc1888);width:56px;height:56px;border-radius:50%;display:grid;place-items:center;box-shadow:0 4px 14px #0004}
.wa{background:#25d366;color:#fff;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;font-size:1.7rem;text-decoration:none;box-shadow:0 4px 14px #0004;z-index:20}
.ben img{height:48px;margin-bottom:6px}
.clinicas{text-align:center}
.clinicas img{width:100%;max-width:1000px;margin-top:10px}
.footlogo{height:32px;margin-bottom:14px}
@media(max-width:700px){.logo em{display:none}}
.video{text-align:center}
.ig{max-width:400px;margin:0 auto;border-radius:var(--r);overflow:hidden;box-shadow:0 8px 24px #0002;background:#fff}
.ig iframe{width:100%;height:560px;border:0;display:block}
.dos{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:start}
.dos .video{text-align:center}
.mini{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
@media(max-width:860px){.dos{grid-template-columns:1fr}}
.redes a{color:inherit}
footer{text-align:center}
.contacto{text-align:center}
.contacto .sub{margin-inline:auto}
.contacto form{margin:0 auto}
.footlogo{display:block;margin-inline:auto}
.ben{align-items:center}
.ben img{width:52px;height:52px;object-fit:contain;flex:none}
.fx section>.wrap{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.fx section.vis>.wrap{opacity:1;transform:none}
