/**
 * Shared long-form content look — category intro and product description.
 * Readable body ink; quiet headings without heavy chrome.
 */

.asc-cat-intro__body,
.woocommerce-product-section--description {
  color: var(--ink);
  font-size: var(--fs-body, 15px);
  line-height: 1.85;
  letter-spacing: 0;
}

.asc-cat-intro__body > :first-child,
.woocommerce-product-section--description .asc-cat-intro__body > :first-child,
.woocommerce-product-section--description > :not(.product-section-heading):not(.arsin-product-description):not(.arsin-description-more):first-of-type {
  margin-top: 0;
}

.asc-cat-intro__body > :last-child,
.woocommerce-product-section--description .asc-cat-intro__body > :last-child,
.woocommerce-product-section--description > :not(.product-section-heading):not(.arsin-product-description):not(.arsin-description-more):last-of-type {
  margin-bottom: 0;
}

.asc-cat-intro__body p,
.woocommerce-product-section--description > p {
  margin: 0 0 1em;
  color: var(--ink);
  font-size: inherit;
  font-weight: 400;
  line-height: inherit;
}

.asc-cat-intro__body :where(h2, h3, h4),
.woocommerce-product-section--description > :where(h2, h3, h4) {
  margin: 1.35em 0 0.55em;
  padding: 0;
  border: 0;
  background: none;
  color: var(--ink-2);
  font-weight: 700;
  line-height: 1.45;
  scroll-margin-top: 120px;
}

.asc-cat-intro__body h2,
.woocommerce-product-section--description > h2 {
  font-size: var(--fs-section, 1.125rem);
}

.asc-cat-intro__body h3,
.woocommerce-product-section--description > h3 {
  font-size: var(--fs-card-title, 1rem);
}

.asc-cat-intro__body h3::before,
.woocommerce-product-section--description > h3::before {
  content: none;
  display: none;
}

.asc-cat-intro__body h4,
.woocommerce-product-section--description > h4 {
  font-size: var(--fs-body, 0.9375rem);
  font-weight: 700;
}

.asc-cat-intro__body :where(ul, ol),
.woocommerce-product-section--description > :where(ul, ol) {
  margin: 0 0 1.1em;
  padding: 0;
  padding-inline-start: 1.25em;
  background: transparent;
  border: 0;
  border-radius: 0;
}

.asc-cat-intro__body li,
.woocommerce-product-section--description > :where(ul, ol) li {
  margin: 0 0 0.4em;
  color: var(--ink);
  line-height: 1.75;
}

.asc-cat-intro__body li:last-child,
.woocommerce-product-section--description > :where(ul, ol) li:last-child {
  margin-bottom: 0;
}

.asc-cat-intro__body :where(strong, b),
.woocommerce-product-section--description > :where(p, ul, ol, blockquote) :where(strong, b) {
  color: var(--ink-2);
  font-weight: 700;
}

.asc-cat-intro__body a,
.woocommerce-product-section--description > :where(p, ul, ol, blockquote) a {
  color: var(--brand);
  font-weight: 600;
  text-decoration: none;
}

.asc-cat-intro__body a:hover,
.woocommerce-product-section--description > :where(p, ul, ol, blockquote) a:hover {
  text-decoration: underline;
}

.asc-cat-intro__body blockquote,
.woocommerce-product-section--description > blockquote {
  margin: 1.25em 0;
  padding: 12px 16px;
  border: 0;
  border-inline-start: 3px solid var(--brand);
  border-radius: 0;
  background: transparent;
  color: var(--ink);
}

.asc-cat-intro__body table,
.woocommerce-product-section--description > table {
  width: 100%;
  max-width: 100%;
  margin: 1.25em 0;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--radius, 8px);
  font-size: var(--fs-meta, 0.875rem);
}

.asc-cat-intro__body :where(th, td),
.woocommerce-product-section--description > table :where(th, td) {
  padding: 10px 12px;
  border-bottom: 1px solid var(--line);
  text-align: start;
  color: var(--ink);
}

.asc-cat-intro__body th,
.woocommerce-product-section--description > table th {
  background: var(--soft-2);
  font-weight: 700;
  color: var(--ink-2);
}

.asc-cat-intro__body tr:last-child :where(th, td),
.woocommerce-product-section--description > table tr:last-child :where(th, td) {
  border-bottom: 0;
}

.asc-cat-intro__body img,
.woocommerce-product-section--description > img,
.woocommerce-product-section--description > :where(p, figure) img {
  max-width: 100%;
  height: auto;
  border-radius: var(--radius, 8px);
  box-shadow: none;
}

@media (max-width: 760px) {
  .asc-cat-intro__body,
  .woocommerce-product-section--description {
    font-size: var(--fs-body, 15px);
    line-height: 1.8;
  }

  .asc-cat-intro__body h2,
  .woocommerce-product-section--description > h2 {
    font-size: var(--fs-section, 1.0625rem);
  }

  .asc-cat-intro__body h3,
  .woocommerce-product-section--description > h3 {
    font-size: var(--fs-body, 0.9375rem);
  }
}
