/*==============================================================================
  MSM ACADEMY — PÁGINA DE PRECIOS (/membership-pricing/)
  ------------------------------------------------------------------------------
  1. Página        Título nativo fuera, contenido a ancho del hero
  2. Planes        Tarjetas del shortcode de Tutor Pro en lenguaje MSM
  3. Garantías     Fila bajo los planes
  4. Secciones     Programas incluidos, profesores, FAQ
  El hero reutiliza .msm-archive-hero (msm-tutor.css).
==============================================================================*/

/*------------------------------------------------------------------------------
  1. PÁGINA
------------------------------------------------------------------------------*/
body.msm-pricing .entry-header { display: none; }
body.msm-pricing #primary,
body.msm-pricing .site-main,
body.msm-pricing .entry-content { max-width: none; width: 100%; margin: 0; padding: 0; }
body.msm-pricing .entry-content { color: var(--msm-fg); }

/* Los planes suben sobre el final del hero */
.msm-pricing-hero { padding-bottom: 150px; margin-bottom: 0; }
.msm-pricing-plans { position: relative; z-index: 2; margin-top: -96px; }

/*------------------------------------------------------------------------------
  2. PLANES
------------------------------------------------------------------------------*/
body.msm-pricing .tutor-membership-pricing-page .tutor-container { max-width: 1040px; padding-inline: 0; }
body.msm-pricing .tutor-membership-pricing-page .tutor-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 24px;
  margin: 0;
}
body.msm-pricing .tutor-membership-pricing-page .tutor-row > [class*="tutor-col"] {
  flex: 1 1 340px;
  max-width: 440px;
  width: auto;
  padding: 0;
}

body.msm-pricing .tutor-membership-pricing-item {
  display: flex;
  flex-direction: column;
  border: 0;
  border-radius: var(--msm-r-xl);
  background: var(--msm-surface-2);
  box-shadow: var(--msm-shadow-card), inset 0 0 0 1px var(--msm-line-2);
  overflow: hidden;
  transition: transform .35s var(--msm-ease), box-shadow .35s var(--msm-ease);
}
body.msm-pricing .tutor-membership-pricing-item:hover { transform: translateY(-4px); }

/* Destacado: filo de gradiente y halo gold, como la .price-card del home */
body.msm-pricing .tutor-membership-pricing-item.is-featured {
  background:
    radial-gradient(ellipse 90% 60% at 50% 0%, rgba(var(--msm-gold-rgb), .18), transparent 70%),
    var(--msm-surface-2);
  box-shadow: 0 30px 80px rgba(var(--msm-gold-rgb), .18), var(--msm-shadow-lift), inset 0 0 0 1px rgba(var(--msm-gold-rgb), .55);
}
body.msm-pricing .tutor-membership-pricing-featured-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border-radius: 0;
  background: linear-gradient(90deg, var(--msm-gold), var(--msm-gold-hover), var(--msm-orb-1));
  font: 700 11px/32px var(--msm-mono);
  letter-spacing: .16em;
  color: #fff;
}
body.msm-pricing .tutor-membership-pricing-featured-badge svg { width: 12px; height: 12px; }

body.msm-pricing .tutor-membership-pricing-item-inner {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 36px 34px 34px;
}

body.msm-pricing .tutor-membership-pricing-title {
  margin: 0 0 20px;
  font: 700 12px var(--msm-mono) !important;
  letter-spacing: .16em;
  text-transform: uppercase;
  text-align: left;
  color: var(--msm-gold) !important;
}

body.msm-pricing .tutor-pricing-price {
  justify-content: flex-start;
  align-items: flex-end;
  gap: 12px;
  margin-bottom: 8px;
}
body.msm-pricing .tutor-pricing-price-amount {
  margin: 0;
  font: 800 56px/1 var(--msm-display) !important;
  letter-spacing: -.04em;
  color: var(--msm-fg) !important;
}
body.msm-pricing .tutor-pricing-price-discount {
  font: 500 15px var(--msm-display) !important;
  color: var(--msm-muted-2) !important;
}
body.msm-pricing .is-featured .tutor-pricing-price-discount {
  padding: 4px 10px !important;
  border-radius: var(--msm-r-pill) !important;
  background: rgba(var(--msm-gold-rgb), .18) !important;
  font: 700 11px var(--msm-mono) !important;
  letter-spacing: .08em;
  color: var(--msm-gold-hover) !important;
}
body.msm-pricing .tutor-pricing-price-duration {
  margin-top: 4px;
  font: 500 14px var(--msm-display) !important;
  color: var(--msm-muted) !important;
}

.msm-plan-note {
  margin: 4px 0 0;
  font: 500 13px var(--msm-display);
  color: var(--msm-gold-hover);
}

body.msm-pricing .tutor-membership-pricing-item .tutor-short-description {
  margin: 18px 0 24px;
  text-align: left;
  font: 300 15px/1.6 var(--msm-display);
  color: var(--msm-muted);
}
section.msm-archive-hero.msm-pricing-hero{
  border-bottom: 0px;
}
section.msm-archive-hero.msm-pricing-hero .msm-orbs .msm-orb--2 {
  display: none;
}
body.msm-pricing .tutor-membership-pricing-item .tutor-action { margin-bottom: 28px !important; }
body.msm-pricing .tutor-membership-pricing-item .tutor-btn {
  padding: 16px 24px;
  font: 700 15px var(--msm-display);
}
body.msm-pricing .tutor-membership-pricing-item .tutor-btn-outline-primary {
  background: transparent;
  border: 1px solid var(--msm-line-3);
  color: var(--msm-fg);
}
body.msm-pricing .tutor-membership-pricing-item .tutor-btn-outline-primary:hover {
  border-color: var(--msm-gold);
  background: rgba(var(--msm-gold-rgb), .1);
  color: var(--msm-fg);
}
body.msm-pricing .tutor-membership-pricing-item .tutor-btn-primary:hover { box-shadow: var(--msm-shadow-glow); }

