/* Scoped storefront palette. Product miniatures keep the shop theme's styles. */
.acm-front {
    --acm-primary: #a2bf5e;
    --acm-primary-dark: #839c49;
    --acm-text-on-primary: #1b2510;
    --acm-text: #212529;
    --acm-muted: #656b61;
    --acm-border: #e6e8e2;
    --acm-surface: #fff;
    --acm-surface-2: #f7f8f4;
    --acm-yellow: var(--acm-primary);
    --acm-yellow-dk: var(--acm-primary-dark);
    --acm-black: var(--acm-text);
    --acm-radius: 0px;
    --acm-radius-sm: 0px;
    --acm-shadow: 0 2px 8px rgba(0,0,0,.04);
    color: var(--acm-text);
    font-family: inherit;
}
.acm-front.acm-marca { max-width: none; padding: 8px 0 24px; }
.acm-front .acm-marca__header { gap: 20px; margin-bottom: 24px; padding: 20px 0 24px; }
.acm-front .acm-marca__title { font-size: clamp(22px, 2.3vw, 30px); font-weight: 700; letter-spacing: -.02em; }
.acm-front .acm-marca__description { line-height: 1.7; }
.acm-front .acm-marca__logo--fallback { display: inline-flex; align-items: center; justify-content: center; background: var(--acm-surface-2); color: var(--acm-primary-dark); font-size: 32px; font-weight: 600; }
.acm-front .acm-subbrand-rail__head h2 { font-size: 17px; font-weight: 600; }
.acm-front .acm-subbrand-card { background: var(--acm-surface); color: var(--acm-text); box-shadow: none; transition: border-color .2s, background .2s; }
.acm-front .acm-subbrand-card:hover { border-color: var(--acm-primary); background: var(--acm-surface-2); transform: none; }
.acm-front .acm-subbrand-card__name { text-transform: none; font-weight: 600; line-height: 1.5; }
.acm-front .acm-marca__toolbar { padding: 12px; border-block: 1px solid var(--acm-border); background: var(--acm-surface-2); }
.acm-front .acm-filters { padding: 18px; background: var(--acm-surface); border: 1px solid var(--acm-border); border-radius: var(--acm-radius); }
.acm-front .acm-filters__head { border-bottom-width: 3px; padding-bottom: 14px; }
.acm-front .acm-filters__head { gap: 14px; }
.acm-front .acm-filters__reset { margin-left: auto; }
.acm-front.acm-marca--filters-top .acm-filters { display: block; padding: 18px; }
.acm-front.acm-marca--filters-top .acm-filter-groups { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; align-items: stretch; }
.acm-front.acm-marca--filters-top .acm-filter { background: var(--acm-surface-2); padding: 14px; margin: 0; }
.acm-front.acm-marca--filters-top .acm-filter__title { font-size: 12px; line-height: 1.5; margin-bottom: 10px; }
.acm-front.acm-marca--filters-top .acm-filter__list { max-height: 132px; }
.acm-front .acm-filter__price-pill { border-radius: var(--acm-radius-sm); background: var(--acm-surface-2); border-color: var(--acm-border); box-shadow: none; font-weight: 600; }
.acm-front .acm-filter__price-track { background: var(--acm-border); }
.acm-front .acm-filter__price-track-fill { background: var(--acm-primary); box-shadow: none; }
.acm-front .acm-filter__price-dots { display: none; }
.acm-front .acm-filter__input, .acm-front .acm-marca__sort-select { background: var(--acm-surface); color: var(--acm-text); font-family: inherit; }
.acm-front .acm-filter-toggle, .acm-front .acm-btn { font-family: inherit; }
.acm-front .acm-filter-toggle { align-items: center; gap: 8px; border-radius: var(--acm-radius-sm); }
.acm-front .acm-no-products { background: var(--acm-surface-2); }
.acm-front .acm-no-products > .acm-icon { width: 40px; height: 40px; color: var(--acm-muted); margin-bottom: 12px; }
.acm-front .acm-icon { display: inline-block; width: 20px; height: 20px; flex: 0 0 auto; vertical-align: middle; }
.acm-front .acm-pagination__link { font-family: inherit; }
.acm-front .acm-pagination__link--active { font-weight: 700; }
.acm-front .acm-btn--primary, .acm-front #products .acm-pagination__link--active,
.acm-front #products .acm-pagination__link:hover { color: var(--acm-text-on-primary); background: var(--acm-primary); border-color: var(--acm-primary); }
.acm-front .acm-btn--primary:hover { color: var(--acm-text-on-primary); background: var(--acm-primary-dark); border-color: var(--acm-primary-dark); }
.acm-front :is(button, a, input, select):focus-visible { outline: 2px solid var(--acm-primary-dark); outline-offset: 3px; }
.acm-front .acm-manufacturers-grid__item { border-radius: var(--acm-radius); border-color: var(--acm-border); background: var(--acm-surface); color: var(--acm-text); box-shadow: none; }
.acm-front .acm-manufacturers-grid__item:hover { border-color: var(--acm-primary); transform: none; box-shadow: inset 0 -3px var(--acm-primary); }
.acm-front .acm-manufacturers-grid__image { background: var(--acm-surface); padding: 20px; aspect-ratio: 5/3; }
.acm-front .acm-manufacturers-grid__monogram { font-family: inherit; font-size: 38px; font-weight: 600; letter-spacing: -.03em; color: var(--acm-primary-dark); }
.acm-front .acm-manufacturers-grid__info { border-color: var(--acm-border); background: var(--acm-surface-2); padding: 16px 12px; }
.acm-front .acm-manufacturers-grid__name { color: var(--acm-text); font-family: inherit; font-size: 13px; font-weight: 600; line-height: 1.5; }
.acm-front .acm-manufacturers-grid__count, .acm-front .acm-manufacturers-empty { color: var(--acm-muted); }
.acm-front .amarillo-machine-slide a { background: var(--acm-surface); border: 1px solid var(--acm-border); border-radius: var(--acm-radius); box-shadow: none; }
.acm-front .amarillo-machine-slide a:hover { border-color: var(--acm-primary); }
.acm-front .amarillo-machine-slide h3 { color: var(--acm-text); font-family: inherit; text-transform: none; }
.acm-front .amarillo-machine-prev, .acm-front .amarillo-machine-next { background: var(--acm-surface); color: var(--acm-text); border: 1px solid var(--acm-border); border-radius: var(--acm-radius-sm); box-shadow: none; }
.acm-front .amarillo-machine-prev:hover, .acm-front .amarillo-machine-next:hover { background: var(--acm-primary); color: var(--acm-text-on-primary); }
.acm-front .acm-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px 20px; margin-inline: 0; }
.acm-front .acm-product-grid > .js-product-miniature-wrapper { width: 100%; max-width: 100%; padding-inline: 0; margin-bottom: 0; }
@media (min-width: 1200px) { .acm-front.acm-marca--filters-top .acm-product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 767px) { .acm-front .acm-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 12px; } }
@media (max-width: 359px) { .acm-front .acm-product-grid { grid-template-columns: minmax(0, 1fr); } }
@media (min-width: 1025px) { .acm-front.acm-marca--filters-sidebar .acm-marca__layout { grid-template-columns: 252px minmax(0, 1fr); } }
@media (max-width: 1024px) { .acm-front.acm-marca--filters-sidebar .acm-marca__layout { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 1024px) {
    .acm-front.acm-marca--filters-top .acm-filter-groups { display: block; }
    .acm-front.acm-marca--filters-top .acm-filter { background: transparent; padding: 14px 0; border: 0; border-bottom: 1px solid var(--acm-border); }
    .acm-front.acm-marca--filters-top .acm-filter__list { max-height: 180px; }
}
@media (max-width: 600px) { .acm-front .acm-marca__header { gap: 14px; } .acm-front .acm-marca__logo { width: 70px; height: 70px; } .acm-front .acm-pagination { flex-wrap: wrap; } }
@media (prefers-reduced-motion: reduce) { .acm-front *, .acm-front *::before, .acm-front *::after { scroll-behavior: auto !important; transition: none !important; } }
