/* Approved article-card excerpts only. No article body, H1 or navigation rules. */
html body main :is(.k24buy-card,.k24-cat-card,.k24-archive-row,.banner-post-five,.stories-post,.horizontal-post-four,.hot-post-item) p.k24-card-description {
  display:block !important;
  font-family:Montserrat,sans-serif !important;
  font-size:14px !important;font-weight:400 !important;
  line-height:1.6 !important;color:#506982 !important;
  margin:8px 0 0 !important;padding:0;
  max-height:none !important;height:auto;
  overflow:visible !important;white-space:normal !important;
  -webkit-line-clamp:unset !important;-webkit-box-orient:initial;
  overflow-wrap:break-word;
}
/* Beat the legacy forced mobile category paragraph declarations, only for approved excerpts. */
@media(max-width:599px){
 html body[data-k24-content-theme] main.k24buy-page .k24buy-layout .k24buy-card .k24buy-copy p.k24-card-description,
 html body[data-k24-content-theme] main :is(.k24buy-card,.k24-cat-card,.k24-archive-row) p.k24-card-description {
  font-size:14px !important;line-height:1.6 !important;margin:8px 0 0 !important;
 }
}

/* Keep legacy desktop thumbnail sizing tied to the original category/title,
   rather than stretching the photograph to the newly added excerpt. */
@media(min-width:600px){
 body main.fix .k24-home-compact-top .horizontal-post-four {
   display:grid;grid-template-columns:minmax(0,1fr) 100px;
   column-gap:15px;row-gap:0;align-items:start;
 }
 body main.fix .k24-home-compact-top .horizontal-post-content-four {display:contents;}
 body main.fix .k24-home-compact-top .k24-card-heading-group {
   grid-column:1;grid-row:1;display:flex;flex-direction:column;align-items:flex-start;min-width:0;
 }
 body main.fix .k24-home-compact-top .horizontal-post-thumb-four {
   grid-column:2;grid-row:1;align-self:stretch;
 }
 body main.fix .k24-home-compact-top p.k24-card-description {grid-column:1;grid-row:2;}
}

/* Category standard: primary, mini and list cards remain separate types.
   Equal grid tracks grow to the longest full title; no fixed card height or title clamp.
   !important is needed only to replace the existing forced excerpt/mobile typography. */
main.k24buy-page :is(.k24buy-feature-top,.k24buy-feature-bottom,.k24buy-list) {
  display:grid; grid-auto-rows:1fr; align-items:stretch;
}
main.k24buy-page .k24buy-card {
  --k24-uniform-title:15px;
}
main.k24buy-page .k24buy-card .k24buy-copy {
  display:grid; grid-template-rows:minmax(min-content,1fr) auto;
  align-content:start; align-self:stretch; row-gap:8px; flex:1;
}
html body[data-k24-content-theme] main.k24buy-page .k24buy-layout .k24buy-card .k24buy-copy h3 {
  font-family:Montserrat,Arial,sans-serif;
  font-size:var(--k24-uniform-title) !important;
  font-weight:700 !important; line-height:1.4 !important;
  margin:0 !important; overflow-wrap:anywhere;
}
html body[data-k24-content-theme] main.k24buy-page .k24buy-layout .k24buy-card .k24buy-copy > p:is(p,.k24-card-description) {
  font-family:Montserrat,Arial,sans-serif !important;
  font-size:14px !important; font-weight:400 !important; line-height:1.6 !important;
  margin:0 !important;
  display:-webkit-box !important; -webkit-box-orient:vertical;
  -webkit-line-clamp:3 !important; line-clamp:3;
  overflow:hidden !important; max-height:none !important;
  min-block-size:4.8em; white-space:normal !important; overflow-wrap:anywhere;
}
@media (min-width:600px) {
  main.k24buy-page :is(.k24buy-feature-top,.k24buy-feature-bottom,.k24buy-list) {gap:12px;}
  main.k24buy-page .k24buy-featured :is(.k24buy-card--feature-primary,.k24buy-card--feature-mini) .k24buy-card-link,
  main.k24buy-page .k24buy-card--row .k24buy-card-link {
    padding:12px; gap:12px;
  }
  main.k24buy-page .k24buy-card .k24buy-copy {padding:0;}
  main.k24buy-page .k24buy-card--feature-primary {--k24-uniform-title:16px;}
  main.k24buy-page .k24buy-card--row {--k24-uniform-title:14px;}
  main.k24buy-page .k24buy-featured .k24buy-card--feature-primary .k24buy-image {
    width:100%; height:136px; min-height:0; flex:none;
  }
  main.k24buy-page .k24buy-featured .k24buy-card--feature-mini .k24buy-image {
    width:100%; height:auto; min-height:0; aspect-ratio:16/10; flex:none;
  }
  main.k24buy-page .k24buy-card--row .k24buy-image {
    width:96px; height:72px; min-height:0; align-self:start;
  }
  main.k24buy-page .k24buy-layout .k24buy-card .k24buy-card-link .k24buy-image img {
    display:block; width:100%; height:100%; object-fit:cover; object-position:center;
  }
}
@media (min-width:1200px) {
  main.k24buy-page .k24buy-card--row .k24buy-image {width:80px;height:80px;}
}
@media (max-width:599px) {
  main.k24buy-page :is(.k24buy-feature-top,.k24buy-feature-bottom,.k24buy-list) {gap:14px;}
}

