/* =========================
   RM Landing (mejores-tarotistas-y-videntes)
   ========================= */

.rm-wrap{
  max-width: 980px;
  margin: 0 auto;
  padding: 18px 16px;
}

.rm-hero{
  padding: 18px 0 8px;
}

.rm-hero-grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  align-items: center;
}

.rm-h1{
  font-size: 28px;
  line-height: 1.12;
  margin: 0 0 10px;
  font-weight: 900;
  letter-spacing: .2px;
  text-transform: uppercase;
}

.rm-sub{
  font-size: 16px;
  opacity: .9;
  margin: 0 0 14px;
}

.rm-actions{
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin: 12px 0 6px;
}

.rm-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 16px;
  border-radius: 12px;
  text-decoration: none;
  font-weight: 900;
  min-width: 220px;
  border: 0;
  -webkit-tap-highlight-color: transparent;
}

.rm-btn-call{ background:#ffcc00; color:#111; }
.rm-btn-wa{ background:#1fb85a; color:#fff; }

.rm-btn:focus{
  outline: 3px solid rgba(24,93,197,0.25);
  outline-offset: 2px;
}

/* Evita hover azul del theme */
.rm-btn,
.rm-btn:hover,
.rm-btn:visited,
.rm-btn:active{
  color: inherit;
  text-decoration: none;
}

.rm-btn-wa:hover,
.rm-btn-wa:focus{ background:#179c4b; color:#fff; }

.rm-btn-call:hover,
.rm-btn-call:focus{ background:#f1c100; color:#111; }

.rm-micro{
  font-size: 10px;
  opacity: .86;
  margin: 6px 0 0;
  line-height: 1.35;
}

.rm-divider{
  height: 1px;
  background: rgba(0,0,0,0.08);
  margin: 18px 0;
}

.rm-cards{
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin: 18px 0;
}

.rm-card{
  border: 1px solid rgba(0,0,0,0.10);
  border-radius: 14px;
  padding: 14px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(0,0,0,0.05);
}

.rm-card h3{
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 900;
  text-transform: uppercase;
}

.rm-card p{ margin: 0 0 10px; }

.rm-trust{
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin: 18px 0;
}

.rm-badge{
  border: 1px dashed rgba(0,0,0,0.20);
  border-radius: 14px;
  padding: 12px;
  background: #fafafa;
}

.rm-badge strong{ font-weight: 900; }
.rm-badge span{ opacity: .85; }

.rm-chips{
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 10px 0 0;
}

.rm-chip{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 12px;
  border-radius: 999px;
  background: #f2f2f2;
  color: #111;
  text-decoration: none;
  font-weight: 800;
  font-size: 13px;
}

.rm-chip:hover{ background:#e9e9e9; color:#111; }
.rm-chip:active{ transform: scale(.99); }

.rm-links-title{
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 900;
  text-transform: uppercase;
}

.rm-links .rm-btn{
  min-width: 0;
  background: #f2f2f2;
  color: #111;
  font-weight: 900;
}

.rm-links .rm-btn:hover{
  background: #e9e9e9;
  color: #111;
}

details.rm-details{
  border: 2px solid rgba(24,93,197,0.25);
  border-radius: 12px;
  padding: 12px;
  background: #fff;
  margin: 12px 0;
}

details.rm-details summary{
  cursor: pointer;
  font-weight: 900;
  color: #0b1a3a;
}

.rm-details .rm-micro{ margin: 8px 0 0; }

/* Hero image */
.rm-hero-media img{
  width: 100%;
  max-width: 360px;
  border-radius: 18px;
  display: block;
  margin: 0 auto;
  box-shadow: 0 10px 30px rgba(0,0,0,0.12);
}

.rm-hero-caption{
  text-align: center;
  font-size: 12px;
  opacity: .85;
  margin-top: 8px;
  font-weight: 800;
}

/* Texto largo/corto del botón WhatsApp */
.rm-wa-short{ display:none; }
.rm-wa-long{ display:inline; }

/* Sticky solo móvil */
.rm-sticky{
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  background: #0b1a3a;
  color: #fff;
  padding: 10px 12px;
  box-shadow: 0 -10px 30px rgba(0,0,0,0.12);
}

.rm-sticky-inner{
  max-width: 980px;
  margin: 0 auto;
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

/* ✅ Importante: los 2 botones del sticky comparten fila */
.rm-sticky-inner > a.rm-btn{
  flex: 1 1 calc(50% - 10px);
  min-width: 0;           /* permite encoger y quedar en 2 columnas */
}

.rm-sticky .rm-btn{
  padding: 12px 14px;
  border-radius: 12px;
}

.rm-sticky-meta{
  font-size: 12px;
  opacity: .88;
  margin-top: 4px;
  text-align: center;
  width: 100%;
}

@media (min-width: 760px){
  .rm-h1{ font-size: 38px; }
  .rm-sub{ font-size: 18px; }
  .rm-cards{ grid-template-columns: 1fr 1fr; }
  .rm-trust{ grid-template-columns: 1fr 1fr 1fr; }
  .rm-sticky{ display: none; } /* Desktop sin sticky */

  .rm-hero-grid{ grid-template-columns: 1.2fr .8fr; }
  .rm-hero-media{
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }
  .rm-hero-media img{ margin: 0; }
  .rm-hero-caption{ text-align: right; }
}

/* Móvil: CTAs de SECCIONES/DETAILS a 100% y WhatsApp corto
   (✅ NO afecta al sticky inferior) */
@media (max-width: 520px){
  .rm-actions .rm-btn{ min-width: 100%; }  /* <-- cambio clave */
  .rm-wa-long{ display:none; }
  .rm-wa-short{ display:inline; }
}

/* Reserva espacio SOLO cuando existe sticky de landings (móvil) */
@media (max-width: 767px){
  body.rm-has-rm-sticky{
    padding-bottom: calc(160px + env(safe-area-inset-bottom));
  }
}
/* FIX clicks (por si el theme mete overlays) */
.rm-wrap,
.rm-hero,
.rm-actions,
.rm-btn,
details.rm-details,
details.rm-details summary,
details.rm-details *{
  position: relative;
  z-index: 9999;
  pointer-events: auto;
}

.rm-wrap::before,
.rm-wrap::after,
.rm-hero::before,
.rm-hero::after{
  content: none !important;
}

/* =========================================================
   HOME + MOOVE: cuando el modal está abierto, nada de la landing
   puede ponerse por encima (evita “chips/tarjetas” colándose)
   ========================================================= */
body.rm-moove-modal-open .rm-wrap,
body.rm-moove-modal-open .rm-wrap *,
body.rm-moove-modal-open .rm-sticky{
  z-index: auto !important;
}

/* Subida extra del modal por si algún stack raro aparece en HOME */
body.rm-moove-modal-open #moove_gdpr_cookie_modal,
body.rm-moove-modal-open .moove_gdpr_cookie_modal_wrapper,
body.rm-moove-modal-open #moove_gdpr_cookie_settings_container,
body.rm-moove-modal-open .moove_gdpr_cookie_settings_container{
  z-index: 2147483647 !important;
}

/* HOME — asegurar que el header/menú quede por encima de covers y bloques */
body.home #masthead,
body.home header,
body.home .site-header,
body.home .nv-navbar{
  position: relative !important;
  z-index: 2147482000 !important;
}

/* ==============================
   RM Sticky inferior — Legal/Promo (details)
   ✅ centrado al abrir
   ============================== */
.rm-sticky details.rm-sticky-legal{
  margin-top: 8px;
  color: #fff;
  font-size: 13px;
  width: 100%;
  text-align: center;     /* <-- centrado */
}

.rm-sticky details.rm-sticky-legal summary{
  cursor: pointer;
  font-weight: 800;
  list-style: none;
  text-align: center;     /* <-- centrado */
}

.rm-sticky details.rm-sticky-legal summary::marker{ display:none; }

.rm-sticky .rm-legal-body{
  margin-top: 8px;
  font-size: 12.5px;
  line-height: 1.35;
  opacity: .95;
  text-align: center;     /* <-- centrado */
}

.rm-sticky .rm-legal-promo{
  display: inline-block;
  margin-bottom: 6px;
  background: #f5c400;
  color: #0b2e6f;
  font-weight: 900;
  padding: 6px 10px;
  border-radius: 8px;
}

.rm-sticky .rm-legal-promo span{
  opacity: .95;
  font-weight: 700;
}

.rm-sticky .rm-legal-rest{ opacity: .95; text-align:center; }

/* =========================================================
   RM LANDINGS — FIX MENÚ (dropdown) + BOTONES DETAILS EN MÓVIL
   - Como rm-landings.css solo se carga en landings, no afecta al resto
   ========================================================= */

/* A) Menú desplegable SIEMPRE por encima del contenido (landings) */
#masthead,
header,
.site-header,
.nv-navbar{
  position: relative !important;
  z-index: 2147482000 !important;
}

/* Submenús/menú móvil por encima también */
#masthead .sub-menu,
#masthead .nv-nav-wrap,
#masthead .nv-nav-container,
#masthead nav,
.nv-navbar .sub-menu,
.nv-navbar .nv-nav-wrap{
  position: relative !important;
  z-index: 2147482001 !important;
}

/* El contenido de la landing se queda abajo */
.rm-wrap,
.rm-hero,
.rm-section,
.rm-grid2,
.rm-links,
.rm-details,
.rm-card{
  position: relative;
  z-index: 1;
}

/* B) Details “Otras opciones.” — en móvil: botones 100% y sin overflow */
@media (max-width: 767px){
  .rm-details-body .rm-actions,
  .rm-hero-copy .rm-actions{
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .rm-btn{
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    text-align: center !important;
  }

  /* Por si algún botón tiene min-width heredado */
  .rm-btn.rm-btn-call,
  .rm-btn.rm-btn-wa{
    min-width: 0 !important;
  }
}

/* =========================
   FIX móvil: botones largos dentro de <details> (806 / USA)
   Evita que "Llamar 1 (786) 209 178" se salga del panel
   ========================= */
@media (max-width: 520px){
  /* Dentro del desplegable, que cada CTA ocupe una línea */
  .rm-details .rm-actions{
    display: block;
    width: 100%;
  }

  /* El botón debe poder encoger y/o partir línea */
  .rm-details .rm-btn{
    display: block;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    white-space: normal;
    line-height: 1.15;
    text-align: center;
  }
}

/* =========================================================
   RM LANDINGS — Details (806 / USA)
   Desktop/tablet: botones centrados y “contenido”
   Móvil: 100% ancho + separación
   ========================================================= */

/* Base: el contenedor de CTAs dentro del <details> */
details.rm-details .rm-actions{
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100%;
}

/* Desktop/Tablet: no 100% ancho, sino “contenido” y centrados */
@media (min-width: 521px){
  details.rm-details .rm-actions .rm-btn-call{
    width: auto !important;
    max-width: 360px !important;
    min-width: 260px !important;
    margin: 0 !important;
    white-space: nowrap;
  }
}

/* Móvil: 100% ancho y con aire entre botones */
@media (max-width: 520px){
  details.rm-details .rm-actions{
    display: block !important;
  }

  details.rm-details .rm-actions .rm-btn-call,
  details.rm-details .rm-actions .rm-btn-wa{
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  details.rm-details .rm-actions .rm-btn-call{
    margin-bottom: 10px !important;
  }
}
/* =========================================
   RM — Legales (Entradas) / single-rm-legal.php
   ========================================= */

.rm-legal-page .rm-wrap{
  max-width: 980px;
  margin: 0 auto;
  padding: 28px 18px;
  box-sizing: border-box;
}

/* Ajuste móvil */
@media (max-width: 600px){
  .rm-legal-page .rm-wrap{
    padding: 22px 16px;
  }
}

.rm-legal-page h1,
.rm-legal-page h2,
.rm-legal-page h3{
  margin: 0 0 14px;
  line-height: 1.2;
}

.rm-legal-page p{
  margin: 0 0 12px;
  line-height: 1.75;
}

/* Listas: que no se peguen al borde */
.rm-legal-page ul,
.rm-legal-page ol{
  margin: 0 0 14px;
  padding-left: 22px;
}

.rm-legal-page li{
  margin: 6px 0;
}
/* =========================================
   RM — informacion-legal.php
   ========================================= */
    .rm-legal-hub{
      max-width: 980px;
      margin: 0 auto;
    }
    .rm-legal-hub .rm-legal-kicker{
      font-size: 14px;
      opacity: .75;
      margin: 0 0 8px;
    }
    .rm-legal-hub h1{
      margin: 0 0 10px;
      line-height: 1.15;
    }
    .rm-legal-hub .rm-legal-lead{
      font-size: 16px;
      line-height: 1.65;
      opacity: .92;
      margin: 0 0 18px;
    }

    .rm-legal-grid{
      display: grid;
      grid-template-columns: 1fr;
      gap: 12px;
      margin: 18px 0 18px;
    }
    @media (min-width: 720px){
      .rm-legal-grid{
        grid-template-columns: 1fr 1fr;
        gap: 14px;
      }
    }

 /* =========================
   Landing informacion-legal.php
   ========================= */

.rm-legal-card{
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 14px;
  padding: 14px 14px;
  background: #fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
}
.rm-legal-card h3{
  margin: 0 0 6px;
  font-size: 16px;
  line-height: 1.25;
}
.rm-legal-card p{
  margin: 0 0 10px;
  font-size: 14px;
  line-height: 1.55;
  opacity: .88;
}
.rm-legal-card a{
  display: inline-block;
  font-weight: 700;
  text-decoration: underline;
}

/* TARJETA DESTACADA: Soporte y reclamaciones */
.rm-legal-card--support{
  border: 1px solid rgba(30,95,191,.35);
  background: rgba(30,95,191,.06);
}
.rm-legal-card--support h3{
  color: #0f2f66;
}
.rm-legal-card--support a{
  text-decoration: none;
  border-bottom: 2px solid rgba(30,95,191,.65);
}

/* (Opcional) si mantienes el bloque de nota, queda más sutil */
.rm-legal-note{
  margin-top: 18px;
  padding: 12px 14px;
  border-radius: 12px;
  background: rgba(0,0,0,.04);
  font-size: 14px;
  line-height: 1.55;
}
 /* =========================
   Landing Hom Ruth — Bloque LLAMA AHORA (4 CTAs)
   ========================= */
.rm-landing2 .rm-llama{
  margin: 18px 0 26px;
}

.rm-landing2 .rm-llama__head{
  text-align: center;
  margin-bottom: 14px;
}

.rm-landing2 .rm-llama__title{
  margin: 0 0 6px;
  font-size: 20px;
  font-weight: 900;
  letter-spacing: .4px;
  text-transform: uppercase;
  color: #185DC5;
}

.rm-landing2 .rm-llama__lead{
  margin: 0;
  font-size: 14px;
  opacity: .9;
}

.rm-landing2 .rm-llama__grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin-top: 14px;
}

.rm-landing2 .rm-llamaCard{
  border: 1px solid rgba(0,0,0,0.10);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(0,0,0,0.05);
  padding: 14px;
  text-align: center;
}

.rm-landing2 .rm-llamaCard__kicker{
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .25px;
  opacity: .75;
}

.rm-landing2 .rm-llamaCard__big{
  font-size: 18px;
  font-weight: 900;
  margin-top: 6px;
}

.rm-landing2 .rm-llamaCard__btn{
  margin-top: 12px;
  width: 100%;
  min-width: 0;
  text-decoration: none;
}

/* Legales */
.rm-landing2 .rm-llamaCard__legal{
  margin: 10px 0 0;
  font-size: 11px;
  line-height: 1.35;
  opacity: .85;
}

/* Responsive: 2 columnas en tablet, 4 en desktop */
@media (min-width: 760px){
  .rm-landing2 .rm-llama__grid{
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1100px){
  .rm-landing2 .rm-llama__grid{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
/* Home Ruth — Bloque enlaces rápidos */
.rm-landing2 .rm-quickLinks .rm-links-title{
  color: #185DC5;
}

.rm-landing2 .rm-quickLinks .rm-micro{
  margin: 10px 0 0;
  color: rgba(24,93,197,.78);
  opacity: 1;
}
/* =========================
   Home Ruth — Bloque Formas de Pago (iconos)
   Reusa: rm-card, rm-tOnline__title, rm-tOnline__subtitle
   ========================= */
.rm-landing2 .rm-payHome{
  margin: 18px 0 26px;
}

.rm-landing2 .rm-payHome__head{
  text-align: center;
  margin: 0 0 18px;
}

.rm-landing2 .rm-payHome__subtitle{
  /* mismo estilo tipográfico que rm-tOnline__subtitle, pero azul más suave */
  color: rgba(24,93,197,.78);
}

.rm-landing2 .rm-payHome__grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 12px;
  align-items: start;
}

@media (min-width: 680px){
  .rm-landing2 .rm-payHome__grid{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1100px){
  .rm-landing2 .rm-payHome__grid{
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

.rm-landing2 .rm-payHome__item{
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 10px;
  text-decoration: none;
  color: inherit;
}

.rm-landing2 .rm-payHome__icon{
  width: 92px;
  height: 92px;
  transition: transform .12s ease;
}

.rm-landing2 .rm-payHome__icon img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.rm-landing2 .rm-payHome__item:hover .rm-payHome__icon{
  transform: translateY(-1px);
}

.rm-landing2 .rm-payHome__label{
  font-weight: 900;
  font-size: 15px;
  line-height: 1.15;
}

.rm-landing2 .rm-payHome__badge{
  display: inline-block;
  margin-top: -4px;
  padding: 4px 10px;
  border-radius: 6px;
  background: #185DC5;
  color: #fff;
  font-weight: 900;
  font-size: 12px;
  letter-spacing: .06em;
  text-transform: uppercase;
}
/* =========================
   Botones (colores + texto) — FIX definitivo (sin hover/press raro)
   ========================= */

/* Base */
.rm-landing2 .rm-btn-call,
.rm-landing2 .rm-btn-usa,
.rm-landing2 .rm-btn-wa{
  color: #fff !important;
  text-decoration: none !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  transition: none !important; /* quita animaciones del theme */
  -webkit-tap-highlight-color: transparent; /* móvil */
}

/* CALL */
.rm-landing2 .rm-btn-call{ background: #185DC5 !important; }
.rm-landing2 .rm-btn-call:hover,
.rm-landing2 .rm-btn-call:focus,
.rm-landing2 .rm-btn-call:focus-visible,
.rm-landing2 .rm-btn-call:active{
  background: #185DC5 !important;
  color: #fff !important;
  box-shadow: none !important;
  transform: none !important;
  filter: none !important;
  opacity: 1 !important;
  outline: none !important;
}

/* USA */
.rm-landing2 .rm-btn-usa{ background: #0b79c1 !important; font-weight: 900; }
.rm-landing2 .rm-btn-usa:hover,
.rm-landing2 .rm-btn-usa:focus,
.rm-landing2 .rm-btn-usa:focus-visible,
.rm-landing2 .rm-btn-usa:active{
  background: #0b79c1 !important;
  color: #fff !important;
  box-shadow: none !important;
  transform: none !important;
  filter: none !important;
  opacity: 1 !important;
  outline: none !important;
}

/* WhatsApp */
.rm-landing2 .rm-btn-wa{ background: #25D366 !important; }
.rm-landing2 .rm-btn-wa:hover,
.rm-landing2 .rm-btn-wa:focus,
.rm-landing2 .rm-btn-wa:focus-visible,
.rm-landing2 .rm-btn-wa:active{
  background: #25D366 !important;
  color: #fff !important;
  box-shadow: none !important;
  transform: none !important;
  filter: none !important;
  opacity: 1 !important;
  outline: none !important;
}
/* =========================
   Landing 2 — SECCIÓN Tarotistas Online
   (color principal: #185DC5)
   ========================= */

.rm-landing2 .rm-tOnline{
  padding: 46px 0;
}

.rm-landing2 .rm-tOnline__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin: 0 0 18px;
}

.rm-landing2 .rm-tOnline__title{
  margin:0;
  font-weight:900;
  letter-spacing:.02em;
  text-transform:uppercase;
  font-size: 34px;
  line-height: 1.05;
  color:#185DC5;

  /* evita cortes raros en algunas combinaciones */
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
}

.rm-landing2 .rm-tOnline__subtitle{
  margin-top:6px;
  font-weight:900;
  text-transform:uppercase;
  color:#185DC5;
  letter-spacing:.12em;
}

.rm-landing2 .rm-tOnline__status{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:16px;
  color: rgba(0,0,0,.72);
  white-space:nowrap;
}

.rm-landing2 .rm-tOnline__icon{ font-size:22px; }

.rm-landing2 .rm-tOnline__grid{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap:16px;
}

@media (min-width: 980px){
  .rm-landing2 .rm-tOnline__grid{
    grid-template-columns: repeat(4, 1fr);
  }
}

.rm-landing2 .rm-tCard{
  border-radius:18px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(0,0,0,.10);
  box-shadow: 0 10px 26px rgba(0,0,0,.05);
}

.rm-landing2 .rm-tCard__img{
  aspect-ratio: 4/3;
  background:#eee;
}

.rm-landing2 .rm-tCard__img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.rm-landing2 .rm-tCard__bar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding: 10px 12px;
  background:#185DC5;
  color:#fff;
}

.rm-landing2 .rm-tCard__name{
  font-weight:900;
  letter-spacing:.02em;
  text-transform:uppercase;
  font-size:14px;
}

.rm-landing2 .rm-tCard__code{
  font-weight:900;
  font-size:13px;
  opacity:.95;
}

/* =========================
   Fix móvil: evitar "CONSUL / TA / NUESTR / OS"
   y que el status no se corte
   ========================= */
@media (max-width: 600px){

  .rm-landing2 .rm-tOnline__head{
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .rm-landing2 .rm-tOnline__title{
    font-size: 28px;
    line-height: 1.08;
    letter-spacing: .02em;
  }

  .rm-landing2 .rm-tOnline__subtitle{
    font-size: 13px;
    letter-spacing: .14em;
  }

  .rm-landing2 .rm-tOnline__status{
    width: 100%;
    white-space: normal; /* permite salto de línea natural */
    justify-content: flex-start;
    gap: 8px;
    font-size: 14px;
  }
}

/* =========================
   Landing Hom Ruth — SECCIÓN Cómo funciona (4 pasos)
   Fondo full width SIN mover el layout
   ========================= */

.rm-landing2 .rm-how2{
  position: relative;
  padding: 52px 0;
  color:#fff;
}

/* Fondo a pantalla completa */
.rm-landing2 .rm-how2::before{
  content:"";
  position:absolute;
  top:0; bottom:0;
  left:50%;
  transform:translateX(-50%);
  width:100vw;
  background: linear-gradient(120deg, #0b2f6a 0%, #185DC5 55%, #0b2f6a 100%);
  z-index:-1;
}

.rm-landing2 .rm-how2__inner{
  max-width: 1180px;
  margin: 0 auto;
  padding-left: clamp(18px, 3vw, 36px);
  padding-right: clamp(18px, 3vw, 36px);
}

.rm-landing2 .rm-how2__header{
  text-align:center;
  max-width: 980px;
  margin: 0 auto 18px;
}

.rm-landing2 .rm-how2__title{
  margin:0 0 8px;
  font-size:34px;
  line-height:1.15;
  font-weight:900;
}

.rm-landing2 .rm-how2__lead{
  margin:0;
  color: rgba(255,255,255,.92);
}

.rm-landing2 .rm-how2__grid{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:18px;
  align-items:start;
}

@media (max-width: 980px){
  .rm-landing2 .rm-how2__grid{ grid-template-columns:1fr; }
  .rm-landing2 .rm-how2__header{ text-align:left; }
}

.rm-landing2 .rm-how2__steps{
  margin: 16px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}

.rm-landing2 .rm-how2__steps li{
  display:flex;
  gap:12px;
  align-items:flex-start;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  padding: 14px 14px;
  border-radius:14px;
}

.rm-landing2 .rm-how2__num{
  width:30px; height:30px;
  border-radius:999px;
  background: rgba(255,255,255,.18);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
}

.rm-landing2 .rm-how2__muted{ opacity:.92; }

.rm-landing2 .rm-how2__card{
  background:#fff;
  color:#111;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.15);
  padding:16px;
  box-shadow: 0 18px 40px rgba(0,0,0,.18);
}

.rm-landing2 .rm-how2__cardTitle{
  margin:0 0 10px;
  font-size:22px;
  font-weight:900;
  color:#111;
}

.rm-landing2 .rm-how2__p{
  margin:0 0 12px;
  line-height:1.6;
  color: rgba(0,0,0,.78);
}

.rm-landing2 .rm-how2__legal{
  margin:0 0 14px;
  font-size:13px;
  line-height:1.35;
  color: rgba(0,0,0,.72);
}

.rm-landing2 .rm-how2__btns{
  display:flex;
  gap:10px;
}

.rm-landing2 .rm-how2__btn{
  flex:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  padding:12px 12px;
  border-radius:14px;
  font-weight:900;
  border:2px solid rgba(0,0,0,.12);
  color:#111;
  background:#fff;
}

.rm-landing2 .rm-how2__btn--primary{
  background:#111;
  color:#fff;
  border-color:#111;
}
/* =========================
   Landing Hom Ruth — Horóscopos / Predicciones (4 tarjetas)
   Fondo full width SIN mover el layout
   ========================= */

.rm-landing2 .rm-horo{
  position: relative;
  padding: 44px 0;
}

/* Fondo a pantalla completa */
.rm-landing2 .rm-horo::before{
  content:"";
  position:absolute;
  top:0; bottom:0;
  left:50%;
  transform:translateX(-50%);
  width:100vw;
  background: linear-gradient(180deg, rgba(24,93,197,0.10) 0%, rgba(24,93,197,0.00) 100%);
  z-index:-1;
}

.rm-landing2 .rm-horo__inner{
  max-width: 1180px;
  margin: 0 auto;
  padding-left: clamp(18px, 3vw, 36px);
  padding-right: clamp(18px, 3vw, 36px);
}

.rm-landing2 .rm-horo__head{
  text-align: center;
  margin-bottom: 18px;
  padding-top: 14px; /* evita recorte del acento */
  overflow: visible;
}

.rm-landing2 .rm-horo__title{
  margin: 0;
  font-size: 34px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #2B41AA;
  line-height: 1.22;  /* evita recortes en móvil */
  padding-top: 4px;
}

.rm-landing2 .rm-horo__subtitle{
  margin: 6px 0 0;
  font-size: 14px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #2B41AA;
  opacity: .9;
}

.rm-landing2 .rm-horo__line{
  display: inline-block;
  width: 74px;
  height: 2px;
  margin-top: 12px;
  background: rgba(43,65,170,0.55);
  border-radius: 999px;
}

.rm-landing2 .rm-horo__grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}

@media (min-width: 760px){
  .rm-landing2 .rm-horo__grid{ grid-template-columns: 1fr 1fr; }
}
@media (min-width: 1100px){
  .rm-landing2 .rm-horo__grid{ grid-template-columns: repeat(4, 1fr); }
}

.rm-landing2 .rm-horoCard{
  display: block;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(0,0,0,0.10);
  box-shadow: 0 10px 24px rgba(0,0,0,0.06);
  text-decoration: none;
}

.rm-landing2 .rm-horoCard img{
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1; /* mantiene cuadrado sin CLS */
}

@media (max-width: 480px){
  .rm-landing2 .rm-horo__head{ padding-top: 18px; }
  .rm-landing2 .rm-horo__title{ line-height: 1.24; padding-top: 6px; }
}
/* =========================
   Landing 2 — LECTURAS RECOMENDADAS (4 tarjetas)
   Estilo tipo “cards con imagen + texto encima”
   ========================= */

.rm-landing2 .rm-reads{
  padding: 44px 0;
}

.rm-landing2 .rm-reads__inner{
  max-width: 1180px;
  margin: 0 auto;
  padding-left: clamp(18px, 3vw, 36px);
  padding-right: clamp(18px, 3vw, 36px);
}

.rm-landing2 .rm-reads__head{
  text-align: center;
  margin-bottom: 18px;
}

.rm-landing2 .rm-reads__title{
  margin: 0;
  font-size: 34px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #185DC5;
  line-height: 1.18;
}

.rm-landing2 .rm-reads__subtitle{
  margin: 6px 0 0;
  font-size: 14px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #185DC5;
  opacity: .9;
}

.rm-landing2 .rm-reads__line{
  display: inline-block;
  width: 74px;
  height: 2px;
  margin-top: 12px;
  background: rgba(24,93,197,0.55);
  border-radius: 999px;
}

.rm-landing2 .rm-reads__grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

@media (min-width: 760px){
  .rm-landing2 .rm-reads__grid{
    grid-template-columns: 1fr 1fr;
  }
}

/* Card */
.rm-landing2 .rm-readsCard{
  position: relative;
  display: block;
  border-radius: 16px;
  overflow: hidden;
  background: #111;
  text-decoration: none;
  border: 1px solid rgba(0,0,0,0.10);
  box-shadow: 0 10px 26px rgba(0,0,0,0.06);
  min-height: 170px;
}

/* Imagen destacada con crop consistente */
.rm-landing2 .rm-readsCard__img{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  aspect-ratio: 16 / 9;
}

/* Fallback si no hay imagen */
.rm-landing2 .rm-readsCard__ph{
  width: 100%;
  aspect-ratio: 16 / 9;
  background: linear-gradient(135deg, rgba(24,93,197,.25), rgba(24,93,197,.06));
}

/* Overlay para legibilidad */
.rm-landing2 .rm-readsCard__overlay{
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,.62) 0%, rgba(0,0,0,.18) 55%, rgba(0,0,0,0) 100%);
}

/* Texto encima */
.rm-landing2 .rm-readsCard__text{
  position: absolute;
  left: 18px;
  top: 50%;
  transform: translateY(-50%);
  max-width: 70%;
  color: #fff;
  font-weight: 900;
  font-size: 26px;
  line-height: 1.12;
  text-shadow: 0 10px 24px rgba(0,0,0,.45);
}

@media (max-width: 480px){
  .rm-landing2 .rm-readsCard__text{
    font-size: 22px;
    max-width: 82%;
    left: 14px;
  }
}
/* =========================================
   RM — PAGO (reutilizable: pagar-cita / pagar-tarjeta / pagar-bizum / pago-correcto / pago-error)
   ========================================= */

.rm-pay-hero{
  padding: 78px 18px;
  color: #fff;
  text-align: center;
  background: linear-gradient(180deg, #0b2f6b 0%, #0a2558 100%);
}
.rm-pay-hero__inner{
  max-width: 980px;
  margin: 0 auto;
}
.rm-pay-hero h1{
  margin: 0 0 10px;
  line-height: 1.15;
}
.rm-pay-hero p{
  margin: 0 0 10px;
  line-height: 1.65;
  opacity: .95;
}

.rm-pay-main{
  padding: 36px 0 18px;
}
.rm-pay-wrap{
  max-width: 980px;
  margin: 0 auto;
  padding: 0 18px;
}
.rm-pay-title{
  text-align: center;
  margin: 0 0 8px;
}
.rm-pay-lead{
  text-align: center;
  margin: 0 0 10px;
  opacity: .92;
}
.rm-pay-muted{
  text-align: center;
  margin: 0 0 8px;
  opacity: .88;
}

/* ✅ línea visible “Concepto…” */
.rm-pay-concept{
  text-align: center;
  margin: 14px 0 0;
  opacity: .92;
  font-size: 15px;
}

.rm-pay-panel{
  margin: 34px auto 0;
  max-width: 720px;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 16px;
  padding: 20px 18px;
  background: #fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
  text-align: center;
}
.rm-pay-panel h3{
  margin: 0 0 10px;
}
.rm-pay-panel p{
  margin: 0 0 14px;
  opacity: .9;
  line-height: 1.6;
}

.rm-pay-consent{
  display: flex;
  gap: 10px;
  align-items: flex-start;
  text-align: left;
  border: 1px solid rgba(11,47,107,.25);
  border-radius: 12px;
  padding: 12px 12px;
  margin: 12px 0 16px;
  background: rgba(11,47,107,.04);
  font-size: 15px;
  line-height: 1.55;
}
.rm-pay-consent input{
  margin-top: 4px;
}
.rm-pay-consent a{
  font-weight: 800;
  text-decoration: underline;
}

.rm-pay-actions{
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
  margin: 10px 0 10px;
}

.rm-pay-btn{
  display: inline-block;
  padding: 14px 22px;
  border-radius: 999px;
  font-weight: 800;
  text-decoration: none;
  border: 1px solid rgba(0,0,0,.12);
  box-shadow: 0 8px 18px rgba(0,0,0,.08);
  transition: transform .15s ease, background-color .15s ease, opacity .15s ease;
  line-height: 1;
}
.rm-pay-btn:active{
  transform: translateY(1px);
}

/* ✅ Botón principal (Pagar con Tarjeta): verde intenso tipo WhatsApp */
.rm-pay-btn--primary{
  background: #25D366;
  color: #fff;
  border: 0;
}
.rm-pay-btn--primary:hover,
.rm-pay-btn--primary:focus{
  background: #1A99D8; /* hover “seguro” turquesa */
  color: #fff;
}

.rm-pay-btn--secondary{
  background: #fff;
  color: #0b2f6b;
  border-color: rgba(11,47,107,.35);
}
.rm-pay-btn--secondary:hover,
.rm-pay-btn--secondary:focus{
  background: rgba(255,255,255,.92);
}

/* ✅ Botón WhatsApp soporte (mantiene verde en hover) */
.rm-pay-btn--whatsapp{
  background: #25D366;
  color: #fff;
  border: 0;
}
.rm-pay-btn--whatsapp:hover,
.rm-pay-btn--whatsapp:focus{
  background: #1EBE5D;
  color: #fff;
}

.rm-pay-btn--disabled{
  opacity: .45;
  cursor: not-allowed;
  filter: grayscale(25%);
}

.rm-pay-lock{
  margin: 10px 0 0;
  opacity: .9;
  font-size: 14px;
}

.rm-pay-help{
  margin-top: 32px;
  padding: 54px 18px;
  color: #fff;
  text-align: center;
  background: linear-gradient(180deg, #0b2f6b 0%, #0a2558 100%);
}
.rm-pay-help__inner{
  max-width: 980px;
  margin: 0 auto;
}
.rm-pay-help h2{
  margin: 0 0 12px;
  line-height: 1.25;
}
.rm-pay-help p{
  margin: 0 0 14px;
  opacity: .95;
}

/* ✅ Responsive */
@media (max-width: 720px){
  .rm-pay-hero{ padding: 60px 16px; }
  .rm-pay-panel{ margin-top: 26px; padding: 18px 14px; }
}

@media (max-width: 520px){
  .rm-pay-consent{ font-size: 14px; line-height: 1.45; }

  /* ✅ en móvil: botones apilados con aire (sin depender de gap) */
  .rm-pay-actions{ gap: 0; margin-top: 6px; }
  .rm-pay-actions .rm-pay-btn{
    width: 100%;
    text-align: center;
    margin: 0 0 12px;
  }
  .rm-pay-actions .rm-pay-btn:last-child{ margin-bottom: 0; }
}
/* =========================
   Home Ruth — Videntes por ciudad (mini slider)
   Reusa: rm-card, rm-links-title, rm-chips, rm-chip
   ========================= */
.rm-landing2 .rm-cityHome{
  margin: 18px 0 26px;
}

.rm-landing2 .rm-cityHome__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin: 0 0 10px;
}

.rm-landing2 .rm-cityHome .rm-links-title{
  margin: 0;
  color:#185DC5;            /* azul principal (consistente con la landing) */
  letter-spacing:.03em;
}

/* Botón “Ver todas” (píldora azul) */
.rm-landing2 .rm-cityHome__btn{
  background:#185DC5;
  color:#fff !important;
  font-weight: 900;
}
.rm-landing2 .rm-cityHome__btn:hover{
  background:#0f4fae;
  color:#fff !important;
}

/* Mini slider horizontal (sin JS) */
.rm-landing2 .rm-cityHome__track{
  flex-wrap: nowrap;              /* convierte chips en “slider” */
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
  padding: 2px 2px 10px;
  margin: 0;
  gap: 10px;
}

/* estética de chip “azul suave” (UI: contraste + coherencia) */
.rm-landing2 .rm-cityHome__chip{
  background: rgba(24,93,197,.08);
  border: 1px solid rgba(24,93,197,.18);
  color: #0f4fae;
  white-space: nowrap;
  scroll-snap-align: start;
}
.rm-landing2 .rm-cityHome__chip:hover{
  background: rgba(24,93,197,.14);
  color:#0f4fae;
}

/* Accesibilidad focus */
.rm-landing2 .rm-cityHome .rm-chip:focus-visible{
  outline: 3px solid rgba(24,93,197,.25);
  outline-offset: 2px;
}
/* ============================================================
   RM FOOTER — FIX ICONOS INVISIBLES EN MÓVIL (color del SVG)
   Pegar al FINAL de custom-pages.css
   ============================================================ */

.rm-footer .rm-footer-social-link{
  color: #1447b2 !important; /* fuerza color del icono */
}

.rm-footer .rm-footer-social-link .rm-icon,
.rm-footer .rm-footer-social-link .rm-icon path{
  fill: #1447b2 !important;  /* fuerza relleno del SVG */
}

/* Por si el tema mete reglas específicas en móvil */
@media (max-width: 767px){
  .rm-footer .rm-footer-social-link{
    color: #1447b2 !important;
  }
  .rm-footer .rm-footer-social-link .rm-icon,
  .rm-footer .rm-footer-social-link .rm-icon path{
    fill: #1447b2 !important;
  }
}
/* Oculta scrollbar (mantiene scroll horizontal) */
.rm-landing2 .rm-cityHome__track{
  -ms-overflow-style: none;   /* IE/Edge legacy */
  scrollbar-width: none;      /* Firefox */
}

.rm-landing2 .rm-cityHome__track::-webkit-scrollbar{
  width: 0;
  height: 0;                 /* Chrome/Safari */
}
.rm-landing2 .rm-cityHome__track{
  padding-bottom: 2px; /* antes teníamos 10px */
}
@media (max-width: 640px){
  /* Header en columna (title + botón) */
  .rm-landing2 .rm-cityHome__head{
    flex-direction: column;
    align-items: flex-start;
  }

  /* Track en columna (sin slider horizontal) */
  .rm-landing2 .rm-cityHome__track{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    overflow: visible;
    scroll-snap-type: none;
    padding-bottom: 0;
  }

  /* Cada chip a ancho completo */
  .rm-landing2 .rm-cityHome__chip{
    width: 100%;
    justify-content: flex-start;
  }
}
/* Desktop: 3x2 (evita corte del último chip y elimina el scroll) */
@media (min-width: 1100px){
  .rm-landing2 .rm-cityHome__track{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow: visible;
    scroll-snap-type: none;
    gap: 12px;
    padding-bottom: 0;
    margin: 0;
  }

  .rm-landing2 .rm-cityHome__chip{
    width: 100%;
    text-align: center;
  }
}
/* =========================
   Home Ruth — CTA doble (Ruth vs Gabinete)
   Reusa: rm-card, rm-tOnline__title, rm-tOnline__subtitle
   ========================= */
.rm-landing2 .rm-cta2{
  margin: 18px 0 26px;
}

.rm-landing2 .rm-cta2__head{
  text-align: center;
  margin: 0 0 14px;
}

.rm-landing2 .rm-cta2__subtitle{
  color: rgba(24,93,197,.78);
}

.rm-landing2 .rm-cta2__grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
  margin-top: 10px;
}

@media (min-width: 860px){
  .rm-landing2 .rm-cta2__grid{
    grid-template-columns: 1fr 1fr;
    gap: 16px;
  }
}

.rm-landing2 .rm-cta2__card{
  height: 100%;
  padding: 16px;
  border: 1px solid rgba(24,93,197,.10);
  background: #fff;
}

.rm-landing2 .rm-cta2__title{
  margin: 0 0 8px;
  color: #185DC5;
  font-weight: 900;
  font-size: 18px;
  line-height: 1.2;
}

.rm-landing2 .rm-cta2__text{
  margin: 0 0 14px;
  color: #2b2b2b;
  font-size: 15px;
  line-height: 1.45;
}

.rm-landing2 .rm-cta2__btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 16px;
  border-radius: 12px;
  background: #185DC5;
  color: #fff !important;
  font-weight: 900;
  text-decoration: none;
  width: 100%;
  max-width: 320px;
}

.rm-landing2 .rm-cta2__btn:hover{
  background: #0f4fae;
  color: #fff !important;
}

.rm-landing2 .rm-cta2__btn--ghost{
  background: rgba(24,93,197,.10);
  color: #185DC5 !important;
  border: 1px solid rgba(24,93,197,.18);
}

.rm-landing2 .rm-cta2__btn--ghost:hover{
  background: rgba(24,93,197,.16);
  color: #185DC5 !important;
}

.rm-landing2 .rm-cta2__micro{
  margin: 12px 0 0;
  text-align: center;
  color: rgba(24,93,197,.78);
  font-size: 13px;
  font-weight: 700;
}





























/* ==============================
   Contenido editorial sin borde (landings, la mejor vidente,mundo,españa,etc)
   ============================== */
.rm-prose{
  max-width: 980px;
  margin: 0 auto;
  padding-left: 18px;
  padding-right: 18px;
}

@media (max-width: 767px){
  .rm-prose{
    padding-left: 16px;
    padding-right: 16px;
  }
}

/* Lists: evitar números tapados + sangría correcta */
.rm-prose ol,
.rm-prose ul{
  margin: 12px 0 16px;
  padding-left: 1.35em; /* sangría suficiente para el número */
  list-style-position: outside;
}

.rm-prose li{
  margin: 0 0 8px;
}

/* Separación headings vs párrafos */
.rm-prose h2,
.rm-prose h3{
  margin: 20px 0 10px;
}

.rm-prose p{
  margin: 0 0 14px;
}

/* =====================================================
   Ritual Landing page-rituales-de-amor.php: HERO split + CTA card (Rituales)
   ===================================================== */

.rm-hero-split__inner{
  display:flex;
  gap:28px;
  align-items:center;
}

.rm-hero-split__left{
  flex: 1 1 520px;
  min-width: 280px;
}

.rm-hero-media-right{
  flex: 0 0 360px;
  max-width: 360px;
  margin-left: auto;
}

.rm-hero-media-right .rm-hero-img{
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 22px;
  display:block;
  box-shadow: 0 18px 38px rgba(0,0,0,.10);
}

/* Botones en columna (solo para este hero) */
.rm-actions--col{
  display:flex;
  flex-direction:column;
  gap:12px;
  align-items:flex-start;
}

/* CTA Card bajo hero */
.rm-hero-cta-card{
  margin-top: 14px;
}

.rm-cta-card{
  padding: 18px;
  border-radius: 18px;
}

.rm-cta-card__text{
  margin: 0 0 12px;
}

/* Grid materiales/pasos sin inline */
.rm-grid-2--basic{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:16px;
}
.rm-grid-2--basic .rm-card{
  padding:16px;
  border-radius:16px;
}
.rm-grid-2--basic .rm-card h3{
  margin-top:0;
}

/* Responsive: en móvil, se apila pero imagen queda alineada a la derecha */
@media (max-width: 900px){
  .rm-hero-split__inner{
    flex-direction:column;
    align-items:stretch;
  }
  .rm-actions--col{
    width:100%;
    align-items:stretch;
  }
  .rm-actions--col .rm-btn{
    width:100%;
    text-align:center;
  }
  .rm-hero-media-right{
    max-width: 320px;
    width: 320px;
    align-self:flex-end; /* clave: “a la derecha” en móvil */
  }
}

@media (max-width: 480px){
  .rm-hero-media-right{
    width: 280px;
    max-width: 280px;
  }
  .rm-grid-2--basic{
    grid-template-columns: 1fr;
  }
}
/* ==============================
   RITUALES — OVERRIDES QUE GANAN
   ============================== */

/* 1) Microtextos legibles (pisan el 10px existente) */
.rm-wrap .rm-micro{
  font-size: 16px !important;
  line-height: 1.55 !important;
  opacity: .92 !important;
  margin-top: 8px !important;
}

/* 2) CTA tipo tarjeta para secciones rm-links (Ayuda/orientación) */
.rm-links{
  border: 1px solid rgba(0,0,0,0.10);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(0,0,0,0.05);
  padding: 18px;
  margin: 18px 0;
}

/* Que el texto del CTA no quede “mini” aunque sea p normal */
.rm-links p{
  font-size: 14px;
  line-height: 1.55;
  margin: 6px 0 12px;
  opacity: .92;
}

/* 3) Botón WhatsApp SIEMPRE verde en CTA (aunque theme meta styles) */
.rm-btn.rm-btn-wa{
  background: #1fb85a !important;
  color: #fff !important;
}
.rm-btn.rm-btn-wa:hover,
.rm-btn.rm-btn-wa:focus{
  background: #179c4b !important;
  color: #fff !important;
}

/* 4) HERO móvil: quitar “aire” y centrar imagen */
@media (max-width: 900px){
  .rm-hero-split__inner{
    gap: 12px !important;
  }
  .rm-hero-media-right{
    margin: 6px auto 0 !important;
    align-self: center !important;
    max-width: 280px !important;
    width: 100% !important;
  }
}
/* =========================
   Más rituales (mini-cards)
   ========================= */
.rm-postgrid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 12px 0 0;
}

@media (max-width: 768px){
  .rm-postgrid{ grid-template-columns: 1fr; }
}

.rm-postcard{
  display: flex;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(0,0,0,0.10);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(0,0,0,0.05);
}

.rm-postcard__thumb{
  flex: 0 0 92px;
  width: 92px;
  height: 72px;
  border-radius: 12px;
  overflow: hidden;
  display: block;
  background: rgba(0,0,0,0.04);
}

.rm-postcard__img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.rm-postcard__noimg{
  display:block;
  width:100%;
  height:100%;
}

.rm-postcard__body{ min-width: 0; }

.rm-postcard__title{
  margin: 0 0 6px;
  font-size: 15px;
  font-weight: 900;
  text-transform: uppercase;
  line-height: 1.2;
}

.rm-postcard__title a{ text-decoration: none; }

.rm-postcard__excerpt{
  margin: 0;
  font-size: 14px;
  opacity: .9;
  line-height: 1.35;
}
/* =====================================================
   FIX Rituales de Amor (page-id-72728)
   - Quita el “hueco” reservado para sticky en móvil
   - Oculta la barra inferior (911/WhatsApp) en esta landing
   ===================================================== */
@media (max-width: 767px){

  /* 1) Quitar el padding-bottom extra (da igual si rm-has-rm-sticky existe o no) */
  body.page-id-72728{
    padding-bottom: 0 !important;
  }

  /* 2) Ocultar sticky (cubrimos variantes por clase/id/substring) */
  body.page-id-72728 .rm-sticky,
  body.page-id-72728 #rm-sticky,
  body.page-id-72728 [class*="rm-sticky"],
  body.page-id-72728 [id*="rm-sticky"]{
    display: none !important;
  }

  /* 3) Compactar un poco el hero para evitar “aire” residual */
  body.page-id-72728 .rm-hero{
    padding-bottom: 10px !important;
  }
  body.page-id-72728 .rm-hero-split__inner{
    gap: 10px !important;
  }
  body.page-id-72728 .rm-hero-media-right{
    margin-top: 6px !important;
  }
}
/* FIX: elimina el hueco gigante del HERO en móvil
   (causado por flex-basis: 520px en columna) */
@media (max-width: 900px){

  /* clave: en móvil NO puede tener flex-basis 520px */
  .rm-hero-split__left{
    flex: 0 0 auto !important;   /* quita el 520px “de alto” */
    min-width: 0 !important;
  }

  /* opcional: evita reservas raras del bloque imagen */
  .rm-hero-media-right{
    flex: 0 0 auto !important;
  }

  /* compacta un poco la separación */
  .rm-hero-split__inner{
    gap: 12px !important;
  }
}
/* FIX definitivo: el listado numerado NO se sale de la tarjeta */
.rm-grid-2--basic .rm-card ol{
  list-style-position: inside; /* clave: el número entra dentro del box */
  padding-left: 0;            /* quitamos el sangrado extra */
  margin: 0;                  /* evita márgenes raros del theme */
}

.rm-grid-2--basic .rm-card ol li{
  padding-left: 6px;          /* separa número del texto */
  margin: 6px 0;
  overflow-wrap: anywhere;    /* por si hay textos largos */
}
/* HERO Rituales: botones en fila (desktop) y columna (móvil) */
.rm-actions--hero{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:flex-start;
}

@media (max-width: 900px){
  .rm-actions--hero{
    flex-direction:column;
    align-items:stretch;
  }
  .rm-actions--hero .rm-btn{
    width:100%;
    text-align:center;
  }
}
/* --- Anti-CLS: reservar espacio del HERO --- */
.rm-hero-split__inner{
  align-items: stretch;
}

.rm-hero-media-right{
  /* reserva espacio para que no cambie al cargar CSS/fuentes */
  min-height: 320px;
}

.rm-hero-img{
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1; /* tu hero es cuadrada (600x600 / 300x300) */
  display: block;
}

/* Anti-CLS: thumbs de tarjetas (si no lo pusiste ya) */
.rm-postcard__thumb { display:block; }
.rm-postcard__img{
  width:100%;
  height:auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  display:block;
}
/* Pilares: 1 línea en desktop, columna en móvil (sin scroll, sin ocultar) */
.rm-pilares-actions{
  display:flex;
  flex-wrap:nowrap;     /* 1 línea */
  gap:12px;
  align-items:center;
}
.rm-pilares-actions .rm-btn{
  white-space:nowrap;   /* evita saltos dentro del botón */
}

@media (max-width: 900px){
  .rm-pilares-actions{
    flex-direction:column; /* columna en móvil */
    align-items:stretch;
  }
  .rm-pilares-actions .rm-btn{
    width:100%;
    text-align:center;
  }
}
/* Pilares: 1 línea en desktop SIN desbordar */
.rm-pilares-actions{
  display:flex;
  flex-wrap:nowrap;
  gap:12px;
  align-items:stretch;
}

.rm-pilares-actions .rm-btn{
  flex: 1 1 0;          /* clave: que se repartan y puedan encoger */
  min-width: 0;         /* permite encoger sin overflow */
  text-align: center;
  padding: 10px 12px;   /* un poco más compacto */
  font-size: 14px;      /* más compacto para asegurar cabida */
  line-height: 1.15;
  white-space: normal;  /* clave: permite saltos de línea dentro del botón */
}

/* Móvil: columna como querías */
@media (max-width: 900px){
  .rm-pilares-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .rm-pilares-actions .rm-btn{
    width:100%;
    font-size: 15px;
    padding: 12px 14px;
  }
}