/* card-css — additive CTA card readability overrides (no rewrite of v114).
   Evidence vs acceptance:
   - CSS only, no fences, no file writes/tools: this block is the whole artifact.
   - No single card past container: product grid is auto-fit minmax(min(100%,280px),1fr); cards max-width:100%; grid children min-width:0.
   - No hiding content: facts use overflow:visible/text-overflow:clip and no clamp on dt/dd.
   - Legacy .mm-cta__facts div display:flex is beaten by display:grid !important (single column), so label sits above value.
   - Facts values 15px; labels 13px; badge/ad/button-sub >=12px, no 11px typography.
   - Button remains white on dark teal; badge becomes pale teal with dark teal text.
   - Compact shop cards preserved: product-grid overrides exclude .mm-cta__grid--routes; routes/compact vertical layout rules untouched.
   - No tables, no DOM reorder, no content changes.
   Blocker: browser execution and responsive verification are root-owned; this artifact is proposal-only. */

/* Product card grid: stop 3-column 209px squeeze, keep routes grid intact */
body.mnd .article-body .mm-cta .mm-cta__grid:not(.mm-cta__grid--routes){
  grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)) !important;
  gap:16px !important;
  max-width:none;
}
body.mnd .article-body .mm-cta .mm-cta__grid:not(.mm-cta__grid--routes) > *{
  min-width:0;
}
body.mnd .article-body .mm-cta .mm-cta__card{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
body.mnd .article-body .mm-cta .mm-cta__card--product{
  height:auto;
}
body.mnd .article-body .mm-cta .mm-cta__body{
  min-width:0;
}

/* Facts: one full-width row each, label above value, readable type, no clipping */
body.mnd .article-body .mm-cta .mm-cta__facts{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:0 !important;
  width:100%;
  font-size:15px !important;
  line-height:1.45 !important;
}
body.mnd .article-body .mm-cta .mm-cta__facts > div{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:2px 0 !important;
  align-items:start;
  padding:8px 0 !important;
  border-bottom:1px solid #eef2f0;
  min-width:0;
  width:100%;
}
body.mnd .article-body .mm-cta .mm-cta__facts dt{
  display:block !important;
  margin:0 !important;
  font:650 13px/1.4 system-ui,sans-serif !important;
  color:#3f5f5a;
  text-transform:uppercase;
  letter-spacing:.02em;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  max-width:none !important;
  flex:none !important;
  width:auto !important;
}
body.mnd .article-body .mm-cta .mm-cta__facts dd{
  display:block !important;
  margin:0 !important;
  font:400 15px/1.5 system-ui,sans-serif !important;
  color:#163b39;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  max-width:none !important;
  flex:none !important;
  width:auto !important;
}
@media(max-width:640px){
  body.mnd .article-body .mm-cta .mm-cta__facts dt{
    font-size:12.5px !important;
  }
}

/* Badge: pale teal surface, dark teal text, no 11px label */
body.mnd .article-body .mm-cta .mm-cta__badge{
  background:#d8efe8 !important;
  color:#0f3b36 !important;
  border:1px solid #b7d8cf;
  font-size:12px !important;
  line-height:1.3;
}
body.mnd .article-body .mm-cta .mm-cta__badge::before{
  background:#163d3a;
}

/* Button: keep white on dark teal, comfortable sub-label */
body.mnd .article-body .mm-cta a.mm-cta__button,
body.mnd .article-body .mm-cta a.mm-cta__button:visited{
  background:linear-gradient(180deg,#1d5a4f 0%,#163d3a 100%) !important;
  color:#fff !important;
}
body.mnd .article-body .mm-cta .mm-cta__button-main{
  color:#fff !important;
}
body.mnd .article-body .mm-cta .mm-cta__button-sub{
  color:rgba(255,255,255,.85) !important;
  font-size:12.5px !important;
}
body.mnd .article-body .mm-cta .mm-cta__ad{
  font-size:12px !important;
  line-height:1.5;
}
/* Shared article UX, 2026-09-18. Loaded after legacy article styles. */
body.mnd .article-body .n24-wrap :is(.n24-table-wrap,.table-wrap) {
 width:100%;max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;
 margin:24px 0;border:1px solid #b8ccc7;border-radius:10px;background:#fff;
 scrollbar-width:auto;scrollbar-color:#466f66 #e6eeeb;
}
body.mnd .article-body .n24-wrap :is(.n24-table-wrap,.table-wrap) table {
 display:table!important;width:100%!important;max-width:none!important;min-width:360px!important;
 table-layout:auto!important;border-collapse:collapse;margin:0!important;background:#fff;color:#193b35;
}
body.mnd .article-body .n24-wrap :is(.n24-table-wrap,.table-wrap) table:has(tr > :nth-child(3)){min-width:540px!important}
body.mnd .article-body .n24-wrap :is(.n24-table-wrap,.table-wrap) table:has(tr > :nth-child(4)){min-width:720px!important}
body.mnd .article-body .n24-wrap :is(.n24-table-wrap,.table-wrap) table:has(tr > :nth-child(5)){min-width:900px!important}
body.mnd .article-body .n24-wrap table :is(th,td){
 padding:14px 16px!important;min-width:140px!important;font:400 15px/1.6 system-ui,sans-serif!important;
 text-align:left!important;vertical-align:top;color:#193b35!important;border:0;border-bottom:1px solid #d5e2dd;
 word-break:normal!important;overflow-wrap:normal!important;hyphens:auto;white-space:normal!important;
}
body.mnd .article-body .n24-wrap table th{background:#163d3a!important;color:#fff!important;font-weight:700!important}
body.mnd .article-body .n24-wrap table th *{color:inherit!important}
body.mnd .article-body .n24-wrap table td{background:#fff!important}
body.mnd .article-body .n24-wrap table tr:nth-child(even) td{background:#edf4f1!important}
body.mnd .article-body .n24-wrap table td a{color:#075c4d!important;text-decoration:underline!important;text-underline-offset:3px;font-weight:650}
body.mnd .article-body .mm-cta__context-hint{display:block;margin-top:8px;font:700 14px/1.5 system-ui,sans-serif;color:#075c4d}
body.mnd .article-body a.mm-cta__quicklink,
body.mnd .article-body a.mm-cta__quicklink:visited{
 background:#075c4d!important;color:#fff!important;border:2px solid #075c4d!important;
 min-height:48px;font:700 16px/1.45 system-ui,sans-serif!important;text-decoration:none!important;
 box-shadow:0 2px 0 #043d33;white-space:normal;word-break:normal;
}
body.mnd .article-body a.mm-cta__quicklink:hover{background:#043d33!important;border-color:#043d33!important}
body.mnd .article-body a:is(.mm-cta__quicklink,.mm-cta__button):focus-visible{outline:3px solid #ae5c00!important;outline-offset:4px!important}
@media(prefers-reduced-motion:reduce){body.mnd .article-body .mm-cta *{transition:none!important;transform:none!important}}
/* Defeat inherited newspaper typography and legacy flex fact labels. */
body.mnd .article-body .mm-cta .mm-cta__facts :is(dt,dd){text-align:left!important;word-break:normal!important;overflow-wrap:break-word!important;hyphens:auto}
body.mnd .article-body .mm-cta .mm-cta__facts dt{text-transform:none!important;letter-spacing:normal!important;font-size:14px!important}
body.mnd .article-body .mm-cta .mm-cta__body h3{display:block!important;overflow:visible!important;-webkit-line-clamp:unset!important;font:700 19px/1.4 system-ui,sans-serif!important}
body.mnd .article-body .mm-cta .mm-cta__body :is(p,.mm-cta__editorial p){font-size:15px!important;line-height:1.6!important;word-break:normal!important;overflow-wrap:break-word!important;text-align:left}
body.mnd .article-body .mm-cta .mm-cta__body .mm-cta__badge{font-size:12px!important;line-height:1.4!important;padding:6px 10px}
body.mnd .article-body .mm-cta .mm-cta__merchant::before{color:#526a64}
body.mnd .article-body .mm-cta .mm-cta__action{margin-top:12px;padding-top:8px}
body.mnd .article-body .mm-cta a.mm-cta__button{min-height:56px!important;padding:12px 16px!important}
body.mnd .article-body .mm-cta .mm-cta__button-main{font:700 16px/1.4 system-ui,sans-serif!important}
body.mnd .article-body .mm-cta .mm-cta__ad{color:#52665f}
body.mnd .article-body .mm-cta .mm-cta__grid{align-items:start!important}
body.mnd .article-body .mm-cta .mm-cta__choice{height:auto!important}
body.mnd .article-body .mm-cta .mm-cta__card:hover{transform:none}
body.mnd .article-body .n24-wrap .mn-table-scroll-hint{margin:24px 0 -14px!important;font:600 14px/1.5 system-ui,sans-serif!important;color:#34584f!important}
body.mnd .article-body .n24-wrap .mn-table-scroll-hint[hidden]{display:none!important}
body.mnd .article-body .n24-wrap :is(.n24-table-wrap,.table-wrap):focus-visible{outline:3px solid #ae5c00;outline-offset:3px}
/* Shop logos must not take half the text/button width in narrow modules. */
body.mnd .article-body .mm-cta{container-type:inline-size;container-name:mn-cta}
@container mn-cta (max-width:420px){
 body.mnd .article-body .mm-cta .mm-cta__card--compact,
 body.mnd .article-body .mm-cta .mm-cta__grid--routes .mm-cta__card{grid-template-columns:minmax(0,1fr)!important}
 body.mnd .article-body .mm-cta .mm-cta__card--compact .mm-cta__media,
 body.mnd .article-body .mm-cta .mm-cta__grid--routes .mm-cta__media{width:120px;max-width:100%;height:64px!important;justify-self:start}
}

