/* ============================================================
   MENTE SANA BY DR — sistema visual
   Identidad (manual de marca): Azul Petróleo #16323D, Terracota #B46346,
   Crema #F9F7F4. Poppins en títulos, Inter en cuerpo (alojadas en /assets/fonts).
   Los demás tonos son tintes de esos tres colores.
   ============================================================ */

@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/inter-var.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/poppins-600.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/poppins-700.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/poppins-800.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

:root{
  --cream:        #F9F7F4;   /* Crema / Blanco Hueso (manual) */
  --cream-alt:    #F1EDE7;   /* crema más profundo */
  --white:        #ffffff;
  --coral:        #B46346;   /* Terracota (manual): acentos, íconos, bordes */
  --coral-dark:   #A25639;   /* terracota profundo: texto y botones (AA sobre blanco y crema) */
  --coral-light:  #EBD5CA;
  --coral-xlight: #F7ECE6;
  --coral-on-dark:#E3A58A;   /* terracota claro para fondos oscuros */
  --earth:        #16323D;   /* Azul Petróleo Oscuro (manual) */
  --blue:         #214858;   /* petróleo para hover */
  --teal-bg:      #EDF1F3;
  --stone:        #4A5E67;   /* texto secundario: petróleo suavizado */
  --stone-light:  #5B6E76;
  --sage:         #16323D;   /* alias heredado: íconos/etiquetas en petróleo */
  --sage-light:   #E8EEF0;   /* tinte de petróleo para fondos de sección */
  --sep:          rgba(22, 50, 61, .10);
  --wa:           #177A45;

  --radius-sm: 14px;
  --radius:    24px;
  --radius-lg: 36px;
  --pill:      999px;

  --shadow-sm: 0 1px 2px rgba(22,50,61,.04), 0 6px 18px -10px rgba(22,50,61,.14);
  --shadow-md: 0 22px 44px -26px rgba(22,50,61,.28);
  --shadow-lg: 0 34px 70px -30px rgba(22,50,61,.38);

  --maxw: 1180px;
  --ease: .25s cubic-bezier(.4,0,.2,1);
}

*, *::before, *::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; overflow-x:hidden; }
[id]{ scroll-margin-top:96px; }
body{
  margin:0; background:var(--cream); color:var(--earth);
  font-family:"Inter", system-ui, sans-serif;
  font-size:16px; line-height:1.65; -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{ font-family:"Poppins", sans-serif; font-weight:600; line-height:1.18; letter-spacing:-.015em; margin:0 0 .5em; color:var(--earth); text-wrap:balance; overflow-wrap:anywhere; }
p{ margin:0 0 1em; }
a{ color:inherit; text-decoration:none; }
img{ max-width:100%; display:block; }
ul{ margin:0; padding:0; list-style:none; }
.ms-container{ max-width:var(--maxw); margin:0 auto; padding:0 24px; }
@media (max-width:480px){ .ms-container{ padding:0 18px; } }
.ms-skip{ position:absolute; left:-999px; top:0; background:var(--earth); color:var(--cream); padding:10px 16px; border-radius:0 0 10px 0; z-index:200; }
.ms-skip:focus{ left:0; }

/* ---------- botones ---------- */
.ms-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  font-family:"Poppins", sans-serif; font-weight:600; font-size:15px; letter-spacing:.005em;
  padding:15px 30px; min-height:48px; border-radius:var(--pill); border:2px solid transparent;
  cursor:pointer; transition:transform var(--ease), box-shadow var(--ease), background var(--ease), color var(--ease), border-color var(--ease);
  white-space:nowrap;
}
.ms-btn:hover{ transform:translateY(-2px); }
.ms-btn--primary{ background:var(--coral-dark); color:var(--white); box-shadow:0 14px 28px -14px rgba(162,86,57,.6); }
.ms-btn--primary:hover{ background:#8A4730; }
.ms-btn:active{ transform:translateY(0); }
.ms-btn--dark{ background:var(--earth); color:var(--cream); }
.ms-btn--dark:hover{ background:var(--blue); }
.ms-btn--outline{ background:transparent; color:var(--earth); border-color:var(--earth); }
.ms-btn--outline:hover{ background:var(--earth); color:var(--cream); }
.ms-btn--wa{ background:var(--wa); color:var(--white); }
.ms-btn--wa:hover{ background:#126538; }
.ms-btn--block{ display:flex; width:100%; }
.ms-btn--sm{ padding:11px 20px; font-size:13.5px; min-height:44px; }

/* ---------- nav ---------- */
.ms-header{ position:sticky; top:0; z-index:100; padding:12px 16px; background:linear-gradient(var(--cream), var(--cream) 72%, rgba(249,247,244,0)); }
.ms-nav-pill{
  max-width:var(--maxw); margin:0 auto; padding:10px 12px 10px 22px;
  display:flex; align-items:center; justify-content:space-between; gap:20px;
  background:var(--white); border-radius:var(--pill); box-shadow:var(--shadow-md);
}
.ms-brand{ display:flex; align-items:center; gap:6px; min-height:44px; font-family:"Poppins", sans-serif; font-weight:800; font-size:19px; color:var(--earth); }
.ms-brand small{ font-weight:600; font-size:12px; color:var(--coral-dark); }
.ms-nav-links{ display:flex; gap:26px; margin-left:auto; }
.ms-nav-links a{ font-size:14.5px; font-weight:600; color:var(--stone); transition:color var(--ease); }
.ms-nav-links a:hover{ color:var(--coral-dark); }
.ms-nav-cta{ display:flex; align-items:center; gap:10px; }
.ms-nav-toggle{ display:none; flex-direction:column; justify-content:center; align-items:center; gap:4px; width:44px; height:44px; background:none; border:none; padding:8px; cursor:pointer; }
.ms-nav-toggle span{ width:20px; height:2px; background:var(--earth); border-radius:2px; }

@media (max-width:1024px){
  .ms-nav-links{
    position:absolute; top:calc(100% + 10px); left:16px; right:16px; flex-direction:column;
    background:var(--white); border-radius:20px; box-shadow:var(--shadow-md);
    padding:18px 24px; gap:6px; display:none;
  }
  .ms-nav-links.open{ display:flex; }
  .ms-nav-links a{ padding:12px 4px; }
  .ms-nav-links .ms-btn{ margin-top:8px; padding:15px 30px; color:var(--white); }
  .ms-nav-toggle{ display:flex; }
}

@media (max-width:480px){
  .ms-nav-pill{ padding:8px 8px 8px 16px; }
  .ms-brand{ font-size:17px; }
  .ms-btn{ max-width:100%; white-space:normal; text-align:center; line-height:1.35; }
}

/* ---------- secciones / tipografía ---------- */
.ms-section{ padding:104px 0; }
.ms-section--tight{ padding:64px 0; }
@media (max-width:760px){
  .ms-section{ padding:44px 0; }
  .ms-section--tight{ padding:32px 0; }
}
.ms-section--dark{ background:var(--earth); color:var(--cream); }
.ms-section--dark h2, .ms-section--dark h3{ color:var(--cream); }
.ms-section--sage{ background:var(--sage-light); }
.ms-section--coral{ background:var(--coral-xlight); }

.ms-eyebrow{
  display:inline-block; font-family:"Poppins", sans-serif; font-size:12.5px; font-weight:700;
  letter-spacing:.14em; text-transform:uppercase; color:var(--coral-dark);
  padding:0; margin-bottom:18px;
}
.ms-eyebrow::before{ content:""; display:inline-block; width:22px; height:2px; background:var(--coral); vertical-align:middle; margin-right:10px; transform:translateY(-1px); }
.ms-section--dark .ms-eyebrow{ color:var(--coral-on-dark); }
.ms-section--dark .ms-eyebrow::before{ background:var(--coral-on-dark); }
.ms-h2{ font-size:clamp(28px,3.6vw,42px); max-width:26ch; }
.ms-lead{ font-size:18px; color:var(--stone); max-width:56ch; }
.ms-section--dark .ms-lead{ color:rgba(249,247,244,.82); }
.ms-center{ text-align:center; margin-left:auto; margin-right:auto; }

/* ---------- hero ---------- */
.ms-hero{ padding:56px 0 40px; overflow:hidden; }
.ms-hero-grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:60px; align-items:center; }
.ms-h1, .ms-hero h1{ font-size:clamp(34px,4.6vw,56px); line-height:1.12; letter-spacing:-.02em; }
.ms-hero-lead{ font-size:19px; color:var(--stone); max-width:46ch; margin-bottom:30px; }
.ms-hero-ctas{ display:flex; flex-wrap:wrap; gap:14px; margin-bottom:26px; }
.ms-stat-row{ display:flex; flex-wrap:wrap; gap:10px; }
.ms-stat-chip{
  display:flex; align-items:center; gap:7px; background:var(--white); border:1px solid var(--sep);
  border-radius:var(--pill); padding:8px 16px; font-size:13.5px; font-weight:600; color:var(--earth);
  box-shadow:var(--shadow-sm);
}
.ms-stat-chip .stars{ color:var(--coral-dark); letter-spacing:1px; }

.ms-hero-photo{ position:relative; }
.ms-hero-photo-frame{
  border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-lg);
  aspect-ratio:4/5;
}
.ms-hero-photo-frame img{ width:100%; height:100%; object-fit:cover; }
.ms-hero-photo-badge{
  position:absolute; left:-28px; bottom:36px; max-width:230px;
  background:var(--earth); color:var(--cream); padding:18px 20px; border-radius:var(--radius-sm);
  box-shadow:var(--shadow-md); font-size:13.5px; line-height:1.5;
}
.ms-hero-photo-badge a{ color:var(--coral-on-dark); text-decoration:underline; text-underline-offset:2px; }
.ms-hero-photo-badge strong{ display:block; font-family:"Poppins",sans-serif; font-size:15px; margin-bottom:3px; }

