:root{--menta:#78F0C8;--agua:#00A896;--coral:#E8594A;--tinta:#062638;--fondo:#F4FBF8;--gris:#5b6f7a;--linea:#dcebe6}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Lexend,system-ui,sans-serif;background:var(--fondo);color:var(--tinta);line-height:1.5}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
em.l{font-family:Lora,serif;font-style:italic;font-weight:600;color:var(--agua)}
.mano{font-family:"Shadows Into Light Two",cursive;color:var(--coral);font-size:1.35rem;line-height:1.1}
h2{font-size:clamp(1.8rem,3.6vw,2.7rem);font-weight:800;letter-spacing:-.02em;line-height:1.1}
.sub{color:var(--gris);max-width:560px;margin-top:10px}
section{padding:80px 0}

/* botones gelatina */
.btn{display:inline-flex;align-items:center;gap:8px;border:0;cursor:pointer;font:700 1rem Lexend;padding:14px 26px;border-radius:999px;transition:transform .25s cubic-bezier(.3,1.6,.5,1)}
.btn:hover{transform:scale(1.06) translateY(-2px)}
.btn-coral{background:linear-gradient(180deg,#ff7a6b,var(--coral));color:#fff;box-shadow:inset 0 3px 0 rgba(255,255,255,.35),0 10px 22px rgba(232,89,74,.35)}
.btn-menta{background:linear-gradient(180deg,#a5ffe0,var(--menta));color:var(--tinta);box-shadow:inset 0 3px 0 rgba(255,255,255,.6),0 10px 22px rgba(0,168,150,.25)}
.btn-borde{background:#fff;color:var(--tinta);box-shadow:inset 0 0 0 2px var(--tinta)}

/* menú */
.menu{position:fixed;top:14px;left:50%;transform:translateX(-50%);width:min(1140px,calc(100% - 24px));z-index:50;display:flex;align-items:center;justify-content:space-between;padding:10px 12px 10px 22px;border-radius:999px;background:rgba(255,255,255,.72);backdrop-filter:blur(14px);box-shadow:0 8px 30px rgba(6,38,56,.12)}
.logo{font-weight:800;font-size:1.3rem;letter-spacing:-.03em}
.logo b{color:var(--coral)}
.menu nav{display:flex;gap:26px;font-weight:500;font-size:.95rem}
.menu .btn{padding:10px 20px;font-size:.92rem}
.menu .mia{font-weight:600;font-size:.9rem;margin-right:14px}

/* portada */
.hero{position:relative;min-height:min(100vh,820px);display:flex;align-items:center;overflow:hidden;color:#fff;padding:120px 0 60px}
.hero .foto{position:absolute;inset:0;background:url(https://images.unsplash.com/photo-1534438327276-14e5300c3a48?w=1800&q=70) center/cover;animation:zoom 18s ease-in-out infinite alternate}
.hero .foto::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(6,38,56,.88) 15%,rgba(6,38,56,.35) 65%,rgba(6,38,56,.15))}
@keyframes zoom{to{transform:scale(1.12)}}
.hero .wrap{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;width:100%}
.hero h1{font-size:clamp(2.6rem,6vw,4.8rem);font-weight:800;line-height:1;letter-spacing:-.035em}
.hero h1 em{font-family:Lora,serif;font-style:italic;color:var(--menta);font-weight:600}
.hero p.l{font-size:1.15rem;opacity:.9;margin:18px 0 26px;max-width:480px}
.hero .mano{color:#ffb2a8;font-size:1.6rem;transform:rotate(-4deg);display:inline-block;margin-bottom:10px}
.hero .acciones{display:flex;gap:12px;flex-wrap:wrap}
.hero .btn-borde{background:rgba(255,255,255,.12);color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.6)}

/* ¿Cuál es tu meta? */
.meta{background:rgba(255,255,255,.14);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.3);border-radius:28px;padding:26px;box-shadow:0 30px 60px rgba(0,0,0,.25)}
.meta h3{font-size:1.25rem;font-weight:700}
.meta .chips{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}
.chip{background:rgba(255,255,255,.12);border:1.5px solid rgba(255,255,255,.35);color:#fff;border-radius:18px;padding:12px;font:600 .92rem Lexend;cursor:pointer;text-align:left;transition:.2s}
.chip span{display:block;font-size:1.5rem}
.chip.on{background:var(--menta);color:var(--tinta);border-color:var(--menta);transform:scale(1.03)}
.reco{background:#fff;color:var(--tinta);border-radius:20px;padding:16px 18px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.reco small{color:var(--gris);display:block;font-size:.8rem}
.reco strong{font-size:1.05rem}
.reco .precio{font-weight:800;font-size:1.3rem;white-space:nowrap}
.reco .precio small{display:inline;font-weight:500}

/* franja */
.franja{background:var(--tinta);color:#fff;padding:22px 0}
.franja .wrap{display:flex;justify-content:space-around;gap:20px;flex-wrap:wrap;font-weight:600;font-size:.95rem}
.franja i{font-style:normal;color:var(--menta);margin-right:6px}

/* planes */
.cab{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:34px}
.toggle{background:#fff;border-radius:999px;padding:5px;display:inline-flex;box-shadow:0 4px 14px rgba(6,38,56,.08)}
.toggle button{border:0;background:none;font:600 .9rem Lexend;padding:9px 18px;border-radius:999px;cursor:pointer;color:var(--gris)}
.toggle button.on{background:var(--tinta);color:#fff}
.planes{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.plan{background:#fff;border-radius:26px;padding:26px 22px;position:relative;box-shadow:0 10px 30px rgba(6,38,56,.07);display:flex;flex-direction:column;transition:.3s}
.plan:hover{transform:translateY(-6px)}
.plan.top{background:var(--tinta);color:#fff;transform:scale(1.04)}
.plan.top .incl li{color:#d6e6ee}
.etq{position:absolute;top:-13px;left:22px;background:var(--coral);color:#fff;font-size:.75rem;font-weight:700;padding:5px 12px;border-radius:999px}
.plan h3{font-size:1.15rem}
.plan .p{font-size:2.1rem;font-weight:800;letter-spacing:-.03em;margin-top:10px}
.plan .p small{font-size:.9rem;font-weight:500;opacity:.7}
.plan s{opacity:.5;font-size:.9rem}
.plan .ahorro{color:var(--agua);font-weight:700;font-size:.85rem}
.plan.top .ahorro{color:var(--menta)}
.incl{list-style:none;margin:16px 0 22px;font-size:.9rem;flex:1}
.incl li{padding:5px 0;color:var(--gris)}
.incl li::before{content:"✓ ";color:var(--agua);font-weight:800}
.plan .btn{justify-content:center;width:100%}
.nota-planes{text-align:center;margin-top:28px;color:var(--gris);font-size:.92rem}
.sellos{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:10px}
.sellos span{background:#fff;border:1px solid var(--linea);border-radius:8px;padding:4px 10px;font-size:.78rem;font-weight:700}

/* horario */
.horario{background:#fff}
.dias{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:24px}
.dia{flex:0 0 auto;border:0;background:var(--fondo);border-radius:18px;padding:10px 18px;font:600 .9rem Lexend;cursor:pointer;text-align:center}
.dia b{display:block;font-size:1.3rem}
.dia.on{background:var(--coral);color:#fff}
.clases{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.clase{border:1.5px solid var(--linea);border-radius:22px;padding:18px;display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center}
.clase .hora{background:var(--tinta);color:#fff;border-radius:16px;padding:10px 12px;text-align:center;font-weight:800;line-height:1.1}
.clase .hora small{display:block;font-weight:500;font-size:.7rem;opacity:.7}
.clase h4{font-size:1.05rem}
.clase p{font-size:.82rem;color:var(--gris)}
.cupos{grid-column:1/-1;display:flex;align-items:center;gap:12px}
.barra{flex:1;height:8px;background:var(--fondo);border-radius:9px;overflow:hidden}
.barra i{display:block;height:100%;background:var(--agua);border-radius:9px}
.cupos .q{font-size:.8rem;font-weight:700;white-space:nowrap}
.cupos .q.poco{color:var(--coral)}
.cupos button{border:0;background:var(--menta);font:700 .8rem Lexend;padding:8px 14px;border-radius:999px;cursor:pointer}
.cupos button.lleno{background:var(--fondo);color:var(--gris)}

/* pasos + mi membresía */
.como{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.pasos{list-style:none;margin-top:26px;display:grid;gap:16px}
.pasos li{display:grid;grid-template-columns:54px 1fr;gap:16px;align-items:center;background:#fff;border-radius:22px;padding:16px;box-shadow:0 6px 20px rgba(6,38,56,.06)}
.pasos .n{width:54px;height:54px;border-radius:18px;background:var(--menta);display:grid;place-items:center;font-weight:800;font-size:1.3rem}
.pasos li:nth-child(2) .n{background:#ffd3cc}
.pasos li:nth-child(3) .n{background:var(--tinta);color:var(--menta)}
.pasos p{font-size:.88rem;color:var(--gris)}
.cel{width:300px;margin:0 auto;background:var(--tinta);border-radius:44px;padding:14px;box-shadow:0 40px 80px rgba(6,38,56,.3);position:relative}
.cel .pant{background:var(--fondo);border-radius:32px;padding:22px 18px;min-height:520px}
.cel .hola{font-weight:700}
.tarjeta{margin-top:14px;border-radius:24px;padding:18px;background:linear-gradient(135deg,var(--agua),#0b6e8a);color:#fff;position:relative;overflow:hidden}
.tarjeta::after{content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;border-radius:50%;background:rgba(120,240,200,.25)}
.tarjeta small{opacity:.8;font-size:.75rem}
.tarjeta .pl{font-weight:800;font-size:1.2rem}
.qr{width:96px;height:96px;margin:14px auto 4px;background:
 conic-gradient(from 90deg at 25% 25%,#fff 25%,transparent 0) 0 0/24px 24px,
 repeating-linear-gradient(90deg,#fff 0 6px,transparent 6px 12px),var(--tinta);border:8px solid #fff;border-radius:12px}
.vence{margin-top:14px;background:#fff;border-radius:20px;padding:14px;border:2px dashed var(--coral)}
.vence b{color:var(--coral)}
.vence .btn{width:100%;justify-content:center;margin-top:10px;padding:11px}
.pts{margin-top:12px;display:flex;justify-content:space-between;background:#fff;border-radius:18px;padding:12px 14px;font-size:.85rem}
.pts b{color:var(--agua)}
.cel .mano{position:absolute;right:-150px;top:150px;width:140px;transform:rotate(6deg)}

/* coaches */
.coaches{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.coach{border-radius:28px;overflow:hidden;position:relative;aspect-ratio:4/5;background:#ccc center/cover}
.coach div{position:absolute;left:14px;right:14px;bottom:14px;background:rgba(255,255,255,.82);backdrop-filter:blur(10px);border-radius:20px;padding:14px}
.coach h4{font-size:1.05rem}
.coach p{font-size:.82rem;color:var(--gris)}

/* resultados */
.resultados{background:var(--tinta);color:#fff}
.resultados h2 em{color:var(--menta)}
.cifras{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:36px 0}
.cifra{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:22px}
.cifra b{font-size:2.3rem;font-weight:800;color:var(--menta);display:block;letter-spacing:-.03em}
.cifra span{font-size:.85rem;opacity:.8}
.testis{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.testi{background:#fff;color:var(--tinta);border-radius:24px;padding:22px}
.testi p{font-size:.95rem}
.testi .q{margin-top:14px;display:flex;gap:10px;align-items:center;font-size:.85rem}
.testi .av{width:38px;height:38px;border-radius:50%;background:var(--menta);display:grid;place-items:center;font-weight:800}
.estrellas{color:#f5b301;letter-spacing:2px}

/* prueba gratis + sede */
.final{display:grid;grid-template-columns:1.1fr .9fr;gap:24px}
.gratis{background:linear-gradient(135deg,var(--coral),#ff8c6b);color:#fff;border-radius:32px;padding:40px;position:relative;overflow:hidden}
.gratis h2{color:#fff}
.gratis form{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}
.gratis input,.gratis select{border:0;border-radius:16px;padding:14px;font:500 .95rem Lexend}
.gratis .btn{grid-column:1/-1;justify-content:center;background:var(--tinta);color:#fff;box-shadow:0 10px 22px rgba(0,0,0,.2)}
.sede{background:#fff;border-radius:32px;padding:30px;box-shadow:0 10px 30px rgba(6,38,56,.07)}
.sede .mapa{height:150px;border-radius:20px;margin:14px 0;background:linear-gradient(135deg,#d7f3ea,#eaf6ff);position:relative}
.sede .mapa::after{content:"📍";position:absolute;left:50%;top:40%;font-size:2rem;transform:translate(-50%,-50%)}
.sede table{width:100%;font-size:.9rem;border-collapse:collapse}
.sede td{padding:6px 0;border-bottom:1px solid var(--linea)}
.sede td+td{text-align:right;font-weight:600}

footer{padding:40px 0;text-align:center;color:var(--gris);font-size:.85rem}

/* celular */
@media (max-width:900px){
 .menu nav,.menu .mia{display:none}
 .hero .wrap,.como,.final{grid-template-columns:1fr}
 .planes{grid-template-columns:1fr 1fr}
 .plan.top{transform:none}
 .clases,.coaches,.testis{grid-template-columns:1fr}
 .cifras{grid-template-columns:1fr 1fr}
 .cel .mano{display:none}
 section{padding:60px 0}
}
@media (max-width:560px){
 .wrap{padding:0 16px}
 .planes{grid-template-columns:1fr}
 .gratis form{grid-template-columns:1fr}
 .gratis{padding:28px 20px}
}

/* ── Pantallas internas (comprar, pago, mi membresía) · 14-oct-2026 ───────────── */
.top{background:#fff;box-shadow:0 2px 14px rgba(6,38,56,.06)}
.top .w{max-width:1100px;margin:0 auto;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.top .logo small{display:block;font-size:.72rem;font-weight:500;color:var(--gris);letter-spacing:0}
.top nav{display:flex;gap:18px;font-weight:600;font-size:.9rem}
.aviso{background:#fff3f1;border-bottom:2px solid var(--coral);color:var(--tinta);font-weight:600;font-size:.92rem}
.aviso.ok{background:#e9fbf5;border-color:var(--agua)}
.aviso .w,.cuerpo .w{max-width:1100px;margin:0 auto;padding:14px 20px}
.cuerpo{padding:34px 0 70px}
.cuerpo .angosto{max-width:620px}
.cuerpo h1{font-size:clamp(1.7rem,3.4vw,2.4rem);font-weight:800;letter-spacing:-.02em;line-height:1.1}
.cuerpo .lead{color:var(--gris);margin:8px 0 22px}
.caja{background:#fff;border-radius:26px;padding:24px;box-shadow:0 10px 30px rgba(6,38,56,.07)}
.caja+.caja{margin-top:16px}
.caja h2{font-size:1.2rem;margin-bottom:10px}
.lin{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--linea);font-size:.95rem}
.lin:last-of-type{border-bottom:0}
.lin.t{font-weight:800;font-size:1.1rem}
.campos{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.campos .ancho{grid-column:1/-1}
.campo label{display:block;font-size:.82rem;font-weight:600;margin-bottom:5px}
.campo input,.campo select{width:100%;border:1.5px solid var(--linea);border-radius:14px;padding:12px 14px;font:500 .95rem Lexend;background:#fff;color:var(--tinta)}
.campo input:focus{outline:0;border-color:var(--agua);box-shadow:0 0 0 3px rgba(0,168,150,.15)}
.campo .err{color:var(--coral);font-size:.8rem;margin-top:4px}
.acepto{display:flex;gap:10px;align-items:flex-start;font-size:.82rem;color:var(--gris);margin:16px 0}
.acepto input{margin-top:3px;accent-color:var(--agua)}
.acepto a{color:var(--agua);font-weight:600}
.btn.ancho{width:100%;justify-content:center}
.seg{text-align:center;color:var(--gris);font-size:.85rem;margin-top:10px}
.seg.error{color:var(--coral)}
.cancelar{text-align:center;margin-top:18px}
.cancelar button{background:none;border:0;color:var(--gris);font:500 .85rem Lexend;text-decoration:underline;cursor:pointer}
.dos{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:start}
.resumen .pl{font-size:1.5rem;font-weight:800}
.resumen .incl{margin:10px 0 0}
.pie-corto{border-top:1px solid var(--linea);padding:20px 0;color:var(--gris);font-size:.82rem}
.pie-corto .w{max-width:1100px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pie-corto a{text-decoration:underline}

/* Mi membresía: la tarjeta con el QR de verdad */
.socio{display:grid;grid-template-columns:330px 1fr;gap:22px;align-items:start}
.socio .tarjeta{margin-top:0}
.socio .qr-real{background:#fff;border-radius:16px;padding:10px;width:180px;height:180px;margin:14px auto 6px;display:grid;place-items:center}
.socio .qr-real img,.socio .qr-real canvas,.socio .qr-real svg{width:160px;height:160px}
.socio .codigo{text-align:center;font-weight:700;letter-spacing:.12em;font-size:.95rem}
.estado-pill{display:inline-block;border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:700;background:var(--menta);color:var(--tinta)}
.estado-pill.no{background:#ffd3cc}
.vence.ok{border-color:var(--agua)}
.vence.ok b{color:var(--agua)}
.lista-cupos{list-style:none}
.lista-cupos li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--linea);font-size:.92rem}
.lista-cupos form button{background:none;border:0;color:var(--coral);font:600 .8rem Lexend;cursor:pointer}
.pill-espera{font-size:.72rem;font-weight:700;color:var(--coral)}
.vacio{color:var(--gris);font-size:.9rem}
.historial{width:100%;border-collapse:collapse;font-size:.85rem}
.historial td,.historial th{text-align:left;padding:8px 6px;border-bottom:1px solid var(--linea)}
.historial th{color:var(--gris);font-weight:600}
.oferta{background:#fff7e6;border:2px dashed #f5b301;border-radius:20px;padding:14px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.clase form{display:inline}
.dia-panel[hidden]{display:none}
.sin-clases{color:var(--gris);padding:20px 0}
.gratis .err{color:#fff;font-weight:600;font-size:.82rem;grid-column:1/-1}
.gratis .ok-msg{background:rgba(255,255,255,.18);border-radius:16px;padding:16px;margin-top:18px;font-weight:600}
.gratis .acepto{color:#fff;grid-column:1/-1;margin:4px 0}
.gratis .acepto a{color:#fff;text-decoration:underline}
.trampa{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media (max-width:900px){.dos,.socio{grid-template-columns:1fr}.campos{grid-template-columns:1fr}}
@media print{.menu,.ami,.ami-burbuja,.top nav{display:none}}
[hidden]{display:none!important}

/* Sellos de medios de pago (mismos del hotel, hotel-marea.css) */
.sellos-pago{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 8px;margin-top:12px}
.sellos-pago.izq{justify-content:flex-start;margin-top:0}
.sellos-pago > span{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid #d7e3ea;border-radius:8px;padding:0 9px;height:30px;font-weight:700;font-size:12px;line-height:1;letter-spacing:.01em;color:#16263a}
.sellos-pago > span span{color:#16263a;font-size:11.5px}
.sellos-pago svg{display:block;flex:none}

/* Páginas legales (14-oct-2026) */
.legal{font-size:.95rem;line-height:1.7;color:var(--tinta)}
.legal h2{font-size:1.1rem;font-weight:700;margin:22px 0 8px}
.legal p{margin:0 0 10px}
.legal ul{margin:0 0 12px 20px}
.legal li{margin-bottom:4px}
.legal a{color:var(--agua);font-weight:600}
.otras-legales{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:10px;font-size:.9rem}
.otras-legales a{color:var(--agua);font-weight:600;text-decoration:underline}

/* Congelar y puntos (14-oct-2026) */
.estado-pill.hielo{background:#dff1ff;color:#0b5c8a}
.vence.hielo{border-color:#7cc4f0;background:#f2f9ff}
.vence.hielo b{color:#0b5c8a}
.congelar summary{cursor:pointer;font-size:.95rem;list-style:none}
.congelar summary::-webkit-details-marker{display:none}
.puntos .pts-cabeza{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.puntos .pts-n{font-size:2rem;font-weight:800;letter-spacing:-.02em;color:var(--tinta)}
.puntos .pts-como{font-size:.82rem;color:var(--gris);max-width:260px}
.premios{list-style:none;margin-top:14px;display:grid;gap:8px}
.premios li{display:grid;grid-template-columns:40px 1fr auto auto;gap:10px;align-items:center;border:1.5px solid var(--linea);border-radius:16px;padding:10px 12px;opacity:.75}
.premios li.si{opacity:1;border-color:var(--menta);background:#f3fdf9}
.premios .ic{font-size:1.5rem;text-align:center}
.premios .tx small{display:block;color:var(--gris);font-size:.78rem}
.premios .pp{font-weight:700;font-size:.85rem;white-space:nowrap}
.premios form{margin:0}
@media (max-width:560px){.premios li{grid-template-columns:34px 1fr auto}.premios form{grid-column:1/-1}.premios form .btn{width:100%;justify-content:center}}

/* Forma de pago: en línea o en recepción (14-oct-2026) */
.formas{margin-top:16px;display:grid;gap:8px}
.forma{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;border:1.5px solid var(--linea);border-radius:16px;padding:12px 14px;cursor:pointer}
.forma:has(input:checked){border-color:var(--agua);background:#f1fcf8}
.forma input{margin-top:4px;accent-color:var(--agua)}
.forma small{display:block;color:var(--gris);font-size:.8rem;margin-top:2px}

/* ── Ami: la MISMA esfera de todos los productos Amiga (14-oct-2026; copiada de hotel-marea.css), en verde menta.
      Y la franja «en vivo» de arriba (partials/vida) empuja el menú flotante. */
.con-cinta .menu{top:52px}
.menu-der{display:flex;align-items:center;gap:6px}
.menu .vida-pill{margin-right:6px}
.ami{--g1:rgba(255,255,255,.55);--g2:rgba(120,240,200,.85);--g3:rgba(0,168,150,.95);--tx:#062638;--mu:#5b6f7a;--c:#00A896;position:fixed;z-index:60;right:28px;bottom:24px;width:72px;height:68px;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}
.ami:hover,.ami:focus-visible{transform:translateY(-3px) scale(1.04);outline:0}
.ami:focus-visible .ami__cuerpo{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--c)}
.ami__cuerpo{position:absolute;inset:0;background:linear-gradient(150deg,var(--g1) 0%,var(--g2) 38%,var(--g3) 100%);border:1px solid rgba(255,255,255,.6);border-radius:47% 53% 51% 49%/57% 55% 45% 43%;box-shadow:0 14px 30px -12px rgba(0,120,105,.6),inset 0 -10px 16px rgba(0,120,105,.25),inset 0 8px 12px rgba(255,255,255,.4);animation:amijalea 9s ease-in-out infinite}
@keyframes amijalea{0%,100%{border-radius:47% 53% 51% 49%/57% 55% 45% 43%}33%{border-radius:53% 47% 49% 51%/47% 53% 55% 45%;transform:scaleY(1.02)}66%{border-radius:50% 50% 54% 46%/54% 46% 46% 54%;transform:scaleX(1.02)}}
.ami__brillo{position:absolute;left:14px;top:8px;width:24px;height:12px;border-radius:50%;background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,0));transform:rotate(-16deg);filter:blur(1px)}
.ami__ojo{position:absolute;top:28px;width:9px;height:11px;border-radius:50%;background:#16263a;animation:amiparpadea 5s infinite;transition:translate .15s ease-out}
.ami__ojo.i{left:22px}.ami__ojo.d{right:22px;animation-delay:.07s}
.ami__ojo:after{content:"";position:absolute;right:1.5px;top:1.5px;width:3px;height:3px;border-radius:50%;background:#fff}
@keyframes amiparpadea{0%,93%,100%{transform:scaleY(1)}95.5%{transform:scaleY(.1)}}
.ami.abierta .ami__ojo{height:6px;top:31px;border-radius:50% 50% 0 0;animation:none}
.ami__sombra{position:absolute;left:50%;bottom:-8px;width:48px;height:8px;margin-left:-24px;border-radius:50%;background:rgba(14,34,51,.18);filter:blur(3px)}
.ami__burbuja{position:absolute;bottom:calc(100% + 12px);right:-4px;white-space:nowrap;background:#fff;color:var(--tx);font:600 13px Lexend,system-ui,sans-serif;padding:9px 14px;border-radius:15px 15px 4px 15px;box-shadow:0 12px 26px -12px rgba(14,34,51,.45);opacity:0;transform:translateY(8px) scale(.9);transform-origin:bottom right;transition:opacity .35s,transform .45s cubic-bezier(.34,1.56,.64,1);pointer-events:none}
.ami__burbuja.ver{opacity:1;transform:none}
.ami-panel{--tx:#062638;--mu:#5b6f7a;--c:#00A896;position:fixed;z-index:61;right:24px;bottom:106px;width:330px;max-width:calc(100vw - 24px);border-radius:24px;padding:10px;color:var(--tx);background:rgba(255,255,255,.96);backdrop-filter:blur(14px);box-shadow:0 30px 60px -20px rgba(6,38,56,.35)}
.ami-panel[hidden]{display:none}
.ami-panel__cab{position:relative;padding:10px 40px 12px 12px}
.ami-panel__cab b{display:block;font-size:19px;font-weight:700}
.ami-panel__cab small{display:block;color:var(--mu);font-size:13px;line-height:1.45;margin-top:2px}
.ami-panel__cab button{position:absolute;right:6px;top:6px;width:32px;height:32px;border-radius:999px;border:0;background:#eef6f3;color:var(--c);cursor:pointer;font-size:13px}
.ami-panel a{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:16px;text-decoration:none;color:var(--tx)}
.ami-panel a:hover,.ami-panel a:focus-visible{background:#ecfaf5;outline:0}
.ami-panel a i{font-style:normal;font-size:20px;width:38px;height:38px;flex:none;display:grid;place-items:center;border-radius:12px;background:linear-gradient(180deg,#fff,#e6f7f1);box-shadow:inset 0 1px 0 #fff,0 6px 14px -8px rgba(0,120,105,.4)}
.ami-panel a b{display:block;font-size:15px}
.ami-panel a small{display:block;color:var(--mu);font-size:12.5px}
.ami-panel a.wa{background:#e9f8ef;margin-top:4px}
.ami-panel a.wa:hover{background:#d9f2e3}
@media (max-width:760px){
 .ami{right:14px;bottom:18px;width:60px;height:57px}
 .ami__ojo{top:23px;width:8px;height:10px}.ami__ojo.i{left:18px}.ami__ojo.d{right:18px}
 .ami__brillo{left:11px;top:7px;width:20px;height:10px}
 .ami-panel{right:12px;bottom:88px}
 .menu .vida-pill{display:none}
}
@media (prefers-reduced-motion:reduce){.ami__cuerpo,.ami__ojo{animation:none}}
