/* ============================================================
   HABLAME.IA — Design System v3
   Paleta naranja · Todo el "lujo" es CSS puro (0 KB)
   Prohibido filter:blur / backdrop-filter en runtime
   Animar solo transform / opacity
   ============================================================ */

/* ---------- @property para anillo del botón estrella ---------- */
@property --angle { syntax: "<angle>"; initial-value: 0deg; inherits: false; }

/* ---------- Variables ---------- */
:root{
  --brand-orange:#F97316;
  --brand-orange-dark:#EA580C;
  --action-green:#25D366;
  --action-green-dark:#1FAE57;
  --fuchsia:#E1306C;
  --sale-red:#EF4444;
  --gold:#F5B400;
  --ink:#1A1A2E;
  --ink-soft:#3A3A4A;
  --muted:#5A5A6A;
  --bg-cream:#FAF7F2;
  --bg-cream-2:#F3EEE6;
  --white:#FFFFFF;
  --line:rgba(26,26,46,.10);
  --shadow-warm:0 18px 50px -18px rgba(249,115,22,.35);
  --radius:20px;
}

/* ---------- Reset & base ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{font-family:'Inter',sans-serif;color:var(--ink);background:var(--bg-cream);line-height:1.6;overflow-x:hidden;}
img,video{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
button,input,select,textarea{font:inherit;border:none;outline:none;background:none;}

/* ---------- Tipografía ---------- */
h1,h2,h3,h4{font-family:'Plus Jakarta Sans',sans-serif;line-height:1.12;color:var(--ink);letter-spacing:-.02em;}
h1{font-size:clamp(30px,5.4vw,58px);font-weight:800;}
h2{font-size:clamp(28px,4.6vw,48px);font-weight:800;}
h3{font-size:clamp(19px,2.6vw,24px);font-weight:700;letter-spacing:-.01em;}

/* ---------- Utilities ---------- */
.container{width:92%;max-width:1180px;margin:0 auto;}
.section{padding:88px 0;}
.section-compact{padding:56px 0;}
.text-accent{color:var(--brand-orange);}
.center{text-align:center;}

/* Sistema de título coherente: highlight animado */
.hl{position:relative;color:var(--brand-orange);white-space:nowrap;}
.hl::after{content:"";position:absolute;left:-2px;right:-2px;bottom:.02em;height:.20em;border-radius:6px;
  background:linear-gradient(90deg,var(--brand-orange),var(--gold));
  transform:scaleX(0);transform-origin:left;transition:transform .7s .15s cubic-bezier(.4,0,.2,1);z-index:-1;opacity:.55;}
.reveal.visible .hl::after,.visible .hl::after{transform:scaleX(1);}

.section-head{text-align:center;max-width:760px;margin:0 auto 52px;}
.section-head h2{margin:14px 0 0;}
.section-head p{margin-top:14px;font-size:clamp(16px,2vw,19px);color:var(--muted);}

/* ---------- Reveal ---------- */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease;}
.reveal.visible{opacity:1;transform:none;}

/* ---------- Kicker ---------- */
.kicker{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.09em;padding:7px 15px;border-radius:999px;background:rgba(249,115,22,.1);color:var(--brand-orange-dark);}
.kicker--light{background:rgba(255,255,255,.1);color:rgba(255,255,255,.75);}
.kicker-dot{width:6px;height:6px;border-radius:50%;background:var(--brand-orange);animation:pulse-dot 2s infinite;}
@keyframes pulse-dot{0%,100%{opacity:1;}50%{opacity:.35;}}

/* ============================================================
   BOTONES
   ============================================================ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:14px;padding:13px 26px;border-radius:12px;cursor:pointer;transition:transform .18s,box-shadow .18s;text-align:center;}
.btn:active{transform:scale(.97);}

/* Botón secundario — outline naranja */
.btn-outline{border:2px solid var(--brand-orange);color:var(--brand-orange-dark);background:transparent;}
.btn-outline:hover{background:var(--brand-orange);color:#fff;transform:translateY(-2px);}

/* WhatsApp puro (header, float) */
.btn-wa{background:var(--action-green);color:#fff;box-shadow:0 4px 14px rgba(37,211,102,.3);}
.btn-wa:hover{box-shadow:0 6px 22px rgba(37,211,102,.45);transform:translateY(-2px);}

/* ★ Botón "HABLA CON UN EXPERTO" — verde + fucsia, coherente en todo el sitio */
.btn-expert{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:14px;letter-spacing:.01em;
  padding:14px 28px;border-radius:13px;cursor:pointer;overflow:hidden;color:#fff;
  background:linear-gradient(135deg,var(--action-green),var(--action-green-dark));
  border:2px solid var(--fuchsia);
  box-shadow:0 8px 24px -8px rgba(225,48,108,.55),0 0 0 4px rgba(225,48,108,.12);
  transition:transform .18s,box-shadow .18s;}
.btn-expert::before{content:"";position:absolute;top:0;left:-70%;width:45%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);
  transform:skewX(-20deg);animation:shine-sweep 3.2s ease-in-out infinite;}
.btn-expert:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 12px 30px -8px rgba(225,48,108,.7),0 0 0 4px rgba(225,48,108,.18);}
.btn-expert:active{transform:scale(.98);}
.btn-expert--full{width:100%;}

