/* ADE-171 blog layout — scoped, does not override catalog cards */
.blog-ade { padding-bottom: 48px; }
.blog-ade-head h1 { margin: 0 0 12px; font-size: 32px; line-height: 1.25; }
.blog-ade-lead { font-size: 17px; line-height: 1.55; color: #444; margin-bottom: 24px; }
.blog-ade-cats { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 28px; }
.blog-ade-cat {
  display: inline-block; padding: 8px 14px; border: 1px solid #d9d9d9; border-radius: 999px;
  color: #222; text-decoration: none; font-size: 14px; background: #fff;
}
.blog-ade-cat:hover, .blog-ade-cat.is-active { background: #1a1a1a; color: #fff; border-color: #1a1a1a; text-decoration: none; }
.blog-ade-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 24px; }
.blog-ade-card { background: #fff; border: 1px solid #ececec; border-radius: 12px; overflow: hidden; height: 100%; display: flex; flex-direction: column; }
.blog-ade-card__img { display: block; aspect-ratio: 16/10; overflow: hidden; background: #f4f4f4; }
.blog-ade-card__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.blog-ade-card__body { padding: 16px 18px 20px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.blog-ade-card__meta { margin: 0; font-size: 13px; color: #888; }
.blog-ade-card__title {
  margin: 0;
  font-size: 20px;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  min-height: calc(1.35em * 2);
}
.blog-ade-card__title a { color: #111; }
.blog-ade-card__excerpt {
  margin: 0;
  color: #555;
  font-size: 15px;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  min-height: calc(1.5em * 3);
}
.blog-ade-card__more { margin-top: auto; font-weight: 600; color: #111; text-decoration: underline; }
.blog-ade-pager { margin-top: 28px; display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; }

.blog-ade-post { width: 100%; max-width: none; }
.blog-ade-post h1 { margin: 0 0 16px; font-size: 34px; line-height: 1.2; }
.blog-ade-post__meta { color: #888; margin-bottom: 8px; }
.blog-ade-post__lead { font-size: 19px; line-height: 1.55; color: #222; margin: 0 0 22px; padding: 16px 18px; background: #f7f7f5; border-left: 4px solid #c4a35a; border-radius: 0 8px 8px 0; }
.blog-ade-post__hero {
  margin: 0 0 28px;
  max-width: 860px;
  width: auto;
  padding: 0;
  border: 0;
  background: none;
}
.blog-ade-post__hero img {
  display: block;
  width: auto;
  max-width: 860px;
  height: auto;
  margin: 0;
  padding: 0;
  border-radius: 6px;
  border: 1px solid rgba(34, 34, 34, 0.12);
  box-shadow: none;
  background: none;
  vertical-align: top;
}
.blog-ade-post__body { font-size: 17px; line-height: 1.7; color: #222; }
.blog-ade-post__body h2 { margin: 32px 0 12px; font-size: 26px; }
.blog-ade-post__body h3 { margin: 24px 0 10px; font-size: 20px; }
.blog-ade-post__body p { margin: 0 0 14px; }
.blog-ade-post__body ul, .blog-ade-post__body ol { margin: 0 0 16px 22px; }
.blog-ade-post__body li { margin: 0 0 6px; }

/* Tables in article body — beat Bootstrap/theme resets */
.blog-ade .blog-ade-post__body table,
.blog-ade-post__body table {
  display: table;
  width: 100%;
  max-width: 100%;
  margin: 8px 0 24px;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid #e2e2e2;
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
  font-size: 15px;
  line-height: 1.45;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}
.blog-ade .blog-ade-post__body thead,
.blog-ade-post__body thead {
  background: #f3efe6;
}
.blog-ade .blog-ade-post__body th,
.blog-ade .blog-ade-post__body td,
.blog-ade-post__body th,
.blog-ade-post__body td {
  border: 0;
  border-bottom: 1px solid #ebebeb;
  border-right: 1px solid #ebebeb;
  padding: 12px 14px;
  text-align: left;
  vertical-align: top;
  color: #222;
  background: transparent;
}
.blog-ade .blog-ade-post__body th:last-child,
.blog-ade .blog-ade-post__body td:last-child,
.blog-ade-post__body th:last-child,
.blog-ade-post__body td:last-child {
  border-right: 0;
}
.blog-ade .blog-ade-post__body tr:last-child th,
.blog-ade .blog-ade-post__body tr:last-child td,
.blog-ade-post__body tr:last-child th,
.blog-ade-post__body tr:last-child td {
  border-bottom: 0;
}
.blog-ade .blog-ade-post__body th,
.blog-ade-post__body th {
  background: #f3efe6;
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 0.02em;
  text-transform: none;
  color: #333;
  white-space: nowrap;
}
.blog-ade .blog-ade-post__body tbody tr:nth-child(even) td,
.blog-ade-post__body tbody tr:nth-child(even) td {
  background: #fafafa;
}
.blog-ade .blog-ade-post__body td:first-child,
.blog-ade-post__body td:first-child {
  font-weight: 600;
  width: 28%;
  min-width: 140px;
  background: #fcfcfb;
}
.blog-ade .blog-ade-post__body tbody tr:nth-child(even) td:first-child,
.blog-ade-post__body tbody tr:nth-child(even) td:first-child {
  background: #f6f6f4;
}

/* Mobile: horizontal scroll instead of crushed columns */
.blog-ade .blog-ade-post__body,
.blog-ade-post__body {
  overflow-x: auto;
}
@media (max-width: 767px) {
  .blog-ade .blog-ade-post__body table,
  .blog-ade-post__body table {
    min-width: 520px;
    font-size: 14px;
  }
  .blog-ade .blog-ade-post__body th,
  .blog-ade .blog-ade-post__body td,
  .blog-ade-post__body th,
  .blog-ade-post__body td {
    padding: 10px 12px;
    white-space: normal;
  }
  .blog-ade .blog-ade-post__body th,
  .blog-ade-post__body th {
    white-space: nowrap;
  }
}

.blog-ade-post__body img,
.blog-article .blog-ade-post__body img,
.blog-article .article-description img {
  display: block;
  float: none !important;
  margin: 18px 0;
  max-width: 860px;
  width: auto;
  height: auto;
  padding: 0;
  border-radius: 6px;
  border: 1px solid rgba(34, 34, 34, 0.12);
  box-shadow: none;
  background: none;
}

.blog-ade-cta { margin: 32px 0; padding: 20px 22px; background: #111; color: #fff; border-radius: 12px; }
.blog-ade-cta h2 { margin: 0 0 12px; font-size: 20px; color: #fff; }
.blog-ade-cta ul { margin: 0; padding: 0; list-style: none; }
.blog-ade-cta a { color: #fff; text-decoration: underline; font-size: 16px; }
.blog-ade-cta li + li { margin-top: 8px; }

.blog-ade-products { margin: 36px 0; }
.blog-ade-products h2 { margin: 0 0 16px; }
.blog-ade-products__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 16px; }
.blog-ade-product { display: flex; flex-direction: column; gap: 8px; text-decoration: none; color: #111; border: 1px solid #eee; border-radius: 10px; padding: 10px; }
.blog-ade-product img { width: 100%; height: auto; }
.blog-ade-product strong { color: #111; }

.blog-ade-faq { margin: 36px 0; }
.blog-ade-faq h2 { margin: 0 0 12px; }
.blog-ade-faq__item { border: 1px solid #e8e8e8; border-radius: 8px; margin-bottom: 8px; padding: 0 14px; background: #fff; }
.blog-ade-faq__item summary { cursor: pointer; font-weight: 600; padding: 14px 0; list-style: none; }
.blog-ade-faq__item summary::-webkit-details-marker { display: none; }
.blog-ade-faq__answer { padding: 0 0 14px; line-height: 1.6; }

.blog-ade-tags { margin: 24px 0; }
.blog-ade-tags a { display: inline-block; margin: 0 8px 8px 0; padding: 4px 10px; background: #f3f3f3; border-radius: 999px; color: #333; }
.blog-ade-share { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin: 20px 0 32px; color: #666; }
.blog-ade-share a { color: #111; }
.blog-ade-related { margin: 12px 0 24px; }
.blog-ade-related h2 { margin-bottom: 16px; }
.blog-ade-back { margin-top: 24px; }

.blog-ade-home__head { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; margin: 0 0 20px; }
.blog-ade-home__head h2 { margin: 0; font-size: 28px; }
.blog-ade-home__all { font-weight: 600; color: #111; }

@media (max-width: 767px) {
  .blog-ade-head h1, .blog-ade-post h1 { font-size: 26px; }
  .blog-ade-post__hero,
  .blog-ade-post__hero img,
  .blog-ade-post__body img,
  .blog-article .blog-ade-post__body img,
  .blog-article .article-description img {
    max-width: 100%;
    width: 100%;
  }
}