@media (max-width:900px){
  .ms-hero{ padding:32px 0 24px; }
  .ms-hero-grid{ grid-template-columns:1fr; }
  .ms-hero-photo-badge{ position:static; margin-top:16px; max-width:none; }
}
@media (max-width:480px){
  .ms-h1, .ms-hero h1{ font-size:clamp(30px,8.4vw,44px); }
}

/* ---------- cita / storytelling ---------- */
.ms-quote{ text-align:center; max-width:800px; margin:0 auto; }
.ms-quote-mark{ font-family:"Poppins",sans-serif; font-size:88px; line-height:.6; color:var(--coral); display:block; margin-bottom:10px; }
.ms-quote-text{ font-size:clamp(21px,2.8vw,30px); font-weight:400; line-height:1.5; margin-bottom:34px; }
.ms-quote-by{ display:flex; align-items:center; justify-content:center; gap:14px; }
.ms-quote-photo{ width:58px; height:58px; border-radius:50%; overflow:hidden; flex:none; }
.ms-quote-photo img{ width:100%; height:100%; object-fit:cover; }
.ms-quote-name{ font-weight:700; text-align:left; }
.ms-quote-role{ font-size:13px; opacity:.7; text-align:left; }
.ms-quote-link{ display:inline-block; margin-top:26px; color:var(--coral-on-dark); font-weight:600; }
.ms-quote-link:hover{ color:var(--cream); }

.ms-card{
  background:var(--white); border-radius:var(--radius); padding:34px; box-shadow:var(--shadow-sm);
  border:1px solid var(--sep); transition:transform var(--ease), box-shadow var(--ease);
  display:flex; flex-direction:column; height:100%;
}
.ms-card:hover{ transform:translateY(-3px); box-shadow:var(--shadow-md); }
.ms-card--outline{ background:transparent; border:2px dashed var(--sep); box-shadow:none; }
.ms-card--outline:hover{ border-color:var(--coral); transform:none; box-shadow:none; }
.ms-card h2,.ms-card h3{ font-size:19px; margin-bottom:8px; }
.ms-card p{ color:var(--stone); font-size:14.5px; flex-grow:1; }
.ms-card-cta{ margin-top:18px; font-weight:700; font-size:14px; color:var(--coral-dark); }
.ms-card-price{ margin-top:16px; padding-top:14px; border-top:1px solid var(--sep); font-family:"Poppins",sans-serif; font-weight:700; font-size:17px; color:var(--earth); }
.ms-card-price small{ display:block; font-family:"Inter",sans-serif; font-weight:400; font-size:12.5px; color:var(--stone-light); margin-top:2px; }

.ms-badge{
  display:inline-flex; align-self:flex-start; font-size:12px; font-weight:700; letter-spacing:.05em;
  text-transform:uppercase; padding:5px 12px; border-radius:var(--pill); margin-bottom:14px;
}
.ms-badge--free{ background:var(--sage-light); color:var(--earth); }
.ms-badge--soon{ background:var(--cream-alt); color:var(--stone); }

/* ---------- checklist ---------- */
.ms-checklist{ display:grid; gap:18px; margin-top:6px; }
.ms-checklist li{ display:flex; gap:14px; align-items:flex-start; font-size:16.5px; }
.ms-checklist svg{ flex:none; margin-top:3px; background:var(--coral-xlight); color:var(--coral-dark); border-radius:50%; padding:5px; stroke-width:2.2; }
.ms-note{ font-size:13.5px; color:var(--stone-light); font-style:italic; margin-top:14px; text-align:center; }

/* ---------- testimonio ---------- */
.ms-testi{ background:var(--white); color:var(--earth); border-radius:var(--radius); padding:28px; box-shadow:var(--shadow-md); position:relative; }
.ms-testi-mark{ font-family:"Poppins",sans-serif; font-size:44px; color:var(--coral); line-height:.5; display:block; margin-bottom:10px; }
.ms-testi-stars{ display:none; }
.ms-testi-quote{ font-size:15px; font-style:italic; color:var(--stone); margin-bottom:14px; }
.ms-testi-name{ font-weight:700; font-size:14px; }

/* ---------- prueba social grid ---------- */
.ms-testi-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:36px; }
.ms-testi-grid > *, .ms-tier-grid > *{ min-width:0; }
.ms-testi-grid--2col{ grid-template-columns:repeat(2,1fr); max-width:800px; margin-left:auto; margin-right:auto; }
@media (max-width:860px){ .ms-testi-grid{ grid-template-columns:1fr; } }
/* centra la última tarjeta cuando queda sola en su fila (total no múltiplo de 3) */
.ms-testi-grid--center-last > :last-child:nth-child(3n+1){ grid-column:2; max-width:100%; }
@media (max-width:860px){ .ms-testi-grid--center-last > :last-child:nth-child(3n+1){ grid-column:1; } }

