.atv-product-catalog { padding-top: 22px; }
.atv-product-catalog .visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.atv-catalog-conditions { border-left: 3px solid #c72b25; padding: 2px 0 2px 18px; margin: 20px 0; }
.atv-catalog-conditions p { margin: 6px 0; max-width: 1000px; }
.atv-catalog-nav { display: flex; flex-wrap: wrap; gap: 8px 20px; margin: 24px 0 34px; }
.atv-catalog-nav a { display: flex; gap: 8px; align-items: center; min-height: 44px; border-bottom: 1px solid #bfb9b0; font-weight: 700; }
.atv-catalog-nav span { font-weight: 400; color: #555; }
.atv-catalog-group { display: grid; grid-template-columns: minmax(180px, 260px) minmax(0, 1fr); gap: 30px; border-top: 1px solid #d8d3ca; padding: 30px 0; scroll-margin-top: 116px; }
.atv-catalog-group figure { margin: 0; min-width: 0; }
.atv-catalog-group figure img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 4px; }
.atv-catalog-group figcaption { font-size: 13px; line-height: 1.5; margin-top: 10px; color: #555; }
.atv-catalog-group-body { min-width: 0; }
.atv-catalog-group h3 { font-size: 25px; line-height: 1.25; margin: 0 0 16px; }
.atv-product-table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.atv-product-table th, .atv-product-table td { padding: 16px 10px; vertical-align: top; text-align: left; border-bottom: 1px solid #d8d3ca; overflow-wrap: anywhere; }
.atv-product-table thead th { font-size: 13px; color: #555; font-weight: 600; }
.atv-product-table thead th:first-child { width: auto; }
.atv-product-table thead th:nth-child(2) { width: 134px; }
.atv-product-table thead th:last-child { width: 68px; font-size: 0; }
.atv-product-table tr[id] { scroll-margin-top: 120px; }
.atv-product-name { display: block; font-size: 16px; font-weight: 700; line-height: 1.4; }
.atv-product-detail { display: block; font-size: 14px; font-weight: 400; line-height: 1.5; margin-top: 6px; color: #555; }
.atv-product-price { font-weight: 700; font-size: 17px; }
.atv-product-price span { display: block; font-weight: 400; font-size: 12px; line-height: 1.4; margin-top: 6px; color: #555; }
.atv-product-call { display: grid; place-items: center; width: 44px; height: 44px; color: #b72420; border: 1px solid #d2c9bf; border-radius: 4px; }
.atv-product-call svg { width: 21px; height: 21px; }
.atv-product-call:hover, .atv-product-call:focus-visible { background: #fff; outline: 2px solid #b72420; outline-offset: 2px; }
.atv-catalog-footer { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; border-top: 1px solid #d8d3ca; padding-top: 24px; }
.atv-catalog-footer p { flex: 1 1 400px; }
@media (max-width: 700px) {
  .atv-catalog-group { grid-template-columns: 1fr; gap: 18px; scroll-margin-top: 90px; padding: 24px 0; }
  .atv-catalog-group figure img { max-height: 180px; }
  .atv-catalog-group h3 { font-size: 23px; }
  .atv-catalog-group figcaption { font-size: 12px; }
  .atv-catalog-nav { gap: 4px 14px; margin: 18px 0 24px; }
  .atv-catalog-nav a { font-size: 14px; }
  .atv-product-table thead th:nth-child(2) { width: 82px; }
  .atv-product-table thead th:last-child { width: 46px; font-size: 0; }
  .atv-product-table th, .atv-product-table td { padding: 12px 4px; }
  .atv-product-name { font-size: 15px; }
  .atv-product-detail { font-size: 13px; }
  .atv-product-price { font-size: 16px; }
  .atv-product-price span { font-size: 11px; }
  .atv-product-table tr[id] { scroll-margin-top: 90px; }
}
