/* Zok atelier: one editorial treatment across the merchant storefront.
   Platform checkout is independently hosted and does not load this asset. */
@font-face {
    font-family: 'Zok Jost';
    font-style: normal;
    font-weight: 400 600;
    font-display: swap;
    src: url('https://fonts.gstatic.com/s/jost/v20/92zatBhPNqw73oTd4g.woff2') format('woff2');
}
@font-face {
    font-family: 'Zok Cormorant';
    font-style: normal;
    font-weight: 400 500;
    font-display: swap;
    src: url('https://fonts.gstatic.com/s/cormorantgaramond/v21/co3bmX5slCNuHLi8bLeY9MK7whWMhyjYqXtK.woff2') format('woff2');
}
:root { --zf-atelier-type: paired; }
body.zf-storefront {
    --zf-font: 'Zok Jost', 'Helvetica Neue', Arial, sans-serif;
    --zf-weight-body: 400;
    --zf-weight-strong: 500;
    --zf-editorial-font: 'Zok Cormorant', Georgia, 'Times New Roman', serif;
    --zf-paper: var(--zf-background);
    --zf-hairline: color-mix(in srgb, var(--zf-text) 14%, var(--zf-background));
    --lo-section: clamp(1.75rem, 3vw, 3rem);
    font-size: 0.9375rem;
    line-height: 1.65;
}
.zf-display-image { display: contents; }
.zf-storefront .lo-shell {
    width: 100%;
    max-width: 1680px;
    padding-inline: clamp(1.125rem, 4vw, 4rem);
}
.zf-storefront .zf-header-top { min-height: 6rem; }
.zf-storefront .zf-logo { width: clamp(8.5rem, 12vw, 11rem); max-height: 4rem; }
.zf-storefront .zf-desktop-nav {
    --zf-nav-text: clamp(0.875rem, 1.17vw, 1rem);
    min-height: 3.75rem;
    padding-block: 0;
    gap: clamp(1rem, 2vw, 2.25rem);
    border-color: var(--zf-hairline);
}
.zf-storefront .zf-desktop-nav .zf-nav-link {
    font-size: var(--zf-nav-text);
    font-weight: 500;
    letter-spacing: 0.025em;
    line-height: 1.4;
    padding-block: 0.75rem;
    text-transform: none;
    color: var(--zf-text);
}
.zf-storefront .zf-desktop-nav .zf-menu-parent > .zf-nav-link[href='/collections'] {
    padding-inline: 0.25rem;
    font-size: var(--zf-nav-text);
}
.zf-storefront .zf-desktop-nav .zf-menu-parent { gap: 0.25rem; }
.zf-storefront .zf-desktop-nav .zf-menu-toggle { width: 32px; height: 44px; }
.zf-storefront .zf-desktop-nav .zf-menu-toggle svg { width: 12px; height: 8px; }
.zf-storefront .zf-more-panel[data-dynamic-collections] { width: min(22rem, calc(100vw - 2rem)); min-width: 0; max-width: calc(100vw - 2rem); max-height: min(26rem, calc(100dvh - 14rem)); overflow-x: hidden; overflow-y: auto; scrollbar-width: thin; scrollbar-color: var(--zf-hairline) transparent; }
.zf-storefront .zf-more-panel[data-dynamic-collections]:not(.hidden) { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; padding: 0.5rem; }
.zf-storefront .zf-more-panel[data-dynamic-collections]:not(.hidden) { animation: zf-menu-enter 140ms ease-out both; }
@keyframes zf-menu-enter { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .zf-storefront .zf-more-panel[data-dynamic-collections]:not(.hidden) { animation: none; } }
.zf-storefront .zf-more-panel[data-dynamic-collections] a { display: flex; align-items: center; min-height: 44px; padding: 0.625rem 0.75rem; font-size: 0.9375rem; line-height: 1.5; letter-spacing: 0.01em; white-space: normal; overflow-wrap: anywhere; }
.zf-storefront .zf-more-panel[data-dynamic-collections] a:is(:hover, :focus-visible) { background: var(--zf-surface); color: var(--zf-text); }
.zf-storefront #nav-drawer .zf-mobile-nav-list a { display: flex; align-items: center; min-height: 46px; padding-block: 0.75rem; font-size: 1rem; line-height: 1.4; letter-spacing: 0.025em; text-transform: none; font-weight: 400; }
.zf-storefront #nav-drawer .zf-mobile-submenu a { min-height: 40px; font-size: 0.875rem; letter-spacing: 0.025em; }
.zf-storefront .zf-more-panel a { text-transform: none; }
.zf-storefront .zf-whatsapp-float.is-over-newsletter:not(:focus-visible) { visibility: hidden; }
.zf-storefront .zf-products-grid .lo-card h3,
.zf-storefront .sg-catalog-results .lo-card h3 { font-family: var(--zf-font); font-size: 0.875rem; font-weight: 400; letter-spacing: 0.015em; line-height: 1.5; text-transform: none; }
/* Existing simple, range and sale card prices. */
.zf-storefront .lo-card > div:last-child > span { font-size: clamp(1rem, 1.2vw, 1.0625rem) !important; font-weight: 500; line-height: 1.5; letter-spacing: 0.01em; }
.zf-storefront .lo-card > div:last-child > span > s { font-size: 0.875rem; font-weight: 400; }
.zf-storefront .lo-card > div:last-child > span > .bg-ink { max-width: 100%; white-space: normal; line-height: 1.4; }
.zf-storefront .zf-product-panel .lo-prose { font-size: 0.9375rem; line-height: 1.8; }
.zf-storefront .zf-footer__contact,
.zf-storefront .zf-footer__navigation a,
.zf-storefront .zf-footer__intro { font-size: 0.9375rem; line-height: 1.7; }
.zf-storefront .zf-wholesale-enquiry__intro { font-family: var(--zf-editorial-font); font-size: clamp(2rem, 4vw, 2.75rem); font-weight: 400; letter-spacing: -0.02em; }
.zf-storefront .zf-wholesale-enquiry h1 { font-family: var(--zf-font); font-weight: 400; }
.zf-storefront .zf-more-panel [data-collection-view-all] { grid-column: 1 / -1; padding-top: 0.75rem; border-top: 1px solid var(--zf-hairline); }
.zf-storefront .zf-more-panel {
    border: 1px solid var(--zf-hairline);
    box-shadow: 0 14px 32px rgb(0 0 0 / 6%);
}
.zf-storefront .zf-announcement {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    min-height: 44px;
    padding: 0;
    overflow: hidden;
    font-size: 0.625rem;
    letter-spacing: 0.18em;
}
.zf-ribbon-window { overflow: hidden; align-self: center; }
.zf-ribbon-track { display: flex; width: max-content; animation: zf-ribbon-drift 36s linear infinite; }
.zf-ribbon-group { display: flex; flex: 0 0 auto; align-items: center; }
.zf-ribbon-group span { display: inline-flex; align-items: center; gap: 3rem; padding-inline: 1.5rem; white-space: nowrap; }
.zf-ribbon-group span::after { content: ''; width: 4px; height: 4px; border: 1px solid currentColor; transform: rotate(45deg); opacity: 0.6; }
.zf-hero-pause svg { width: 12px; height: 12px; }
.zf-motion-play { display: none; }
[aria-pressed='true'] .zf-motion-pause { display: none; }
[aria-pressed='true'] .zf-motion-play { display: block; }
.zf-announcement:hover .zf-ribbon-track,
.zf-announcement:focus-within .zf-ribbon-track { animation-play-state: paused; }
@keyframes zf-ribbon-drift { to { transform: translateX(-50%); } }
.zf-storefront .zf-hero { position: relative; box-sizing: content-box; padding-bottom: 28px; border-bottom: 1px solid var(--zf-hairline); }
.zf-storefront .zf-hero .lo-hero-track { height: calc(100% - 28px); bottom: 28px; }
.zf-storefront .zf-hero .lo-hero-nav,
.zf-storefront .zf-hero-pause {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border: 1px solid rgb(255 255 255 / 65%);
    border-radius: 50%;
    color: var(--zf-text);
    background: rgb(255 255 255 / 88%);
    box-shadow: none;
}
.zf-storefront .zf-hero-pause { position: absolute; right: 1.25rem; bottom: 1rem; z-index: 3; }
.zf-storefront .zf-hero-pause[hidden] { display: none; }
.zf-storefront .zf-hero-dots { bottom: 0; height: 28px; align-items: center; gap: 4px; }
.zf-storefront .lo-hero-dot,
.zf-storefront .lo-hero-dot[aria-current='true'] { display: grid; place-items: center; width: 24px; height: 24px; padding: 0; border: 0; background: transparent; }
.zf-storefront .lo-hero-dot::before { content: ''; width: 6px; height: 6px; border: 1px solid var(--zf-text); border-radius: 999px; background: transparent; }
.zf-storefront .lo-hero-dot[aria-current='true']::before { width: 20px; background: var(--zf-text); }
.zf-storefront .zf-brands-section { padding-block: clamp(1.75rem, 3vw, 2.75rem) 1.5rem; }
.zf-storefront .zf-brands-title,
.zf-storefront #zf-collections-title,
.zf-storefront .zf-section-title,
.zf-storefront .zf-catalogue-heading h1,
.zf-storefront .zf-page-title,
.zf-storefront .zf-blog-title,
.zf-storefront .zf-article-title,
.zf-storefront .zf-product-title,
.zf-storefront main > .lo-section > .lo-shell > h1 {
    font-family: var(--zf-editorial-font) !important;
    font-weight: 500 !important;
    letter-spacing: -0.025em !important;
    line-height: 1.12;
    text-transform: none !important;
    text-wrap: balance;
}
.zf-storefront .zf-brands-title { font-size: clamp(1.75rem, 3vw, 2.75rem); margin-bottom: 1.25rem; }
.zf-storefront #zf-collections-title { font-size: clamp(1.875rem, 2.75vw, 2.75rem) !important; margin-bottom: 1.25rem !important; }
.zf-storefront .zf-collections-kicker { margin-bottom: 0.5rem; color: var(--zf-text); font-size: 0.625rem; letter-spacing: 0.22em; }
.zf-storefront .zf-brand-carousel { --zf-brand-gap: clamp(1rem, 2vw, 2rem); }
.zf-storefront .zf-brand-logo { aspect-ratio: 2; }
.zf-storefront .zf-brand-carousel-name { font-size: 0.75rem; font-weight: 400; letter-spacing: 0.025em; }
.zf-storefront .zf-brand-carousel[data-has-overflow='false'] { padding-inline: 0; }
.zf-storefront .zf-brand-carousel[data-has-overflow='false'] .zf-brand-arrow { display: none; }
.zf-storefront .zf-brand-arrow:disabled { opacity: 0.3; cursor: default; }
.zf-storefront .zf-brand-arrow,
.zf-storefront .zf-catalogue-arrow { width: 44px; height: 44px; box-shadow: none; border: 1px solid var(--zf-hairline); }
.zf-storefront .zf-brand-arrow { top: 25%; }
.zf-storefront .zf-catalogue-section { padding-block: clamp(1.5rem, 2.5vw, 2.5rem); background: var(--zf-paper); border-block: 1px solid var(--zf-hairline); }
.zf-storefront .zf-catalogue-cover-track { gap: 1.25rem; }
.zf-storefront .zf-catalogue-cover-track > li { flex-basis: calc((100% - 3.75rem) / 4); }
.zf-storefront .zf-catalogue-cover { background: var(--zf-background); aspect-ratio: 3 / 4; }
.zf-storefront .zf-catalogue-cover-name { padding: 0.875rem 0 0.375rem; font-family: var(--zf-font); font-size: clamp(0.9375rem, 1.15vw, 1.125rem); line-height: 1.4; font-weight: 400; }
.zf-storefront .zf-catalogue-carousel { padding-inline: 3.5rem; }
.zf-storefront .zf-catalogue-arrow--previous { left: 0; }
.zf-storefront .zf-catalogue-arrow--next { right: 0; }
.zf-storefront .zf-catalogue-heading { padding-block: clamp(1.5rem, 2.5vw, 2.25rem); background: var(--zf-background); border-bottom: 1px solid var(--zf-hairline); }
.zf-storefront .zf-catalogue-heading h1 { font-size: clamp(2rem, 3vw, 3rem); }
.zf-storefront .zf-catalogue-index { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.75rem 1.25rem; }
.zf-storefront .zf-arrivals-section { padding-block: clamp(2rem, 3vw, 3rem); }
.zf-storefront .zf-section-heading-row { margin-bottom: 1.5rem; padding-bottom: 1rem; border-bottom: 1px solid var(--zf-hairline); }
.zf-storefront .zf-section-heading-row .zf-section-title { font-size: clamp(2rem, 3.5vw, 3rem); }
.zf-storefront .zf-text-link { font-size: 0.6875rem; letter-spacing: 0.13em; text-underline-offset: 0.4em; }
.zf-storefront .zf-products-grid { gap: 2rem 1.25rem; }
.zf-storefront .zf-products-grid .lo-card h3 { font-size: 0.8125rem; font-weight: 400; line-height: 1.6; letter-spacing: 0.02em; }
.zf-storefront .zf-products-grid .lo-card > div:last-child { padding-block: 1rem 0.25rem; }
.zf-storefront .zf-products-grid .lo-media { border: 1px solid var(--zf-hairline); }
.zf-storefront .zf-products-grid .lo-media img { will-change: auto; }
.zf-storefront .sg-catalog-breadcrumb { font-size: 0.6875rem; letter-spacing: 0.04em; }
.zf-storefront .sg-catalog-toolbar { border-color: var(--zf-hairline); padding-block: 1rem; }
.zf-storefront .zf-catalogue-heading { padding-block: 1.25rem; }
.zf-storefront .zf-catalogue-heading h1 { font-size: clamp(1.875rem, 2.5vw, 2.5rem); }
.zf-storefront .zf-catalogue-heading + .lo-section { padding-top: 1.25rem; }
.zf-storefront .sg-catalog-breadcrumb { margin-bottom: 1rem; }
.zf-storefront .sg-catalog-toolbar { min-height: 0; padding-block: 0.5rem; font-size: 0.75rem; }
.zf-storefront .sg-catalog-toolbar label { gap: 0.5rem; }
.zf-storefront .sg-catalog-toolbar select { height: 36px; min-height: 36px; max-width: 168px; padding-block: 0.375rem; padding-inline: 0.625rem 1.75rem; font-size: 0.75rem; }
.zf-storefront .sg-catalog-toolbar select[hidden] { display: none; }
.zf-storefront .zf-sort { position: relative; display: inline-flex; font-size: 0.8125rem; letter-spacing: normal; }
.zf-storefront .zf-sort [data-sort-trigger] { display: flex; align-items: center; justify-content: space-between; gap: 1rem; width: 168px; height: 36px; padding: 0 0.75rem; border: 1px solid var(--zf-hairline); background: #fff; color: var(--zf-text); font: inherit; text-align: left; cursor: pointer; }
.zf-storefront .zf-sort [data-sort-trigger]::after { content: ''; width: 6px; height: 6px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: translateY(-2px) rotate(45deg); }
.zf-storefront .zf-sort [data-sort-trigger][aria-expanded='true']::after { transform: translateY(2px) rotate(225deg); }
.zf-storefront .zf-sort-menu { position: absolute; z-index: 40; top: calc(100% + 6px); right: 0; width: 208px; max-width: calc(100vw - 32px); max-height: min(320px, 55dvh); overflow-y: auto; padding: 6px; background: #fff; border: 1px solid var(--zf-hairline); box-shadow: 0 8px 24px rgb(0 42 48 / 10%); }
.zf-storefront .zf-sort-menu[hidden] { display: none; }
.zf-storefront .zf-sort-menu button { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; width: 100%; min-height: 40px; padding: 0.5rem 0.75rem; border: 0; background: transparent; color: var(--zf-text); font: inherit; text-align: left; cursor: pointer; }
.zf-storefront .zf-sort-menu button[aria-checked='true'] { background: var(--zf-text); color: #fff; }
.zf-storefront .zf-sort-menu button[aria-checked='true']::after { content: '\2713'; }
.zf-storefront .zf-sort-menu button:hover:not([aria-checked='true']) { background: #f0f6f6; }
.zf-storefront .zf-sort :is(button):focus-visible { outline: none; box-shadow: inset 0 0 0 2px currentColor; }
.zf-storefront .zf-catalogue-nav { margin-bottom: 1.25rem; padding-bottom: 1rem; }
.zf-storefront .zf-catalogue-nav h2 { font-size: 0.625rem; letter-spacing: 0.12em; }
.zf-storefront .zf-catalogue-nav ul { margin-top: 0.5rem; gap: 0; max-height: 16.5rem; scrollbar-width: thin; scrollbar-color: color-mix(in srgb, var(--zf-text) 28%, transparent) transparent; }
.zf-storefront .zf-catalogue-nav ul::-webkit-scrollbar { width: 3px; }
.zf-storefront .zf-catalogue-nav ul::-webkit-scrollbar-thumb { background: color-mix(in srgb, var(--zf-text) 28%, transparent); border-radius: 4px; }
.zf-storefront .zf-catalogue-nav a { padding-block: 0.4rem; padding-inline-end: 0.5rem; font-size: 0.75rem; font-weight: 400; line-height: 1.5; }
.zf-storefront .zf-catalogue-nav a[aria-current='page'] { padding-inline-start: 0.625rem; border-inline-start: 2px solid var(--zf-text); text-decoration: none; }
.zf-storefront .sg-catalog-sidebar { padding-inline-end: 1.5rem; }
.zf-storefront .zf-product-layout { grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr); gap: clamp(2rem, 5vw, 5rem); }
.zf-storefront .zf-product-layout > .zf-design-gallery { max-width: 600px; }
.zf-storefront .zf-product-title { font-size: clamp(2rem, 3.25vw, 3rem); }
.zf-storefront .zf-product-brand { letter-spacing: 0.18em; font-size: 0.6875rem; }
.zf-storefront .zf-product-meta { padding-bottom: 1rem; border-bottom: 1px solid var(--zf-hairline); }
.zf-storefront .zf-product-price__now { font-size: 1.375rem; }
.zf-storefront .lo-btn,
.zf-storefront .zf-product-add,
.zf-storefront .zf-product-buy-now { min-height: 48px; font-size: 0.6875rem; font-weight: 500; letter-spacing: 0.14em; transition: background-color 180ms ease, color 180ms ease; }
.zf-storefront .lo-field { min-height: 48px; padding: 0.8rem 1rem; border-color: var(--zf-hairline); }
.zf-storefront main > .lo-section > .lo-shell > h1 { font-size: clamp(2rem, 4vw, 3.5rem); }
.zf-storefront main aside > .border { border-color: var(--zf-hairline); background: var(--zf-paper); padding: clamp(1.25rem, 2vw, 2rem); }
.zf-storefront footer { margin-top: 2rem; border-color: var(--zf-hairline); }
.zf-storefront footer > .lo-shell { padding-block: clamp(2.25rem, 4vw, 4rem); }
.zf-storefront footer .lo-heading { letter-spacing: 0.15em; font-size: 0.6875rem; }
.zf-storefront footer p.lo-heading.text-lg { font-family: var(--zf-editorial-font); font-size: 1.75rem; text-transform: none; letter-spacing: -0.02em; }
.zf-storefront footer .lo-field { background: transparent; }
.zf-storefront footer a { text-underline-offset: 0.3em; }
.zf-storefront footer .text-subdued { line-height: 1.9; }
/* Newsletter first; a compact brand/contact column beside configured navigation. */
.zf-storefront .zf-footer {
    background: var(--zf-footer);
    color: var(--zf-on-footer);
    margin-top: 1.5rem;
    border-top: 0;
}
.zf-storefront .zf-footer > .lo-shell { padding-block: 0; }
.zf-footer__newsletter {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 2rem;
    align-items: center;
    padding-block: 2.25rem;
    border-bottom: 1px solid rgb(255 255 255 / 22%);
}
.zf-storefront .zf-footer__eyebrow {
    margin: 0 0 1rem;
    font-family: var(--zf-font);
    font-size: 0.625rem;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: inherit;
}
.zf-storefront .zf-footer__title {
    margin: 0;
    font-family: var(--zf-editorial-font);
    font-size: clamp(1.875rem, 3vw, 2.75rem);
    font-weight: 500;
    line-height: 1.15;
    letter-spacing: -0.025em;
    text-transform: none;
    color: inherit;
}
.zf-footer__intro { margin-top: 0.5rem; font-size: 0.8125rem; opacity: 0.8; }
.zf-footer__signup { width: 100%; max-width: 540px; justify-self: end; }
.zf-footer__input-row { display: flex; align-items: stretch; min-width: 0; }
.zf-storefront .zf-footer .lo-field {
    flex: 1 1 0%;
    width: 0;
    min-width: 0;
    min-height: 52px;
    border: 1px solid rgb(255 255 255 / 55%);
    border-right: 0;
    color: var(--zf-on-footer);
    background: transparent;
    font-size: 0.8125rem;
}
.zf-storefront .zf-footer .lo-field::placeholder { color: inherit; opacity: 0.8; }
.zf-storefront .zf-footer form .zf-footer__subscribe {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    min-height: 52px;
    padding-inline: 1.25rem;
    border: 1px solid var(--zf-on-footer);
    background: var(--zf-on-footer);
    color: var(--zf-footer) !important;
}
.zf-footer__subscribe svg { width: 20px; height: 20px; }
.zf-footer__error { margin-top: 0.5rem; font-size: 0.75rem; }
.zf-footer__main { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: clamp(2rem, 6vw, 6rem); padding-block: 2.25rem; }
.zf-footer__brand { min-width: 0; }
.zf-footer__home { display: inline-block; }
.zf-storefront .zf-footer .zf-footer-logo { width: 145px; max-height: 68px; margin: 0; }
.zf-footer__wordmark { font-family: var(--zf-editorial-font); font-size: 1.875rem; }
.zf-footer__contact { display: grid; gap: 0.375rem; max-width: 21rem; margin-top: 1rem; font-size: 0.75rem; line-height: 1.75; opacity: 0.85; overflow-wrap: anywhere; }
.zf-footer__navigation { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; }
.zf-footer__navigation ul { display: grid; gap: 0.625rem; }
.zf-footer__navigation a { font-size: 0.8125rem; font-weight: 400; opacity: 0.85; }
.zf-footer__navigation a:hover { opacity: 1; text-decoration: underline; }
.zf-footer__bottom { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 1rem 2rem; padding-block: 1.125rem; padding-inline-end: 4.5rem; border-top: 1px solid rgb(255 255 255 / 22%); font-size: 0.6875rem; }
.zf-footer__bottom > p { opacity: 0.75; }
.zf-footer__social { display: flex; flex-wrap: wrap; align-items: center; gap: 1.5rem; }
.zf-footer__social a { font-size: 0.6875rem; letter-spacing: 0.04em; }
.zf-storefront :is(a, button, input, select, textarea):focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.zf-storefront .zf-search-overlay-input:focus,
.zf-storefront .zf-search-overlay-input:focus-visible { outline: none; box-shadow: none; border-color: var(--zf-text); }
.zf-storefront .zf-search-overlay-form:focus-within { outline: none; box-shadow: none; }
@media (max-width: 1023px) {
    .zf-storefront .zf-header-top { min-height: 4.75rem; }
    .zf-storefront .zf-desktop-nav { display: none; }
    .zf-storefront .zf-mobile-toggle { display: inline-flex; }
    .zf-storefront .zf-catalogue-cover-track > li { flex-basis: calc((100% - 1.25rem) / 2); }
    .zf-storefront .zf-catalogue-index { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .zf-footer__main { grid-template-columns: minmax(0, 1fr); gap: 1.75rem; }
    .zf-footer__brand { display: grid; grid-template-columns: 145px minmax(0, 1fr); gap: 1.5rem; align-items: start; }
    .zf-footer__contact { margin-top: 0; }
    .zf-storefront .zf-product-layout { grid-template-columns: minmax(0, 1fr); gap: 1.75rem; }
    .zf-storefront .zf-product-layout > .zf-design-gallery { max-width: 560px; }
}
@media (max-width: 640px) {
    .zf-storefront .lo-shell { padding-inline: 1rem; }
    .zf-storefront .zf-logo { width: 8rem; max-height: 3rem; }
    .zf-storefront .zf-header-top { gap: 0.5rem; min-height: 4.25rem; }
    .zf-storefront .zf-announcement { font-size: 0.5625rem; letter-spacing: 0.12em; }
    .zf-ribbon-group span { gap: 1.5rem; padding-inline: 0.75rem; }
    .zf-storefront .zf-brands-section { padding-block: 1.5rem 1.25rem; }
    .zf-storefront .zf-brands-title { font-size: 1.75rem; margin-bottom: 0.75rem; }
    .zf-storefront .zf-brand-carousel-card { gap: 0.4rem; }
    .zf-storefront .zf-brand-carousel-name { font-size: 0.6875rem; }
    .zf-storefront .zf-catalogue-section { padding-block: 1.75rem; }
    .zf-storefront #zf-collections-title { font-size: 1.875rem !important; margin-bottom: 1.25rem !important; }
    .zf-storefront .zf-catalogue-cover-track { gap: 0.875rem; }
    .zf-storefront .zf-catalogue-cover-track > li { flex-basis: calc((100% - 0.875rem) / 2); }
    .zf-storefront .zf-catalogue-cover-name { font-size: 0.9375rem; }
    .zf-storefront .zf-catalogue-arrow { display: none; }
    .zf-storefront .zf-catalogue-carousel { padding-inline: 0; }
    .zf-storefront .zf-catalogue-index { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem 0.875rem; }
    .zf-storefront .zf-products-grid { gap: 1.5rem 0.875rem; }
    .zf-storefront .sg-catalog-sidebar { padding-inline-end: 0; }
    .zf-storefront .zf-product-title { font-size: 2rem; }
    .zf-storefront .zf-product-layout > .zf-design-gallery { max-width: 100%; }
    .zf-storefront .zf-hero-pause { right: 0.75rem; bottom: 0.75rem; }
    .zf-storefront .zf-hero .lo-hero-nav { width: 36px; height: 36px; }
    .zf-storefront .zf-search-overlay-input:focus,
    .zf-storefront .zf-search-overlay-input:focus-visible { border-color: transparent; }
    .zf-storefront footer { margin-top: 1.5rem; }
    .zf-footer__newsletter { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; padding-block: 1.75rem; }
    .zf-footer__signup { max-width: none; }
    .zf-footer__main { padding-block: 1.75rem; }
    .zf-footer__brand { grid-template-columns: minmax(0, 1fr); gap: 0.75rem; }
    .zf-footer__navigation { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem 1rem; }
    .zf-footer__bottom { padding-bottom: 1.5rem; }
    .zf-footer__bottom > p:last-child { width: 100%; }
    .zf-storefront .zf-footer form .zf-footer__subscribe { padding-inline: 0.875rem; gap: 0.5rem; letter-spacing: 0.08em; }
}
@media (prefers-reduced-motion: reduce) {
    .zf-storefront .zf-announcement { grid-template-columns: minmax(0, 1fr); }
    .zf-ribbon-track { display: block; width: auto; animation: none; }
    .zf-ribbon-group { justify-content: center; }
    .zf-ribbon-group + .zf-ribbon-group,
    .zf-ribbon-group span + span { display: none; }
    .zf-ribbon-group span { padding: 0.75rem 1rem; white-space: normal; text-align: center; }
    .zf-ribbon-group span::after { display: none; }
}