/* ---------- fundamentos strip ---------- */
.ms-fund-row{ display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin-top:44px; border-top:1px solid var(--sep); }
.ms-fund-item{ padding:28px 22px 0; border-right:1px solid var(--sep); }
.ms-fund-item:last-child{ border-right:none; }
.ms-fund-num{ font-family:"Poppins",sans-serif; font-weight:800; font-size:13px; color:var(--coral-dark); margin-bottom:10px; }
.ms-fund-item h3{ font-size:16.5px; margin-bottom:6px; }
.ms-fund-item p{ font-size:14px; color:var(--stone); }
.ms-fund-row--3{ grid-template-columns:repeat(3,1fr); }
@media (max-width:860px){
  .ms-fund-row, .ms-fund-row--3{ grid-template-columns:1fr 1fr; border-top:none; }
  .ms-fund-item{ border:none; border-top:1px solid var(--sep); padding-top:22px; }
}
@media (max-width:480px){
  .ms-fund-row, .ms-fund-row--3{ grid-template-columns:1fr; }
}

/* ---------- autochequeo (quiz card) ---------- */
.ms-quiz{ background:var(--white); border-radius:var(--radius-lg); padding:44px; box-shadow:var(--shadow-md); display:grid; grid-template-columns:1.2fr .8fr; gap:44px; }
@media (max-width:860px){ .ms-quiz{ grid-template-columns:1fr; padding:30px; } }
.ms-quiz-item{ display:flex; align-items:flex-start; gap:12px; padding:12px 0; border-bottom:1px solid var(--sep); cursor:pointer; font-size:15.5px; }
.ms-quiz-item:last-child{ border-bottom:none; }
.ms-quiz-item input{ margin-top:3px; width:18px; height:18px; accent-color:var(--coral); flex:none; }
.ms-quiz-result{ background:var(--cream-alt); border-radius:var(--radius); padding:28px; display:flex; flex-direction:column; justify-content:center; text-align:center; }
.ms-quiz-count{ font-family:"Poppins",sans-serif; font-size:42px; font-weight:800; color:var(--coral-dark); }

/* ---------- resonancia (statement stack) ---------- */
.ms-stack{ display:grid; gap:18px; margin-top:38px; }
.ms-stack-item{ display:grid; grid-template-columns:auto 1fr; gap:22px; align-items:center; background:var(--white); border-radius:var(--radius); padding:26px 30px; box-shadow:var(--shadow-sm); }
.ms-stack-item .ic{ width:48px; height:48px; border-radius:50%; background:var(--coral-xlight); color:var(--coral-dark); display:flex; align-items:center; justify-content:center; flex:none; }
.ms-stack-item h3{ font-size:17px; margin-bottom:4px; }
.ms-stack-item p{ font-size:14.5px; color:var(--stone); margin:0; }
.ms-stack-item a.link{ font-weight:700; font-size:14px; color:var(--coral-dark); }
@media (max-width:640px){ .ms-stack-item{ grid-template-columns:1fr; text-align:center; } .ms-stack-item .ic{ margin:0 auto; } }

/* ---------- banda ancha (reto / membresía) ---------- */
.ms-band{ border-radius:var(--radius-lg); padding:56px; display:flex; align-items:center; justify-content:space-between; gap:32px; flex-wrap:wrap; }
.ms-band h2{ margin-bottom:10px; }
.ms-band p{ margin:0; max-width:52ch; }
@media (max-width:700px){ .ms-band{ padding:36px 26px; flex-direction:column; align-items:flex-start; } }

.ms-limits p{ max-width:none; }

/* ---------- faq ---------- */
.ms-faq{ margin-top:30px; display:grid; gap:12px; max-width:760px; }
.ms-faq details{ background:var(--white); border-radius:var(--radius-sm); padding:6px 22px; border:1px solid var(--sep); }
.ms-faq summary{ min-height:44px; padding:16px 0; font-weight:600; cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; }
.ms-faq summary::-webkit-details-marker{ display:none; }
.ms-faq summary .plus{ color:var(--coral-dark); font-size:20px; transition:transform var(--ease); }
.ms-faq details[open] summary .plus{ transform:rotate(45deg); }
.ms-faq p{ padding-bottom:16px; color:var(--stone); margin:0; font-size:14.5px; }

/* ---------- cta final ---------- */
.ms-cta-final{ text-align:center; }
.ms-cta-final h2{ font-size:clamp(30px,4vw,44px); }
.ms-cta-final .ms-btn-row{ display:flex; justify-content:center; gap:16px; flex-wrap:wrap; margin-top:24px; }

/* ---------- footer ---------- */
.ms-footer{ background:var(--earth); color:rgba(249,247,244,.84); padding:72px 0 28px; }
.ms-footer-grid{ display:grid; grid-template-columns:1.7fr repeat(3, 1fr); gap:32px; margin-bottom:44px; }
@media (max-width:860px){ .ms-footer-grid{ grid-template-columns:1fr 1fr; gap:28px; } }
@media (max-width:480px){
  .ms-footer{ padding:44px 0 24px; }
  .ms-footer-grid{ grid-template-columns:1fr; gap:26px; }
}
.ms-footer h3, .ms-footer .ms-footer-title{ color:var(--cream); font-family:"Poppins",sans-serif; font-weight:600; font-size:13px; text-transform:uppercase; letter-spacing:.05em; margin-bottom:16px; }
.ms-footer a{ display:block; font-size:14px; padding:12px 0; min-height:44px; color:rgba(249,247,244,.8); }
.ms-footer a:hover{ color:var(--coral-on-dark); }
.ms-footer-brand{ font-family:"Poppins",sans-serif; font-weight:800; font-size:19px; color:var(--cream); margin-bottom:12px; }
.ms-footer-bottom{ border-top:1px solid rgba(249,247,244,.14); padding-top:24px; font-size:13px; text-align:center; }
.ms-footer .ms-footer-bottom a{ display:inline; min-height:0; padding:0; color:inherit; text-decoration:underline; text-underline-offset:2px; }
.ms-footer-disclaimer{ font-size:12.5px; line-height:1.55; color:rgba(249,247,244,.72); max-width:80ch; margin:0 auto 14px; text-align:center; }

