/* article-v4.css — final editorial polish layer, loaded after article.css and article-v3.css. */
/* Scoped strictly to v3 articles and their .el-article-page :has wrapper. No imports, no external assets. */

.el-article-page:has([data-mm-article="3"]),
.mm-article-v1[data-mm-article="3"]{
  --mm-burgundy:#842e43;
  --mm-burgundy-dark:#6a2435;
  --mm-ink:#30252b;
  --mm-muted:#5c4b54;
  --mm-line:#e7dfe2;
  --mm-soft:#faf8f4;
  --mm-warm:#f3e8eb;
}

/* ===== Page chrome: single-column reading layout for v3 only ===== */
.el-article-page:has([data-mm-article="3"]){
  background:#fff;
}
.el-article-page:has([data-mm-article="3"]) .el-article-head{
  max-width:820px;
  margin:0 auto;
}
.el-article-page:has([data-mm-article="3"]) .el-article-head h1{
  font-family:var(--serif,Literata,Georgia,serif);
  font-size:2.1rem;
  line-height:1.25;
  color:var(--mm-ink);
  font-weight:700;
  letter-spacing:-.01em;
}

/* ===== Base type: big, relaxed, readable prose ===== */
.mm-article-v1[data-mm-article="3"]{
  font-size:18.5px;
  line-height:1.75;
  color:var(--mm-ink);
  max-width:1100px;
  margin:0 auto;
}
.mm-article-v1[data-mm-article="3"] p{
  font-size:1.03em;
  line-height:1.75;
}
.mm-article-v1[data-mm-article="3"] > .mm-block:not(.mm-offer-grid-section):not(:has(.mm-table-wrap)),
.mm-article-v1[data-mm-article="3"] > .mm-method-brief,
.mm-article-v1[data-mm-article="3"] > .mm-direct-answer{
  max-width:72ch;
  margin-left:auto;
  margin-right:auto;
}
.mm-article-v1[data-mm-article="3"] .mm-quicknav{
  position:static;
  border:0;
  background:transparent;
  padding:.7rem 0;
}
.mm-article-v1[data-mm-article="3"] .mm-quick-choices ul{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));
}
.mm-article-v1[data-mm-article="3"] .mm-method-brief h2{margin:.2rem 0 .5rem;font-size:1.15rem}
.mm-article-v1[data-mm-article="3"] .mm-method-brief p{font-size:16px;line-height:1.65}
.mm-article-v1[data-mm-article="3"] .mm-note{font-size:16px;line-height:1.65}
.mm-article-v1[data-mm-article="3"] .mm-block > ul,
.mm-article-v1[data-mm-article="3"] .mm-steps-list li{font-size:18px;line-height:1.75}

/* Wide media sections escape the prose measure */
.mm-article-v1[data-mm-article="3"] .mm-offer-grid-section,
.mm-article-v1[data-mm-article="3"] .mm-table-wrap,
.mm-article-v1[data-mm-article="3"] .mm-comparison{
  max-width:1100px;
  width:100%;
}
.mm-article-v1[data-mm-article="3"] .mm-offer-grid-section,
.mm-article-v1[data-mm-article="3"] .mm-block:has(.mm-table-wrap){
  max-width:1100px;
  width:100%;
}

/* ===== Restrained serif headings ===== */
.mm-article-v1[data-mm-article="3"] h2{
  font-family:var(--serif,Literata,Georgia,serif);
  font-size:1.7rem;
  line-height:1.3;
  font-weight:700;
  letter-spacing:-.01em;
  margin:2.4rem 0 .9rem;
  color:var(--mm-ink);
}
.mm-article-v1[data-mm-article="3"] h3{
  font-family:var(--serif,Literata,Georgia,serif);
  font-size:1.35rem;
  line-height:1.35;
  font-weight:600;
  margin:1.8rem 0 .6rem;
  color:var(--mm-ink);
}