/* ★★ Botón ESTRELLA — AUDITORÍA GRATIS (signature) */
.btn-star{position:relative;display:inline-flex;align-items:center;justify-content:center;
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;letter-spacing:.02em;
  padding:18px 40px;border-radius:16px;cursor:pointer;border:none;isolation:isolate;
  background:linear-gradient(135deg,var(--brand-orange),var(--sale-red));
  color:var(--bg-cream);font-size:16px;
  box-shadow:0 14px 36px -10px rgba(249,115,22,.65);
  transition:transform .18s;}
.btn-star--sm{padding:14px 28px;font-size:14px;border-radius:14px;}
.btn-star:hover{transform:translateY(-2px);}
.btn-star:active{transform:scale(.97);}
/* anillo giratorio conic */
.btn-star::before{content:"";position:absolute;inset:-3px;border-radius:19px;z-index:-1;padding:3px;
  background:conic-gradient(from var(--angle),var(--brand-orange),var(--gold),var(--sale-red),var(--brand-orange));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  animation:spin-angle 3.5s linear infinite;}
.btn-star--sm::before{border-radius:17px;}
/* latido de resplandor (opacity, sin blur) */
.btn-star::after{content:"";position:absolute;inset:-12px;border-radius:26px;z-index:-2;
  background:radial-gradient(closest-side,rgba(249,115,22,.55),transparent);
  animation:glow-pulse 2.4s ease-in-out infinite;}
/* destello que recorre */
.btn-star-shine{position:absolute;inset:0;border-radius:16px;overflow:hidden;z-index:0;}
.btn-star-shine::before{content:"";position:absolute;top:0;left:-60%;width:38%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.6),transparent);
  transform:skewX(-20deg);animation:shine-sweep 2.8s ease-in-out infinite;}
.btn-star-text{position:relative;z-index:1;}

@keyframes spin-angle{to{--angle:360deg;}}
@keyframes glow-pulse{0%,100%{opacity:.35;}50%{opacity:.85;}}
@keyframes shine-sweep{0%{left:-60%;}55%,100%{left:120%;}}

/* ============================================================
   HEADER
   ============================================================ */
.header{position:fixed;top:0;left:0;width:100%;z-index:100;background:rgba(250,247,242,.9);border-bottom:1px solid transparent;transition:box-shadow .3s,border-color .3s;}
.header.scrolled{box-shadow:0 2px 22px rgba(26,26,46,.08);border-color:var(--line);}
.header-inner{display:flex;align-items:center;justify-content:space-between;max-width:1180px;margin:0 auto;padding:14px 4%;gap:12px;}
.header-logo{display:flex;align-items:center;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:20px;color:var(--ink);}
.header-logo-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--brand-orange),var(--sale-red));font-size:15px;margin-right:8px;}
.header-logo-dot{width:6px;height:6px;border-radius:50%;background:var(--brand-orange);display:inline-block;margin:0 1px;vertical-align:middle;}
.header-logo-ia{color:var(--brand-orange);}
.header-nav{display:flex;gap:28px;align-items:center;}
.header-nav a{font-size:14px;font-weight:600;color:var(--ink-soft);transition:color .2s;}
.header-nav a:hover{color:var(--brand-orange);}
.header-cta{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;padding:10px 18px;border-radius:10px;background:var(--action-green);color:#fff;transition:transform .15s,box-shadow .15s;}
.header-cta:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(37,211,102,.35);}

.mobile-menu-btn{display:none;flex-direction:column;gap:5px;padding:6px;cursor:pointer;}
.mobile-menu-btn span{display:block;width:22px;height:2px;background:var(--ink);border-radius:2px;}
.mobile-nav{position:fixed;inset:0;z-index:200;background:rgba(26,26,46,.98);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;opacity:0;pointer-events:none;transition:opacity .3s;}
.mobile-nav.open{opacity:1;pointer-events:all;}
.mobile-nav-close{position:absolute;top:20px;right:24px;font-size:36px;color:var(--bg-cream);cursor:pointer;}
.mobile-nav-link{font-family:'Plus Jakarta Sans',sans-serif;font-size:22px;font-weight:700;color:var(--bg-cream);transition:color .2s;}
.mobile-nav-link:hover{color:var(--brand-orange);}