/* ---------- flotante whatsapp ---------- */
.ms-wa-float{
  position:fixed; right:16px; bottom:16px; width:54px; height:54px; border-radius:50%;
  background:var(--wa); color:var(--white); display:flex; align-items:center; justify-content:center;
  box-shadow:var(--shadow-md); z-index:150;
}
.ms-wa-float:hover{ background:#126538; }
@media (max-width:760px){ body:has(.ms-mobile-cta){ padding-bottom:84px; } body.ms-sticky-on .ms-wa-float{ bottom:92px; } }

/* barra fija móvil (programa) */
.ms-mobile-cta{ position:fixed; left:0; right:0; bottom:0; z-index:140; padding:12px 16px; background:var(--white); box-shadow:0 -8px 24px rgba(22,50,61,.12); display:none; }
@media (max-width:760px){ .ms-mobile-cta{ display:block; } }

/* ---------- artículos (blog) ---------- */
.ms-article-hero{ padding:64px 0 8px; }
.ms-article-body{ max-width:70ch; margin:0 auto; }
.ms-article-body h2{ font-size:22px; margin-top:1.6em; }
.ms-article-body p{ color:var(--stone); font-size:16.5px; line-height:1.75; }
.ms-article-body blockquote{ border-left:3px solid var(--coral); margin:1.6em 0; padding:2px 0 2px 22px; font-style:italic; color:var(--earth); font-size:18px; }
.ms-article-meta{ display:flex; flex-wrap:wrap; gap:4px 8px; font-size:13.5px; color:var(--stone-light); margin-top:10px; }
.ms-article-cta{ max-width:70ch; margin:56px auto 0; background:var(--coral-xlight); border-radius:var(--radius); padding:34px; text-align:center; }
.ms-article-cta h2{ font-size:22px; }
.ms-article-body h3{ font-size:18px; margin-top:1.5em; margin-bottom:.4em; }
.ms-article-body a{ color:var(--coral-dark); text-decoration:underline; text-underline-offset:2px; }
.ms-article-body a:hover{ color:var(--earth); }
.ms-article-body ul{ list-style:disc; padding-left:22px; margin:0 0 1.2em; color:var(--stone); }
.ms-article-body ul li{ font-size:16.5px; margin-bottom:8px; }
.ms-article-body ul li::marker{ color:var(--coral); }
.ms-faq--article{ max-width:70ch; margin:24px auto 0; }
.ms-article-related{ max-width:70ch; margin:52px auto 0; padding-top:28px; border-top:1px solid var(--sep); }
.ms-article-related h2{ font-family:"Poppins",sans-serif; font-weight:700; font-size:19px; margin:0 0 14px; }
.ms-article-related ul{ list-style:none; padding:0; margin:0; display:grid; gap:12px; }
.ms-article-related a{ color:var(--earth); font-weight:600; font-size:15.5px; text-decoration:none; }
.ms-article-related a:hover{ color:var(--coral-dark); }
.ms-article-refs{ max-width:70ch; margin:40px auto 0; font-size:13px; color:var(--stone-light); }
.ms-article-refs h2{ font-size:14px; text-transform:uppercase; letter-spacing:.05em; color:var(--stone-light); margin:0 0 8px; }
.ms-article-refs p{ font-size:13px; color:var(--stone-light); margin:0; }
.ms-article-author{ max-width:70ch; margin:40px auto 0; display:flex; gap:18px; align-items:flex-start; background:var(--cream-alt); border:1px solid var(--sep); border-radius:var(--radius); padding:24px 26px; }
.ms-article-author img{ width:72px; height:72px; border-radius:50%; object-fit:cover; flex:none; }
.ms-article-author-name{ font-family:"Poppins",sans-serif; font-weight:700; font-size:16px; margin:0 0 4px; color:var(--earth); }
.ms-article-author p{ font-size:14px; color:var(--stone); margin:0; line-height:1.55; }
.ms-article-author a{ color:var(--coral-dark); font-weight:600; text-decoration:none; }
.ms-article-author a:hover{ color:var(--earth); }
@media (max-width:520px){ .ms-article-author{ flex-direction:column; gap:14px; } }

/* ---------- bio ---------- */
.ms-bio-grid{ display:grid; grid-template-columns:.85fr 1.15fr; gap:56px; align-items:start; }
@media (max-width:860px){ .ms-bio-grid{ grid-template-columns:1fr; } }
.ms-bio-photo{ border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-md); aspect-ratio:4/5; }
.ms-bio-photo img{ width:100%; height:100%; object-fit:cover; object-position:top center; display:block; }
@media (max-width:860px){ .ms-bio-photo{ max-width:380px; justify-self:center; } }
.ms-bio-grid .ms-article-body{ max-width:none; margin:0; }
.ms-chip{ display:inline-block; background:var(--coral-xlight); color:var(--coral-dark); font-size:13px; font-weight:700; padding:6px 14px; border-radius:var(--pill); margin-bottom:20px; }

/* ---------- faq con categorías ---------- */
.ms-faq-cat{ font-size:13px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--stone-light); margin:36px 0 14px; }
.ms-faq-cat:first-of-type{ margin-top:0; }

/* ---------- tarjetas de precio (tiers) ---------- */
.ms-tier-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:36px; }
@media (max-width:860px){ .ms-tier-grid{ grid-template-columns:1fr; } }
.ms-tier{ background:var(--white); border:1px solid var(--sep); border-radius:var(--radius); padding:28px; box-shadow:var(--shadow-sm); }
.ms-tier.is-featured{ border:2px solid var(--coral); box-shadow:var(--shadow-md); }
.ms-tier .ms-tier-tag{ display:inline-block; font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--coral-dark); margin-bottom:10px; }
.ms-tier .ms-tier-desc{ font-size:14.5px; color:var(--stone); margin:0 0 14px; }
.ms-tier .name{ font-family:"Poppins",sans-serif; font-weight:700; font-size:17px; margin-bottom:6px; }
.ms-tier .price{ font-family:"Poppins",sans-serif; font-weight:800; font-size:24px; color:var(--coral-dark); margin-bottom:14px; }
.ms-tier ul{ display:grid; gap:10px; }
.ms-tier li{ display:flex; gap:9px; font-size:14px; color:var(--stone); }
.ms-tier svg{ flex:none; color:var(--coral-dark); margin-top:2px; stroke-width:2.2; }

.ms-note-box{ background:var(--sage-light); border-radius:var(--radius); padding:22px 26px; margin-top:28px; font-size:14.5px; color:var(--earth); }
.ms-note-box a{ font-weight:700; color:var(--blue); }

/* ---------- 404 / sistema ---------- */
.ms-system-page{ min-height:60vh; display:flex; align-items:center; justify-content:center; text-align:center; padding:80px 0; }
.ms-system-num{ font-family:"Poppins",sans-serif; font-weight:800; font-size:96px; color:var(--coral); line-height:1; margin-bottom:10px; }

/* ---------- precio: tachado y badge de lanzamiento ---------- */
.ms-price-was{ font-family:"Poppins",sans-serif; font-size:24px; font-weight:400; color:var(--earth); text-decoration:line-through; text-decoration-color:var(--coral); text-decoration-thickness:2px; margin:0; }
.ms-badge--launch{ display:inline-block; background:var(--coral-xlight); color:var(--coral-dark); font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; padding:5px 12px; border-radius:var(--pill); margin-bottom:10px; }
.ms-tier .ms-btn{ margin-top:18px; }
.ms-tier .ms-price-was{ margin-bottom:2px; }
.ms-tier-grid--2col{ grid-template-columns:repeat(2,1fr); max-width:760px; margin-left:auto; margin-right:auto; }
@media (max-width:640px){ .ms-tier-grid--2col{ grid-template-columns:1fr; } }
.ms-tier .per-session{ font-size:12.5px; font-weight:600; color:var(--earth); background:var(--sage-light); display:inline-block; padding:3px 10px; border-radius:var(--pill); margin-bottom:10px; }

/* ---------- franja de anuncio (arriba del header) ---------- */
.ms-announce{ background:var(--earth); color:var(--cream); text-align:center; font-size:13.5px; font-weight:600; padding:10px 16px; }
.ms-announce a{ color:var(--coral-on-dark); text-decoration:underline; text-underline-offset:2px; display:inline-block; padding:4px 0; }