/* Category editorial cards and archive rows. Scope excludes homepage, SEO copy,
   sidebars, calculators, banners, navigation and footer. */
html body[data-k24-content-theme] main.k24-cat-main :is(.k24-cat-grid,.k24-archive-list) {
  grid-auto-rows:1fr; align-items:stretch; gap:16px !important;
}
main.k24-cat-main .k24-cat-card {display:flex;flex-direction:column;min-width:0;}
main.k24-cat-main :is(.k24-cat-card-body,.k24-archive-row > div) {
  display:flex;flex-direction:column;gap:8px;flex:1;min-width:0;align-self:stretch;
}
main.k24-cat-main .k24-cat-card-body {padding:20px;}
html body[data-k24-content-theme] main.k24-cat-main :is(.k24-cat-card,.k24-archive-row) h3 {
  font-family:Montserrat,Arial,sans-serif;
  font-size:var(--k24-category-card-title,18px) !important;
  font-weight:700 !important;line-height:1.4 !important;margin:0 !important;
  overflow-wrap:anywhere;flex:1;
}
html body[data-k24-content-theme] main.k24-cat-main :is(.k24-cat-card-body,.k24-archive-row > div) > p:is(p,.k24-card-description) {
  font-family:Montserrat,Arial,sans-serif !important;
  font-size:14px !important;font-weight:400 !important;line-height:1.6 !important;
  margin:0 !important;display:-webkit-box !important;
  -webkit-box-orient:vertical;-webkit-line-clamp:3 !important;line-clamp:3;
  overflow:hidden !important;max-height:none !important;min-block-size:4.8em;
  white-space:normal !important;overflow-wrap:anywhere;
}
main.k24-cat-main .k24-archive-row {--k24-category-card-title:14px;padding:12px;}
html body[data-k24-content-theme] main.k24-cat-main .k24-archive-row {gap:12px !important;align-items:start;}
main.k24-cat-main :is(.k24-cat-image,.k24-archive-photo) {flex:none;}
main.k24-cat-main :is(.k24-cat-image,.k24-archive-photo) img {object-position:center;}
html body[data-k24-content-theme] main.k24-cat-main .k24-cat-grid {margin-bottom:0 !important;}
html body[data-k24-content-theme] main.k24-cat-main .k24-cat-archive {
  margin-top:24px !important;padding-top:16px;margin-bottom:40px;
}
main.k24-cat-main .k24-cat-section-title {margin-bottom:16px;}
@media(min-width:600px) {
  html body[data-k24-content-theme] main.k24-cat-main .k24-cat-image {
    width:100%;height:auto;aspect-ratio:16/10 !important;
  }
  html body[data-k24-content-theme] main.k24-cat-main .k24-archive-photo {
    width:118px !important;height:88.5px;aspect-ratio:4/3 !important;
  }
  html body[data-k24-content-theme] main.k24-cat-main :is(.k24-cat-image,.k24-archive-photo) img {
    width:100% !important;height:100% !important;object-fit:cover !important;
  }
}
@media(max-width:599px) {
  main.k24-cat-main .k24-cat-card {--k24-category-card-title:15px;}
  main.k24-cat-main .k24-archive-row {--k24-category-card-title:15px;}
  html body[data-k24-content-theme] main.k24-cat-main :is(.k24-cat-grid,.k24-archive-list) {gap:14px !important;}
}

/* Identical mini-card grids on both buy-template categories from tablet upward. */
@media(min-width:768px) {
  main.k24buy-page .k24buy-featured .k24buy-feature-bottom {grid-template-columns:repeat(3,minmax(0,1fr));}
}
