/* Products catalog (v2) */

.v2-catalog-intro {
    padding: 60px var(--v2-pad) 40px;
}
.v2-catalog-intro .v2-sect-head__tag { margin-bottom: 12px; }

.v2-catalog-list {
    max-width: var(--v2-max);
    margin: 0 auto;
    border: 1px solid var(--v2-border);
    border-bottom: none;
}

.v2-prow {
    display: grid;
    grid-template-columns: 60px 1fr 1.4fr 260px 60px;
    gap: 28px;
    align-items: center;
    padding: 36px 32px;
    border-bottom: 1px solid var(--v2-border);
    background: var(--v2-bg);
    transition: background 0.25s, padding 0.25s;
    text-decoration: none;
    color: inherit;
}
.v2-prow:hover {
    background: linear-gradient(90deg, color-mix(in srgb, var(--accent, var(--v2-accent)) 8%, transparent) 0%, transparent 100%);
    color: inherit;
}
/* Fallback for browsers without color-mix */
@supports not (background: color-mix(in srgb, red 10%, transparent)) {
    .v2-prow:hover { background: var(--v2-bg-elev); }
}

.v2-prow__name {
    font-family: var(--v2-f-head);
    font-size: 36px; font-weight: 500; letter-spacing: -1.2px;
    line-height: 1.05; color: var(--v2-text);
    margin-bottom: 8px;
    transition: color 0.25s;
}
.v2-prow:hover .v2-prow__name { color: var(--accent, var(--v2-accent)); }

.v2-prow__tagline {
    font-size: 14px; line-height: 1.55; color: var(--v2-muted);
    margin: 0 0 12px;
    max-width: 440px;
}
.v2-prow__chips { display: flex; gap: 6px; flex-wrap: wrap; }
.v2-prow__chip {
    font-family: var(--v2-f-mono); font-size: 10px;
    padding: 3px 8px;
    background: #111;
    border: 1px solid #1f1f1f;
    color: var(--v2-muted);
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.v2-prow__price { text-align: right; display: flex; flex-direction: column; gap: 4px; align-items: flex-end; }
.v2-prow__price-val {
    font-family: var(--v2-f-head);
    font-size: 22px; font-weight: 500; letter-spacing: -0.6px;
    color: var(--v2-text);
}
.v2-prow__price-curr { font-size: 13px; color: var(--v2-muted); margin-left: 2px; }

.v2-prow__arrow {
    text-align: right;
    font-family: var(--v2-f-mono); font-size: 18px;
    color: #444;
    transition: color 0.25s, transform 0.25s;
}
.v2-prow:hover .v2-prow__arrow {
    color: var(--accent, var(--v2-accent));
    transform: translateX(6px);
}

/* Partners strip */
.v2-catalog-partners {
    max-width: var(--v2-max); margin: 60px auto 0; padding: 0 var(--v2-pad);
}
.v2-catalog-partners__inner {
    padding: 36px 40px;
    background: var(--v2-bg-elev);
    border: 1px solid var(--v2-border-md);
    display: flex; justify-content: space-between; align-items: center;
    gap: 20px; flex-wrap: wrap;
}
.v2-catalog-partners__left { display: flex; flex-direction: column; gap: 8px; max-width: 700px; }
.v2-catalog-partners__heading {
    font-family: var(--v2-f-head);
    font-size: 22px; font-weight: 500; letter-spacing: -0.6px;
    color: var(--v2-text);
}

@media (max-width: 1000px) {
    .v2-prow {
        grid-template-columns: 50px 1fr 120px 30px;
        gap: 16px;
        padding: 24px 20px;
    }
    .v2-prow__desc { grid-column: 1 / -1; margin-top: 10px; }
    .v2-prow__name { font-size: 28px; }
}
@media (max-width: 700px) {
    .v2-prow { grid-template-columns: 40px 1fr 30px; padding: 20px 16px; }
    .v2-prow__price { grid-column: 1 / -1; align-items: flex-start; text-align: left; margin-top: 10px; }
    .v2-prow__name { font-size: 24px; }
}
