/* Console brands without uploaded logos keep a readable name in the same frame. */
.zf-storefront .zf-brand-logo__text {
    max-width: 100%;
    padding-inline: 0.35rem;
    font-family: var(--zf-font);
    font-size: clamp(0.75rem, 1.2vw, 1.125rem);
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 0.02em;
    text-align: center;
    text-transform: none;
    overflow-wrap: anywhere;
}

/* Responsive SVG campaigns contain their own compact mobile composition. */
/* Adjacent home sections share a compact rhythm instead of stacking large pads. */
.zf-storefront .zf-brands-section {
    padding-block: clamp(2rem, 3vw, 3rem) 1.5rem;
}
.zf-storefront .zf-brands-title {
    margin-bottom: clamp(1.25rem, 2vw, 2rem);
}
.zf-storefront .zf-catalogue-section {
    padding-block: clamp(1.5rem, 2.5vw, 2.5rem);
}
.zf-storefront .zf-collections-title {
    margin-bottom: clamp(1.25rem, 2vw, 2rem);
}

.zf-storefront .zf-hero .zf-hero-image[src$=".svg"] { object-fit: fill; }
.zf-storefront .zf-hero[data-hero] { aspect-ratio: var(--zf-hero-ratio, 3 / 1); }
.zf-storefront .zf-hero:has(.zf-hero-image[src$=".svg"]) { --zf-hero-ratio: 3 / 1; }
@media (max-width: 600px) {
    .zf-storefront .zf-hero { overflow: hidden; margin-bottom: 0; }
    .zf-storefront .zf-hero:has(.zf-hero-image[src$=".svg"]) { --zf-hero-ratio: 5 / 6; }
    .zf-storefront .zf-hero .lo-hero-nav { top: 50%; bottom: auto; width: 2.25rem; height: 2.25rem; transform: translateY(-50%); background: rgb(255 255 255 / 88%); border-radius: 50%; box-shadow: 0 0.2rem 0.8rem rgb(0 0 0 / 14%); }
    .zf-storefront .zf-hero-dots { bottom: 0.75rem; pointer-events: none; }
    .zf-storefront .zf-hero-dots button { pointer-events: auto; }
    .zf-storefront .zf-brands-section { padding-top: 2rem; }
}

/* ZF compact mobile campaign framing 2026-10-06 */
@media (max-width: 420px) {
    .zf-storefront .zf-hero .lo-hero-prev { left: 0.65rem; }
    .zf-storefront .zf-hero .lo-hero-next { right: 0.65rem; }
    .zf-storefront .zf-hero .lo-hero-nav svg { width: 0.55rem; height: 0.85rem; }
}
