/* ════════════════════════════════════════════════════════════════════
   PUBLIC — identidad visual del front público (landing + /banco)
   Se enlaza DESPUÉS de cosmos.css y solo en estas dos páginas:
   redefine la paleta del design system sin tocar cosmos.css ni
   afectar a blog/metodologia (que no enlazan este archivo).

   Paleta oficial (no inventar colores):
     Fondo  Noche Mental #0D0B1E
     Primario Índigo     #4F46E5
     Secundario Violeta  #7C3AED
     Acento Ámbar        #FFD600  (solo acentos y CTAs, nunca párrafos)
     Acento Cian         #06B6D4
   Tipografía: Inter 400 / 600 / 800
   ════════════════════════════════════════════════════════════════════ */

:root {
  --bg-base:    #0D0B1E;
  --bg-surface: #14112b;
  --bg-card:    #181534;
  --bg-elevated:#1f1b40;

  --accent-violet:  #7C3AED;
  --accent-indigo:  #4F46E5;
  --accent-cyan:    #06B6D4;
  --accent-amber:   #FFD600;

  /* Re-mapeo de los nombres que usan nav/footer/botones de cosmos.css */
  --accent-emerald: #06B6D4;   /* cian sustituye al esmeralda */
  --accent-magenta: #4F46E5;   /* índigo sustituye al magenta */
  --accent-gold:    #FFD600;

  --text-primary:   #F2F1FA;
  --text-secondary: #B6B3CF;
  /* AA: contraste >= 4.5:1 sobre Noche Mental incluso en texto pequeño */
  --text-muted:     #8E8AAE;

  --border:        rgba(124,58,237,0.22);
  --border-strong: rgba(124,58,237,0.48);
  --glow-violet:   rgba(124,58,237,0.30);
  --glow-indigo:   rgba(79,70,229,0.30);
  --glow-cyan:     rgba(6,182,212,0.28);
  --glow-amber:    rgba(255,214,0,0.25);
  --glow-emerald:  rgba(6,182,212,0.28);
  --glow-magenta:  rgba(79,70,229,0.30);
  --glow-gold:     rgba(255,214,0,0.25);

  --brand-gradient: linear-gradient(135deg, #4F46E5 0%, #7C3AED 100%);
  --brand-gradient-soft: linear-gradient(135deg, rgba(79,70,229,0.14), rgba(124,58,237,0.14));

  --font-display: "Inter", system-ui, sans-serif;
  --font-body:    "Inter", system-ui, sans-serif;
  --font-mono:    ui-monospace, "Cascadia Mono", "SF Mono", Menlo, monospace;

  /* ── Escala tipográfica modular (ratio ~1.25, fluida) ── */
  --fs-100: 0.78rem;                          /* caption / notas */
  --fs-200: 0.875rem;                         /* small */
  --fs-300: 0.95rem;                          /* body compacto */
  --fs-400: 1rem;                             /* body */
  --fs-500: clamp(1.05rem, 1.5vw, 1.18rem);   /* lede */
  --fs-600: clamp(1.18rem, 2vw, 1.45rem);     /* h3 */
  --fs-700: clamp(1.45rem, 3vw, 2rem);        /* h2 compacto */
  --fs-800: clamp(1.7rem, 4vw, 2.6rem);       /* h2 sección */
  --fs-900: clamp(2.15rem, 7.2vw, 4.2rem);    /* hero */

  /* ── Ritmo vertical ── */
  --section-pad: clamp(4rem, 9vw, 6.5rem);
  --section-gap-inner: clamp(2.2rem, 5vw, 3rem);

  /* ── Microinteracción estándar ── */
  --hover-ease: 180ms cubic-bezier(0.2, 0.6, 0.3, 1);
}

/* Inter es más ancha que Playfair: contener los tamaños de display */
h1{font-size:var(--fs-900);font-weight:800;letter-spacing:-0.03em;line-height:1.07;text-wrap:balance;}
h2{font-size:var(--fs-800);font-weight:800;letter-spacing:-0.02em;text-wrap:balance;}
h3{font-size:var(--fs-600);font-weight:800;}

/* Ritmo vertical consistente entre secciones */
section.cosmos{padding:var(--section-pad) 1.4rem;}

/* Eyebrow: tinta clara del violeta oficial — el #7C3AED puro queda en
   3.4:1 sobre Noche Mental y falla AA en texto de 11px */
.eyebrow{color:#A78BFA;}

/* Foco visible para teclado en TODO el front público */
a:focus-visible,
button:focus-visible,
input:focus-visible,
[tabindex]:focus-visible{
  outline:2px solid var(--accent-cyan);
  outline-offset:3px;
  border-radius:6px;
}

/* Capa atmosférica de cosmos.css re-tintada a la paleta oficial */
body::before{
  background-image:
    radial-gradient(ellipse 80% 50% at 20% 10%, rgba(79,70,229,0.12), transparent 50%),
    radial-gradient(ellipse 60% 50% at 90% 20%, rgba(6,182,212,0.07), transparent 50%),
    radial-gradient(ellipse 70% 60% at 50% 90%, rgba(124,58,237,0.09), transparent 50%);
}

/* Botones re-mapeados (mismo nombre de clase, paleta nueva) */
.btn{transition:transform var(--hover-ease), box-shadow var(--hover-ease), border-color var(--hover-ease), background-color var(--hover-ease);}
.btn-primary{background:linear-gradient(135deg, #4F46E5 0%, #7C3AED 100%);box-shadow:0 8px 28px var(--glow-indigo);}
.btn-emerald{background:linear-gradient(135deg, #06B6D4 0%, #0e7490 100%);color:#03131a;}
.btn-amber{
  background:#FFD600;color:#1a1500;
  box-shadow:0 8px 28px var(--glow-amber);
  font-weight:800;
}
.btn-amber:hover{transform:translateY(-2px);box-shadow:0 14px 40px var(--glow-amber),0 0 60px var(--glow-amber);}

/* ────────── Hero público ────────── */
.gm-hero{
  position:relative;
  min-height:calc(82vh - var(--nav-h));
  padding:clamp(3.5rem, 8vw, 5rem) 1.4rem 3.5rem;
  display:grid;place-items:center;
  overflow:hidden;text-align:center;
}
.gm-hero .inner{position:relative;z-index:3;max-width:860px;margin:0 auto;}
.gm-kicker{
  font-family:var(--font-mono);
  font-size:0.68rem;letter-spacing:0.26em;text-transform:uppercase;
  color:var(--accent-cyan);margin-bottom:1.3rem;
}
.gm-hero h1{margin:0 0 1.4rem;}
.gm-hero h1 .gm-amber{color:var(--accent-amber);}
.gm-hero .gm-sub{
  font-size:var(--fs-500);color:var(--text-secondary);
  max-width:620px;margin:0 auto 2.2rem;line-height:1.7;
}
.gm-hero .gm-sub strong{color:var(--text-primary);}
.gm-cta-row{
  display:flex;flex-direction:column;align-items:center;gap:1rem;
}
.gm-cta-row .btn-amber{font-size:1rem;padding:1.05rem 2.6rem;}
.gm-link-quiet{
  font-size:var(--fs-300);color:var(--text-secondary);
  text-decoration:underline;text-underline-offset:4px;
  text-decoration-color:var(--border-strong);
  transition:color var(--hover-ease);
}
.gm-link-quiet:hover{color:var(--accent-cyan);}
@media (min-width:640px){
  .gm-cta-row{flex-direction:row;justify-content:center;gap:1.6rem;}
}

/* ────────── Cifras del motor (prueba social de máquina) ────────── */
.gm-stats{
  padding:calc(var(--section-pad) * 0.6) 1.4rem;
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
  background:linear-gradient(180deg, rgba(79,70,229,0.05), transparent 70%);
}
.gm-stats .inner{max-width:var(--max);margin:0 auto;}
.gm-stats .gm-stats-title{
  text-align:center;
  font-family:var(--font-mono);
  font-size:0.68rem;letter-spacing:0.26em;text-transform:uppercase;
  color:var(--text-muted);
  margin-bottom:1.8rem;
}
.gm-stats-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:1.6rem 1rem;
  text-align:center;
}
@media (min-width:860px){.gm-stats-grid{grid-template-columns:repeat(4,1fr);}}
.gm-stat .v{
  font-size:clamp(1.9rem, 4.5vw, 2.7rem);
  font-weight:800;line-height:1.1;
  color:var(--text-primary);
  font-variant-numeric:tabular-nums;
  letter-spacing:-0.02em;
}
.gm-stat .v .u{color:var(--accent-amber);}
.gm-stat .l{
  margin-top:0.45rem;
  font-size:var(--fs-100);color:var(--text-secondary);
  line-height:1.45;
}
.gm-stat .src{
  display:block;margin-top:0.2rem;
  font-size:0.68rem;color:var(--text-muted);
}

/* ────────── Cómo funciona: 3 pasos ────────── */
.gm-steps{
  display:grid;grid-template-columns:1fr;gap:1.2rem;margin-top:var(--section-gap-inner);
}
@media (min-width:880px){.gm-steps{grid-template-columns:repeat(3,1fr);}}
.gm-step{
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  padding:1.8rem 1.5rem;
  text-align:left;
  transition:transform var(--hover-ease), border-color var(--hover-ease), box-shadow var(--hover-ease);
}
.gm-step:hover{transform:translateY(-5px);border-color:var(--accent-indigo);box-shadow:0 14px 40px var(--glow-indigo);}
.gm-step .n{
  display:inline-flex;align-items:center;justify-content:center;
  width:44px;height:44px;border-radius:12px;
  background:var(--brand-gradient);color:#fff;
  font-weight:800;font-size:1.15rem;
  margin-bottom:1rem;
}
.gm-step h3{font-size:1.08rem;margin-bottom:0.5rem;color:var(--text-primary);}
.gm-step p{font-size:var(--fs-200);}
.gm-step .gm-code{
  display:inline-block;margin-top:0.8rem;
  font-family:var(--font-mono);font-size:0.84rem;
  color:var(--accent-cyan);
  background:rgba(6,182,212,0.08);
  border:1px solid rgba(6,182,212,0.25);
  border-radius:8px;padding:0.35rem 0.7rem;
}

/* ────────── DEMO VIVA del motor ────────── */
.gm-demo{
  margin:var(--section-gap-inner) auto 0;max-width:760px;
  background:var(--bg-card);
  border:1px solid var(--border-strong);
  border-radius:var(--radius-lg);
  padding:clamp(1.5rem, 4vw, 2.4rem);
  text-align:center;
  position:relative;
}
.gm-demo::before{
  content:'';position:absolute;inset:-1px;border-radius:var(--radius-lg);
  background:var(--brand-gradient);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;padding:1px;
  opacity:0.45;pointer-events:none;
}
.gm-demo-label{
  font-family:var(--font-mono);
  font-size:0.66rem;letter-spacing:0.24em;text-transform:uppercase;
  color:var(--accent-cyan);margin-bottom:1.1rem;
  display:flex;align-items:center;justify-content:center;gap:0.5rem;
}
.gm-demo-label .dot{
  width:7px;height:7px;border-radius:50%;background:var(--accent-cyan);
  box-shadow:0 0 10px var(--accent-cyan);
  animation:gmPulse 2.4s ease-in-out infinite;
}
@keyframes gmPulse{0%,100%{opacity:1;}50%{opacity:0.35;}}
.gm-demo-input{
  width:100%;max-width:420px;
  background:var(--bg-base);
  border:1px solid var(--border-strong);
  border-radius:16px;
  padding:1rem 1.3rem;
  color:var(--text-primary);
  font-family:var(--font-mono);
  font-size:clamp(1.2rem, 3vw, 1.6rem);
  letter-spacing:0.18em;
  text-align:center;
  outline:none;
  transition:border-color var(--hover-ease), box-shadow var(--hover-ease);
}
.gm-demo-input::placeholder{
  font-family:var(--font-body);font-size:0.95rem;letter-spacing:0;
  color:var(--text-muted);
}
.gm-demo-input:focus{
  border-color:var(--accent-indigo);
  box-shadow:0 0 0 4px var(--glow-indigo);
}
.gm-demo-hint{margin-top:0.6rem;font-size:var(--fs-100);color:var(--text-muted);}
.gm-demo-error{
  margin-top:0.9rem;font-size:var(--fs-200);color:var(--accent-amber);
  min-height:1.3em;
}
.gm-demo-result{
  display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;
  gap:0.8rem;margin-top:1.6rem;min-height:118px;
}
.gm-peg-card{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:0.15rem;
  min-width:96px;
  background:var(--bg-elevated);
  border:1px solid var(--border-strong);
  border-radius:14px;
  padding:0.9rem 1rem;
  animation:gmFlip 280ms cubic-bezier(0.2, 0.7, 0.3, 1) both;
  transform-origin:center 70%;
  will-change:transform, opacity;
}
@keyframes gmFlip{
  from{transform:perspective(600px) rotateX(72deg) scale(0.92);opacity:0;}
  to{transform:perspective(600px) rotateX(0) scale(1);opacity:1;}
}
.gm-peg-card .d{
  font-family:var(--font-mono);font-size:0.74rem;
  color:var(--accent-cyan);letter-spacing:0.14em;
}
.gm-peg-card .e{font-size:1.7rem;line-height:1.2;}
.gm-peg-card .w{
  font-weight:800;font-size:1.02rem;color:var(--text-primary);
  letter-spacing:0.03em;
}
.gm-demo-story{
  margin-top:1.2rem;font-size:var(--fs-400);font-weight:600;color:var(--text-primary);
}
.gm-demo-story-note{margin-top:0.35rem;font-size:var(--fs-200);color:var(--text-secondary);}
.gm-demo-proof{
  margin-top:1.6rem;padding-top:1.4rem;
  border-top:1px solid var(--border);
  font-size:var(--fs-200);color:var(--text-secondary);
}
.gm-demo-proof .btn{margin-top:0.9rem;}

/* ────────── Teaser de la Tabla Maestra (6 fichas) ────────── */
.gm-teaser{
  margin-top:var(--section-gap-inner);
  text-align:center;
}
.gm-teaser .t{
  font-size:var(--fs-200);color:var(--text-secondary);margin-bottom:1.1rem;
}
.gm-teaser-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0.7rem;
  max-width:560px;margin:0 auto;
}
@media (min-width:640px){.gm-teaser-grid{grid-template-columns:repeat(6,1fr);}}
.gm-ficha{
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:12px;
  padding:0.7rem 0.4rem;
  display:flex;flex-direction:column;align-items:center;gap:0.1rem;
  transition:transform var(--hover-ease), border-color var(--hover-ease), box-shadow var(--hover-ease);
}
.gm-ficha:hover{transform:translateY(-3px);border-color:var(--accent-cyan);box-shadow:0 10px 26px var(--glow-cyan);}
.gm-ficha .n{font-family:var(--font-mono);font-size:0.68rem;color:var(--accent-cyan);}
.gm-ficha .e{font-size:1.3rem;line-height:1.3;}
.gm-ficha .w{font-size:0.78rem;font-weight:800;color:var(--text-primary);}
.gm-teaser .more{
  display:inline-block;margin-top:1.1rem;
  font-size:var(--fs-200);
}

/* ────────── CTA intermedio ────────── */
.gm-midcta{
  padding:calc(var(--section-pad) * 0.55) 1.4rem;
}
.gm-midcta .inner{
  max-width:var(--max-tight);margin:0 auto;
  background:linear-gradient(135deg, rgba(79,70,229,0.16), rgba(124,58,237,0.10));
  border:1px solid var(--border-strong);
  border-radius:var(--radius-lg);
  padding:clamp(1.8rem, 5vw, 2.6rem);
  display:flex;flex-direction:column;align-items:center;gap:1.1rem;
  text-align:center;
}
@media (min-width:760px){
  .gm-midcta .inner{flex-direction:row;justify-content:space-between;text-align:left;}
}
.gm-midcta p{font-size:var(--fs-500);font-weight:600;color:var(--text-primary);margin:0;}

/* ────────── Para quién: 2 tarjetas ────────── */
.gm-aud{
  display:grid;grid-template-columns:1fr;gap:1.4rem;margin-top:var(--section-gap-inner);
}
@media (min-width:760px){.gm-aud{grid-template-columns:1fr 1fr;}}
.gm-aud-card{
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  padding:2.2rem 1.8rem;
  transition:transform var(--hover-ease), border-color var(--hover-ease), box-shadow var(--hover-ease);
}
.gm-aud-card:hover{transform:translateY(-5px);}
.gm-aud-card.indigo:hover{border-color:var(--accent-indigo);box-shadow:0 14px 40px var(--glow-indigo);}
.gm-aud-card.cyan:hover{border-color:var(--accent-cyan);box-shadow:0 14px 40px var(--glow-cyan);}
.gm-aud-card .tag{
  display:inline-block;font-family:var(--font-mono);
  font-size:0.64rem;letter-spacing:0.22em;text-transform:uppercase;
  padding:0.35rem 0.8rem;border-radius:50px;margin-bottom:1.1rem;
}
.gm-aud-card.indigo .tag{background:rgba(79,70,229,0.14);color:#a5b4fc;border:1px solid rgba(79,70,229,0.4);}
.gm-aud-card.cyan .tag{background:rgba(6,182,212,0.10);color:var(--accent-cyan);border:1px solid rgba(6,182,212,0.35);}
.gm-aud-card h3{font-size:1.3rem;margin-bottom:0.7rem;color:var(--text-primary);}
.gm-aud-card p{font-size:var(--fs-300);}
.gm-aud-card ul{list-style:none;margin-top:1.2rem;}
.gm-aud-card ul li{
  padding:0.45rem 0;font-size:var(--fs-200);color:var(--text-secondary);
  display:flex;gap:0.6rem;align-items:baseline;
}
.gm-aud-card.indigo ul li::before{content:'▸';color:var(--accent-indigo);}
.gm-aud-card.cyan ul li::before{content:'▸';color:var(--accent-cyan);}

/* ────────── El libro ────────── */
.gm-book{
  display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:center;
  margin-top:var(--section-gap-inner);
}
@media (min-width:820px){.gm-book{grid-template-columns:0.8fr 1.2fr;}}
.gm-book-cover{
  aspect-ratio:2/3;max-width:280px;margin:0 auto;width:100%;
  border-radius:14px;
  background:
    linear-gradient(var(--bg-elevated),var(--bg-elevated)) padding-box,
    var(--brand-gradient) border-box;
  border:2px solid transparent;
  box-shadow:0 24px 60px rgba(0,0,0,0.55), 0 0 60px var(--glow-indigo);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:0.8rem;padding:1.5rem;text-align:center;
}
.gm-book-cover .mark{font-size:2rem;color:var(--accent-amber);}
.gm-book-cover .t{font-weight:800;font-size:1.15rem;color:var(--text-primary);line-height:1.3;}
.gm-book-cover .s{font-family:var(--font-mono);font-size:0.66rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--text-muted);}
.gm-book-info h2{margin-bottom:1rem;}
.gm-book-info p{margin-bottom:0.6rem;}
.gm-book-info .btn-amber{margin-top:1.6rem;}

/* ────────── Planes (2 tarjetas) ────────── */
.gm-plans{
  display:grid;grid-template-columns:1fr;gap:1.5rem;
  max-width:840px;margin:var(--section-gap-inner) auto 0;
}
@media (min-width:760px){.gm-plans{grid-template-columns:1fr 1fr;}}
.gm-plan-micro{
  display:block;
  font-size:0.74rem;color:var(--text-muted);
  margin:-0.2rem 0 0.2rem 1.45rem;
  line-height:1.45;
}

/* ────────── Franja Bancos gratis ────────── */
.gm-bancos{
  margin:var(--section-gap-inner) auto 0;max-width:var(--max-tight);
  background:linear-gradient(135deg, rgba(6,182,212,0.10), rgba(79,70,229,0.08));
  border:1px solid rgba(6,182,212,0.35);
  border-radius:var(--radius-lg);
  padding:clamp(1.8rem, 5vw, 2.6rem);
  display:grid;grid-template-columns:1fr;gap:1.4rem;align-items:center;
  text-align:center;
}
@media (min-width:820px){
  .gm-bancos{grid-template-columns:1.4fr auto;text-align:left;}
}
.gm-bancos h3{color:var(--text-primary);margin-bottom:0.5rem;}
.gm-bancos p{font-size:var(--fs-300);margin-bottom:0.7rem;}
.gm-bancos ul{
  list-style:none;display:flex;flex-wrap:wrap;gap:0.5rem 1.2rem;
  justify-content:center;
}
@media (min-width:820px){.gm-bancos ul{justify-content:flex-start;}}
.gm-bancos ul li{
  font-size:var(--fs-200);color:var(--text-secondary);
  display:flex;align-items:baseline;gap:0.45rem;
}
.gm-bancos ul li::before{content:'✓';color:var(--accent-cyan);font-weight:800;}
.gm-bancos .cta{justify-self:center;}

/* ────────── Página /banco ────────── */
.gm-banco-hero{
  position:relative;padding:5rem 1.4rem 3rem;text-align:center;overflow:hidden;
}
.gm-banco-hero .inner{position:relative;z-index:3;max-width:720px;margin:0 auto;}
.gm-trust{
  display:inline-flex;align-items:center;gap:0.5rem;
  margin-top:1.2rem;font-size:var(--fs-200);color:var(--text-secondary);
  background:var(--bg-card);border:1px solid var(--border);
  border-radius:50px;padding:0.55rem 1.2rem;
}
.gm-trust .dot{
  width:7px;height:7px;border-radius:50%;background:var(--accent-cyan);
  box-shadow:0 0 10px var(--accent-cyan);flex:none;
}
.gm-lead-form{
  display:flex;flex-direction:column;gap:0.7rem;
  max-width:520px;margin:2.4rem auto 0;
}
@media (min-width:560px){
  .gm-lead-form{
    flex-direction:row;align-items:stretch;
    background:var(--bg-card);border:1px solid var(--border-strong);
    border-radius:50px;padding:0.4rem 0.4rem 0.4rem 1.4rem;
    transition:box-shadow var(--hover-ease), border-color var(--hover-ease);
  }
  .gm-lead-form:focus-within{border-color:var(--accent-indigo);box-shadow:0 0 0 4px var(--glow-indigo);}
  .gm-lead-form input[type=email]{border:none;background:transparent;padding:0;}
}
.gm-lead-form input[type=email]{
  flex:1;min-width:0;outline:none;
  background:var(--bg-card);border:1px solid var(--border-strong);
  border-radius:50px;padding:0.9rem 1.3rem;
  color:var(--text-primary);font-family:var(--font-body);font-size:var(--fs-300);
}
.gm-lead-form input[type=email]::placeholder{color:var(--text-muted);}
.gm-lead-form button{
  border:none;cursor:pointer;border-radius:50px;
  background:#FFD600;color:#1a1500;
  font-family:var(--font-body);font-weight:800;font-size:0.9rem;
  padding:0.9rem 1.6rem;white-space:nowrap;
  transition:transform var(--hover-ease), box-shadow var(--hover-ease);
}
.gm-lead-form button:hover{transform:scale(1.02);box-shadow:0 8px 28px var(--glow-amber);}
.gm-form-msg{
  max-width:520px;margin:1.2rem auto 0;
  border-radius:14px;padding:0.9rem 1.2rem;font-size:var(--fs-200);
}
.gm-form-msg.ok{background:rgba(6,182,212,0.10);border:1px solid rgba(6,182,212,0.4);color:var(--accent-cyan);}
.gm-form-msg.err{background:rgba(255,214,0,0.08);border:1px solid rgba(255,214,0,0.35);color:var(--accent-amber);}
.gm-privacy-note{margin-top:0.9rem;font-size:var(--fs-100);color:var(--text-muted);}

.gm-banco-list{
  display:grid;grid-template-columns:1fr;gap:1.2rem;
  max-width:840px;margin:var(--section-gap-inner) auto 0;
}
@media (min-width:720px){.gm-banco-list{grid-template-columns:1fr 1fr;}}
.gm-banco-item{
  background:var(--bg-card);border:1px solid var(--border);
  border-radius:var(--radius-lg);padding:1.6rem 1.5rem;
  display:flex;gap:1rem;align-items:flex-start;
  transition:transform var(--hover-ease), border-color var(--hover-ease), box-shadow var(--hover-ease);
}
.gm-banco-item:hover{transform:translateY(-4px);border-color:var(--accent-indigo);box-shadow:0 12px 32px var(--glow-indigo);}
.gm-banco-item .ic{
  flex:none;width:42px;height:42px;border-radius:12px;
  background:var(--brand-gradient);
  display:flex;align-items:center;justify-content:center;font-size:1.2rem;
}
.gm-banco-item h3{font-size:1rem;color:var(--text-primary);margin-bottom:0.3rem;}
.gm-banco-item p{font-size:var(--fs-200);}
.gm-banco-item .qty{color:var(--accent-amber);font-weight:600;}

/* Honeypot anti-bots: fuera de pantalla, invisible para humanos */
.gm-hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