body.msm-pricing .tutor-pricing-features {
  gap: 12px;
  margin: 0;
  padding-top: 24px;
  border-top: 1px solid var(--msm-line);
}
body.msm-pricing .tutor-pricing-features li {
  align-items: flex-start !important;
  gap: 10px !important;
  margin: 0;
  font: 400 14.5px/1.45 var(--msm-display);
  color: rgba(246, 241, 230, .82);
}
body.msm-pricing .tutor-feature-icon-active { flex: none; color: var(--msm-gold-hover); }
body.msm-pricing .tutor-feature-icon-active svg { width: 20px; height: 20px; }

/*------------------------------------------------------------------------------
  3. GARANTÍAS
------------------------------------------------------------------------------*/
.msm-pricing-trust {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px 32px;
  max-width: 1040px;
  margin: 40px auto 0;
  padding: 0 var(--msm-gutter);
  list-style: none;
}
.msm-pricing-trust li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font: 500 14px var(--msm-display);
  color: var(--msm-muted);
}
.msm-pricing-trust .msm-i { color: var(--msm-gold-hover); }

/*------------------------------------------------------------------------------
  4. SECCIONES
------------------------------------------------------------------------------*/
.msm-pricing-section {
  max-width: 1440px;
  margin: 0 auto;
  padding: 104px var(--msm-gutter) 0;
}
.msm-pricing-section-head { margin-bottom: 34px; text-align: center; }
.msm-pricing-h2 {
  margin: 12px 0 0;
  font: 800 clamp(28px, 3.4vw, 44px)/1.08 var(--msm-display);
  letter-spacing: -.02em;
  color: var(--msm-fg);
}

/* --- Programas incluidos --- */
.msm-pricing-programs {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 18px;
}
.msm-ptile {
  display: flex;
  flex-direction: column;
  border-radius: var(--msm-r-lg);
  background: var(--msm-surface-2);
  box-shadow: inset 0 0 0 1px var(--msm-line);
  overflow: hidden;
  text-decoration: none !important;
  transition: transform .3s var(--msm-ease), box-shadow .3s var(--msm-ease);
}
.msm-ptile:hover { transform: translateY(-4px); box-shadow: inset 0 0 0 1px rgba(var(--msm-gold-rgb), .45), var(--msm-shadow-card); }
.msm-ptile-media { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; background: var(--msm-surface-3); }
.msm-ptile-media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s var(--msm-ease); }
.msm-ptile:hover .msm-ptile-media img { transform: scale(1.05); }
.msm-ptile-body { display: grid; gap: 6px; padding: 16px 18px 18px; }
.msm-ptile-title {
  font: 700 15px/1.3 var(--msm-display);
  text-transform: uppercase;
  color: var(--msm-fg);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.msm-ptile:hover .msm-ptile-title { color: var(--msm-gold-hover); }
.msm-ptile-meta { font: 400 13px var(--msm-display); color: var(--msm-muted); }

/* --- Profesores --- */
.msm-pricing-teachers {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 28px 20px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.msm-pricing-teachers li { margin: 0; width: 150px; }
.msm-pricing-teachers a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  text-decoration: none !important;
}
.msm-pricing-teachers .msm-avatar--lg { margin-bottom: 8px; transition: transform .3s var(--msm-ease), box-shadow .3s var(--msm-ease); }
.msm-pricing-teachers a:hover .msm-avatar--lg { transform: translateY(-4px); box-shadow: 0 0 0 4px rgba(var(--msm-gold-rgb), .45); }
.msm-pricing-teacher-name { font: 700 15px/1.25 var(--msm-display); color: var(--msm-fg); }
.msm-pricing-teacher-role { font: 400 12.5px/1.35 var(--msm-display); color: var(--msm-muted); }

/* --- FAQ (reutiliza .msm-faq-item de msm-tutor.css) --- */
.msm-pricing-faq { max-width: 860px; padding-bottom: 104px; }

@media (max-width: 700px) {
  .msm-pricing-hero { padding-bottom: 120px; }
  .msm-pricing-plans { margin-top: -80px; padding: 0 var(--msm-gutter); }
  body.msm-pricing .tutor-membership-pricing-item-inner { padding: 28px 24px; }
  body.msm-pricing .tutor-pricing-price-amount { font-size: 46px !important; }
  .msm-pricing-section { padding-top: 72px; }
  .msm-pricing-faq { padding-bottom: 72px; }
  .msm-pricing-programs { grid-template-columns: 1fr 1fr; gap: 12px; }
  .msm-ptile-body { padding: 12px 12px 14px; }
  .msm-ptile-title { font-size: 13px; }
  .msm-pricing-teachers li { width: 130px; }
}
@media (max-width: 420px) {
  .msm-pricing-programs { grid-template-columns: 1fr; }
}