/* ===== Pull quote: exact reviewed text only, serif, no fake attribution ===== */
.mm-article-v1[data-mm-article="3"] .mm-pullquote{
  margin:2.5rem auto;
  max-width:680px;
  padding:0;
  border:0;
  text-align:center;
}
.mm-article-v1[data-mm-article="3"] .mm-pullquote blockquote{
  margin:0;
  padding:0;
  border:0;
}
.mm-article-v1[data-mm-article="3"] .mm-pullquote p{
  font-family:var(--serif,Literata,Georgia,serif);
  font-size:1.35em;
  line-height:1.55;
  color:var(--mm-burgundy);
  margin:0;
  overflow-wrap:break-word;
}
.mm-article-v1[data-mm-article="3"] .mm-pullquote blockquote p::before{
  content:"\201C";
}
.mm-article-v1[data-mm-article="3"] .mm-pullquote blockquote p::after{
  content:"\201D";
}
.mm-article-v1[data-mm-article="3"] .mm-pullquote figcaption{
  margin-top:.7rem;
  font-size:.92rem;
  color:var(--mm-muted);
  letter-spacing:.04em;
}
.mm-article-v1[data-mm-article="3"] .mm-pullquote blockquote::after{
  content:"";
  display:block;
  width:56px;
  height:2px;
  background:var(--mm-burgundy);
  margin:1.1rem auto 0;
}

/* ===== Direct answer / kickers ===== */
.mm-article-v1[data-mm-article="3"] .mm-direct-answer-inner{
  background:var(--mm-soft);
  border:1px solid var(--mm-line);
  border-left:4px solid var(--mm-burgundy);
  border-radius:8px;
  padding:1.2rem 1.4rem;
}
.mm-article-v1[data-mm-article="3"] .mm-kicker{
  color:var(--mm-burgundy);
  font-size:.88rem;
}

/* ===== Quick choices: compact, airy, easy to tap ===== */
.mm-article-v1[data-mm-article="3"] .mm-quick-choices ul{
  gap:.75rem;
}
.mm-article-v1[data-mm-article="3"] .mm-quick-choices li{
  padding:.75rem 1rem;
}
.mm-article-v1[data-mm-article="3"] .mm-quick-choice-title{
  font-size:1.05rem;
  margin:0 0 .2rem;
}
.mm-article-v1[data-mm-article="3"] .mm-quick-choice-link{
  color:var(--mm-burgundy);
  font-weight:600;
  min-height:44px;
  display:inline-flex;
  align-items:center;
  text-decoration:underline;
  text-decoration-color:rgba(132,46,67,.35);
  text-underline-offset:2px;
}
.mm-article-v1[data-mm-article="3"] .mm-quick-choice-link:hover{
  text-decoration-color:var(--mm-burgundy);
}
.mm-article-v1[data-mm-article="3"] .mm-quick-choice-reason{
  font-size:.98rem;
}
.mm-article-v1[data-mm-article="3"] .mm-quick-choice-label{
  font-size:.98rem;
}

/* ===== Product cards: balanced, comfortable, 2–3 per row on desktop ===== */
.mm-article-v1[data-mm-article="3"] .mm-offer-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));
  gap:1.25rem;
}
.mm-article-v1[data-mm-article="3"] .mm-offer-item,
.mm-article-v1[data-mm-article="3"] .mm-card-compact{
  border:1px solid var(--mm-line);
  border-radius:12px;
  padding:1.25rem;
  box-shadow:0 1px 3px rgba(48,37,43,.05);
  display:flex;
  flex-direction:column;
}
.mm-article-v1[data-mm-article="3"] .mm-card-media{
  height:180px;
  background:#fff;
  border-radius:8px;
}
.mm-article-v1[data-mm-article="3"] .mm-product-image{
  max-height:180px;
}
.mm-article-v1[data-mm-article="3"] .mm-card-name{
  font-family:var(--serif,Literata,Georgia,serif);
  font-size:1.3rem;
  line-height:1.3;
}
.mm-article-v1[data-mm-article="3"] .mm-card-summary{
  font-size:1rem;
  line-height:1.65;
}
.mm-article-v1[data-mm-article="3"] .mm-offer-price{
  font-size:1.05rem;
}
.mm-article-v1[data-mm-article="3"] .mm-price-amount{
  font-size:1.6rem;
}
.mm-article-v1[data-mm-article="3"] .mm-card-body{
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
}
.mm-article-v1[data-mm-article="3"] .mm-card-cta-row{
  margin-top:auto;
}