/* ---------- fases / sesiones del programa (currícula) ---------- */
.ms-phase{ margin-top:44px; }
.ms-phase:first-of-type{ margin-top:36px; }
.ms-phase-head{ display:flex; align-items:baseline; gap:12px; margin-bottom:18px; }
.ms-phase-head span{ font-family:"Poppins",sans-serif; font-weight:700; font-size:12.5px; letter-spacing:.05em; text-transform:uppercase; color:var(--coral-dark); background:var(--coral-xlight); padding:5px 12px; border-radius:var(--pill); }
.ms-phase-head h3{ font-size:18px; margin:0; }
.ms-session-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
@media (max-width:760px){ .ms-session-grid{ grid-template-columns:1fr; } }
.ms-session{ background:var(--white); border:1px solid var(--sep); border-radius:var(--radius-sm); padding:20px; display:flex; gap:14px; align-items:flex-start; }
.ms-session-num{ flex:none; width:30px; height:30px; border-radius:50%; background:var(--sage-light); color:var(--earth); font-family:"Poppins",sans-serif; font-weight:800; font-size:13px; display:flex; align-items:center; justify-content:center; }
.ms-session .meta{ font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.03em; color:var(--stone-light); margin-bottom:4px; }
.ms-session h4{ font-family:"Inter",sans-serif; font-weight:600; font-size:14.5px; margin:0; color:var(--earth); line-height:1.4; }

/* ---------- currícula compacta (programa-grupal) ---------- */
.ms-curriculum{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:36px; }
@media (max-width:900px){ .ms-curriculum{ grid-template-columns:1fr; } }
.ms-curriculum-phase{
  background:var(--white); border-radius:var(--radius); padding:28px 26px;
  box-shadow:var(--shadow-sm); border:1px solid var(--sep);
}
.ms-curriculum-phase .ms-phase-head{ display:block; margin-bottom:6px; }
.ms-curriculum-phase .ms-phase-head span{
  display:inline-block; font-family:"Poppins",sans-serif; font-weight:700; font-size:12px; letter-spacing:.05em;
  text-transform:uppercase; color:var(--coral-dark); background:var(--coral-xlight); padding:5px 12px;
  border-radius:var(--pill); margin-bottom:10px;
}
.ms-curriculum-phase .ms-phase-head h3{ font-size:18px; margin:0; }
.ms-curriculum-phase .ms-checklist{ margin-top:16px; gap:14px; }
.ms-curriculum-phase .ms-checklist li{ font-size:14.5px; }

/* ---------- home: nav CTA pill ---------- */
.ms-nav-pill-cta{
  background:var(--coral-dark); color:var(--white); font-weight:700; font-size:14px;
  padding:12px 22px; border-radius:var(--pill); white-space:nowrap;
}
.ms-nav-pill-cta:hover{ background:#8A4730; }
@media (max-width:640px){ .ms-nav-pill-cta{ display:none; } }

/* ---------- home: hero, lista tipo píldora ---------- */
.ms-hero-pills{ list-style:none; margin:26px 0 30px; padding:0; display:flex; flex-direction:column; gap:10px; }
.ms-hero-pills li{
  background:var(--white); border:1px solid var(--sep); border-radius:var(--pill);
  padding:13px 22px; font-size:15px; font-weight:600; color:var(--earth);
  display:flex; align-items:center; gap:10px; box-shadow:var(--shadow-sm);
}
.ms-hero-pills svg{ flex:none; color:var(--coral-dark); stroke-width:2.2; }

/* ---------- home: señales, grid de 4 tarjetas cortas ---------- */
.ms-signal-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:32px; }
.ms-signal-card{ background:var(--white); border-radius:var(--radius); padding:22px 20px; box-shadow:var(--shadow-sm); }
.ms-signal-card .ic{ width:38px; height:38px; border-radius:var(--pill); background:var(--coral-xlight); display:flex; align-items:center; justify-content:center; color:var(--coral-dark); margin-bottom:14px; }
.ms-signal-card h3{ font-size:15.5px; color:var(--earth); line-height:1.35; margin:0; }
@media (max-width:860px){ .ms-signal-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:480px){ .ms-signal-grid{ grid-template-columns:1fr; } }
.ms-signal-grid--3col{ grid-template-columns:repeat(3,1fr); }
@media (max-width:860px){ .ms-signal-grid--3col{ grid-template-columns:1fr 1fr; } }
@media (max-width:480px){ .ms-signal-grid--3col{ grid-template-columns:1fr; } }

