.business-brands { border-top: var(--bd) solid var(--c-line); border-bottom: var(--bd) solid var(--c-line); padding-block: var(--space-4); }
.business-brands__head { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); margin-bottom: var(--space-3); }
.business-brands__title { font-size: var(--fs-3); color: var(--c-ink-sub); }
.business-brands__controls { display: flex; gap: var(--space-2); }
.business-brands__controls button { min-width: var(--space-7); height: var(--space-7); border: var(--bd) solid var(--c-line); background: var(--c-bg); cursor: pointer; font-size: var(--fs-2); }
.business-brands__controls button:hover, .business-brands__controls button:focus-visible { border-color: var(--c-accent); color: var(--c-accent); }
.business-brands__viewport { overflow-x: auto; scrollbar-width: thin; scrollbar-color: var(--c-line) var(--c-bg); }
.business-brands__track { display: flex; width: max-content; animation-duration: calc(var(--t-4) * 8); }
.business-brands__group { display: flex; gap: var(--space-5); padding: 0 var(--space-5) var(--space-3) 0; }
.business-brands__item { flex: none; width: calc(var(--space-9) * 2); }
.business-brands__item a { display: block; text-align: center; color: var(--c-accent); }
.business-brands__image { display: block; aspect-ratio: calc(var(--space-7) / var(--space-6)); overflow: hidden; border: var(--bd) solid var(--c-line); background: var(--c-bg); }
.business-brands__image picture { display: block; height: 100%; }
.business-brands__image img { height: 100%; object-fit: cover; }
.business-brands__name { display: block; margin-top: var(--space-2); font-size: var(--fs-2); line-height: var(--lh-2); }
.business-brands__item a:hover .business-brands__name { text-decoration: underline; text-underline-offset: var(--space-1); }
@media (max-width: 768px) { .business-brands__item { width: calc(var(--space-9) + var(--space-8)); } }

.media-list--cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-8) var(--space-6); }
@media (max-width: 1024px) { .media-list--cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 768px) { .media-list--cards { grid-template-columns: minmax(0, 1fr); gap: var(--space-7); } }
#list .media-list--cards { margin-top: var(--space-6); }
.media-list--cards .media, .media-list--cards .media--rev { display: flex; flex-direction: column; gap: 0; align-items: stretch; }
.media-list--cards .media__img { flex: none; }
.media-list--cards > .media .media__img img, .media-list--cards > .media:first-child .media__img img { aspect-ratio: calc(var(--space-7) / var(--space-6)); }
.media-list--cards .media__body { display: flex; flex: 1; margin-top: var(--space-5); }
.media-list--cards .media__kicker { font-size: var(--fs-3); }
.media-list--cards .media__title { min-height: calc(var(--fs-6) * var(--lh-2)); font-size: var(--fs-6); line-height: var(--lh-2); }
.media-list--cards .business-copy__line { display: block; }
.media-list--cards .business-operator { margin-top: var(--space-2); font-size: var(--fs-2); color: var(--c-ink-sub); }
.media-list--cards .media__text { margin-top: var(--space-3); }
.media-list--cards .media__body > .media__text { margin-bottom: var(--space-5); }
.media-list--cards .media__actions { padding-top: var(--space-2); border-top: var(--bd) solid color-mix(in srgb, var(--c-line), var(--c-ink-sub)); }
.media-list--cards .media__actions .media__act + .media__act { margin-top: var(--space-3); }
.media-list--cards .media__act .pill-link { display: flex; width: 100%; justify-content: space-between; }

.business-brands__verb { display: block; margin-bottom: var(--space-3); font-size: var(--fs-5); line-height: var(--lh-2); font-weight: var(--fw-medium); color: var(--c-accent-2); }

.media-list--cards #taxi .media__img { border-bottom: var(--bd) solid var(--c-line); }

.media-list--cards #meitengai .media__img img { transform: scale(calc(var(--space-9) / (var(--space-9) - var(--space-4)))); transform-origin: center bottom; }
.media-list--cards .media__text a { color: var(--c-accent); text-decoration: underline; text-underline-offset: var(--space-1); transition: color var(--t-1); }
.media-list--cards .media__text a:is(:hover, :focus-visible) { color: var(--c-accent-2); }