/* ============================================================
   HERO
   ============================================================ */
.hero{position:relative;padding:132px 0 64px;overflow:hidden;background:var(--bg-cream);text-align:center;}
.hero-watermark{position:absolute;top:14%;left:50%;transform:translateX(-50%);font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(70px,13vw,170px);font-weight:800;color:rgba(249,115,22,.05);letter-spacing:-.03em;white-space:nowrap;pointer-events:none;user-select:none;z-index:0;}
/* difuminados horneados (radial-gradient, sin filter) */
.hero-glow{position:absolute;border-radius:50%;pointer-events:none;z-index:0;}
.hero-glow--1{top:-120px;right:-80px;width:460px;height:460px;background:radial-gradient(circle,rgba(249,115,22,.22),transparent 68%);}
.hero-glow--2{bottom:-120px;left:-80px;width:420px;height:420px;background:radial-gradient(circle,rgba(245,180,0,.18),transparent 68%);}
.hero .container{position:relative;z-index:2;}

.hero-title{margin:20px auto 26px;max-width:960px;}
.hero-media{position:relative;max-width:760px;margin:0 auto 28px;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-warm);aspect-ratio:16/9;background:var(--bg-cream-2);}
.hero-media img{width:100%;height:100%;object-fit:cover;}
.hero-media-badge{position:absolute;top:14px;left:14px;display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#fff;background:rgba(26,26,46,.6);padding:6px 13px;border-radius:999px;}
.hero-media-badge .kicker-dot{background:var(--action-green);}

.hero-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-bottom:28px;}
.hero-lead{font-size:clamp(16px,2.1vw,19px);line-height:1.65;color:var(--ink-soft);max-width:760px;margin:0 auto;}

