.prose .responsive-table { margin: 1.5em 0; min-width: 0; max-width: 100%; }
.prose .responsive-table table { margin: 0; }
.prose .table-mobile, .prose .table-scroll-hint { display: none; }
.prose .table-scroll-area { overflow-x: auto; overscroll-behavior-inline: contain; }
.prose .table-scroll-area:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 4px; }
@media (max-width: 767px) {
  .prose .table-desktop { display: none; }
  .prose .table-mobile { display: block; font-size: 16px; line-height: 1.8; overflow-wrap: anywhere; }
  .prose .table-item { padding: 20px 0; border-bottom: 1px solid var(--color-border); }
  .prose .table-item:first-child { padding-top: 0; }
  .prose .table-item:last-child { border-bottom: 0; padding-bottom: 0; }
  .prose .table-item-title { margin: 0 0 12px; font-size: 17px; font-weight: 600; }
  .prose .table-title-label { display: block; font-size: 13px; font-weight: 400; color: var(--color-text-muted); margin-bottom: 2px; }
  .prose .table-field + .table-field { margin-top: 12px; }
  .prose .table-field dt { color: var(--color-text-muted); font-size: 14px; margin-bottom: 2px; }
  .prose .table-field dd { margin: 0; }
  .prose .table-field dt strong { font-weight: 500; }
  .prose .table-mobile ul { margin-bottom: 0; }
  .prose .table-scroll-hint { display: block; color: var(--color-text-muted); font-size: 13px; margin: 0 0 8px; }
  .prose .table-scroll-area table { width: max-content; min-width: 100%; border-collapse: separate; border-spacing: 0; font-size: 16px; line-height: 1.7; }
  .prose .table-scroll-area th, .prose .table-scroll-area td { min-width: 136px; max-width: 240px; padding: 12px; border-width: 0 1px 1px 0; overflow-wrap: anywhere; }
  .prose .table-scroll-area thead th { border-top-width: 1px; background: #f4efeb; }
  .prose .table-scroll-area tr > :first-child { position: sticky; left: 0; z-index: 1; min-width: 104px; max-width: 120px; border-left-width: 1px; background: #fefefd; box-shadow: 2px 0 3px #18284214; }
  .prose .table-scroll-area thead tr > :first-child { z-index: 2; background: #f4efeb; }
}

@media (max-width: 767px) {
  [data-article-slug="choosing-memorial-jewelry"] .table-mobile {
    line-height: 1.65;
  }
  [data-article-slug="choosing-memorial-jewelry"] .table-item {
    padding-block: 18px;
  }
  [data-article-slug="choosing-memorial-jewelry"] .table-item:first-child {
    padding-top: 0;
  }
  [data-article-slug="choosing-memorial-jewelry"] .table-item:last-child {
    padding-bottom: 0;
  }
  [data-article-slug="choosing-memorial-jewelry"] .table-item-title {
    margin-bottom: 12px;
    font-size: 18px;
  }
  [data-article-slug="choosing-memorial-jewelry"] .table-item > dl {
    margin: 0;
  }
  [data-article-slug="choosing-memorial-jewelry"] .table-field {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    row-gap: 3px;
    padding: 8px 12px;
    background: #f0ece6;
    border-radius: 4px;
  }
  [data-article-slug="choosing-memorial-jewelry"] .table-field + .table-field {
    margin-top: 6px;
  }
  [data-article-slug="choosing-memorial-jewelry"] .table-field dt {
    margin: 0;
    color: #665f57;
    font-size: 13px;
    line-height: 1.5;
  }
  [data-article-slug="choosing-memorial-jewelry"] .table-field dd {
    min-width: 0;
    color: #2e2925;
    font-size: 16px;
    line-height: 1.6;
  }
}
