/* ============================================================
   MiVaroBot — sections 3–10 + responsive
   ============================================================ */
.sec-head{max-width:760px;margin-bottom:56px}
.sec-head .eyebrow{margin-bottom:18px}
.sec-head p.lede{margin-top:18px}

/* ---- PROBLEM ---- */
.prob{background:var(--card-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.prob-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.pain{background:var(--bg);border:1px solid var(--line);border-radius:20px;padding:34px 28px;min-height:200px;
  transition:transform .25s ease,border-color .25s ease,background .25s}
.pain:hover{transform:translateY(-6px);border-color:rgba(0,180,216,.35);background:#0c1f31}
.pain .ic{display:block;color:var(--white);margin-bottom:20px}
.pain .ic svg{width:30px;height:30px}
.pain h3{font-size:17px;font-weight:700;line-height:1.32;letter-spacing:-0.02em;color:var(--white)}

/* ---- HOW ---- */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.step{position:relative;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:32px 28px}
.step .num{font-family:var(--font-display);font-weight:800;font-size:24px;line-height:1;
  color:var(--bg);background:var(--cyan);width:52px;height:52px;border-radius:14px;display:grid;place-items:center;margin-bottom:22px}
.step h3{font-family:var(--font-display);font-weight:800;font-size:21px;letter-spacing:-0.025em;margin-bottom:9px}
.step p{color:var(--muted-2);font-size:15.5px}

/* ---- FEATURES (3 tarjetas estáticas) ---- */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.feat-card{background:var(--card);border:1px solid var(--line);border-radius:22px;
  overflow:hidden;display:flex;flex-direction:column;
  transition:transform .25s,border-color .25s}
.feat-card:hover{transform:translateY(-5px);border-color:rgba(0,180,216,.3)}

/* float loop suave del mock interno una vez revelada la card (desktop).
   Se aplica al .feat-mock y NO al .feat-card para no pelear con el
   transform del reveal (.vis{transform:none}) ni con el hover lift. */
@keyframes floatCard{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-8px)}
}
.feat-card.vis .feat-mock{
  animation:floatCard 4s ease-in-out infinite;
}
.feat-card.vis:nth-child(2) .feat-mock{animation-delay:0.6s}
.feat-card.vis:nth-child(3) .feat-mock{animation-delay:1.2s}

/* mock de chat (pantalla Telegram, sin marco de teléfono) */
/* fondo: color navy + patrón de símbolos Telegram idéntico al del hero (.tg-body) */
.feat-mock{background-color:#0E1621;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240' fill='none' stroke='%23ffffff' stroke-opacity='0.035' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='40' cy='40' r='13'/%3E%3Cpath d='M150 30 q14 -16 28 0 q14 16 0 28 q-14 16 -28 0z'/%3E%3Cpath d='M30 150 l10 10 18 -22'/%3E%3Cpath d='M180 150 v26 M167 163 h26'/%3E%3Cpath d='M95 95 l8 16 18 2 -13 13 4 18 -17 -9 -17 9 4 -18 -13 -13 18 -2z'/%3E%3Ccircle cx='205' cy='90' r='9'/%3E%3Cpath d='M55 205 q12 -14 24 0'/%3E%3C/svg%3E");
  background-size:200px;
  padding:18px 16px;display:flex;flex-direction:column;gap:10px;
  height:440px;justify-content:flex-end}
.feat-mock--center{justify-content:center}
/* tipografía San Francisco (igual que el mock del hero) para TODO lo del mock */
.feat-mock, .feat-mock *{font-family:-apple-system,BlinkMacSystemFont,'SF Pro Text','SF Pro Display','Segoe UI',system-ui,sans-serif}
.cm-bubble{position:relative;max-width:90%;padding:10px 13px 18px;border-radius:14px;
  font-family:var(--font-body);font-size:13px;line-height:1.45;color:#E9F1F8}
.cm-in{align-self:flex-start;background:#182533;border-bottom-left-radius:5px}
.cm-out{align-self:flex-end;background:var(--violet);color:#fff;border-bottom-right-radius:5px}
.cm-time{position:absolute;right:11px;bottom:6px;font-size:10px;color:rgba(233,241,248,.45);
  display:inline-flex;align-items:center;gap:3px}
.cm-out .cm-time{color:rgba(255,255,255,.6)}
.cm-check{color:#8FE3FF;font-size:10px;letter-spacing:-1px}
.cm-budget-title{font-weight:600;margin-bottom:8px;color:#fff}
.cm-row{display:flex;justify-content:space-between;gap:14px;padding:2px 0}
.cm-row .cm-cat{color:rgba(233,241,248,.78)}
.cm-row .cm-val{font-family:var(--font-display);font-weight:600;color:#fff;white-space:nowrap}
.cm-sep{margin:8px 0 4px;font-size:11px;color:rgba(233,241,248,.4);text-align:center}
.cm-note{font-size:11.5px;color:rgba(233,241,248,.55);line-height:1.4}
.cm-foot{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.08);
  font-weight:600;color:var(--cyan-light)}
/* botones inline estilo Telegram — ocupan el ancho de la burbuja, repartidos igual */
.cm-btns{display:flex;gap:6px;align-self:flex-start;width:90%}
.cm-btn{flex:1 1 0;min-width:0;font-size:12px;color:#cfe0ee;text-align:center;
  background:#182533;border:1px solid rgba(255,255,255,.06);border-radius:9px;
  padding:8px 6px;cursor:pointer;white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis}
/* la burbuja del bot que lleva botones se estira al mismo ancho que la fila */
.cm-in:has(+ .cm-btns){width:90%}

/* --- animación de mensajes en vivo --- */
/* burbujas y botones ocultos solo cuando el mock está armado para animar (clase via JS) */
.feat-mock.cm-anim .cm-bubble,
.feat-mock.cm-anim .cm-btns{opacity:0;transform:translateY(8px);
  transition:opacity .25s ease,transform .25s ease}
.feat-mock.cm-anim .cm-bubble.cm-show,
.feat-mock.cm-anim .cm-btns.cm-show{opacity:1;transform:none}
/* indicador "escribiendo…" — mini burbuja estilo bot */
.cm-typing{align-self:flex-start;display:inline-flex;align-items:center;gap:5px;
  background:#182533;border-radius:14px;border-bottom-left-radius:5px;padding:12px 14px;
  opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease}
.cm-typing.cm-show{opacity:1;transform:none}
.cm-typing span{width:7px;height:7px;border-radius:50%;background:rgba(233,241,248,.6);
  animation:cmDot 1.2s infinite ease-in-out}
.cm-typing span:nth-child(2){animation-delay:.2s}
.cm-typing span:nth-child(3){animation-delay:.4s}
@keyframes cmDot{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){
  .feat-mock.cm-anim .cm-bubble,
  .feat-mock.cm-anim .cm-btns{opacity:1;transform:none;transition:none}
  .cm-typing{display:none}
  .cm-typing span{animation:none}
}

/* texto debajo del mock */
.feat-text{padding:26px 28px 30px;display:flex;flex-direction:column}
.feat-card h3{font-family:var(--font-display);font-weight:800;font-size:21px;letter-spacing:-0.03em;margin-bottom:8px}
.feat-card p.desc{font-family:'Plus Jakarta Sans',sans-serif;color:var(--muted-2);font-size:14.5px;line-height:1.55;margin:0}

/* budget meter inside feature */
.meter{margin-bottom:14px}
.meter-top{display:flex;justify-content:space-between;align-items:baseline;font-size:14px;margin-bottom:7px}
.meter-top .cat{font-weight:600;color:var(--white)}
.meter-top .amt{font-family:var(--font-display);font-weight:700;font-size:13px;color:var(--muted-2)}
.meter-track{height:9px;border-radius:6px;background:rgba(255,255,255,.06);overflow:hidden}
.meter-fill{height:100%;border-radius:6px;width:0;transition:width 1.1s cubic-bezier(.5,0,.2,1)}
.alert{display:flex;align-items:center;gap:10px;margin-top:16px;padding:12px 14px;border-radius:12px;
  background:rgba(251,191,36,.1);border:1px solid rgba(251,191,36,.28);color:#fde6a8;font-size:13.5px;font-weight:500}
.alert svg{width:19px;height:19px;color:var(--amber);flex-shrink:0}

/* mini chat inside feature */
.mini-chat{display:flex;flex-direction:column;gap:8px;margin-top:auto}
.mini-b{font-size:13.5px;padding:8px 11px;border-radius:13px;max-width:92%;line-height:1.4}
.mini-b.out{align-self:flex-end;background:var(--violet);color:#fff;border-bottom-right-radius:4px}
.mini-b.in{align-self:flex-start;background:var(--tg-in-2);color:#E9F1F8;border-bottom-left-radius:4px}
.mini-b.in .em{color:var(--cyan-light);font-weight:600}

/* chips/tags */
.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}
.tag{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--cyan-light);
  background:rgba(0,180,216,.08);border:1px solid var(--line);padding:6px 11px;border-radius:9px}
.tag svg{width:13px;height:13px}

/* ---- PRIVACY ---- */
.priv{background:var(--card-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.priv-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:60px;align-items:center}
.never-list{list-style:none;margin-top:26px;display:flex;flex-direction:column;gap:14px}
.never-list li{display:flex;align-items:flex-start;gap:13px;color:var(--muted-2);font-size:16.5px}
.never-list .nx{width:26px;height:26px;border-radius:8px;background:rgba(255,90,95,.12);color:var(--coral);
  display:grid;place-items:center;flex-shrink:0;margin-top:1px}
.never-list .nx svg{width:15px;height:15px}
.life-cards{display:flex;flex-direction:column;gap:15px}
.life-card{display:flex;gap:17px;padding:24px;background:var(--card);border:1px solid var(--line);border-radius:18px}
.life-card .lc-ic{width:44px;height:44px;border-radius:12px;background:rgba(56,217,169,.1);color:var(--mint);
  display:grid;place-items:center;flex-shrink:0}
.life-card .lc-ic svg{width:22px;height:22px}
.life-card h4{font-family:var(--font-display);font-weight:800;font-size:17px;letter-spacing:-0.02em;margin-bottom:5px}
.life-card p{color:var(--muted);font-size:14.5px;margin:0}

/* ---- FOUNDER ---- */
.founder{max-width:940px;margin:0 auto;background:var(--card);border:1px solid var(--line);
  border-radius:26px;padding:50px;display:grid;grid-template-columns:auto 1fr;gap:42px;align-items:start}
.founder .chip{width:100px;height:100px;flex-shrink:0}
.founder .display{font-size:clamp(24px,3.2vw,34px);margin-bottom:20px}
.founder p{color:var(--muted-2);margin-bottom:16px;line-height:1.7;font-size:16.5px}
.founder p .hl{font-family:var(--font-accent);font-style:italic;color:var(--cyan-light);font-size:1.05em}
.sign{font-family:var(--font-accent);font-style:italic;font-size:22px;color:var(--white);margin-top:22px}
.sign small{display:block;font-family:var(--font-body);font-style:normal;font-size:14px;color:var(--muted);margin-top:5px}

/* ---- BETA / PRICING ---- */
.beta-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:stretch}
.beta-panel{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:42px;display:flex;flex-direction:column}
.beta-panel h3.display{font-size:30px;margin-bottom:8px}
.spots{display:flex;align-items:baseline;gap:10px;margin:18px 0 14px}
.spots .big{font-family:var(--font-display);font-weight:900;font-size:52px;letter-spacing:-0.04em;color:var(--cyan);line-height:1}
.spots .of{color:var(--muted);font-weight:600;font-size:18px}
.progress{height:12px;border-radius:8px;background:rgba(255,255,255,.06);overflow:hidden;margin-bottom:10px}
.progress span{display:block;height:100%;width:0;border-radius:8px;
  background:linear-gradient(90deg,var(--cyan),var(--cyan-light));transition:width 1.3s cubic-bezier(.5,0,.2,1)}
.progress-note{color:var(--muted);font-size:14px}
.beta-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:28px}

.price-card{background:linear-gradient(165deg,#123253,#0d2138);border:1px solid rgba(144,224,239,.18);
  border-radius:24px;padding:38px 32px;position:relative;display:flex;flex-direction:column}
.price-badge{position:absolute;top:22px;right:22px;font-size:11px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--mint);background:rgba(56,217,169,.12);
  border:1px solid rgba(56,217,169,.3);padding:5px 10px;border-radius:8px}
.price-card .ptitle{font-family:var(--font-display);font-weight:800;font-size:18px;letter-spacing:-0.02em;color:var(--muted-2)}
.price-amt{display:flex;align-items:baseline;gap:6px;margin:14px 0 4px}
.price-amt .num{font-family:var(--font-display);font-weight:900;font-size:50px;letter-spacing:-0.04em}
.price-amt .per{color:var(--muted);font-weight:600}
.price-note{color:var(--muted);font-size:14px}
.plist{list-style:none;margin:24px 0 0;display:flex;flex-direction:column;gap:13px}
.plist li{display:flex;gap:11px;align-items:flex-start;font-size:15px;color:var(--muted-2)}
.plist .ck{width:21px;height:21px;border-radius:7px;background:rgba(0,180,216,.14);color:var(--cyan);
  display:grid;place-items:center;flex-shrink:0;margin-top:1px}
.plist .ck svg{width:13px;height:13px}

/* ---- FAQ ---- */
.faq-list{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.faq{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:border-color .2s}
.faq[open]{border-color:rgba(144,224,239,.2)}
.faq summary{list-style:none;cursor:pointer;padding:22px 24px;display:flex;align-items:center;
  justify-content:space-between;gap:16px;font-family:var(--font-display);font-weight:700;font-size:17px;letter-spacing:-0.02em}
.faq summary::-webkit-details-marker{display:none}
.faq summary .qic{width:24px;height:24px;flex-shrink:0;color:var(--cyan);transition:transform .25s}
.faq[open] summary .qic{transform:rotate(45deg)}
.faq .ans{padding:0 24px 24px;color:var(--muted);font-size:15.5px;line-height:1.6;max-width:680px}

/* ---- CTA strip ---- */
.cta-strip{position:relative;overflow:hidden;background:linear-gradient(135deg,#0a3a52,#0d2138);
  border:1px solid rgba(144,224,239,.18);border-radius:30px;padding:64px;text-align:center}
.cta-strip .glow{position:absolute;top:-100px;left:50%;transform:translateX(-50%);width:500px;height:300px;
  background:radial-gradient(circle,rgba(0,180,216,.25),transparent 65%);pointer-events:none}
.cta-strip .display{font-size:clamp(30px,4.5vw,48px);margin-bottom:16px;position:relative}
.cta-strip .lede{margin:0 auto 30px;position:relative}
.cta-strip .btn{position:relative}

/* ---- FOOTER ---- */
.footer{background:var(--card-2);border-top:1px solid var(--line);padding:72px 0 36px}
.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px}
.footer-brand .brand{margin-bottom:18px}
.footer-brand p{color:var(--muted);max-width:300px;font-size:15px}
.footer-brand p .accent{font-family:var(--font-accent);font-style:italic;color:var(--cyan-light)}
.fcol h5{font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}
.fcol a{display:block;color:var(--muted-2);font-size:15px;margin-bottom:11px;transition:color .2s}
.fcol a:hover{color:var(--cyan-light)}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
  margin-top:50px;padding-top:26px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}

/* ---- REVEAL ---- */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.vis{opacity:1;transform:none}
.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}.reveal.d4{transition-delay:.32s}

@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
  .fc-left,.fc-right,.msg{animation:none;opacity:1;transform:none}
}

/* ---- EXPORTAR / DATOS ---- */
.export-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:32px;align-items:start}
/* lado izquierdo: tarjeta del archivo */
.export-file{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:32px}
.export-file-title{font-family:var(--font-display);font-weight:800;font-size:18px;
  letter-spacing:-0.02em;color:var(--white);margin-bottom:20px}
.export-file-list{list-style:none;display:flex;flex-direction:column;gap:15px}
.export-file-list li{display:flex;align-items:flex-start;gap:12px;
  color:var(--muted-2);font-size:15.5px;line-height:1.4}
.export-file-list .efi{flex-shrink:0;font-size:18px;line-height:1.2}
/* lado derecho: flujo de 3 pasos */
.export-steps{display:flex;flex-direction:column;gap:24px}
.export-step{display:flex;gap:16px;align-items:flex-start}
.export-step .es-num{flex-shrink:0;font-family:var(--font-display);font-weight:800;font-size:16px;
  color:var(--bg);background:var(--cyan);width:34px;height:34px;border-radius:11px;
  display:grid;place-items:center}
.export-step h4{font-family:var(--font-display);font-weight:800;font-size:17px;
  letter-spacing:-0.02em;color:var(--white);margin-bottom:5px}
.export-step p{color:var(--muted-2);font-size:15px;line-height:1.55}
.es-cmd{font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:13px;
  background:rgba(0,180,216,.1);color:var(--cyan);padding:2px 7px;border-radius:5px}
/* vista previa del prompt */
.export-prompt{margin-top:36px;padding:18px 22px;border-radius:14px;
  background:rgba(255,255,255,.03);border:1px solid var(--line);
  display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}
.export-prompt .ep-line{font-family:ui-monospace,"SF Mono",Menlo,monospace;
  font-size:14px;color:var(--cyan-light)}
.export-prompt .ep-note{font-size:13.5px;color:var(--muted)}
/* microcopy de cierre */
.export-microcopy{max-width:620px;margin:28px auto 0;text-align:center;
  color:var(--muted);font-size:15px;line-height:1.6}

/* drawer móvil — entrada suave del menú */
@keyframes drawerDown{
  from{opacity:0;transform:translateY(-8px)}
  to{opacity:1;transform:translateY(0)}
}

/* nav del carrusel: oculta por defecto (desktop); el JS la muestra en móvil */
.carousel-nav { display: none; }

/* ---- RESPONSIVE ---- */
@media(max-width:980px){
  .section{padding:72px 0}
  .export-grid{grid-template-columns:1fr;gap:28px}
  .hero-grid{grid-template-columns:1fr;gap:64px}
  .hero{padding:60px 0 90px}
  .prob-grid{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr}
  .feat-grid{grid-template-columns:1fr;gap:20px}
  .priv-grid{grid-template-columns:1fr;gap:38px}
  .beta-grid{grid-template-columns:1fr}
  .footer-top{grid-template-columns:1fr 1fr;gap:32px}
}
@media(max-width:640px){
  body{font-size:16px}
  .section{padding:72px 0}
  .nav-links{display:none}
  .nav-links.open{display:flex;position:absolute;top:70px;left:0;right:0;flex-direction:column;
    align-items:flex-start;gap:18px;padding:24px;background:rgba(13,27,42,.98);
    border-bottom:1px solid var(--line);backdrop-filter:blur(16px);
    animation:drawerDown 0.22s ease forwards}
  .nav-burger{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;
    border:1px solid var(--line);background:none;color:var(--white);cursor:pointer}
  .nav-burger svg{width:22px;height:22px}
  .prob-grid{grid-template-columns:1fr}
  .founder{grid-template-columns:1fr;padding:32px 24px;gap:24px}
  .footer-top{grid-template-columns:1fr;gap:30px}
  .footer-bottom{flex-direction:column}
  .float-card{display:none}
  .cta-strip{padding:44px 26px}
  .hero-cta .btn{flex:1 1 auto;justify-content:center}

  /* mock: no se corte en móvil */
  .phone-stage{display:none}

  /* beta panel: quitar padding excesivo */
  .beta-panel{padding:28px 20px}
  .beta-grid > div:last-child{padding:28px 20px}

  /* faq: reducir padding en respuestas */
  .faq summary{padding:18px 16px}
  .faq .ans{padding:0 16px 20px}

  /* footer: reducir padding top */
  .footer{padding:48px 0 28px}

  /* El problema: tarjetas compactas */
  .pain {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    min-height: unset;
  }
  .pain .ic {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
  }
  .pain h3 {
    font-size: 15px;
    line-height: 1.3;
    margin: 0;
  }

  /* Cómo funciona: número inline */
  .step {
    padding: 16px 18px;
  }
  .step .num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    font-size: 14px;
    border-radius: 8px;
    vertical-align: middle;
    margin-right: 8px;
    flex-shrink: 0;
  }
  .step h3 {
    display: inline;
    vertical-align: middle;
    font-size: 16px;
  }

  /* feat-grid como carrusel automático */
  .feat-grid {
    position: relative;
    overflow: hidden;
  }
  .feat-card {
    display: none;
    width: 100%;
  }
  .feat-card.carousel-active {
    display: flex;
  }

  /* carrusel: flechas + dots */
  .carousel-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-top: 16px;
  }
  .carousel-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 1px solid var(--line);
    background: none;
    color: var(--white);
    cursor: pointer;
    flex-shrink: 0;
  }
  .carousel-arrow svg { width: 18px; height: 18px; }
  .carousel-arrow:hover { background: rgba(255,255,255,.08); }
  .carousel-dots {
    display: flex;
    gap: 6px;
    align-items: center;
  }
  .carousel-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--line);
    transition: background 0.2s, transform 0.2s;
  }
  .carousel-dot.active {
    background: var(--cyan);
    transform: scale(1.3);
  }

  /* Trust row: 2 arriba + 1 centrado abajo */
  .trust-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px 16px;
    justify-items: start;
  }
  .trust-row .trust-item:last-child {
    grid-column: 1 / -1;
    justify-self: center;
  }

  /* Privacidad: ocultar 2 cards en móvil, dejar solo "Tú tienes el control" */
  .life-card:first-child { display: none; }
  .life-card:last-child  { display: none; }

  .hero .no-reveal {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }

  /* Eyebrow: apuntar directo al elemento (más específico que .hero .no-reveal),
     visibilidad incondicional en móvil */
  .hero-copy .eyebrow {
    display: flex !important;
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
    visibility: visible !important;
    width: fit-content;
    -webkit-width: fit-content;
  }

  /* Espaciado hero: el nav fijo mide ~70px en móvil; 100px de padding-top
     garantiza que el h1/eyebrow no queden detrás del nav */
  .hero {
    padding-top: 130px;
  }
}