/* ---------- home: autoridad, foto + cita lado a lado ---------- */
.ms-authority-row{ display:grid; grid-template-columns:.85fr 1.15fr; gap:44px; align-items:center; }
.ms-authority-photo{ border-radius:var(--radius-lg); overflow:hidden; aspect-ratio:1/1.05; box-shadow:0 30px 70px -24px rgba(0,0,0,.5); }
.ms-authority-photo img{ width:100%; height:100%; object-fit:cover; }
.ms-authority-text{ font-family:"Poppins",sans-serif; font-size:clamp(20px,2.4vw,24px); font-weight:600; line-height:1.4; text-wrap:balance; margin:0; }
.ms-authority-by{ margin-top:22px; font-size:14px; color:#B4C6CF; }
.ms-authority-by strong{ color:var(--cream); display:block; font-family:"Poppins",sans-serif; font-size:15px; }
.ms-authority-link{ display:inline-block; margin-top:18px; padding:10px 0; color:var(--coral-light); font-weight:700; font-size:14px; border-bottom:1px solid rgba(245,229,219,.4); }
@media (max-width:860px){ .ms-authority-row{ grid-template-columns:1fr; } .ms-authority-photo{ max-width:340px; } }

/* ---------- programa: por qué pasa esto, texto + imagen lado a lado ---------- */
.ms-why-grid{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
@media (max-width:900px){ .ms-why-grid{ grid-template-columns:1fr; gap:32px; } }

/* ---------- home: prueba social, foto + testimonios apilados ---------- */
.ms-proof-row{ display:grid; grid-template-columns:.9fr 1.1fr; gap:44px; align-items:center; }
.ms-proof-photo{ border-radius:var(--radius-lg); overflow:hidden; aspect-ratio:4/5; box-shadow:var(--shadow-md); }
.ms-proof-photo img{ width:100%; height:100%; object-fit:cover; }
.ms-proof-list{ display:flex; flex-direction:column; gap:14px; }
.ms-proof-testi{ background:var(--white); border-radius:var(--radius-sm); padding:18px 20px; box-shadow:var(--shadow-sm); }
.ms-proof-testi .stars{ display:none; }
.ms-proof-testi p{ margin:8px 0 6px; font-size:14.5px; color:var(--earth); line-height:1.5; }
.ms-proof-testi .name{ font-size:12.5px; color:var(--stone-light); font-weight:600; }
@media (max-width:860px){ .ms-proof-row{ grid-template-columns:1fr; } }

/* ---------- formulario de preinscripción ---------- */
.ms-form-card{ background:var(--white); border-radius:var(--radius-lg); padding:38px; box-shadow:var(--shadow-md); max-width:640px; margin:36px auto 0; }
@media (max-width:640px){ .ms-form-card{ padding:26px 22px; } }
.ms-field{ margin-bottom:20px; }
.ms-field label, .ms-field legend{ display:block; font-weight:600; font-size:14.5px; margin-bottom:8px; color:var(--earth); padding:0; }
.ms-field input[type="text"], .ms-field input[type="email"], .ms-field input[type="tel"], .ms-field input[type="number"]{
  width:100%; padding:13px 16px; border:1.5px solid var(--sep); border-radius:var(--radius-sm);
  font-family:"Inter",sans-serif; font-size:15px; color:var(--earth); background:var(--cream-alt);
  transition:border-color var(--ease);
}
.ms-field input:focus{ border-color:var(--coral-dark); }
.ms-field-error{ display:none; color:var(--coral-dark); font-size:12.5px; margin-top:6px; }
.ms-field-error.is-visible{ display:block; }
.ms-check-row, .ms-radio-row{ display:grid; gap:10px; }
.ms-check-item, .ms-radio-item{ display:flex; align-items:flex-start; gap:10px; font-size:14.5px; color:var(--stone); background:var(--cream-alt); border-radius:var(--radius-sm); padding:12px 14px; cursor:pointer; }
.ms-check-item input, .ms-radio-item input{ margin-top:3px; accent-color:var(--coral); flex:none; }
.ms-radio-item .hint{ display:block; font-size:12.5px; color:var(--stone-light); margin-top:4px; }
.ms-form-note{ font-size:13px; color:var(--stone-light); text-align:center; margin-top:14px; }
.ms-btn-spinner{ display:inline-block; width:15px; height:15px; border:2px solid rgba(255,255,255,.45); border-top-color:#fff; border-radius:50%; animation:ms-spin .7s linear infinite; }
@keyframes ms-spin{ to{ transform:rotate(360deg); } }
.ms-form.is-hidden{ display:none; }
.ms-form-success{ display:none; text-align:center; padding:8px 6px; }
.ms-form-success.is-visible{ display:block; }
.ms-form-success .ic{ width:52px; height:52px; border-radius:50%; background:var(--sage-light); color:var(--earth); display:flex; align-items:center; justify-content:center; margin:0 auto 18px; }
.ms-form-success h3{ font-size:20px; margin-bottom:10px; }
.ms-form-success .ms-btn{ margin-top:20px; }

/* ---------- consentimiento de analítica ---------- */
.ms-consent{
  position:fixed; left:18px; right:18px; bottom:18px; z-index:300;
  max-width:920px; margin:0 auto; padding:20px 22px;
  display:flex; align-items:center; justify-content:space-between; gap:24px;
  color:var(--earth); background:var(--white); border:1px solid var(--sep);
  border-radius:var(--radius); box-shadow:var(--shadow-lg);
}
.ms-consent__copy{ min-width:0; }
.ms-consent__copy strong{ display:block; font-family:"Poppins",sans-serif; margin-bottom:4px; }
.ms-consent__copy p{ margin:0; color:var(--stone); font-size:14px; }
.ms-consent__copy a{ display:inline-block; margin-top:6px; color:var(--coral-dark); font-size:13px; font-weight:700; text-decoration:underline; }
.ms-consent__actions{ display:flex; flex:none; gap:10px; }
.ms-consent__actions .ms-btn{ padding:11px 18px; font-size:13px; min-height:44px; }
.ms-consent-manage{
  position:fixed; left:12px; bottom:10px; z-index:250; border:0; border-radius:var(--pill);
  padding:12px 14px; min-height:44px; color:var(--cream); background:var(--earth); opacity:.85;
  font:600 12px/1.2 "Inter",sans-serif; cursor:pointer;
}
.ms-consent-manage:hover, .ms-consent-manage:focus-visible{ opacity:1; }
body:has(.ms-mobile-cta) .ms-consent-manage{ bottom:84px; }
@media (max-width:700px){
  .ms-consent{ align-items:stretch; flex-direction:column; gap:16px; }
  .ms-consent__actions{ width:100%; flex-wrap:wrap; }
  .ms-consent__actions .ms-btn{ flex:1 1 140px; }
}

/* ---------- utilidades (sustituyen estilos inline repetidos) ---------- */
.ms-eyebrow--block{ display:block; width:fit-content; }
.ms-narrow{ max-width:70ch; }
.ms-link{ color:var(--coral-dark); font-weight:600; text-decoration:underline; text-underline-offset:2px; }
.ms-link:hover{ color:var(--earth); }
.ms-sr-only{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.ms-legal-note{ margin-top:22px; font-size:12.5px; color:var(--stone-light); max-width:56ch; margin-left:auto; margin-right:auto; text-align:center; }

/* ---------- accesibilidad ---------- */
:focus-visible{ outline:3px solid var(--coral-dark); outline-offset:3px; border-radius:6px; }
.ms-section--dark :focus-visible, .ms-footer :focus-visible, .ms-announce :focus-visible{ outline-color:var(--coral-on-dark); }
.ms-btn:focus-visible{ border-radius:var(--pill); }
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ transition-duration:.01ms !important; animation-duration:.01ms !important; }
  .ms-btn:hover, .ms-card:hover{ transform:none; }
}
@media (max-width:480px){ .ms-card, .ms-tier{ padding:24px; } }
.ms-quiz-item input{ width:22px; height:22px; }
.ms-quiz-item{ min-height:48px; }

/* ---------- clases nuevas (reemplazan estilos inline) ---------- */
.ms-nav-links a.ms-nav-mobile-cta{ display:none; }
@media (max-width:640px){ .ms-nav-links a.ms-nav-mobile-cta{ display:flex; } }
.ms-nav-links a.ms-btn:hover{ color:var(--white); }
.ms-hero--compact{ padding-bottom:40px; }
.ms-h2--lg{ font-size:clamp(34px,4.4vw,50px); }
.ms-h2--wide{ max-width:none; }
.ms-h2--sm{ font-size:22px; }
.ms-h1--page{ font-size:clamp(28px,4vw,42px); max-width:24ch; }
.ms-quiz--spaced{ margin-top:28px; }
.ms-quiz-msg{ font-size:14px; color:var(--stone); margin:14px 0 20px; }
.ms-lead--after{ margin-top:22px; max-width:60ch; font-size:17px; }
.ms-lead--tight{ margin-top:14px; max-width:none; }
.ms-tier-grid--spaced{ margin-top:34px; }
.ms-price-unit{ font-size:13px; font-weight:600; color:var(--stone); }
.ms-note--left{ text-align:left; max-width:70ch; margin-left:0; font-style:normal; }
.ms-note--payment{ margin-top:22px; }
.ms-soon-row{ display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:40px; }
@media (max-width:640px){ .ms-soon-row{ grid-template-columns:1fr; } }
.ms-soon{ background:var(--white); border:1px dashed var(--sep); border-radius:var(--radius-sm); padding:22px 24px; }
.ms-soon strong{ display:block; font-family:"Poppins",sans-serif; font-size:16.5px; margin-bottom:4px; }
.ms-soon p{ margin:0; font-size:14.5px; color:var(--stone); }
.ms-soon-tag{ display:block; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--coral-dark); margin-bottom:8px; }
.ms-small-note{ margin-top:28px; font-size:14.5px; color:var(--stone); }
.ms-band--tint{ background:var(--sage-light); }
.ms-band--white{ background:var(--white); box-shadow:var(--shadow-sm); }
.ms-band--spaced{ margin-bottom:24px; }
.ms-section--alt{ background:var(--cream-alt); }
.ms-section--flush-top{ padding-top:0; }
.ms-center--cta{ margin-top:30px; }
.ms-panel{ background:var(--white); border-radius:var(--radius-lg); padding:32px 36px; margin-top:18px; max-width:680px; box-shadow:var(--shadow-sm); }
@media (max-width:480px){ .ms-panel{ padding:24px 22px; } }
.ms-pullquote{ font-style:italic; font-size:19px; color:var(--earth); margin-top:26px; max-width:38ch; }
.ms-why-img{ width:100%; height:auto; border-radius:var(--radius-lg); box-shadow:var(--shadow-sm); }
.ms-fund-row--spaced{ margin-top:28px; border-top:1px solid var(--sep); }
.ms-fund-item--last{ border-right:none; }
.ms-subhead{ margin-top:52px; font-size:18px; }
.ms-testi-grid--tight{ margin-top:20px; }
.ms-testi-grid--spaced{ margin-top:0; margin-bottom:56px; }
.ms-legal-note--left{ margin-left:0; text-align:left; max-width:70ch; }
.ms-container--narrow{ max-width:760px; }
.ms-container--form{ max-width:640px; }
.ms-container--system{ max-width:520px; }
.ms-form-card--center{ text-align:center; }
.ms-form-copy{ color:var(--stone); }
.ms-bio-role{ font-size:18px; color:var(--stone); margin-bottom:20px; }
.ms-stat-row--spaced{ margin-bottom:24px; }
.ms-signature{ font-family:"Poppins",sans-serif; font-size:14.5px; font-weight:600; color:var(--earth) !important; border-top:1px solid var(--sep); padding-top:18px; margin-top:28px; }
.ms-hero-ctas--spaced{ margin-top:28px; }
.ms-btn--outline-light{ background:transparent; color:var(--cream); border-color:rgba(249,247,244,.7); }
.ms-btn--outline-light:hover{ background:var(--cream); color:var(--earth); }
.ms-card-cta--muted{ color:var(--stone-light); }
.ms-legal-doc{ max-width:76ch; }
.ms-legal-date{ font-size:13px; color:var(--stone-light); margin-bottom:32px; }
.ms-system-icon{ width:72px; height:72px; margin:0 auto 24px; border-radius:50%; background:var(--sage-light); color:var(--earth); display:flex; align-items:center; justify-content:center; }
@media (max-width:480px){ .ms-hero-ctas .ms-btn{ width:100%; } }
.ms-tier{ display:flex; flex-direction:column; }
.ms-tier ul{ margin-bottom:20px; }
.ms-tier .ms-btn{ margin-top:auto; }

/* botón flotante de iMessage (solo en dispositivos Apple; el JS añade .is-apple al <html>) */
.ms-im-float{
  position:fixed; right:16px; bottom:82px; width:54px; height:54px; border-radius:50%;
  background:linear-gradient(180deg,#2B93FF,#0A6CF0); color:#fff; display:none; align-items:center; justify-content:center;
  box-shadow:var(--shadow-md); z-index:150;
}
.is-apple .ms-im-float{ display:flex; }
.ms-im-float:hover{ background:linear-gradient(180deg,#1F86F5,#085CD0); }
@media (max-width:760px){ body.ms-sticky-on .ms-im-float{ bottom:158px; } }

.ms-tier-closed{ margin:auto 0 0; padding:16px 18px; background:var(--cream-alt); border-radius:var(--radius-sm); font-size:14px; color:var(--stone); line-height:1.55; }
.ms-tier-actions{ margin-top:auto; display:grid; gap:10px; }
.ms-tier-actions .ms-btn{ margin-top:0; }
.ms-btn-row--form{ display:flex; justify-content:center; flex-wrap:wrap; gap:12px; margin-top:6px; }

/* ---------- página Gracias ---------- */
.ms-thanks{ padding-top:64px; }
.ms-container--thanks{ max-width:720px; }
.ms-thanks h1{ font-size:clamp(30px,4.4vw,46px); color:var(--earth); }
.ms-notice{ display:flex; gap:16px; align-items:center; background:var(--coral-xlight); border:1.5px solid var(--coral-light); border-radius:var(--radius-sm); padding:20px 22px; margin:32px 0 22px; color:var(--earth); }
.ms-notice svg{ flex:none; color:var(--coral-dark); }
.ms-notice p{ margin:0; font-size:16.5px; }
.ms-confirm{ display:grid; gap:14px; background:var(--sage-light); border-left:4px solid var(--coral); border-radius:var(--radius-sm); padding:22px 24px; margin:0 0 40px; }
.ms-confirm li{ display:flex; gap:12px; align-items:flex-start; font-size:16.5px; color:var(--earth); }
.ms-confirm svg{ flex:none; margin-top:3px; color:var(--coral-dark); }
.ms-pill-note{ display:inline; background:rgba(255,255,255,.7); border-radius:var(--pill); padding:2px 10px; font-size:14.5px; color:var(--stone); -webkit-box-decoration-break:clone; box-decoration-break:clone; }
.ms-prep-title{ display:flex; align-items:center; gap:18px; font-size:20px; margin:0 0 20px; }
.ms-prep-title::after{ content:""; flex:1; height:1px; background:var(--sep); }
.ms-prep-list{ display:grid; gap:14px; margin:0 0 40px; }
.ms-prep-list li{ display:flex; gap:14px; align-items:flex-start; font-size:16.5px; color:var(--stone); }
.ms-prep-list svg{ flex:none; margin-top:1px; padding:4px; width:28px; height:28px; border-radius:50%; background:var(--coral-xlight); color:var(--coral-dark); }
.ms-thanks-cta{ border-top:1px solid var(--sep); padding-top:34px; }
@media (max-width:480px){ .ms-notice{ padding:16px 18px; } .ms-confirm{ padding:18px; } }
.ms-thanks-cta{ display:flex; justify-content:center; flex-wrap:wrap; gap:10px; }
.ms-btn--tenue{ min-height:44px; padding:10px 20px; font-size:14px; font-weight:600; border-width:1px; box-shadow:none; }
.ms-btn--tenue svg{ flex:none; }
.ms-btn--tenue-wa{ background:#E8F3EC; color:#14663A; border-color:#C9E2D3; }
.ms-btn--tenue-wa:hover{ background:#DCEEE3; }
.ms-btn--tenue-im{ background:#E8F0FE; color:#0A58C9; border-color:#C9DBFB; }
.ms-btn--tenue-im:hover{ background:#DCE8FD; }
.ms-apple-only{ display:none; }
.is-apple .ms-apple-only{ display:inline-flex; }

/* ================= versión 2: orden, claridad y premium ================= */
/* hero más ligero en móvil */
@media (max-width:900px){
  .ms-hero-photo-frame{ aspect-ratio:5/4; max-height:380px; }
  .ms-hero-photo-frame img{ object-position:50% 18%; }
  .ms-authority-photo{ aspect-ratio:5/4; max-width:100%; }
  .ms-authority-photo img{ object-position:50% 22%; }
}
.ms-hero-pills--plain{ margin:20px 0 26px; gap:6px; }
.ms-hero-pills--plain li{ background:none; border:0; box-shadow:none; border-radius:0; padding:2px 0; font-weight:500; font-size:16px; }
.ms-hero-cta{ margin:0 0 18px; }
/* franja de prueba */
.ms-proof-strip{ display:flex; flex-wrap:wrap; gap:6px 28px; margin:0; padding:18px 0 0; list-style:none; border-top:1px solid var(--sep); font-size:14.5px; color:var(--stone); }
.ms-proof-strip strong{ color:var(--earth); font-family:"Poppins",sans-serif; font-weight:600; }
/* tarjetas de oferta del home alineadas al contenedor */
.ms-tier-grid--wide{ max-width:none; margin-left:0; margin-right:0; }
/* resumen "En breve" de artículos */
.ms-tldr{ background:var(--coral-xlight); border-left:3px solid var(--coral); border-radius:var(--radius-sm); padding:16px 20px; margin:0 0 28px; font-size:16px; color:var(--earth); }
.ms-tldr strong{ font-family:"Poppins",sans-serif; font-weight:600; }
.ms-article-body .ms-tldr{ color:var(--earth); line-height:1.6; }
/* fases como acordeón (abiertas en escritorio, cerradas en móvil por script.js) */
.ms-phase-acc summary{ list-style:none; cursor:pointer; display:flex; align-items:center; gap:10px; margin-bottom:6px; }
.ms-phase-acc summary::-webkit-details-marker{ display:none; }
.ms-phase-acc summary h3{ margin:0; font-size:18px; }
.ms-phase-acc summary .ms-phase-chip{ display:inline-block; white-space:nowrap; flex:none; font-family:"Poppins",sans-serif; font-weight:700; font-size:12px; letter-spacing:.05em; text-transform:uppercase; color:var(--coral-dark); background:var(--coral-xlight); padding:5px 12px; border-radius:var(--pill); }
.ms-phase-acc summary::after{ content:"+"; margin-left:auto; color:var(--coral-dark); font-size:22px; line-height:1; display:none; }
@media (max-width:900px){
  .ms-phase-acc summary::after{ display:block; }
  .ms-phase-acc[open] summary::after{ content:"–"; }
  .ms-curriculum{ gap:12px; }
  .ms-curriculum-phase{ padding:20px 20px; }
}
/* "ver todo lo que incluye" en tarjetas de precio */
.ms-more{ margin:0 0 18px; }
.ms-more summary{ cursor:pointer; font-size:14px; font-weight:600; color:var(--coral-dark); list-style:none; padding:6px 0; min-height:44px; display:flex; align-items:center; }
.ms-more summary::-webkit-details-marker{ display:none; }
.ms-more[open] summary{ display:none; }
.ms-more ul{ margin-top:10px; }
@media (min-width:901px){ .ms-more summary{ display:none; } }
/* valores en Sobre Daniela */
.ms-values{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:18px; margin-top:28px; }
.ms-value{ background:var(--white); border:1px solid var(--sep); border-radius:var(--radius); padding:24px; box-shadow:var(--shadow-sm); }
.ms-value h3{ font-size:17px; margin-bottom:6px; }
.ms-value p{ margin:0; font-size:14.5px; color:var(--stone); }
.ms-about-note{ margin-top:28px; font-size:15px; color:var(--stone); max-width:68ch; }
.ms-checklist--panel li{ font-size:16px; }
.ms-why-grid--stack{ align-items:start; }
.ms-diagram-fig{ margin:0; background:var(--white); border-radius:var(--radius-lg); padding:26px; box-shadow:var(--shadow-sm); border:1px solid var(--sep); }
.ms-diagram{ width:100%; height:auto; display:block; }
.ms-panel--flush{ max-width:none; margin-top:0; }
.ms-why-grid--stack{ margin-top:8px; }

/* móvil: páginas más cortas */
@media (max-width:900px){
  .ms-hero-photo-frame{ max-height:300px; }
  .ms-hero-photo-badge{ display:none; }
}
@media (max-width:860px){
  .ms-quiz{ padding:20px; gap:20px; }
  .ms-quiz-result{ padding:16px; }
  .ms-quiz-count{ font-size:30px; }
  .ms-quiz-msg{ margin:8px 0 12px; }
  .ms-quiz-item{ padding:8px 0; }
}
@media (max-width:700px){
  .ms-band{ padding:26px 22px; }
  .ms-soon-row{ margin-top:24px; gap:10px; }
  .ms-soon{ padding:16px 18px; }
}
@media (max-width:480px){
  .ms-footer-grid{ grid-template-columns:1fr 1fr; gap:6px 18px; }
  .ms-footer-grid > :first-child{ grid-column:1 / -1; margin-bottom:8px; }
  .ms-footer-grid > :nth-child(4){ grid-column:1 / -1; }
}
.ms-why-grid--stack{ align-items:stretch; }
.ms-why-grid--stack .ms-diagram-fig{ display:flex; align-items:center; }
.ms-section--sage + .ms-section--alt{ padding-top:88px; }
@media (max-width:760px){ .ms-section--sage + .ms-section--alt{ padding-top:44px; } }

/* encuadre de fotos: formato vertical en móvil y foco en el rostro de cada foto */
@media (max-width:900px){
  .ms-hero-photo-frame{ aspect-ratio:4/5; max-height:none; }
  .ms-authority-photo{ aspect-ratio:1/1; max-width:100%; }
}
.ms-hero-photo-frame img[src*="hero-home"]{ object-position:50% 14%; }
.ms-hero-photo-frame img[src*="protocolo-mente-sana"]{ object-position:50% 20%; }
.ms-authority-photo img{ object-position:50% 33%; }
.ms-bio-photo img{ object-position:50% 0%; }

/* móvil: una sola acción visible a la vez */
@media (max-width:900px){
  .ms-hide-mobile{ display:none !important; }
}
@media (max-width:760px){
  body:has(.ms-mobile-cta) .ms-stat-row{ display:none; }
  .ms-mobile-cta{ transition:transform .25s ease; }
  .ms-mobile-cta.is-hidden{ transform:translateY(110%); }
}
.ms-wa-float, .ms-im-float{ transition:bottom .25s ease; }

/* insignia sobre el borde de la tarjeta destacada */
.ms-tier.is-featured{ position:relative; }
.ms-tier-badge{ position:absolute; top:-13px; left:24px; background:var(--coral-dark); color:var(--white); font-family:"Poppins",sans-serif; font-weight:600; font-size:12px; letter-spacing:.06em; text-transform:uppercase; padding:6px 14px; border-radius:var(--pill); box-shadow:0 6px 14px -8px rgba(162,86,57,.7); }

/* botones de cierre sobre fondo oscuro: principal sólido terracota claro, secundario con borde */
.ms-btn--ember{ background:#E3A58A; color:var(--earth); border:2px solid #E3A58A; box-shadow:0 12px 26px -14px rgba(227,165,138,.55); }
.ms-btn--ember:hover{ background:#F2C3AE; border-color:#F2C3AE; color:var(--earth); }
.ms-btn--ember-outline{ background:transparent; color:var(--white); border:2px solid #E3A58A; box-shadow:none; }
.ms-btn--ember-outline:hover{ background:rgba(227,165,138,.16); border-color:#F2C3AE; color:var(--white); }
.ms-cta-doubt{ margin:22px 0 0; font-size:14.5px; color:rgba(249,247,244,.78); }
.ms-cta-doubt a{ color:var(--coral-on-dark); text-decoration:underline; text-underline-offset:3px; font-weight:600; }
.ms-cta-doubt a:hover{ color:var(--white); }