/* ===== Prominent full-width CTAs ===== */
.mm-article-v1[data-mm-article="3"] .mm-cta{
  min-height:48px;
  padding:.75rem 1.6rem;
  background:var(--mm-burgundy);
  border-radius:8px;
  font-size:1.02rem;
  letter-spacing:.01em;
}
.mm-article-v1[data-mm-article="3"] .mm-cta:hover{
  background:var(--mm-burgundy-dark);
}
.mm-article-v1[data-mm-article="3"] .mm-card-cta-row .mm-cta{
  flex:1 1 auto;
  text-align:center;
}

/* ===== Tables: light, readable headers — never dark row headers ===== */
.mm-article-v1[data-mm-article="3"] .mm-comparison thead{
  background:#f5eef1;
  color:var(--mm-ink);
}
.mm-article-v1[data-mm-article="3"] .mm-comparison thead th{
  background:#f5eef1;
  font-weight:700;
  color:var(--mm-ink);
  border-bottom:2px solid var(--mm-burgundy);
}
.mm-article-v1[data-mm-article="3"] .mm-comparison th[scope="row"]{
  font-weight:600;
  color:var(--mm-ink);
  background:transparent;
}
.mm-article-v1[data-mm-article="3"] .mm-comparison th,
.mm-article-v1[data-mm-article="3"] .mm-comparison td{
  padding:.75rem .9rem;
}

/* ===== Method brief / references: subordinate but readable ===== */
.mm-article-v1[data-mm-article="3"] .mm-method-brief,
.mm-article-v1[data-mm-article="3"] .mm-references{
  background:var(--mm-soft);
  border:1px solid var(--mm-line);
  border-radius:10px;
  padding:1rem 1.25rem;
  font-size:.98rem;
}
.mm-article-v1[data-mm-article="3"] .mm-references ul{
  font-size:.95rem;
}

/* ===== Links & focus ===== */
.mm-article-v1[data-mm-article="3"] a{
  color:var(--mm-burgundy);
}
.mm-article-v1[data-mm-article="3"] :focus-visible{
  outline:3px solid var(--mm-burgundy);
  outline-offset:3px;
}

/* ===== Mobile: stacked tables, comfortable cards ===== */
@media (max-width:700px){
  .el-article-page:has([data-mm-article="3"]) .el-article-head h1{
    font-size:1.65rem;
  }
  .mm-article-v1[data-mm-article="3"] h2{
    font-size:1.45rem;
    margin:1.9rem 0 .7rem;
  }
  .mm-article-v1[data-mm-article="3"] h3{
    font-size:1.2rem;
  }
  .mm-article-v1[data-mm-article="3"] .mm-pullquote{
    margin:1.9rem auto;
  }
  .mm-article-v1[data-mm-article="3"] .mm-pullquote p{
    font-size:1.3em;
  }
  .mm-article-v1[data-mm-article="3"] .mm-cta,
  .mm-article-v1[data-mm-article="3"] .mm-card-cta-row .mm-cta{
    width:100%;
  }
  .mm-article-v1[data-mm-article="3"] .mm-offer-grid{
    gap:1rem;
  }
  .mm-article-v1[data-mm-article="3"] .mm-comparison thead{display:none}
  .mm-article-v1[data-mm-article="3"] .mm-comparison,
  .mm-article-v1[data-mm-article="3"] .mm-comparison tbody,
  .mm-article-v1[data-mm-article="3"] .mm-comparison tr,
  .mm-article-v1[data-mm-article="3"] .mm-comparison td,
  .mm-article-v1[data-mm-article="3"] .mm-comparison th{display:block;width:100%;min-width:0}
  .mm-article-v1[data-mm-article="3"] .mm-comparison tr{
    border:1px solid var(--mm-line);
    border-radius:10px;
    margin:.8rem 0;
    padding:.6rem;
    background:#fff;
  }
  .mm-article-v1[data-mm-article="3"] .mm-comparison td{
    border-bottom:1px solid #efe8ea;
    padding:.6rem .7rem;
  }
  .mm-article-v1[data-mm-article="3"] .mm-comparison td::before{
    content:attr(data-label) ': ';
    font-weight:700;
    color:var(--mm-muted);
  }
  .mm-article-v1[data-mm-article="3"] .mm-comparison th[scope="row"]{
    font-weight:700;
    border-bottom:1px solid #efe8ea;
    background:transparent;
    color:var(--mm-ink);
  }
}
