/* Código Cerebro — landing. Sistema visual del deck: fondo morado #240c33, Michroma + Poppins, color por característica. */
:root{
  --bg:#240c33; --bg-2:#2e1442; --bg-3:#1a0826;
  --text:#ece6f1; --muted:#b9aec4;
  --gold:#ffc000; --gold-2:#fcc851; --rose:#fd295a; --teal:#55bfc9; --lime:#cae74d;
  --lavender:#e2a9f1; --coral:#ed635e; --orange:#f2a161;
  --teal-brand:#277c95; --linea:#c77de0;
  --f-tit:"Michroma",system-ui,sans-serif;
  --f-txt:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-num:"Montserrat",system-ui,sans-serif;
  --r:16px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--f-txt);font-weight:400;color:var(--text);background:var(--bg);line-height:1.65;font-size:17px;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,p,ul,ol,figure{margin:0}
a{color:inherit}
strong{font-weight:600;color:#fff}
.wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 20px}

/* Colores utilitarios */
.c-dorado{color:var(--gold)!important}.c-lima{color:var(--lime)!important}.c-lavanda{color:var(--lavender)!important}
.c-teal{color:var(--teal)!important}.c-coral{color:var(--coral)!important}.c-naranja{color:var(--orange)!important}.c-rosa,.rosa{color:var(--rose)!important}

/* Botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--gold);color:var(--bg);text-decoration:none;font-weight:600;font-size:16px;padding:15px 28px;border-radius:999px;border:1px solid var(--gold);transition:background .15s,transform .15s;text-align:center}
.btn:hover{background:var(--gold-2);transform:translateY(-1px)}
.btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}
.btn-ghost:hover{background:rgba(255,255,255,.08);border-color:#fff}
.btn-sm{padding:10px 20px;font-size:14px}
.btn-full{width:100%}

/* Títulos y elementos gráficos del deck */
.h2{font-family:var(--f-tit);font-weight:400;text-transform:uppercase;letter-spacing:.12em;font-size:clamp(20px,2.6vw,36px);line-height:1.3;color:#fff}
.h2-c{text-align:center;max-width:980px;margin-left:auto;margin-right:auto}
.h2-dos .h2-sub{display:block;font-size:.62em}
.tag{font-weight:600;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);margin-bottom:12px}
.tag-c,.desc-c{text-align:center}
.tag-barra{border-left:8px solid currentColor;padding:4px 0 4px 14px;color:#fff;margin:26px 0 18px}
.tag-barra.c-rojo{border-color:#b5405e}
.tag-barra.c-naranja{border-color:#f7931e;color:#fff!important}
.txt{color:var(--muted);font-size:17px}
.linea{position:relative;height:2px;background:var(--linea);width:min(520px,100%);margin:22px 0 26px}
.linea::after{content:"";position:absolute;right:-4px;top:50%;width:10px;height:10px;border-radius:50%;background:var(--linea);transform:translateY(-50%)}
.linea-full{width:100%;margin:26px 0 40px}
.linea-rosa{background:var(--rose)}.linea-rosa::after{background:var(--rose)}
.linea-sale{margin-left:calc(50% - 50vw);width:calc(50vw - 50% + min(520px,100%))}
@supports not (width:calc(50vw)){.linea-sale{margin-left:0;width:min(520px,100%)}}

/* Nav */
.nav{position:sticky;top:0;z-index:50;background:var(--nav-bg,rgba(36,12,51,.92));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid rgba(226,169,241,.15)}
.nav-in{display:flex;align-items:center;gap:18px;height:72px}
.nav-logo{background:#fff;border-radius:12px;padding:6px 12px;display:block}
.nav-logo img{height:34px;width:auto}
.nav-sima{height:30px;width:auto;opacity:.95}
.nav-links{display:flex;gap:26px;margin-left:auto}
.nav-links a{text-decoration:none;font-size:14px;font-weight:500;color:var(--text)}
.nav-links a:hover{color:var(--gold)}
/* Pleca clara (color elegido en Ajustes) y logo sin caja */
.nav-claro{border-bottom-color:rgba(36,12,51,.12)}
.nav-claro .nav-links a{color:#240c33}
.nav-claro .nav-links a:hover{color:#8a5a00}
.nav-claro .sima-blanco{filter:brightness(0)}
.sin-caja .nav-logo{background:none;padding:0;border-radius:0}
.sin-caja .nav-logo img{height:44px}

/* Hero (lámina 1) */
.hero{position:relative;min-height:min(86vh,760px);display:flex;align-items:center;overflow:hidden}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-caja{--off:max(20px,calc((100vw - 1180px)/2 + 20px));position:relative;z-index:1;background:rgba(36,12,51,.8);border-radius:0 14px 14px 0;padding:52px 48px 52px var(--off);width:min(94%,calc(var(--off) + 700px));margin:60px 0}
.badge{display:inline-block;font-size:12px;font-weight:500;letter-spacing:.08em;color:var(--teal);border:1px solid rgba(85,191,201,.45);padding:5px 12px;border-radius:999px;margin-bottom:22px}
.hero h1{font-weight:300;font-size:clamp(34px,4.6vw,62px);line-height:1.1;color:#fff}
.h1-a{display:block}
.h1-marca{display:block;font-weight:400;font-size:.5em;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-top:18px}
.lead{font-size:clamp(16px,1.5vw,18px);color:var(--text);margin:22px 0 30px;max-width:560px}
.btns{display:flex;flex-wrap:wrap;gap:12px}
.hero-pie{position:absolute;z-index:1;left:20px;right:20px;bottom:14px;font-size:12px;font-style:italic;letter-spacing:.15em;color:rgba(255,255,255,.85);text-shadow:0 1px 3px rgba(0,0,0,.6)}

/* Secciones */
.sec{padding:96px 0}
.sec-alt{background:var(--bg-2)}
.fila{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.fila-inv > :first-child{order:2}
.circulo{border-radius:50%;aspect-ratio:1;width:clamp(240px,34vw,460px);object-fit:cover;justify-self:center;box-shadow:0 0 0 8px rgba(226,169,241,.08)}

/* Qué es (lámina 8) */
.mockup{width:100%;max-width:1100px;margin:0 auto}
.def{max-width:860px;margin:44px auto 0;text-align:center}
.def h3{font-family:var(--f-tit);font-weight:400;font-size:clamp(17px,1.8vw,22px);letter-spacing:.08em;color:var(--gold);margin-bottom:14px}
.def p{font-size:clamp(17px,1.7vw,20px);line-height:1.65;color:var(--text)}

/* Gancho WhatsApp (láminas 2 a 4) */
.chat{display:grid;gap:56px}
.chat-fila{display:grid;grid-template-columns:minmax(160px,300px) 1fr;gap:56px;align-items:center}
.chat-inv{grid-template-columns:1fr minmax(160px,300px)}
.chat-inv .burbujas{order:2}
.chat-p{font-weight:400;font-size:clamp(26px,3.2vw,44px);line-height:1.25;color:#fff;text-align:center}
.chat-p u{color:var(--gold);text-decoration:underline 3px;text-underline-offset:8px}
.wa-marca{display:flex;align-items:center;justify-content:center;gap:10px;font-weight:700;font-size:26px;color:#25D366;border:1px solid rgba(37,211,102,.35);border-radius:22px;padding:34px 20px}
.burbujas{width:100%;max-width:260px;justify-self:center}
.foto-chat{width:100%;max-width:300px;border-radius:12px;justify-self:center}
.remate{text-align:center;font-size:19px;color:var(--muted)}
.remate::before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--rose);margin-right:10px;vertical-align:middle}

/* Mitades a sangre (láminas 5 y 6) */
.mitad{display:grid;grid-template-columns:1fr 1fr;min-height:560px}
.mitad-txt{padding:88px max(20px,calc((100vw - 1180px)/2 + 20px)) 88px max(20px,calc((100vw - 1180px)/2 + 20px));padding-right:56px;display:flex;flex-direction:column;justify-content:center}
.mitad-inv .mitad-txt{order:2;padding-left:56px}
.mitad-foto{width:100%;height:100%;object-fit:cover}
.numerada{list-style:none;padding:0;display:grid;gap:18px}
.numerada li{display:flex;gap:18px;align-items:flex-start;font-size:16.5px;line-height:1.5;color:var(--text)}
.num{position:relative;flex:0 0 44px;font-family:var(--f-txt);font-weight:700;font-size:28px;line-height:1;color:#fff;z-index:0}
.num::before{content:"";position:absolute;left:10px;top:8px;width:30px;height:30px;z-index:-1}
.n-rojo .num::before{background:#f25c6e}
.n-naranja .num::before{background:#f7931e}

/* Datos INEGI (lámina 7) */
.datos{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:center}
.datos-t{font-family:var(--f-num);font-weight:800;text-transform:uppercase;font-size:clamp(28px,3.4vw,44px);line-height:1.2;color:#fff;text-align:center}
.datos-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"a b" "c e" "d e";gap:6px}
.dato{padding:28px 24px;display:flex;flex-direction:column;justify-content:center;color:var(--bg)}
.dato-0{grid-area:a;background:#f25c6e}.dato-1{grid-area:b;background:var(--lime)}
.dato-2{grid-area:c;background:#2cc0a0;padding-bottom:10px}.dato-3{grid-area:d;background:#2cc0a0;padding-top:10px}
.dato-4{grid-area:e;background:var(--teal-brand);color:#fff;text-align:center}
.dato-n{font-family:var(--f-num);font-weight:800;font-size:clamp(30px,3.6vw,48px);line-height:1.05}
.dato-l{font-weight:500;font-size:15px;text-transform:uppercase;letter-spacing:.04em;line-height:1.3;margin-top:6px}
.fuente{position:absolute;left:-26px;top:0;bottom:0;writing-mode:vertical-rl;transform:rotate(180deg);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:center}

/* Razón de ser (lámina 9) */
.razon{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.razon-t{font-family:var(--f-num);font-weight:800;text-transform:uppercase;font-size:clamp(28px,3.2vw,40px);letter-spacing:.02em;color:#fff}
.razon .linea{margin:14px 0 20px}
.razon-marca{font-family:var(--f-num);font-weight:300;text-transform:uppercase;font-size:clamp(24px,2.6vw,34px);letter-spacing:.04em;color:#fff;line-height:1.2}
.razon-sub{font-weight:300;font-style:italic;font-size:18px;color:var(--text);margin:4px 0 30px 4px}
.pasos{list-style:none;padding:0;display:grid;gap:18px}
.paso-t{font-weight:300;font-size:clamp(19px,1.9vw,23px);color:#fff;line-height:1.35}
.paso-t strong{font-weight:700}
.paso-n{font-weight:400}
.paso:first-child .paso-t strong{color:var(--gold);font-style:italic;text-decoration:underline 2px;text-underline-offset:5px}
.paso-d{font-size:15px;color:var(--muted);margin:4px 0 0 26px;line-height:1.5}
.razon-logo{background:#fff;border-radius:50%;aspect-ratio:1;width:clamp(240px,32vw,440px);display:grid;place-items:center;padding:9%;justify-self:center}
.razon-logo img{width:100%}

/* App (lámina 11) */
.vinetas{padding-left:22px;display:grid;gap:10px;margin-top:22px;font-size:17px;color:var(--text)}
.vinetas li::marker{color:var(--lavender)}
.vinetas .fuerte{font-weight:600;color:#fff}
.tiendas{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}

/* Características (láminas 10, 12 a 17) */
.racimo{width:100%;max-width:520px;justify-self:center}
.feat-intro{border-top:1px solid rgba(226,169,241,.15)}
.circulo-plano{width:clamp(240px,34vw,460px);justify-self:center}
.feat-sec{padding:84px 0}
.feat-t{font-family:var(--f-tit);font-weight:400;text-transform:uppercase;letter-spacing:.12em;font-size:clamp(20px,2.5vw,34px);line-height:1.35}
.feat-t > span{display:inline}
.feat-t3{display:block!important;font-size:.55em;margin-top:6px}
.feat-sub{font-size:clamp(17px,1.6vw,19px);color:#fff;margin-top:18px}
.feat-d{font-size:16.5px;color:var(--muted);margin-top:12px;max-width:520px}
.feat-d strong{color:#fff}
.monitor{width:100%;max-width:560px;justify-self:center}
.monitor-scr{background:#111;border:10px solid #111;border-radius:14px 14px 4px 4px}
.monitor-scr img{width:100%;aspect-ratio:16/9;object-fit:cover;background:#fff;border-radius:3px}
.monitor-pie{width:30%;height:40px;margin:0 auto;background:#c9ced4;clip-path:polygon(30% 0,70% 0,80% 100%,20% 100%)}

/* Respaldo */
.respaldo-sec{background:var(--bg-3)}
.resp-logo{width:200px;height:auto;margin-bottom:26px}
.respaldo-sec .h2{margin-bottom:18px}
.respaldo-box{border:1px solid rgba(226,169,241,.25);border-radius:var(--r)}
.resp{display:flex;align-items:center;gap:22px;padding:26px 28px;border-bottom:1px solid rgba(226,169,241,.25)}
.resp:last-child{border-bottom:0}
.resp-n{flex:0 0 100px;font-family:var(--f-num);font-weight:800;font-size:36px;line-height:1}
.resp-0 .resp-n{color:var(--gold)}.resp-1 .resp-n{color:var(--teal)}.resp-2 .resp-n{color:var(--lime)}
.resp-l{color:var(--text);font-size:16px;line-height:1.45}

/* Contacto */
.contacto{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.checks{list-style:none;padding:0;display:grid;gap:12px;margin-top:24px}
.checks li{position:relative;padding-left:32px;color:var(--text)}
.checks li::before{content:"";position:absolute;left:0;top:4px;width:20px;height:20px;border-radius:50%;background:rgba(202,231,77,.15) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-7' fill='none' stroke='%23cae74d' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.canales{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.canal{font-size:14px;font-weight:500;text-decoration:none;color:#fff;border:1px solid rgba(226,169,241,.5);padding:10px 16px;border-radius:999px;word-break:break-all}
.canal:hover{border-color:var(--gold);color:var(--gold)}
.form-box{background:#fff;color:#1f2328;border-radius:var(--r);padding:32px 28px;min-height:300px}
.form-box h3{font-size:22px;font-weight:700;color:var(--bg)}
.form-sub{color:#555b63;font-size:15px;margin:4px 0 18px}
.form-placeholder{border:1px dashed #c9ced4;border-radius:10px;padding:40px 16px;text-align:center;color:#555b63;font-size:14px}

/* FAQ (claro, para lectura) */
.faq-sec{background:#f7f4fa;color:#1f2328}
.faq-sec .h2{color:var(--bg)}
.faq-sec .tag{color:var(--teal-brand)}
.faq-sec strong{color:#1f2328}
.faq-wrap{max-width:900px}
.desc-c{color:#555b63;max-width:620px;margin:14px auto 0}
.faq-list{margin-top:40px;border-top:1px solid #e3dceb}
.faq-item{border-bottom:1px solid #e3dceb}
.faq-q{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:24px 0;font-size:clamp(17px,1.7vw,19px);font-weight:600;line-height:1.4;color:var(--bg)}
.faq-q::-webkit-details-marker{display:none}
.faq-q:hover{color:var(--teal-brand)}
.faq-x{flex:0 0 26px;height:26px;border-radius:50%;border:1px solid #d5cce0;position:relative;transition:transform .2s,border-color .2s}
.faq-x::before,.faq-x::after{content:"";position:absolute;left:50%;top:50%;width:11px;height:2px;background:var(--teal-brand);transform:translate(-50%,-50%)}
.faq-x::after{transform:translate(-50%,-50%) rotate(90deg)}
details[open]{border-left:3px solid var(--rose);padding-left:16px}
details[open] .faq-x{transform:rotate(45deg);border-color:var(--teal-brand)}
.faq-a{padding:0 46px 26px 0;color:#454b53;font-size:16.5px}
.faq-a p+p,.faq-a p+ul,.faq-a ul+p{margin-top:12px}
.faq-a ul{padding-left:20px;margin-top:8px}
.faq-a li{margin-bottom:6px}
.faq-a li::marker{color:var(--rose)}
.faq-cta{text-align:center;margin-top:48px;padding:38px 24px;border-radius:var(--r);background:var(--bg);color:#fff}
.faq-cta p{font-size:18px;font-weight:500;margin-bottom:18px}

/* Footer */
.foot{background:var(--bg-3);color:var(--muted);padding:48px 0 40px;border-top:1px solid rgba(226,169,241,.12)}
.foot-in{display:grid;gap:16px;font-size:14px}
.foot-logos{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.foot-cc{width:160px;height:auto;background:#fff;border-radius:10px;padding:8px 12px}
.foot-sima{width:140px;height:auto}
.foot-c{color:#8d839c;font-size:13px}

/* WhatsApp flotante */
.wa-float{position:fixed;right:18px;bottom:18px;z-index:60;width:56px;height:56px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 4px 14px rgba(0,0,0,.3)}
.wa-float:hover{background:#1EBE5A}

/* Responsive */
@media (max-width:1024px){
  .nav-links{gap:18px}
  .fila,.razon{gap:44px}
}
@media (max-width:900px){
  .nav-links,.nav-sima{display:none}
  .nav-in{justify-content:space-between}
  .sec{padding:68px 0}.feat-sec{padding:60px 0}
  .fila,.razon,.contacto,.datos{grid-template-columns:1fr;gap:36px}
  .fila-inv > :first-child{order:0}
  .fila > img,.fila > .monitor,.fila > .racimo{order:-1}
  .razon-logo{order:-1;width:min(260px,70vw)}
  .mitad{grid-template-columns:1fr;min-height:0}
  .mitad-foto{order:-1;height:260px}
  .mitad-txt,.mitad-inv .mitad-txt{order:0;padding:56px 20px}
  .chat-fila,.chat-inv{grid-template-columns:1fr;gap:26px}
  .chat-inv .burbujas{order:0}
  .burbujas{max-width:170px}.foto-chat{max-width:240px}
  .wa-marca{max-width:240px;justify-self:center;padding:22px 20px}
  .hero{min-height:0;flex-direction:column;align-items:stretch}
  .hero-bg{position:relative;height:300px}
  .hero-caja{border-radius:0;margin:0;width:100%;padding:40px 20px 44px;background:var(--bg)}
  .hero-pie{position:absolute;top:268px;bottom:auto}
  .linea-sale{margin-left:0;width:min(520px,100%)}
  .fuente{position:static;writing-mode:horizontal-tb;transform:none;grid-column:1/-1;text-align:left;margin-top:6px}
}
@media (max-width:560px){
  body{font-size:16px}
  .wrap{padding:0 16px}
  .h2,.feat-t{font-size:clamp(17px,5vw,22px);letter-spacing:.07em}
  .nav-logo img{height:28px}
  .sin-caja .nav-logo img{height:36px}
  .nav .btn-sm{padding:9px 13px;font-size:13px}
  .btns .btn{width:100%}
  .mitad-txt,.mitad-inv .mitad-txt{padding:48px 16px}
  .hero-caja{padding:34px 16px 40px}
  .dato{padding:20px 14px}
  .dato-l{font-size:13px}
  .resp{padding:20px;gap:16px}.resp-n{flex-basis:76px;font-size:28px}
  .form-box{padding:26px 18px}
  .faq-a{padding-right:0}
  details[open]{padding-left:12px}
  .wa-float{width:52px;height:52px;right:14px;bottom:14px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