/* Firma con marca de agua */
.hero-signature{position:relative;margin-top:44px;padding:20px 0 4px;border-top:1px solid var(--line);font-size:12px;color:#9a9aa5;line-height:1.5;max-width:820px;margin-left:auto;margin-right:auto;letter-spacing:.01em;}
.hero-signature-name{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:14px;color:var(--ink);letter-spacing:0;}

/* ============================================================
   BANDA DE OFERTA
   ============================================================ */
.offer{position:relative;overflow:hidden;background:linear-gradient(120deg,var(--sale-red),var(--brand-orange));padding:24px 0;text-align:center;}
.offer-spark{position:absolute;top:0;height:100%;width:40%;background:linear-gradient(100deg,transparent,rgba(245,180,0,.45),transparent);transform:skewX(-18deg);pointer-events:none;}
.offer-spark--1{left:-40%;animation:offer-sweep 4.5s linear infinite;}
.offer-spark--2{left:-40%;animation:offer-sweep 4.5s linear infinite 2.2s;}
@keyframes offer-sweep{0%{left:-40%;}100%{left:120%;}}
.offer-inner{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;color:#fff;}
.offer-flame{font-size:26px;}
.offer-text{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:clamp(16px,2.6vw,24px);letter-spacing:.01em;text-shadow:0 1px 8px rgba(0,0,0,.15);}
.offer-deadline{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;background:rgba(0,0,0,.18);padding:7px 15px;border-radius:999px;color:#fff;}
.offer-deadline strong{color:var(--gold);}

/* ============================================================
   DOLORES (scroll-driven)
   ============================================================ */
.pains{background:var(--bg-cream);}
.pains-grid{display:flex;flex-direction:column;gap:20px;max-width:920px;margin:0 auto;}
.pain-card{position:relative;display:flex;gap:24px;align-items:flex-start;border-radius:var(--radius);padding:32px 34px;overflow:hidden;
  background:linear-gradient(135deg,#fff 0%,#FFF6EE 100%);
  box-shadow:0 18px 46px -20px rgba(249,115,22,.4),0 2px 10px rgba(26,26,46,.05);
  border:1px solid rgba(249,115,22,.08);
  opacity:0;transform:translateY(40px) scale(.98);transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.4,0,.2,1);}
.pain-card.in{opacity:1;transform:none;}
/* forma decorativa (círculo de color en la esquina) */
.pain-card::before{content:"";position:absolute;top:-60px;right:-50px;width:250px;height:250px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,color-mix(in srgb,var(--brand-orange) 22%,transparent),transparent 70%);}
/* barra de acento a la izquierda */
.pain-card::after{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(180deg,var(--brand-orange),var(--sale-red));}
.pain-num{position:relative;font-family:'Plus Jakarta Sans',sans-serif;font-size:64px;font-weight:800;line-height:1;flex-shrink:0;
  background:linear-gradient(135deg,var(--brand-orange),var(--sale-red));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
.pain-num::before{content:"";position:absolute;inset:-18px -14px;z-index:-1;border-radius:50%;
  background:radial-gradient(circle,color-mix(in srgb,var(--gold) 30%,transparent),transparent 68%);}
/* variedad de color coherente por tarjeta */
.pain-card:nth-child(2) .pain-num::before{background:radial-gradient(circle,color-mix(in srgb,var(--brand-orange) 26%,transparent),transparent 68%);}
.pain-card:nth-child(3) .pain-num::before{background:radial-gradient(circle,color-mix(in srgb,var(--fuchsia) 22%,transparent),transparent 68%);}
.pain-card:nth-child(4) .pain-num::before{background:radial-gradient(circle,color-mix(in srgb,var(--sale-red) 24%,transparent),transparent 68%);}
.pain-body{position:relative;}
.pain-body h3{font-size:clamp(19px,2.6vw,26px);margin-bottom:8px;color:var(--ink);}
.pain-body p{font-size:15.5px;color:var(--muted);line-height:1.6;}
.pain-tag{display:inline-block;margin-top:12px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--brand-orange-dark);background:rgba(249,115,22,.1);padding:5px 12px;border-radius:999px;}

/* ============================================================
   SERVICIOS — tarjetas claras + difuminado + marca de agua
   ============================================================ */
.services{background:var(--bg-cream-2);}
.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;}
.svc-card{position:relative;background:var(--white);border-radius:var(--radius);padding:34px 30px;overflow:hidden;display:flex;flex-direction:column;
  box-shadow:0 16px 44px -22px rgba(249,115,22,.4),0 2px 8px rgba(26,26,46,.04);
  transition:transform .25s,box-shadow .25s;}
.svc-card:hover{transform:translateY(-5px);box-shadow:0 26px 60px -22px rgba(249,115,22,.55);}
/* difuminado horneado en una esquina (varía por tarjeta) */
.svc-card::before{content:"";position:absolute;width:300px;height:300px;border-radius:50%;pointer-events:none;z-index:0;
  background:radial-gradient(circle,color-mix(in srgb,var(--brand-orange) 20%,transparent),transparent 70%);}
.svc-card:nth-child(1)::before{top:-120px;right:-100px;}
.svc-card:nth-child(2)::before{top:-120px;left:-100px;background:radial-gradient(circle,color-mix(in srgb,var(--gold) 22%,transparent),transparent 70%);}
.svc-card:nth-child(3)::before{bottom:-120px;right:-100px;background:radial-gradient(circle,color-mix(in srgb,var(--fuchsia) 16%,transparent),transparent 70%);}
.svc-card:nth-child(4)::before{bottom:-120px;left:-100px;}
/* marca de agua gigante */
.svc-watermark{position:absolute;bottom:-34px;right:-8px;font-family:'Plus Jakarta Sans',sans-serif;font-size:158px;font-weight:800;line-height:1;color:rgba(249,115,22,.12);pointer-events:none;z-index:0;user-select:none;}
.svc-card>*{position:relative;z-index:1;}
.svc-card--featured{grid-column:1/-1;background:linear-gradient(135deg,#fff 0%,#FFF6EE 100%);}
.svc-card-badge{position:absolute;top:22px;right:22px;z-index:2;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#fff;background:linear-gradient(135deg,var(--brand-orange),var(--sale-red));padding:6px 13px;border-radius:999px;box-shadow:0 6px 16px -4px rgba(249,115,22,.6);}
.svc-card-num{display:inline-block;font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;font-weight:800;color:#fff;letter-spacing:.1em;margin-bottom:14px;padding:6px 13px;border-radius:999px;
  background:linear-gradient(135deg,var(--brand-orange),var(--sale-red));box-shadow:0 6px 16px -6px rgba(249,115,22,.7);}
.svc-card:nth-child(2) .svc-card-num{background:linear-gradient(135deg,var(--brand-orange),var(--gold));}
.svc-card:nth-child(3) .svc-card-num{background:linear-gradient(135deg,var(--fuchsia),var(--brand-orange));}
.svc-card:nth-child(4) .svc-card-num{background:linear-gradient(135deg,var(--sale-red),var(--brand-orange));}
.svc-card h3{color:var(--ink);margin-bottom:10px;}
.svc-card>p{font-size:15px;line-height:1.6;color:var(--muted);margin-bottom:18px;}
.svc-checks{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13.5px;color:var(--ink-soft);margin-bottom:24px;}
.svc-checks span{display:flex;align-items:center;gap:5px;font-weight:500;}
.svc-checks span::before{content:"✓";color:var(--action-green);font-weight:800;}
.svc-card-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:auto;}

/* ============================================================
   SALUD — la joya
   ============================================================ */
.salud{position:relative;overflow:hidden;background:var(--bg-cream);padding:96px 0;}
.salud-media{position:absolute;inset:0;z-index:0;}
.salud-media img{width:100%;height:100%;object-fit:cover;object-position:right center;}
.salud-fade{position:absolute;inset:0;
  background:
    linear-gradient(90deg,var(--bg-cream) 0%,var(--bg-cream) 40%,rgba(250,247,242,.9) 54%,rgba(250,247,242,.25) 78%,transparent 100%),
    radial-gradient(circle at 22% 48%,color-mix(in srgb,var(--brand-orange) 28%,transparent),transparent 52%),
    radial-gradient(circle at 8% 90%,color-mix(in srgb,var(--gold) 24%,transparent),transparent 45%);}
.salud .container{position:relative;z-index:2;max-width:1180px;}
.salud-content{max-width:560px;}
.salud-content h2{margin:14px 0 10px;}
.salud-lead{font-size:17px;color:var(--ink-soft);margin-bottom:20px;line-height:1.6;}
.salud-checks{display:flex;flex-direction:column;gap:11px;margin-bottom:26px;}
.salud-checks span{display:flex;align-items:flex-start;gap:9px;font-size:15px;color:var(--ink-soft);font-weight:500;}
.salud-checks span::before{content:"✓";color:var(--action-green);font-weight:800;flex-shrink:0;margin-top:1px;}

/* ============================================================
   MÍRALO EN ACCIÓN — ÚNICA SECCIÓN NEGRA
   ============================================================ */
.demo{background:var(--ink);color:var(--bg-cream);padding:72px 0;}
.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.demo h2{color:var(--bg-cream);margin:14px 0;}
.demo h2 .hl{color:var(--brand-orange);}
.demo-lead{color:rgba(250,247,242,.7);font-size:16px;line-height:1.6;max-width:460px;}
.demo-phone-wrap{display:flex;justify-content:center;}

/* Marco de celular */
.phone{width:270px;border-radius:36px;background:#0B0B14;padding:8px;box-shadow:0 24px 60px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.06);position:relative;}
.phone-notch{width:100px;height:20px;background:#0B0B14;border-radius:0 0 16px 16px;margin:0 auto;position:relative;z-index:3;}
.phone-screen{background:#0B141A;border-radius:28px;overflow:hidden;position:relative;}
.phone-statusbar{display:flex;justify-content:space-between;align-items:center;padding:6px 18px 4px;font-size:11px;font-weight:600;color:#fff;position:relative;z-index:2;}
.phone-app-header{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#128C7E;position:relative;z-index:2;}
.phone-app-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--brand-orange),var(--sale-red));display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;color:#fff;position:relative;flex-shrink:0;}
.phone-app-avatar-online{position:absolute;bottom:1px;right:1px;width:8px;height:8px;border-radius:50%;background:var(--action-green);border:2px solid #128C7E;}
.phone-chat-body{padding:14px;min-height:300px;position:relative;background:#0B141A;}
.phone-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.phone-chat-date{position:relative;z-index:1;text-align:center;font-size:10px;color:rgba(255,255,255,.4);background:rgba(255,255,255,.08);padding:3px 10px;border-radius:6px;margin:0 auto 14px;width:fit-content;}
.phone-input-bar{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#1A2332;position:relative;z-index:2;}
.phone-input-field{flex:1;background:#2A3442;border-radius:20px;padding:8px 14px;font-size:12px;color:rgba(255,255,255,.4);}
.phone-send-btn{width:32px;height:32px;border-radius:50%;background:var(--action-green);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;}

/* Burbujas del chat demo */
.chat-bubble{position:relative;z-index:1;max-width:86%;padding:8px 12px;border-radius:12px;font-size:13px;line-height:1.45;margin-bottom:8px;opacity:0;transform:translateY(8px);transition:opacity .4s,transform .4s;}
.chat-bubble.show{opacity:1;transform:none;}
.chat-bubble--client{background:#005C4B;color:#fff;margin-left:auto;border-bottom-right-radius:4px;}
.chat-bubble--luna{background:#1E2D3D;color:#E8E8E8;margin-right:auto;border-bottom-left-radius:4px;}

/* ============================================================
   AUDITORÍA
   ============================================================ */
.auditoria{background:var(--bg-cream-2);}
.audit-form{max-width:540px;margin:32px auto 0;text-align:left;}
.audit-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.audit-field{margin-bottom:14px;}
.audit-field label{display:block;font-size:13px;font-weight:600;color:var(--ink);margin-bottom:5px;}
.audit-field input,.audit-field select,.audit-field textarea{width:100%;padding:12px 14px;border-radius:11px;border:1.5px solid var(--line);background:#fff;font-size:14px;color:var(--ink);transition:border-color .2s,box-shadow .2s;}
.audit-field input:focus,.audit-field select:focus,.audit-field textarea:focus{border-color:var(--brand-orange);box-shadow:0 0 0 3px rgba(249,115,22,.12);}
.audit-field textarea{resize:vertical;min-height:64px;}
.audit-field select{cursor:pointer;appearance:auto;}
.audit-btn-wrapper{display:flex;justify-content:center;margin-top:22px;}
.audit-msg{text-align:center;margin-top:16px;font-size:14px;font-weight:600;min-height:22px;}
.audit-msg.success{color:var(--action-green-dark);}
.audit-msg.error{color:var(--sale-red);}

/* ============================================================
   CASOS DE ÉXITO — pantallazos WhatsApp / Instagram (CSS)
   ============================================================ */
.testimonios{background:var(--bg-cream);overflow:hidden;}
.carousel-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:6px 4px 24px;scrollbar-width:none;align-items:stretch;}
.carousel-track::-webkit-scrollbar{display:none;}

.chat{flex:0 0 330px;scroll-snap-align:start;display:flex;flex-direction:column;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 18px 44px -20px rgba(26,26,46,.35);}
.chat-head{display:flex;align-items:center;gap:11px;padding:11px 14px;}
.chat-av{width:42px;height:42px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;color:#fff;overflow:hidden;background:linear-gradient(135deg,var(--brand-orange),var(--sale-red));}
.chat-av img{width:100%;height:100%;object-fit:cover;border-radius:50%;}
.chat-meta{flex:1;min-width:0;}
.chat-meta strong{display:block;font-size:14px;font-weight:700;font-family:'Plus Jakarta Sans',sans-serif;line-height:1.2;}
.chat-meta span{font-size:11.5px;}
.chat-head-icons{display:flex;gap:12px;opacity:.9;flex-shrink:0;}
.chat-body{flex:1;padding:14px;display:flex;flex-direction:column;gap:9px;}
.chat-day{align-self:center;font-size:10px;font-weight:600;padding:3px 11px;border-radius:7px;margin-bottom:2px;}
.chat-tag{padding:9px 14px;font-size:11.5px;font-weight:600;text-align:center;border-top:1px solid var(--line);color:var(--muted);}

/* --- WhatsApp --- */
.chat-wa .chat-head{background:#128C7E;color:#fff;}
.chat-wa .chat-meta span{color:rgba(255,255,255,.85);}
.chat-wa .chat-body{background:#E5DDD5;
  background-image:radial-gradient(rgba(0,0,0,.03) 1px,transparent 1px);background-size:16px 16px;}
.chat-wa .chat-day{background:#fff;color:#5a6b73;box-shadow:0 1px 1px rgba(0,0,0,.05);}
.wa-in,.wa-out{max-width:88%;padding:8px 11px 18px;border-radius:10px;font-size:13px;line-height:1.5;color:#111b21;position:relative;box-shadow:0 1px 1px rgba(0,0,0,.08);}
.wa-in{background:#fff;align-self:flex-start;border-top-left-radius:2px;}
.wa-out{background:#DCF8C6;align-self:flex-end;border-top-right-radius:2px;}
.wa-time{position:absolute;bottom:5px;right:10px;font-size:9.5px;color:#667781;display:inline-flex;align-items:center;gap:3px;}
.wa-check{color:#53BDEB;font-size:11px;letter-spacing:-3px;}

/* --- Instagram --- */
.chat-ig .chat-head{background:#fff;color:var(--ink);border-bottom:1px solid #efefef;}
.chat-ig .chat-meta span{color:var(--muted);}
.chat-ig .chat-av{background:linear-gradient(45deg,#F58529,#DD2A7B,#8134AF);padding:2px;}
.chat-ig .chat-av img{border:2px solid #fff;}
.chat-ig .chat-av-initials{width:100%;height:100%;border-radius:50%;border:2px solid #fff;display:flex;align-items:center;justify-content:center;background:#333;}
.chat-ig .chat-body{background:#fff;}
.ig-msg{max-width:88%;align-self:flex-start;background:#efefef;color:#111;padding:11px 14px;border-radius:18px;border-bottom-left-radius:5px;font-size:13px;line-height:1.5;}
.ig-react{align-self:flex-start;margin-top:-2px;margin-left:8px;font-size:15px;letter-spacing:2px;}
.chat-ig .chat-tag{color:#DD2A7B;}

/* ============================================================
   FORMACIÓN
   ============================================================ */
.courses{background:var(--bg-cream-2);}
.courses-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.course-card{position:relative;background:#fff;border-radius:var(--radius);padding:32px 26px;display:flex;flex-direction:column;overflow:hidden;
  box-shadow:0 16px 44px -22px rgba(26,26,46,.3);transition:transform .25s,box-shadow .25s;}
.course-card:hover{transform:translateY(-5px);box-shadow:0 26px 56px -22px rgba(26,26,46,.4);}
.course-card::before{content:"";position:absolute;top:-90px;right:-70px;width:220px;height:220px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,color-mix(in srgb,var(--brand-orange) 14%,transparent),transparent 70%);}
.course-card--free{border:2px solid var(--action-green);}
.course-card--countdown{border:2px solid var(--sale-red);}
.course-card>*{position:relative;z-index:1;}
.course-badge{align-self:flex-start;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#fff;background:var(--ink);padding:5px 14px;border-radius:999px;margin-bottom:14px;}
.course-badge--free{background:linear-gradient(135deg,var(--action-green),var(--action-green-dark));}
.course-badge--promo{background:linear-gradient(135deg,var(--sale-red),var(--brand-orange));}
.course-card h3{margin-bottom:9px;}
.course-card>p{font-size:14.5px;color:var(--muted);line-height:1.6;margin-bottom:18px;flex:1;}
/* precios ANTES / AHORA */
.course-price{margin-bottom:16px;}
.course-price-old{display:inline-block;font-size:15px;font-weight:600;color:#9a9aa5;text-decoration:line-through;margin-right:4px;}
.course-price-old .price-antes{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#9a9aa5;margin-right:4px;text-decoration:none;display:inline-block;}
.course-price-now{display:block;margin-top:4px;}
.price-ahora{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--sale-red);margin-right:6px;}
.course-price-amount{font-family:'Plus Jakarta Sans',sans-serif;font-size:32px;font-weight:800;color:var(--sale-red);}
.course-price-amount .cur{font-size:14px;font-weight:600;color:var(--muted);}
.course-price-free{font-family:'Plus Jakarta Sans',sans-serif;font-size:28px;font-weight:800;color:var(--action-green-dark);margin-bottom:16px;}
.course-countdown{font-size:13px;color:var(--sale-red);font-weight:600;margin-bottom:16px;}
.course-countdown strong{color:var(--sale-red);}
.course-card .btn{margin-top:auto;}

/* ============================================================
   FOOTER
   ============================================================ */
.footer{background:var(--ink);color:rgba(250,247,242,.7);padding:60px 0 0;}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;}
.footer-heading{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:13px;color:var(--bg-cream);margin-bottom:14px;text-transform:uppercase;letter-spacing:.05em;}
.footer-links{display:flex;flex-direction:column;gap:10px;}
.footer-link{font-size:14px;transition:color .2s;}
.footer-link:hover{color:var(--brand-orange);}
.footer-socials{display:flex;gap:10px;margin-top:18px;}
.footer-social{width:38px;height:38px;border-radius:10px;background:rgba(250,247,242,.08);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--bg-cream);transition:background .2s,color .2s;}
.footer-social:hover{background:rgba(249,115,22,.2);color:var(--brand-orange);}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding:24px 0;margin-top:44px;border-top:1px solid rgba(250,247,242,.08);font-size:13px;color:rgba(250,247,242,.4);flex-wrap:wrap;gap:8px;}

/* ============================================================
   WA FLOAT
   ============================================================ */
.wa-float{position:fixed;bottom:24px;right:24px;z-index:90;display:flex;align-items:center;gap:8px;transition:opacity .3s,transform .3s;}
.wa-float.hidden{opacity:0;transform:translateY(10px);pointer-events:none;}
.wa-float-label{background:#fff;padding:6px 14px;border-radius:10px;font-size:13px;font-weight:600;color:var(--ink);box-shadow:0 2px 10px rgba(0,0,0,.08);display:none;}
.wa-float-icon{width:56px;height:56px;border-radius:50%;background:var(--action-green);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 18px rgba(37,211,102,.4);transition:transform .2s;}
.wa-float:hover .wa-float-icon{transform:scale(1.08);}
.wa-float:hover .wa-float-label{display:block;}

/* ============================================================
   COURSE LANDING (páginas de curso)
   ============================================================ */
.course-landing-hero{padding:130px 0 60px;background:var(--bg-cream);text-align:center;position:relative;overflow:hidden;}
.course-landing-hero h1{margin-bottom:18px;}
.course-landing-hero p{font-size:18px;color:var(--ink-soft);max-width:680px;margin:0 auto 28px;line-height:1.6;}
.course-landing-content{padding:52px 0;background:#fff;}
.course-landing-content .container{max-width:800px;}
.course-landing-modules{list-style:none;padding:0;}
.course-landing-modules li{padding:14px 0;border-bottom:1px solid var(--line);font-size:15px;display:flex;align-items:flex-start;gap:10px;}
.course-landing-modules li::before{content:"✓";color:var(--action-green);font-weight:700;flex-shrink:0;}
.course-landing-cta{padding:60px 0;background:var(--bg-cream-2);text-align:center;}
.course-landing-price{font-family:'Plus Jakarta Sans',sans-serif;font-size:46px;font-weight:800;color:var(--sale-red);margin-bottom:8px;}
.course-landing-price-old{font-size:20px;text-decoration:line-through;color:#9a9aa5;margin-right:10px;}
.course-landing-price span{font-size:18px;font-weight:600;color:var(--muted);}
.course-countdown-hero{font-size:15px;color:var(--sale-red);font-weight:700;margin-bottom:20px;}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media(max-width:1024px){
  .services-grid{grid-template-columns:1fr 1fr;}
  .courses-grid{grid-template-columns:1fr;max-width:520px;margin:0 auto;}
  .footer-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:768px){
  .header-nav,.header-cta{display:none;}
  .mobile-menu-btn{display:flex;}
  .section{padding:64px 0;}
  .section-compact{padding:44px 0;}
  .hero{padding:104px 0 44px;}
  .services-grid{grid-template-columns:1fr;}
  .svc-card--featured{grid-column:auto;}
  .salud{padding:64px 0;}
  .salud-media img{object-position:center top;}
  .salud-fade{background:
    linear-gradient(180deg,rgba(250,247,242,.15) 0%,rgba(250,247,242,.75) 32%,var(--bg-cream) 52%),
    radial-gradient(circle at 50% 20%,color-mix(in srgb,var(--brand-orange) 24%,transparent),transparent 55%);}
  .salud-content{max-width:none;padding-top:180px;text-align:center;}
  .salud-checks span{text-align:left;}
  .demo-grid{grid-template-columns:1fr;text-align:center;}
  .demo-lead{margin:0 auto;}
  .demo-phone-wrap{margin-top:8px;}
  .audit-form-row{grid-template-columns:1fr;}
  .pain-card{padding:24px 22px;gap:16px;}
  .pain-num{font-size:44px;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .footer-bottom{flex-direction:column;text-align:center;}
}
@media(max-width:480px){
  .hero{padding:96px 0 36px;}
  .hero-buttons{flex-direction:column;align-items:stretch;}
  .hero-buttons .btn,.hero-buttons .btn-star{width:100%;}
  .chat{flex:0 0 82vw;max-width:320px;}
  .phone{width:240px;}
  .footer-grid{grid-template-columns:1fr;}
  .offer-inner{flex-direction:column;gap:8px;}
}
@media(max-width:360px){
  .btn,.btn-expert{padding:12px 18px;font-size:13px;}
  .btn-star{padding:15px 24px;font-size:14px;}
  .svc-card{padding:26px 20px;}
  .pain-num{font-size:38px;}
}

/* ---------- Hero video (bucle) ---------- */
.hero-video{max-width:300px;margin:0 auto 30px;border-radius:26px;overflow:hidden;aspect-ratio:9/16;background:#0B141A;
  box-shadow:0 22px 56px -20px rgba(249,115,22,.5),0 0 0 1px rgba(26,26,46,.06);}
.hero-video video{width:100%;height:100%;object-fit:cover;display:block;}

/* ---------- Banda de oferta: barra de cupos ---------- */
.offer-cupos{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:14px;color:#fff;}
.offer-cupos-count{font-size:13.5px;font-weight:600;}
.offer-cupos-count strong{color:var(--gold);font-weight:800;}
.offer-bar{width:180px;max-width:60vw;height:8px;border-radius:99px;background:rgba(255,255,255,.3);overflow:hidden;}
.offer-bar-fill{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--gold),#fff);}

/* ---------- Luna demo: typing + input ---------- */
#chatBody{max-height:300px;overflow-y:auto;scrollbar-width:none;}
#chatBody::-webkit-scrollbar{display:none;}
.chat-typing{position:relative;z-index:1;display:inline-flex;gap:4px;align-self:flex-start;margin-right:auto;margin-bottom:8px;width:fit-content;padding:10px 14px;background:#1E2D3D;border-radius:12px;border-bottom-left-radius:4px;}
.chat-typing span{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.4);animation:typingDot 1.4s infinite;}
.chat-typing span:nth-child(2){animation-delay:.2s;}
.chat-typing span:nth-child(3){animation-delay:.4s;}
@keyframes typingDot{0%,60%,100%{opacity:.3;transform:translateY(0);}30%{opacity:1;transform:translateY(-3px);}}
.phone-input-bar input.phone-input-field{color:#fff;border:none;}
.phone-input-bar input.phone-input-field::placeholder{color:rgba(255,255,255,.4);}
button.phone-send-btn{cursor:pointer;border:none;}

/* ---------- Reduced motion ---------- */
@media(prefers-reduced-motion:reduce){
  *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;}
  .reveal{opacity:1;transform:none;}
  .pain-card{opacity:1;transform:none;}
  .btn-star::before{animation:none;}
  .btn-star::after{opacity:.5;}
  .hl::after{transform:scaleX(1);}
}
