.tpf-brand-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(160px, 25%);
    align-items: center;
    gap: clamp(20px, 5vw, 72px);
}

.tpf-brand-hero:not(:has(.tpf-brand-profile-logo)) {
    grid-template-columns: minmax(0, 1fr);
}

.tpf-brand-profile-logo {
    --logo-height-limit: 108px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 154px;
    padding: 20px;
}

.tpf-brand-profile-logo > img {
    display: block;
    width: 100%;
    height: var(--logo-height-limit);
    object-fit: contain;
}

.tpf-brand-jumps {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
    margin-top: 18px;
}

.tpf-brand-jumps a, .tpf-brand-shopping a {
    color: var(--tpf-purple);
    font-weight: 600;
    text-underline-offset: 4px;
}

.tpf-brand-facts, .tpf-brand-shopping {
    padding: clamp(18px, 3vw, 30px);
    background: #f8f4f8;
    border: 1px solid var(--tpf-line);
}

.tpf-brand-facts h2, .tpf-brand-selection h2, .tpf-brand-shopping h2 {
    margin: 0 0 14px;
    font-family: inherit;
    font-size: clamp(22px, 2.5vw, 30px);
    font-weight: 600;
    letter-spacing: -.025em;
    line-height: 1.25;
}

.tpf-brand-facts dl {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px 24px;
    margin: 0;
}

.tpf-brand-facts dt { color: #625867; font-size: 13px; }
.tpf-brand-facts dd { margin: 4px 0 0; font-size: 16px; font-weight: 600; }
.tpf-brand-opinion { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--tpf-line); }
.tpf-brand-opinion p { margin: 5px 0 0; line-height: 1.6; }

.tpf-brand-selection {
    --nw-accent: #743d73;
    --nw-button-background: #743d73;
    --nw-button-hover: #583057;
    --nw-button-text: #fff;
    --nw-radius: 0px;
    --nw-border-color: #e9e2e9;
    margin: 34px 0;
}

.tpf-brand-selection .nw-carousel-track {
    align-items: stretch;
    --nw-carousel-card-width: calc((100% - 32px) / 3);
}

.tpf-brand-selection .nw-carousel-card { align-self: stretch; }
.tpf-brand-selection .nw-carousel-card h3 {
    font-family: inherit;
    font-weight: 600;
    line-height: 1.4;
}
.tpf-brand-selection .nw-carousel-card .nw-product-image img {
    width: 100%;
    height: 160px;
    object-fit: contain;
}

.tpf-brand-selection .nw-carousel-card .nw-product-offers { margin-top: auto; padding-top: 8px; }
.tpf-brand-selection .nw-affiliate-disclosure { font-size: 12px; color: #625867; }

@media (min-width: 901px) {
    .tpf-brand-selection .nw-carousel-controls { display: none; }
}

.tpf-brand-reading { margin-top: 36px; }
.tpf-brand-reading .tpf-article-prose > p:empty { display: none; }
.tpf-brand-reading .tpf-article-prose > h2:first-of-type { margin-top: 0; }
.tpf-brand-shopping { margin-top: 32px; }
.tpf-brand-profile .tpf-article-comments { margin-top: 36px; }

.tpf-brand-more-articles {
    margin-top: 24px;
    padding: 14px 18px;
    border: 1px solid var(--tpf-line);
    background: #f8f4f8;
}

.tpf-brand-more-articles summary {
    color: var(--tpf-purple);
    font-weight: 600;
    cursor: pointer;
}

.tpf-brand-more-articles ul { margin-bottom: 0; padding-left: 20px; }
.tpf-brand-more-articles li + li { margin-top: 8px; }
.tpf-brand-more-articles a { color: var(--tpf-ink); text-underline-offset: 3px; }

@media (max-width: 900px) {
    .tpf-brand-selection .nw-carousel-track { --nw-carousel-card-width: 280px; }
}

@media (max-width: 640px) {
    .tpf-brand-hero { grid-template-columns: minmax(0, 1fr); }
    .tpf-brand-profile-logo { --logo-height-limit: 66px; width: 140px; min-height: 82px; padding: 8px; }
    .tpf-brand-facts dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
