/* =============================================================
   RÜM index — conversion blocks
   Trust band · Free + FAQ · Sticky CTA · Hero dual CTA
   Hereda tokens de rum_index_landing.css (--brand, --text, --muted…)
   ============================================================= */

/* ---------- Hero: grupo de CTAs dual ---------- */
.story-hero__cta-group{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  align-items:center;
}
.story-hero__cta--ghost{
  background:transparent;
  border:1px solid rgba(246,168,104,.55);
  color:var(--accent-text,#ffd2ab);
  font-family:'Baloo 2',system-ui,sans-serif;
  font-weight:800;
  border-radius:999px;
  box-shadow:none;
}
.story-hero__cta--ghost:hover,
.story-hero__cta--ghost:focus-visible{
  background:rgba(246,168,104,.12);
  border-color:#ffbe86;
}

/* ---------- Trust band ---------- */
.story-trust__shell{display:grid;gap:30px}
.story-trust__header{max-width:880px;margin-bottom:6px}

.story-trust__stack-lede{
  color:var(--muted);
  font-size:13px;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
  margin:0;
}
.story-trust__stack{
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  gap:10px 12px;
  margin:-12px 0 4px;
  padding:0;
}
.story-trust__chip{
  padding:9px 16px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
  color:rgba(248,250,252,.86);
  font-weight:600;
  font-size:14px;
}

.story-trust__stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin:0;
  padding:24px;
  border-radius:var(--radius);
  border:1px solid var(--line);
  background:var(--bg-panel);
}
.story-trust__stat{display:grid;gap:6px;text-align:center}
.story-trust__stat-v{
  font-family:'Baloo 2',system-ui,sans-serif;
  font-size:clamp(26px,3.4vw,42px);
  font-weight:800;
  line-height:1;
  background:var(--accent-grad);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.story-trust__stat-k{
  color:var(--muted);
  font-size:13px;
  line-height:1.4;
}

.story-trust__pillars{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.story-trust__pillar{
  display:grid;
  gap:10px;
  padding:22px;
  border-radius:var(--radius);
  border:1px solid var(--line);
  background:var(--bg-panel);
}
.story-trust__pillar-ico{
  width:42px;height:42px;
  display:grid;place-items:center;
  border-radius:12px;
  border:1px solid var(--accent-border-strong);
  color:var(--accent-text);
  background:rgba(246,168,104,.08);
}
.story-trust__pillar-ico svg{width:22px;height:22px}
.story-trust__pillar-t{
  font-family:'Baloo 2',system-ui,sans-serif;
  font-size:17px;
  color:var(--text);
}
.story-trust__pillar-d{color:var(--muted);font-size:14px;line-height:1.6}

.story-trust__early{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:14px 20px;
  padding:22px 26px;
  border-radius:var(--radius);
  border:1px solid var(--accent-border-strong);
  background:var(--accent-grad-soft);
}
.story-trust__early-badge{
  padding:6px 12px;
  border-radius:999px;
  background:rgba(246,168,104,.16);
  border:1px solid var(--accent-border-strong);
  color:var(--accent-text);
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.story-trust__early-copy{
  flex:1 1 320px;
  color:var(--text);
  font-size:15px;
  line-height:1.6;
  margin:0;
}
.story-trust__early-cta{flex:0 0 auto}

.story-trust__mcp{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:14px 20px;
  margin:28px 0 8px;
  padding:20px 24px;
  border-radius:var(--radius);
  border:1px solid var(--accent-border-strong);
  background:var(--bg-panel);
}
.story-trust__mcp-copy{flex:1 1 280px}
.story-trust__mcp-badge{
  display:inline-block;
  padding:5px 11px;
  border-radius:999px;
  background:rgba(246,168,104,.14);
  border:1px solid var(--accent-border-strong);
  color:var(--accent-text);
  font-size:11px;
  font-weight:700;
  letter-spacing:.07em;
  text-transform:uppercase;
  margin-bottom:8px;
}
.story-trust__mcp-text{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.6;
}
.story-trust__mcp-cta{flex:0 0 auto}

/* Link "ver portafolio" bajo los stats del bloque de confianza */
.story-trust__stats-link{
  justify-self:start;
  color:var(--accent-text);
  font-weight:700;
  font-size:14px;
  text-decoration:none;
}
.story-trust__stats-link:hover,
.story-trust__stats-link:focus-visible{color:var(--accent-text-hover);text-decoration:underline}

/* ---------- Free + FAQ ---------- */
.story-free__shell{display:grid;gap:28px}
.story-free__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.story-free__card{
  display:grid;
  gap:10px;
  padding:24px;
  border-radius:var(--radius);
  border:1px solid var(--line);
  background:var(--bg-panel);
}
.story-free__check{
  width:38px;height:38px;
  display:grid;place-items:center;
  border-radius:50%;
  color:var(--emerald);
  border:1px solid rgba(88,213,183,.4);
  background:rgba(88,213,183,.1);
}
.story-free__check svg{width:20px;height:20px}
.story-free__card-t{
  font-family:'Baloo 2',system-ui,sans-serif;
  font-size:18px;
  color:var(--text);
}
.story-free__card-d{color:var(--muted);font-size:14px;line-height:1.6}

.story-free__cta-row{display:flex;flex-wrap:wrap;gap:14px}

.story-faq{
  margin-top:8px;
  display:grid;
  gap:10px;
  max-width:860px;
}
.story-faq__title{
  font-family:'Baloo 2',system-ui,sans-serif;
  font-size:20px;
  color:var(--text);
  margin-bottom:4px;
}
.story-faq__item{
  border:1px solid var(--line);
  border-radius:var(--radius-sm);
  background:var(--bg-panel);
  overflow:hidden;
}
.story-faq__item[open]{border-color:var(--accent-border-strong)}
.story-faq__q{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:16px 20px;
  font-family:'Baloo 2',system-ui,sans-serif;
  font-size:16px;
  color:var(--text);
}
.story-faq__q::-webkit-details-marker{display:none}
.story-faq__icon{
  position:relative;
  width:16px;height:16px;
  flex:0 0 auto;
}
.story-faq__icon::before,
.story-faq__icon::after{
  content:"";
  position:absolute;
  background:var(--accent-text);
  border-radius:2px;
  transition:transform .25s ease, opacity .25s ease;
}
.story-faq__icon::before{top:7px;left:0;width:16px;height:2px}
.story-faq__icon::after{top:0;left:7px;width:2px;height:16px}
.story-faq__item[open] .story-faq__icon::after{transform:scaleY(0);opacity:0}
.story-faq__a{
  padding:0 20px 18px;
  color:var(--muted);
  font-size:14.5px;
  line-height:1.7;
}

/* ---------- Sticky CTA ---------- */
.rum-sticky-cta{
  position:fixed;
  left:50%;
  bottom:20px;
  z-index:60;
  display:flex;
  align-items:center;
  gap:14px;
  max-width:calc(100% - 28px);
  padding:12px 14px 12px 20px;
  border-radius:999px;
  border:1px solid var(--accent-border-strong);
  /* Fondo opaco (sin backdrop-filter): evita repintar la pantalla en cada
     frame de scroll sobre el WebGL — esa era la causa del "baile". */
  background:linear-gradient(180deg, rgba(17,22,38,.98), rgba(10,13,24,.99));
  box-shadow:0 18px 48px rgba(2,8,23,.5);
  opacity:0;
  /* Solo compositamos transform/opacity en su propia capa. */
  will-change:transform, opacity;
  transform:translate(-50%,140%) translateZ(0);
  contain:layout paint style;
  transition:transform .42s cubic-bezier(.2,.85,.2,1), opacity .42s ease;
}
.rum-sticky-cta.is-on{transform:translate(-50%,0) translateZ(0);opacity:1}
.rum-sticky-cta__text{
  color:var(--text);
  font-size:14px;
  font-weight:600;
  white-space:nowrap;
}
.rum-sticky-cta__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 18px;
  border-radius:999px;
  background:var(--btn-grad,linear-gradient(180deg,#dbb896 0%,#d6b08c 48%,#c5a07d 100%));
  color:#fff;
  font-family:'Baloo 2',system-ui,sans-serif;
  font-weight:800;
  font-size:14px;
  text-decoration:none;
  white-space:nowrap;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22);
  transition:transform .2s ease, box-shadow .2s ease;
}
.rum-sticky-cta__btn:hover,
.rum-sticky-cta__btn:focus-visible{
  transform:translateY(-1px);
  box-shadow:0 10px 26px rgba(214,176,140,.5),inset 0 1px 0 rgba(255,255,255,.28);
}
.rum-sticky-cta__btn--ghost{
  background:transparent;
  border:1px solid var(--accent-border-strong);
  color:var(--accent-text);
}
.rum-sticky-cta__btn--ghost:hover,
.rum-sticky-cta__btn--ghost:focus-visible{
  box-shadow:none;
  background:rgba(246,168,104,.1);
}
.rum-sticky-cta__close{
  width:30px;height:30px;
  flex:0 0 auto;
  border:none;
  background:rgba(255,255,255,.06);
  color:var(--muted);
  border-radius:50%;
  font-size:18px;
  line-height:1;
  cursor:pointer;
  transition:background .2s ease, color .2s ease;
}
.rum-sticky-cta__close:hover{background:rgba(255,255,255,.12);color:var(--text)}

/* ---------- Responsive ---------- */
@media (max-width:880px){
  .story-trust__stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .story-trust__pillars,
  .story-free__grid{grid-template-columns:1fr}
}
@media (max-width:560px){
  .rum-sticky-cta__text{display:none}
  .rum-sticky-cta{padding:10px 12px 10px 14px}
}
@media (prefers-reduced-motion:reduce){
  .rum-sticky-cta{transition:opacity .2s ease}
  .rum-sticky-cta.is-on{transform:translate(-50%,0) translateZ(0)}
}
