@layer marielco-shop-toolbar {
    .marielco-shop {
        --marielco-shop-gutter: var(--marielco-page-gutter);
        --marielco-grid-column-gap: 2px;
        --marielco-grid-row-gap: 48px;
        --marielco-card-info-top: 14px;
        --marielco-card-info-inline: 6px;
        --marielco-card-info-bottom: 2px;
        --marielco-card-info-align: center;
        --marielco-card-title-size: 12px;
        --marielco-card-title-line: 1.5;
        --marielco-card-title-case: none;
        --marielco-card-price-gap: 6px;
        --marielco-card-price-size: 12px;
        --marielco-card-price-line: 1.4;
        padding: 0;
    }
    .marielco-shop__hero { position: relative; block-size: clamp(360px, 36vw, 640px); overflow: hidden; background: #d8d8d8; color: #fff; }
    .marielco-shop__hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to bottom,rgb(0 0 0 / 18%),transparent 28%),linear-gradient(to top,rgb(0 0 0 / 24%),transparent 46%); pointer-events: none; }
    .marielco-shop__hero-image { inline-size: 100%; block-size: 100%; object-fit: cover; }
    .marielco-shop__hero-content { position: absolute; z-index: 1; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 78px 24px 24px; text-align: center; }
    .marielco-shop__hero-subtitle { margin-block-end: 12px; font-size: 12px; letter-spacing: .16em; line-height: 1.4; text-transform: uppercase; }
    .marielco-shop__hero h1 { margin: 0; font-size: clamp(40px, 4vw, 64px); font-weight: 400; line-height: 1.05; letter-spacing: -.025em; text-transform: uppercase; }
    .marielco-shop__discover { margin-block-start: 24px; padding-block-end: 4px; font-size: 12px; line-height: 1.4; letter-spacing: .12em; text-transform: uppercase; }
    .marielco-brand__intro { padding: 30px var(--marielco-shop-gutter) 34px; text-align: center; }
    .marielco-brand__eyebrow { margin: 0 0 12px; color: #777; font-size: 10px; line-height: 1.4; letter-spacing: .22em; }
    .marielco-brand__intro h1 { margin: 0; font-size: clamp(30px,3.2vw,48px); font-weight: 400; line-height: 1.15; letter-spacing: .1em; text-transform: uppercase; overflow-wrap: anywhere; }
    .marielco-brand__description { max-inline-size: 560px; margin: 16px auto 0; color: #777; font-size: 12px; line-height: 1.8; }
    .marielco-brand__description p { margin: 0; }
    .marielco-brand__cover { margin: 16px var(--marielco-shop-gutter) 0; aspect-ratio: 24/7; overflow: hidden; background: #f1f1ef; }
    .marielco-brand__cover-image { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; object-position: center; }
    .marielco-shop__intro { padding: 24px var(--marielco-shop-gutter) 18px; }
    .marielco-shop__intro h1 { margin: 0; font-size: clamp(26px, 2.2vw, 34px); font-weight: 400; line-height: 1.2; letter-spacing: -.025em; }
    .marielco-shop__breadcrumb { display: flex; align-items: center; min-block-size: 38px; padding: 10px var(--marielco-shop-gutter) 0; }
    .marielco-shop__breadcrumb nav { display: flex; flex-wrap: wrap; gap: 8px; font-size: 10px; line-height: 1.5; letter-spacing: .02em; color: var(--marielco-text-muted); }
    .marielco-shop__breadcrumb a { color: inherit; text-decoration: none; transition: color .18s ease; }
    .marielco-shop__breadcrumb a:where(:hover, :focus-visible) { color: #111; }
    /* The shared document scroll padding already reserves Header height. */
    .marielco-shop__products-anchor { display: block; block-size: 0; scroll-margin-block-start: 58px; }
    .marielco-shop__density { position: relative; display: flex; flex: 0 0 auto; block-size: 44px; padding-inline-end: 13px; }
    .marielco-shop__density::after { content: ""; position: absolute; inset-inline-end: 0; inset-block-start: 50%; inline-size: 1px; block-size: 16px; background: #ddd; transform: translateY(-50%); }
    .marielco-shop__density[hidden] { display: none; }
    .marielco-shop__density button { display: grid; place-items: center; inline-size: 36px; block-size: 44px; padding: 0; border: 0; background: none; color: #aaa; cursor: pointer; transition: color .15s ease,transform .15s ease; }
    .marielco-shop__density button:active { transform: scale(.94); }
    .marielco-shop__density button:where(:hover,[aria-pressed="true"]) { color: #111; }
    .marielco-shop__density-icon { display: grid; inline-size: 14px; block-size: 12px; gap: 1px; }
    .marielco-shop__density-icon--3 { inline-size: 12px; grid-template-columns: repeat(3,2px); gap: 3px; }
    .marielco-shop__density-icon--4 { grid-template-columns: repeat(4,2px); gap: 2px; }
    .marielco-shop__density-icon--6 { inline-size: 11px; grid-template-columns: repeat(6,1px); }
    .marielco-shop__density-icon i { background: currentColor; }
    .marielco-shop > .marielco-product-grid { grid-template-columns: repeat(4,minmax(0,1fr)); margin-inline: var(--marielco-shop-gutter); padding: 0; }
    .marielco-shop[data-shop-columns="3"] > .marielco-product-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .marielco-shop[data-shop-columns="3"] { --marielco-card-title-size: 13px; --marielco-card-price-size: 12px; }
    .marielco-shop[data-shop-columns="6"] > .marielco-product-grid { grid-template-columns: repeat(6,minmax(0,1fr)); }
    .marielco-shop[data-shop-columns="6"] { --marielco-card-title-size: 11px; --marielco-card-price-size: 11px; }
    .marielco-shop .marielco-product-card__price { color: var(--marielco-text-muted); }
    .marielco-shop__pagination { display: grid; justify-items: center; padding: 54px 20px 62px; }
    .marielco-shop__load-status { min-block-size: 1.4em; margin-block-end: 10px; color: #777; font-size: 9px; line-height: 1.4; letter-spacing: .09em; text-transform: uppercase; text-align: center; }
    .marielco-shop__load-progress { appearance: none; inline-size: min(340px,74vw); block-size: 1px; border: 0; background: #ddd; color: #111; }
    .marielco-shop__load-progress::-webkit-progress-bar { background: #ddd; }
    .marielco-shop__load-progress::-webkit-progress-value { background: #111; }
    .marielco-shop__load-progress::-moz-progress-bar { background: #111; }
    .marielco-shop__load-button { min-block-size: 44px; margin-block-start: 10px; padding: 0 12px 8px; border: 0; background: none; font-size: 9px; letter-spacing: .11em; text-transform: uppercase; cursor: pointer; }
    .marielco-shop__load-button[aria-disabled="true"] { cursor: default; }
    .marielco-shop__load-button .marielco-link { --marielco-underline-scale: 0; --marielco-underline-opacity: 1; --marielco-underline-offset: 0px; padding-block-end: 4px; background-image: linear-gradient(#ccc,#ccc); background-position: left bottom; background-size: 100% 1px; background-repeat: no-repeat; }
    .marielco-shop__load-button:where(:hover,:focus-visible):not([aria-disabled="true"]) .marielco-link { --marielco-underline-scale: 1; }
    .marielco-shop__pagination [hidden] { display: none; }
    .marielco-shop__toolbar { position: sticky; inset-block-start: calc(var(--marielco-header-height) + var(--wp-admin--admin-bar--height, 0px)); z-index: 10; display: flex; align-items: center; justify-content: space-between; inline-size: 100%; block-size: 64px; padding-inline: var(--marielco-shop-gutter); background: var(--marielco-white); }
    .marielco-shop__toolbar-start, .marielco-shop__toolbar-end { display: flex; align-items: center; min-inline-size: 0; }
    .marielco-shop__toolbar-start { gap: 26px; }
    .marielco-shop__toolbar-end { justify-content: flex-end; gap: 20px; }
    .marielco-shop__trigger { display: inline-flex; align-items: center; gap: 9px; block-size: 58px; padding: 0; border: 0; background: none; color: #666; transition: color .2s ease; font-size: 12px; font-weight: 400; letter-spacing: .11em; text-transform: uppercase; text-decoration: none; white-space: nowrap; list-style: none; cursor: pointer; }
    .marielco-shop__trigger::-webkit-details-marker { display: none; }
    .marielco-shop__trigger:where(:hover,:focus-visible,[aria-expanded="true"]) { color: #111; }
    .marielco-shop__trigger svg { inline-size: 18px; block-size: 18px; fill: none; stroke: currentColor; stroke-width: 1.25; stroke-linecap: round; stroke-linejoin: round; }
    .marielco-shop__filter-count { color: var(--marielco-text-muted); font-size: 11px; }
    .marielco-shop__count { display: flex; align-items: center; block-size: 16px; margin: 0; padding-inline-start: 18px; border-inline-start: 1px solid #ddd; color: #888; font-size: 12px; line-height: 1.4; letter-spacing: .02em; white-space: nowrap; }
    .marielco-shop__sort { position: relative; flex: 0 0 auto; }
    .marielco-shop__sort summary { display: grid; grid-template-columns: minmax(0, 1fr) 20px; align-items: center; gap: 8px; inline-size: 144px; block-size: 44px; padding: 0; border: 0; list-style: none; cursor: pointer; white-space: nowrap; }
    .marielco-shop__sort[data-shop-sort-order^="price"] summary { inline-size: 176px; }
    .marielco-shop__sort summary::-webkit-details-marker { display: none; }
    .marielco-shop__sort-current { min-inline-size: 0; overflow: hidden; text-overflow: ellipsis; color: #111; font-size: 12px; font-weight: 400; line-height: 1.4; letter-spacing: .07em; text-transform: uppercase; }
    .marielco-shop__sort summary > svg { inline-size: 20px; block-size: 20px; fill: none; stroke: currentColor; stroke-width: 1.25; stroke-linecap: round; stroke-linejoin: round; transition: transform .17s ease; }
    .marielco-shop__sort[open] summary > svg { transform: rotate(180deg); }
    .marielco-shop__sort-options { position: absolute; inset-block-start: calc(100% + 7px); inset-inline-end: 0; inline-size: 238px; max-inline-size: calc(100vw - 2 * var(--marielco-shop-gutter)); padding-block: 5px; border: 1px solid var(--marielco-border-subtle); background: var(--marielco-white); }
    .marielco-shop__sort[open] .marielco-shop__sort-options { animation: marielco-shop-sort-in .15s ease; }
    @keyframes marielco-shop-sort-in { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }
    .marielco-shop__sort-options a { display: flex; align-items: center; min-block-size: 42px; padding-inline: 14px; color: var(--marielco-text-muted); font-size: 12px; letter-spacing: .075em; text-transform: uppercase; text-decoration: none; }
    .marielco-shop__sort-options .marielco-link { --marielco-underline-opacity: 0; }
    .marielco-shop__sort-options a:where(:hover, :focus-visible, [aria-current]) { color: var(--marielco-black); }
    .marielco-shop__sort-options a:where(:hover, :focus-visible, [aria-current]) .marielco-link { --marielco-underline-opacity: 1; }
    .marielco-shop__sort-options [aria-current] { font-weight: 500; }
    .marielco-shop__active { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 20px; min-block-size: 48px; padding: 2px var(--marielco-shop-gutter); }
    .marielco-shop__active a { display: inline-flex; align-items: center; gap: 10px; max-inline-size: 100%; min-block-size: 44px; padding: 0; color: #777; font-size: 11px; line-height: 1.4; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; overflow-wrap: anywhere; transition: color .2s ease; }
    .marielco-shop__active a:where(:hover,:focus-visible) { color: #111; }
    .marielco-shop__active svg { flex: none; inline-size: 14px; block-size: 14px; fill: none; stroke: currentColor; stroke-width: 1.25; }
    .marielco-shop__empty { display: grid; justify-items: center; gap: 1.5rem; padding-block: 5rem 7rem; font-size: var(--marielco-text-small); }
    .marielco-shop__page-links nav { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 1rem; }
    .marielco-shop__page-links .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-inline-size: 2.5rem; min-block-size: var(--marielco-control-height); font-size: var(--marielco-text-small); }
    @media (max-width: 1024px) {
        .marielco-shop__toolbar-start { gap: 15px; }
        .marielco-shop__toolbar-end { gap: 16px; }
    }
    @media (max-width: 834px) {
        .marielco-shop[data-shop-columns] > .marielco-product-grid, .marielco-shop > .marielco-product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
        .marielco-shop[data-shop-columns], .marielco-shop { --marielco-card-title-size: 12px; --marielco-card-price-size: 12px; --marielco-grid-row-gap: 36px; }
        .marielco-shop__density { display: none; }
    }
    @media (max-width: 768px) {
        .marielco-brand__intro { padding-block: 22px 24px; }
        .marielco-brand__eyebrow { margin-block-end: 10px; font-size: 9px; }
        .marielco-brand__intro h1 { font-size: clamp(25px,7.5vw,34px); letter-spacing: .085em; }
        .marielco-brand__description { margin-block-start: 12px; font-size: 11px; }
        .marielco-brand__cover { aspect-ratio: 5/3; }
        .marielco-shop__hero { block-size: auto; aspect-ratio: 25 / 9; }
        .marielco-shop__hero-content { padding: 12px 14px; }
        .marielco-shop__hero-subtitle { margin-block-end: 8px; font-size: 10px; }
        .marielco-shop__hero h1 { font-size: clamp(32px,8.2vw,40px); }
        .marielco-shop__discover { margin-block-start: 12px; padding-block-end: 3px; font-size: 10px; }
        .marielco-shop__intro { padding-block: 22px 12px; }
        .marielco-shop__intro h1 { font-size: 26px; }
        .marielco-shop__breadcrumb { min-block-size: 36px; }
        .marielco-shop__breadcrumb nav { font-size: 10px; }
        .marielco-shop__pagination { padding: 42px 16px 52px; }
        .marielco-shop__load-status, .marielco-shop__load-button { font-size: 11px; }
        .marielco-shop__products-anchor { scroll-margin-block-start: 52px; }
        .marielco-shop { --marielco-card-info-top: 12px; }
        .marielco-shop__toolbar, .marielco-shop__trigger { block-size: 52px; }
        .marielco-shop__trigger { gap: 8px; line-height: 1; letter-spacing: .1em; }
        .marielco-shop__trigger svg { inline-size: 16px; block-size: 16px; }
        .marielco-shop__filter-count { font-size: 11px; }
        .marielco-shop__count { display: none; }
        .marielco-shop__sort summary { inline-size: 168px; grid-template-columns: minmax(0, 1fr) 20px; }
        .marielco-shop__sort[data-shop-sort-order^="price"] summary { inline-size: 168px; }
        .marielco-shop__sort-current { font-size: 12px; letter-spacing: .065em; }
        .marielco-shop__sort summary > svg { inline-size: 20px; block-size: 20px; margin: 0; }
        .marielco-shop__sort-options { inset-block-start: calc(100% + 1px); inline-size: 220px; }
        .marielco-shop__sort-options a { min-block-size: 44px; font-size: 12px; }
        }
    @media (prefers-reduced-motion: reduce) {
        .marielco-shop__breadcrumb a, .marielco-shop__active a { transition: none; }
        .marielco-shop__sort summary > svg { transition: none; }
        .marielco-shop__density button { transition: none; }
        .marielco-shop__sort[open] .marielco-shop__sort-options { animation: none; }
    }
}
