.commerce-home {
    min-height: 100vh;
    background: #dedede;
    color: #101114;
    font-family: "Roboto Condensed", "Arial Narrow", Roboto, Arial, sans-serif;
    letter-spacing: 0;
    overflow-x: hidden;
}

.commerce-home * {
    box-sizing: border-box;
}

.commerce-home a,
.commerce-home button,
.commerce-home input,
.commerce-home select,
.commerce-home textarea {
    font: inherit;
}

.commerce-home button {
    cursor: pointer;
}

.commerce-preview-bar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1600;
    padding: 10px 16px;
    background: #111;
    color: #fff;
    text-align: center;
}

.commerce-preview-bar a {
    color: #ffd000;
    font-weight: 800;
    margin-left: 10px;
}

.commerce-sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.commerce-header {
    position: sticky;
    top: 0;
    z-index: 1200;
    display: grid;
    grid-template-columns: 110px 250px minmax(280px, 1fr) auto 40px auto 58px;
    align-items: center;
    gap: 10px;
    min-height: 64px;
    padding: 6px 32px;
    background: #ffd000;
    box-shadow: 0 1px 0 rgba(0, 0, 0, .08);
}

.commerce-menu-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    height: 44px;
    border: 0;
    border-radius: 5px;
    background: rgba(255, 255, 255, .55);
    color: #111;
    font-size: 17px;
    font-weight: 900;
}

.commerce-menu-button i {
    font-size: 20px;
}

.commerce-menu-button {
    transition: background-color .2s ease, box-shadow .2s ease, color .2s ease;
}

.commerce-menu-button:hover,
.commerce-menu-button:focus-visible,
.commerce-menu-button[aria-expanded="true"] {
    background: #fff;
    box-shadow: 0 0 0 3px rgba(17, 17, 17, .12);
    outline: 0;
}

.commerce-menu-button[aria-expanded="true"] i::before {
    content: "\f00d";
}

.commerce-smart-menu-backdrop {
    position: fixed;
    inset: 0;
    z-index: 1490;
    visibility: hidden;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: rgba(10, 12, 16, .58);
    opacity: 0;
    cursor: default;
    backdrop-filter: blur(3px);
    transition: opacity .24s ease, visibility 0s linear .24s;
}

.commerce-smart-menu {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 1500;
    display: grid;
    grid-template-rows: auto auto auto minmax(0, 1fr) auto;
    width: min(460px, calc(100vw - 32px));
    height: 100vh;
    height: 100dvh;
    overflow: hidden;
    border-right: 1px solid rgba(17, 17, 17, .08);
    background: #f6f7f9;
    box-shadow: 24px 0 70px rgba(0, 0, 0, .25);
    transform: translateX(-102%);
    transition: transform .28s cubic-bezier(.22, .8, .25, 1);
}

.commerce-home.is-smart-menu-open .commerce-smart-menu-backdrop {
    visibility: visible;
    opacity: 1;
    transition-delay: 0s;
}

.commerce-home.is-smart-menu-open .commerce-smart-menu {
    transform: translateX(0);
}

.commerce-smart-menu-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding: max(24px, env(safe-area-inset-top)) 24px 20px;
    background: #111318;
    color: #fff;
}

.commerce-smart-menu-header span {
    display: block;
    margin-bottom: 4px;
    color: #ffd000;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.commerce-smart-menu-header h2 {
    margin: 0;
    color: #fff;
    font-size: 27px;
    font-weight: 950;
    line-height: 1.1;
}

.commerce-smart-menu-header p {
    margin: 7px 0 0;
    color: rgba(255, 255, 255, .68);
    font-size: 14px;
    font-weight: 700;
}

.commerce-smart-menu-header button {
    display: grid;
    flex: 0 0 44px;
    place-items: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 50%;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    font-size: 19px;
}

.commerce-smart-menu-header button:hover,
.commerce-smart-menu-header button:focus-visible {
    border-color: #ffd000;
    color: #ffd000;
    outline: 3px solid rgba(255, 208, 0, .22);
    outline-offset: 2px;
}

.commerce-smart-menu-search {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) 18px;
    align-items: center;
    gap: 12px;
    min-height: 72px;
    margin: 16px 18px 10px;
    padding: 10px 14px;
    border: 1px solid #e0c000;
    border-radius: 12px;
    background: #fff4b8;
    color: #171717;
    text-align: left;
}

.commerce-smart-menu-search > i:first-child {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: #ffd000;
    color: #111;
    font-size: 19px;
}

.commerce-smart-menu-search > i:last-child {
    color: #765f00;
    font-size: 18px;
}

.commerce-smart-menu-search span,
.commerce-smart-menu-footer span,
.commerce-smart-menu-category-list button span {
    display: grid;
    min-width: 0;
    gap: 3px;
}

.commerce-smart-menu-search strong,
.commerce-smart-menu-footer strong,
.commerce-smart-menu-category-list strong {
    overflow: hidden;
    font-size: 15px;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.commerce-smart-menu-search small,
.commerce-smart-menu-footer small,
.commerce-smart-menu-category-list small {
    color: #6c7179;
    font-size: 12px;
    font-weight: 700;
}

.commerce-smart-menu-search:hover,
.commerce-smart-menu-search:focus-visible {
    border-color: #111;
    box-shadow: 0 0 0 3px rgba(255, 208, 0, .35);
    outline: 0;
}

.commerce-smart-menu-nav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 7px;
    padding: 8px 18px 17px;
    border-bottom: 1px solid #dfe2e7;
}

.commerce-smart-menu-nav a,
.commerce-smart-menu-nav button {
    display: grid;
    place-items: center;
    gap: 6px;
    min-height: 66px;
    padding: 8px 4px;
    border: 1px solid #e0e3e8;
    border-radius: 10px;
    background: #fff;
    color: #25282e;
    font-size: 11px;
    font-weight: 850;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
}

.commerce-smart-menu-nav a i,
.commerce-smart-menu-nav button i {
    color: #e31b23;
    font-size: 19px;
}

.commerce-smart-menu-nav a:hover,
.commerce-smart-menu-nav a:focus-visible,
.commerce-smart-menu-nav button:hover,
.commerce-smart-menu-nav button:focus-visible {
    border-color: #ffd000;
    background: #fff9dc;
    color: #111;
    outline: 2px solid rgba(255, 208, 0, .3);
    outline-offset: 1px;
}

.commerce-smart-menu-categories {
    min-height: 0;
    padding: 17px 18px 12px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
}

.commerce-smart-menu-section-title {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 11px;
}

.commerce-smart-menu-section-title h3 {
    margin: 0;
    color: #25282e;
    font-size: 16px;
    font-weight: 950;
}

.commerce-smart-menu-section-title span {
    color: #7b8088;
    font-size: 10px;
    font-weight: 800;
    text-align: right;
}

.commerce-smart-menu-category-list {
    display: grid;
    gap: 7px;
}

.commerce-smart-menu-category-list button {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) 20px;
    align-items: center;
    gap: 11px;
    width: 100%;
    min-height: 58px;
    padding: 8px 12px;
    border: 1px solid transparent;
    border-radius: 10px;
    background: #fff;
    color: #30333a;
    text-align: left;
}

.commerce-smart-menu-category-list button > i:first-child {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    border-radius: 9px;
    background: #f1f2f5;
    color: #e31b23;
    font-size: 18px;
}

.commerce-smart-menu-category-list button > i:last-child {
    visibility: hidden;
    color: #137a3d;
}

.commerce-smart-menu-category-list button:hover,
.commerce-smart-menu-category-list button:focus-visible,
.commerce-smart-menu-category-list button.is-active {
    border-color: #e0c000;
    background: #fff9dc;
    outline: 0;
}

.commerce-smart-menu-category-list button.is-active > i:first-child {
    background: #ffd000;
    color: #111;
}

.commerce-smart-menu-category-list button.is-active > i:last-child {
    visibility: visible;
}

.commerce-smart-menu-footer {
    padding: 12px 18px max(16px, env(safe-area-inset-bottom));
    border-top: 1px solid #dfe2e7;
    background: #fff;
}

.commerce-smart-menu-footer a {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) 18px;
    align-items: center;
    gap: 12px;
    min-height: 58px;
    padding: 7px 10px;
    border-radius: 10px;
    color: #22252b;
    text-decoration: none;
}

.commerce-smart-menu-profile-avatar,
.commerce-smart-menu-footer a > i:first-child {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #111318;
    color: #ffd000;
    font-size: 19px;
    object-fit: cover;
}

.commerce-smart-menu-footer a > i:last-child {
    color: #858b94;
    font-size: 18px;
    text-align: right;
}

.commerce-smart-menu-footer a:hover,
.commerce-smart-menu-footer a:focus-visible {
    background: #f1f2f5;
    outline: 2px solid #ffd000;
}

.commerce-menu-button i,
.commerce-section-heading i,
.commerce-icon-button,
.commerce-cart-button {
    color: #ff1010;
}

.commerce-brand {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    min-width: 0;
    height: 44px;
    line-height: 1;
    text-decoration: none;
}

.commerce-brand:hover,
.commerce-brand:focus {
    text-decoration: none;
}

.commerce-brand-logo {
    display: block;
    width: auto;
    max-width: 210px;
    height: 34px;
    object-fit: contain;
}

.commerce-brand-logo--mobile {
    display: none;
}

.commerce-header-search {
    display: grid;
    grid-template-columns: 33px minmax(0, 1fr) 34px 34px;
    align-items: center;
    height: 50px;
    margin: 0;
    border-radius: 5px;
    background: #fff;
    color: #6f7884;
}

.commerce-header-search .fa-search {
    color: #ff1010;
    font-size: 24px;
    text-align: center;
}

.commerce-header-search .fa-camera {
    color: #6f7884;
    font-size: 21px;
    text-align: center;
}

.commerce-header-search button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 2px solid #ff1010;
    border-radius: 50%;
    background: #fff;
    color: #ff1010;
    font-size: 15px;
}

.commerce-header-search button[hidden] {
    display: none;
}

.commerce-header-search input {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    color: #1d2229;
    font-size: 17px;
    font-weight: 500;
}

.commerce-header-search input::placeholder {
    color: #737d89;
}

.commerce-tax-switch {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    white-space: nowrap;
    font-size: 15px;
    font-weight: 800;
}

.commerce-tax-switch span:first-child {
    color: rgba(20, 20, 20, .45);
}

.commerce-tax-switch strong {
    position: relative;
    width: 45px;
    height: 15px;
    border-radius: 999px;
    background: rgba(0, 0, 0, .28);
    box-shadow: inset 0 0 0 2px rgba(0, 0, 0, .12);
}

.commerce-tax-switch strong::after {
    content: "";
    position: absolute;
    top: -7px;
    right: -1px;
    width: 29px;
    height: 29px;
    border-radius: 999px;
    background: #000;
}

.commerce-icon-button,
.commerce-user-button,
.commerce-cart-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background: transparent;
    text-decoration: none;
}

.commerce-participation { position: relative; }
.commerce-participation summary { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 42px; padding: 0 12px; color: #111; background: rgba(255, 255, 255, .62); border: 1px solid rgba(0, 0, 0, .12); border-radius: 999px; font-size: 14px; font-weight: 900; cursor: pointer; list-style: none; }
.commerce-participation summary::-webkit-details-marker { display: none; }
.commerce-participation summary > i:first-child { color: #ff1010; font-size: 18px; }
.commerce-participation summary > i:last-child { font-size: 13px; transition: transform .18s ease; }
.commerce-participation[open] summary > i:last-child { transform: rotate(180deg); }
.commerce-participation summary:focus-visible { outline: 3px solid rgba(0, 0, 0, .35); outline-offset: 2px; }
.commerce-participation-avatar { display: block; width: 32px; height: 32px; border: 2px solid rgba(0, 0, 0, .15); border-radius: 50%; background: #fff1ad; object-fit: cover; }
.commerce-profile-initials { display: grid; place-items: center; background: linear-gradient(135deg, #23262d, #505865); color: #ffd000; font-size: 13px; font-weight: 950; letter-spacing: .02em; line-height: 1; }
.commerce-smart-menu-profile-avatar.commerce-profile-initials { font-size: 16px; }
.commerce-participation-menu { position: absolute; top: calc(100% + 8px); right: 0; z-index: 1210; display: grid; min-width: 205px; padding: 7px; background: #161616; border-radius: 12px; box-shadow: 0 16px 34px rgba(0, 0, 0, .28); }
.commerce-participation-menu a { display: flex; align-items: center; gap: 10px; min-height: 40px; padding: 8px 10px; color: #fff; border-radius: 8px; font-size: 14px; font-weight: 800; text-decoration: none; }
.commerce-participation-menu a:hover, .commerce-participation-menu a:focus-visible { color: #fff; background: rgba(255, 255, 255, .13); outline: none; }
.commerce-participation-menu i { width: 16px; color: #ffd000; text-align: center; }

.commerce-icon-button {
    width: 40px;
    height: 40px;
    color: #111;
    font-size: 25px;
}

.commerce-user-button {
    width: 49px;
    height: 49px;
    border-radius: 50%;
    background: #000;
    color: #8d8d8d;
    font-size: 25px;
    overflow: hidden;
}

.commerce-user-button:hover,
.commerce-user-button:focus {
    color: #fff;
    text-decoration: none;
}

.commerce-user-button img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
}

.commerce-cart-button {
    position: relative;
    width: 64px;
    height: 52px;
    color: #101114;
    font-size: 42px;
    overflow: visible;
}

.commerce-cart-button span {
    position: absolute;
    top: -8px;
    right: -7px;
    min-width: 34px;
    height: 34px;
    padding: 0 9px;
    border-radius: 999px;
    background: #ff1010;
    color: #fff;
    font-size: 17px;
    font-weight: 900;
    line-height: 34px;
    text-align: center;
}

.commerce-cart-button span:empty,
.commerce-cart-button span.is-empty {
    display: none;
}

.commerce-categories-shell {
    display: block;
    padding: 30px 11px 22px;
    background: #dedede;
}

.commerce-categories {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 168px;
    gap: 12px;
    overflow-x: auto;
    scrollbar-width: none;
}

.commerce-categories::-webkit-scrollbar {
    display: none;
}

.commerce-categories button {
    display: grid;
    place-items: center;
    align-content: center;
    gap: 8px;
    min-height: 167px;
    padding: 18px 14px;
    border: 0;
    border-radius: 8px;
    background: #f8f8f8;
    color: #1c1c1c;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.32;
    text-align: center;
}

.commerce-categories button img {
    width: 68px;
    height: 68px;
    object-fit: contain;
    border-radius: 10px;
    background: #fff;
}

.commerce-categories button small { color: var(--shop-muted, #777); font-size: 13px; font-weight: 700; }

.commerce-product-card.is-featured-product-target { outline: 3px solid var(--shop-primary, #ffd000); outline-offset: 3px; }

.commerce-categories button.is-active,
.commerce-categories button:hover {
    background: #fff;
    box-shadow: inset 0 0 0 2px rgba(255, 16, 16, .18);
}

.commerce-hero {
    position: relative;
    min-height: 506px;
    margin: 0 11px 15px;
    overflow: hidden;
    border-radius: 8px;
}

.commerce-hero-brand {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    gap: 22px;
    width: 34%;
    min-width: 430px;
    height: 124px;
    padding: 26px 44px;
    border-bottom-right-radius: 44px;
    background: #fff;
    color: #111;
}

.commerce-hero-brand strong {
    font-family: "Arial Black", Impact, sans-serif;
    font-size: 28px;
    font-style: italic;
    text-transform: uppercase;
}

.commerce-hero-brand span {
    font-size: 18px;
    font-weight: 900;
}

.commerce-hero-content {
    position: absolute;
    left: 124px;
    bottom: 118px;
    max-width: 620px;
    color: #fff;
}

.commerce-hero h1 {
    margin: 0 0 13px;
    color: #fff;
    font-size: 61px;
    font-weight: 900;
    line-height: .98;
}

.commerce-hero p {
    max-width: 570px;
    margin: 0;
    color: #fff;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.12;
}

.commerce-hero-cta {
    position: absolute;
    right: 86px;
    top: 212px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    min-width: 486px;
    min-height: 70px;
    padding: 12px 30px;
    border-radius: 4px;
    background: #ff1010;
    color: #fff;
    font-size: 35px;
    font-weight: 900;
    text-decoration: none;
}

.commerce-hero-cta:hover,
.commerce-hero-cta:focus {
    color: #fff;
    filter: brightness(.96);
    text-decoration: none;
}

.commerce-hero-nav {
    position: absolute;
    bottom: 38px;
    width: 56px;
    height: 56px;
    border: 0;
    background: transparent;
    color: #fff;
    font-size: 48px;
}

.commerce-hero-nav-prev {
    left: 47px;
}

.commerce-hero-nav-next {
    right: 47px;
}

.commerce-hero-dots {
    position: absolute;
    left: 50%;
    bottom: 46px;
    display: flex;
    gap: 12px;
    transform: translateX(-50%);
}

.commerce-hero-dots span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #fff;
}

.commerce-hero-dots span:first-child {
    width: 44px;
    border-radius: 999px;
}

.commerce-products-section {
    position: relative;
    padding: 0 6px 18px;
    background: #dedede;
}

.commerce-products-section + .commerce-products-section {
    padding-top: 8px;
}

.commerce-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
}

.commerce-section-heading {
    min-width: 0;
}

.commerce-section-heading h2 {
    margin: 0;
    color: #17191d;
    font-size: 25px;
    font-weight: 900;
    line-height: 1;
    overflow-wrap: anywhere;
}

.commerce-section-heading i {
    margin-right: 8px;
    font-size: 25px;
}

.commerce-tools {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 8px;
}

.commerce-tools a {
    color: #141414;
    font-size: 17px;
    font-weight: 800;
    white-space: nowrap;
    text-decoration: underline;
}

.commerce-tools select {
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.commerce-product-grid {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 48px) / 5);
    gap: 12px;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 6px;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
    user-select: none;
}

.commerce-product-grid::-webkit-scrollbar {
    display: none;
}

.commerce-row-scroll {
    position: absolute;
    top: 54%;
    z-index: 5;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 64px;
    border: 1px solid rgba(255, 255, 255, .58);
    border-radius: 999px;
    background: rgba(17, 17, 17, .34);
    color: #fff;
    font-size: 34px;
    opacity: .86;
    transform: translateY(-50%);
    transition: opacity .16s ease, background .16s ease, transform .16s ease;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    box-shadow: 0 12px 28px rgba(0, 0, 0, .18);
}

.commerce-row-scroll:hover,
.commerce-row-scroll:focus {
    background: rgba(17, 17, 17, .52);
    opacity: 1;
    transform: translateY(-50%) scale(1.04);
}

.commerce-row-scroll--prev {
    left: 14px;
}

.commerce-row-scroll--next {
    right: 14px;
}

.commerce-row-scroll.is-hidden {
    opacity: 0;
    pointer-events: none;
}

.commerce-product-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 452px;
    border-radius: 7px;
    background: #fff;
    cursor: pointer;
    overflow: hidden;
    scroll-snap-align: start;
}

.commerce-product-media {
    position: relative;
    height: 188px;
    background: #fff;
}

.commerce-product-media img {
    width: 100%;
    height: 100%;
    padding: 14px 24px 4px;
    object-fit: contain;
}

.commerce-product-media span {
    position: absolute;
    top: 22px;
    left: 22px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 35px;
    padding: 0 10px;
    border-radius: 5px;
    background: #ffd000;
    color: #111;
    font-size: 19px;
    font-weight: 900;
}

.commerce-product-media span i {
    color: #ff1010;
}

.commerce-product-media .commerce-card-badge--new {
    right: 32px;
    left: auto;
    background: #0d0d0d;
    color: #ffd000;
}

.commerce-product-media button {
    position: absolute;
    right: 22px;
    bottom: 11px;
    width: 36px;
    height: 36px;
    border: 0;
    background: transparent;
    color: #ff1010;
    font-size: 29px;
}

.commerce-product-media button.is-active i::before {
    content: "\f004";
}

.commerce-product-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 0 16px 16px;
}

.commerce-product-body h3 {
    min-height: 66px;
    margin: 0 0 13px;
    color: #141414;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.24;
}

.commerce-product-body p {
    min-height: 45px;
    margin: 0 0 14px;
    color: #8a8a8a;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.25;
}

.commerce-read-more {
    align-self: flex-start;
    min-height: 26px;
    margin: -6px 0 8px;
    border: 0;
    background: transparent;
    color: #ff1010;
    font-size: 13px;
    font-weight: 900;
}

.commerce-product-code {
    margin-top: auto;
    color: #171717;
    font-size: 15px;
    font-weight: 900;
}

.commerce-stock {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr);
    column-gap: 5px;
    margin-top: 13px;
    color: #32ad3c;
}

.commerce-stock i {
    grid-row: span 2;
    font-size: 18px;
}

.commerce-stock strong {
    font-size: 16px;
    line-height: 1;
}

.commerce-stock span {
    font-size: 14px;
    font-weight: 800;
}

.commerce-product-footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 14px;
}

.commerce-product-actions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    min-width: 50px;
    max-width: 100%;
}

.commerce-price-block {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 5px;
    min-width: 0;
    color: #ff1010;
}

.commerce-price-block strong {
    font-size: 23px;
    font-weight: 900;
}

.commerce-price-block span {
    font-size: 14px;
}

.commerce-price-block del {
    flex-basis: 100%;
    color: #8e8e8e;
    font-size: 14px;
}

.commerce-product-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    width: 50px;
    height: 50px;
    border: 0;
    border-radius: 5px;
    background: #ff1010;
    color: #fff;
    font-size: 28px;
    transition: background .18s ease, box-shadow .18s ease, transform .18s ease, width .18s ease;
}

.commerce-product-actions button:hover {
    transform: translateY(-1px);
}

.commerce-product-actions button span {
    display: none;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    text-transform: uppercase;
}

.commerce-product-card.is-in-cart {
    border-color: rgba(38, 166, 91, .42);
    box-shadow: 0 18px 40px rgba(33, 33, 33, .14), 0 0 0 2px rgba(38, 166, 91, .12);
}

.commerce-product-card.is-in-cart .commerce-product-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(92px, auto);
    flex: 1 0 100%;
    width: 100%;
}

.commerce-product-actions button.is-in-cart {
    width: 100%;
    min-width: 0;
    background: #22a05a;
    box-shadow: 0 12px 24px rgba(34, 160, 90, .26);
    font-size: 15px;
}

.commerce-product-actions button.is-in-cart span {
    display: inline;
}

.commerce-card-qty {
    display: inline-grid;
    grid-template-columns: 32px minmax(28px, auto) 32px;
    align-items: center;
    justify-items: center;
    min-width: 92px;
    max-width: 112px;
    height: 50px;
    border: 2px solid rgba(34, 160, 90, .2);
    border-radius: 5px;
    background: #f2fbf6;
    color: #166b3c;
    overflow: hidden;
}

.commerce-card-qty[hidden] {
    display: none;
}

.commerce-card-qty button {
    width: 32px;
    height: 50px;
    border-radius: 0;
    background: transparent;
    color: #166b3c;
    box-shadow: none;
    font-size: 15px;
}

.commerce-card-qty button:hover {
    background: rgba(34, 160, 90, .12);
    transform: none;
}

.commerce-card-qty strong {
    min-width: 30px;
    font-size: 18px;
    font-weight: 900;
    text-align: center;
}

.commerce-empty {
    margin: 22px 0 0;
    color: #555;
    font-size: 18px;
    font-weight: 800;
}

.commerce-search-results {
    min-height: calc(100vh - 64px);
    padding: 34px 14px 30px;
    background: #dedede;
}

.commerce-search-title {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px;
    margin-bottom: 32px;
}

.commerce-search-title h1 {
    margin: 0;
    color: #17191d;
    font-size: 27px;
    font-weight: 800;
    line-height: 1.1;
    text-align: center;
}

.commerce-search-title h1 i {
    margin-right: 8px;
    color: #ff1010;
    font-size: 30px;
}

.commerce-search-title h1 strong {
    font-weight: 900;
}

.commerce-search-title button,
.commerce-search-reset {
    border: 0;
    background: transparent;
    color: #111;
    font-size: 15px;
    font-weight: 900;
    text-decoration: underline;
}

.commerce-search-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 22px;
}

.commerce-search-summary p {
    margin: 0;
    color: #8a8a8a;
    font-size: 17px;
    font-weight: 700;
}

.commerce-search-summary p strong {
    color: #777;
    font-weight: 900;
}

.commerce-search-summary p span {
    margin-left: 8px;
    color: #ff1010;
    font-size: 14px;
    font-weight: 900;
}

.commerce-search-actions {
    display: flex;
    align-items: center;
    gap: 22px;
}

.commerce-search-actions label {
    display: block;
    align-items: center;
    margin: 0;
    color: #ff1010;
    font-size: 17px;
    font-weight: 900;
}

.commerce-search-actions select {
    height: 58px;
    border: 0;
    border-radius: 5px;
    background: #fff;
    color: #242424;
    font-size: 17px;
    font-weight: 700;
    padding: 0 42px 0 14px;
}

.commerce-search-filter-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 58px;
    border: 0;
    border-radius: 8px;
    background: #f7f7f7;
    color: #ff1010;
    font-size: 28px;
}

.commerce-search-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    align-items: start;
    gap: 14px;
}

.commerce-search-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    justify-content: start;
    align-items: stretch;
    gap: 14px;
}

.commerce-search-grid .commerce-product-card {
    min-height: 640px;
}

.commerce-search-grid .commerce-product-media {
    height: 290px;
}

.commerce-search-filters {
    position: sticky;
    top: 88px;
    max-height: calc(100vh - 105px);
    overflow-y: auto;
    padding: 22px 20px;
    border-radius: 5px;
    background: #f7f7f7;
    scrollbar-gutter: stable;
}

.commerce-search-filter-head {
    display: none;
}

.commerce-search-filters fieldset {
    display: grid;
    gap: 16px;
    margin: 0;
    padding: 0 0 24px;
    border: 0;
    border-bottom: 1px dashed #c7c7c7;
}

.commerce-search-filters fieldset + fieldset {
    padding-top: 22px;
}

.commerce-search-filters legend {
    width: 100%;
    margin: 0;
    padding: 0;
    color: #ff1010;
    font-size: 17px;
    font-weight: 900;
    letter-spacing: .04em;
}

.commerce-price-filter {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.commerce-price-filter label {
    display: grid;
    gap: 6px;
    margin: 0;
    color: #666;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.commerce-price-filter input {
    width: 100%;
    height: 44px;
    border: 1px solid #d6d6d6;
    border-radius: 5px;
    background: #fff;
    color: #111;
    font-size: 15px;
    font-weight: 800;
    padding: 0 10px;
}

.commerce-filter-list {
    display: grid;
    gap: 10px;
}

.commerce-filter-check {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 28px;
    align-items: center;
    gap: 12px;
    margin: 0;
    color: #222;
    font-size: 14px;
    font-weight: 700;
}

.commerce-filter-check small {
    color: #777;
    font-size: 13px;
}

.commerce-filter-check input {
    width: 25px;
    height: 25px;
    accent-color: #ff1010;
}

.commerce-search-reset {
    justify-self: start;
    margin-top: 22px;
    color: #ff1010;
}

.commerce-search-empty {
    margin: 28px 0 0;
    padding: 28px;
    border-radius: 8px;
    background: #fff;
    color: #777;
    font-size: 17px;
    font-weight: 800;
    text-align: center;
}

.commerce-checkout-strip {
    display: none;
}

.commerce-footer {
    background: #f3f3f3;
    color: #4b4b4b;
}

.commerce-footer-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin: 0 10px;
    min-height: 104px;
    padding: 16px 18px;
    border-radius: 5px;
    background: #0d0d0d;
}

.commerce-footer-contact,
.commerce-footer-adm {
    display: flex;
    align-items: center;
    gap: 16px;
}

.commerce-footer-contact a,
.commerce-footer-contact button {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    min-height: 54px;
    padding: 0 23px;
    border: 0;
    border-radius: 7px;
    background: #ffd000;
    color: #101010;
    font-size: 22px;
    font-weight: 800;
    text-decoration: none;
}

.commerce-footer-contact a span,
.commerce-footer-contact button span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.commerce-footer-contact i {
    color: #ff1010;
    font-size: 28px;
}

.commerce-footer-adm {
    justify-content: flex-end;
    color: #fff;
    font-weight: 900;
}

.commerce-footer-adm strong {
    color: #ffd000;
    font-size: 27px;
    line-height: 1;
}

.commerce-footer-adm span {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    color: #f5f5f5;
    font-family: Arial, sans-serif;
    font-size: 16px;
    font-weight: 900;
}

.commerce-footer-main {
    display: grid;
    grid-template-columns: minmax(320px, 2.2fr) repeat(4, minmax(150px, 1fr));
    gap: 56px;
    padding: 34px 10px 28px;
}

.commerce-footer-brand > a {
    display: inline-flex;
    align-items: center;
    max-width: 260px;
    text-decoration: none;
}

.commerce-footer-brand > a img {
    display: block;
    width: 100%;
    max-width: 250px;
    height: 52px;
    object-fit: contain;
    object-position: left center;
}

.commerce-footer-brand > span {
    margin-left: 12px;
    color: #ff1010;
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
}

.commerce-footer-social {
    display: flex;
    gap: 25px;
    margin: 36px 0 31px;
}

.commerce-footer-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 33px;
    height: 33px;
    border-radius: 5px;
    background: #1d7bd4;
    color: #fff;
    font-size: 22px;
    text-decoration: none;
}

.commerce-footer-social a:nth-child(2) { background: #ee4d78; }
.commerce-footer-social a:nth-child(3) { background: #f21b1b; }
.commerce-footer-social a:nth-child(4) { background: #1f6fb4; }
.commerce-footer-social a:nth-child(5) { background: #289cde; }

.commerce-footer-brand strong {
    display: block;
    margin-bottom: 12px;
    color: #4a4a4a;
    font-size: 18px;
    font-weight: 900;
}

.commerce-footer-brand p {
    margin: 0 0 14px;
    color: #555;
    font-size: 16px;
    font-weight: 700;
}

.commerce-footer-brand small {
    display: block;
    max-width: 780px;
    color: #8a8a8a;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
}

.commerce-footer-col {
    display: grid;
    align-content: start;
    gap: 13px;
}

.commerce-footer-col h3 {
    margin: 0 0 12px;
    color: #ff1010;
    font-size: 18px;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.commerce-footer-col h3:not(:first-child) {
    margin-top: 25px;
}

.commerce-footer-col a {
    color: #4d4d4d;
    font-size: 17px;
    font-weight: 700;
    text-decoration: none;
}

.commerce-footer-col button {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 224px;
    min-height: 50px;
    padding: 0 14px;
    border: 1px solid #d7d7d7;
    border-radius: 6px;
    background: #fff;
    color: #4d4d4d;
    font-size: 17px;
    font-weight: 700;
}

.commerce-footer-col button i {
    color: #ff1010;
    font-size: 22px;
}

.commerce-cart-toast {
    position: fixed;
    top: 86px;
    left: 50%;
    z-index: 1700;
    display: grid;
    grid-template-columns: 104px minmax(0, 1fr) 34px;
    align-items: center;
    gap: 20px;
    width: min(680px, calc(100vw - 28px));
    min-height: 118px;
    padding: 18px 20px;
    border-radius: 6px 6px 0 0;
    border-bottom: 6px solid #0f7f1d;
    background: #39a83c;
    color: #fff;
    box-shadow: 0 12px 26px rgba(0, 0, 0, .18);
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, -12px);
    transition: opacity .18s ease, transform .18s ease;
}

.commerce-cart-toast[hidden] {
    display: none;
}

.commerce-cart-toast.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translate(-50%, 0);
}

.commerce-cart-toast img {
    width: 104px;
    height: 82px;
    padding: 8px;
    border-radius: 6px;
    background: #fff;
    object-fit: contain;
}

.commerce-cart-toast strong,
.commerce-cart-toast span {
    display: block;
}

.commerce-cart-toast strong {
    margin-bottom: 10px;
    font-size: 34px;
    font-weight: 500;
    line-height: 1;
}

.commerce-cart-toast span {
    font-size: 27px;
    font-weight: 500;
    line-height: 1.28;
}

.commerce-cart-toast span button {
    border: 0;
    padding: 0;
    background: transparent;
    color: #050505;
    font-weight: 900;
    text-decoration: underline;
}

.commerce-cart-toast > button {
    align-self: start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 3px solid #fff;
    border-radius: 50%;
    background: transparent;
    color: #fff;
    font-size: 20px;
}

.commerce-scroll-top {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 1300;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 50%;
    background: rgba(24, 24, 24, .72);
    color: #fff;
    font-size: 31px;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255, 255, 255, .12);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    opacity: 0;
    pointer-events: none;
    transform: translateY(12px) scale(.94);
    transition: opacity .18s ease, transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.commerce-scroll-top:hover,
.commerce-scroll-top:focus {
    background: rgba(17, 17, 17, .84);
    color: #fff;
    box-shadow: 0 13px 28px rgba(0, 0, 0, .26), inset 0 1px 0 rgba(255, 255, 255, .16);
}

.commerce-scroll-top.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0) scale(1);
}

.commerce-scroll-top[hidden] {
    display: none;
}

.commerce-cart-drawer {
    position: fixed;
    inset: 0;
    z-index: 1500;
    display: none;
    background: linear-gradient(90deg, rgba(0, 0, 0, .58) 0%, rgba(0, 0, 0, .48) 63%, rgba(0, 0, 0, 0) 100%);
}

.commerce-cart-drawer.is-open {
    display: block;
}

.commerce-cart-panel {
    margin-left: auto;
    width: min(100%, 600px);
    height: 100%;
    display: flex;
    flex-direction: column;
    background: #dedede;
    color: #101114;
    box-shadow: -18px 0 46px rgba(0, 0, 0, .18);
}

.commerce-cart-panel header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-height: 74px;
    padding: 17px 30px 13px;
    background: #dedede;
}

.commerce-cart-panel header h2 {
    margin: 0;
    color: #111;
    font-size: 18px;
    font-weight: 900;
    line-height: 1;
    text-transform: uppercase;
}

.commerce-cart-panel header h2 i,
.commerce-cart-panel header h2 strong {
    color: #ff1010;
}

.commerce-cart-panel header h2 i {
    margin-right: 7px;
    font-size: 21px;
}

.commerce-cart-panel header button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 25px;
    height: 25px;
    border: 2px solid #ff1010;
    border-radius: 50%;
    background: transparent;
    color: #ff1010;
    font-size: 13px;
}

.commerce-cart-items {
    flex: 1 1 auto;
    min-height: 104px;
    overflow-y: auto;
    padding: 0 30px 18px;
}

.commerce-cart-item {
    position: relative;
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 20px;
    min-height: 104px;
    margin-bottom: 12px;
    padding: 15px 14px 15px 15px;
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
}

.commerce-cart-item:focus-visible {
    outline: 3px solid rgba(255, 16, 16, .35);
    outline-offset: 2px;
}

.commerce-cart-item img {
    align-self: center;
    width: 88px;
    height: 66px;
    object-fit: contain;
}

.commerce-cart-item-body {
    display: grid;
    grid-template-rows: auto 1fr;
    min-width: 0;
}

.commerce-cart-item h3 {
    max-width: 345px;
    margin: 0 30px 12px 0;
    color: #111;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.22;
}

.commerce-cart-row {
    display: grid;
    grid-template-columns: minmax(86px, 1fr) auto auto;
    align-items: center;
    gap: 13px;
    align-self: end;
}

.commerce-cart-row > span,
.commerce-cart-row > strong {
    font-size: 14px;
    font-weight: 800;
}

.commerce-cart-row > span {
    color: #ff1010;
    font-weight: 900;
}

.commerce-cart-row small {
    font-size: 11px;
    font-weight: 500;
}

.commerce-cart-row > strong {
    min-width: 70px;
    color: #111;
    text-align: right;
}

.commerce-cart-item button[data-remove-item] {
    position: absolute;
    top: 13px;
    right: 13px;
    border: 0;
    background: transparent;
    color: #8d8d8d;
    font-size: 17px;
}

.commerce-qty {
    display: inline-grid;
    grid-template-columns: 28px 28px 28px;
    align-items: center;
    justify-items: center;
    height: 44px;
    border: 2px solid #dedede;
    border-radius: 8px;
    color: #858585;
    font-size: 15px;
}

.commerce-qty button {
    width: 28px;
    height: 40px;
    border: 0;
    background: transparent;
    color: #858585;
    font-size: 22px;
}

.commerce-cart-empty {
    display: none;
    margin: 0 30px 20px;
    padding: 24px 16px;
    border-radius: 8px;
    background: #fff;
    color: #777;
    text-align: center;
}

.commerce-cart-empty i {
    font-size: 34px;
    color: #b5b5b5;
}

.commerce-cart-empty.is-visible {
    display: block;
}

.commerce-cart-summary {
    display: block;
    flex: 0 0 auto;
    padding: 0 30px;
}

.commerce-order-form,
.commerce-order-review,
.commerce-cart-totals {
    border-radius: 8px;
    background: #fff;
}

.commerce-order-form {
    display: none;
    gap: 14px;
    padding: 20px;
}

.commerce-order-title {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid #eee;
}

.commerce-order-title strong {
    display: block;
    font-size: 20px;
}

.commerce-order-title span,
.commerce-session-card span,
.commerce-order-feedback {
    color: #777;
}

.commerce-order-title i,
.commerce-session-card > i,
.commerce-login-required > i {
    color: #ff1010;
    font-size: 28px;
}

.commerce-session-card,
.commerce-login-required {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 64px;
    padding: 12px;
    border: 1px solid #dedede;
    border-radius: 8px;
    color: #111;
    text-decoration: none;
}

.commerce-payment-box {
    display: grid;
    gap: 10px;
}

.commerce-payment-label {
    color: #111;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
}

.commerce-payment-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.commerce-payment-option {
    position: relative;
    display: grid !important;
    grid-template-columns: 30px minmax(0, 1fr);
    gap: 4px 9px !important;
    min-height: 78px;
    padding: 12px !important;
    border: 2px solid #e5e5e5;
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
}

.commerce-payment-option.is-active {
    border-color: #ff1010;
    box-shadow: 0 8px 20px rgba(255, 16, 16, .09);
}

.commerce-payment-option input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.commerce-payment-option i {
    grid-row: 1 / 3;
    align-self: center;
    color: #ff1010;
    font-size: 28px;
    text-align: center;
}

.commerce-payment-option strong,
.commerce-payment-option small {
    display: block;
}

.commerce-payment-option strong {
    color: #111;
    font-size: 14px;
    font-weight: 900;
}

.commerce-payment-option small {
    color: #777;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.3;
}

.commerce-mbway-field[hidden] {
    display: none;
}

.commerce-mbway-field small {
    color: #777;
    font-size: 11px;
    font-weight: 700;
}

.commerce-cart-summary label {
    display: grid;
    gap: 7px;
    margin: 0;
    color: #111;
    font-weight: 800;
}

.commerce-cart-summary input,
.commerce-cart-summary textarea {
    width: 100%;
    min-height: 47px;
    border: 1px solid #dedede;
    border-radius: 8px;
    padding: 10px 12px;
    outline: 0;
    background: #fff;
}

.commerce-cart-summary textarea {
    min-height: 86px;
    resize: vertical;
}

.commerce-order-feedback {
    min-height: 22px;
    margin: 0;
    font-size: 14px;
    font-weight: 700;
}

.commerce-order-feedback.is-success {
    color: #32ad3c;
}

.commerce-order-feedback.is-error {
    color: #ff1010;
}

.commerce-order-review {
    display: grid;
    gap: 10px;
    padding: 18px 20px;
}

.commerce-order-review[hidden] {
    display: none;
}

.commerce-order-review-title strong,
.commerce-order-review-title span {
    display: block;
}

.commerce-order-review-title strong {
    color: #111;
    font-size: 18px;
    font-weight: 900;
}

.commerce-order-review-title span {
    margin-top: 4px;
    color: #777;
    font-size: 13px;
}

.commerce-order-review-list {
    display: grid;
    gap: 8px;
}

.commerce-order-review-item,
.commerce-order-review-payment,
.commerce-order-review-total {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid #eee;
}

.commerce-order-review-item img {
    width: 58px;
    height: 46px;
    object-fit: contain;
}

.commerce-order-review-item span,
.commerce-order-review-item small {
    display: block;
}

.commerce-order-review-item span {
    color: #111;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.25;
}

.commerce-order-review-item small {
    margin-top: 4px;
    color: #777;
    font-size: 12px;
    font-weight: 700;
}

.commerce-order-review-item strong {
    color: #111;
    font-size: 14px;
    white-space: nowrap;
}

.commerce-order-review-total {
    grid-template-columns: minmax(0, 1fr) auto;
    border-bottom: 0;
    font-size: 17px;
    font-weight: 900;
}

.commerce-order-review-payment {
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 11px 0;
    color: #111;
    font-size: 14px;
    font-weight: 900;
}

.commerce-order-review-payment span {
    color: #777;
    font-size: 12px;
    text-transform: uppercase;
}

.commerce-order-success {
    display: grid;
    gap: 16px;
    width: 100%;
    padding: 26px;
    border-radius: 8px;
    background: #fff;
    color: #111;
}

.commerce-order-success[hidden] {
    display: none;
}

.commerce-order-success-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: #32ad3c;
    color: #fff;
    font-size: 29px;
}

.commerce-order-success > strong {
    color: #111;
    font-size: 24px;
    font-weight: 900;
    line-height: 1.1;
}

.commerce-order-success dl {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
}

.commerce-order-success dl div {
    min-height: 72px;
    padding: 13px 14px;
    border-radius: 7px;
    background: #f4f4f4;
}

.commerce-order-success dt {
    color: #777;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.commerce-order-success dd {
    margin: 7px 0 0;
    color: #111;
    font-size: 17px;
    font-weight: 900;
}

.commerce-order-success-email {
    padding: 12px 14px;
    border-left: 5px solid #32ad3c;
    border-radius: 7px;
    background: #eef9ef;
    color: #14661c;
    font-size: 14px;
    font-weight: 800;
}

.commerce-order-success-email.is-warning {
    border-left-color: #ffb000;
    background: #fff6de;
    color: #745100;
}

.commerce-order-success-payment {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px;
    border: 1px solid rgba(255, 16, 16, .18);
    border-radius: 8px;
    background: #fff7f7;
}

.commerce-order-success-payment[hidden] {
    display: none;
}

.commerce-order-success-payment.is-paid {
    border-color: rgba(50, 173, 60, .22);
    background: #eef9ef;
}

.commerce-order-success-payment.is-error {
    border-color: rgba(255, 176, 0, .28);
    background: #fff7e4;
}

.commerce-order-success-payment strong,
.commerce-order-success-payment span,
.commerce-order-success-payment small {
    display: block;
}

.commerce-order-success-payment strong {
    color: #111;
    font-size: 15px;
    font-weight: 900;
}

.commerce-order-success-payment span {
    margin-top: 4px;
    color: #555;
    font-size: 13px;
    font-weight: 700;
}

.commerce-order-success-payment small {
    margin-top: 5px;
    color: #777;
    font-size: 11px;
    font-weight: 700;
}

.commerce-order-success-payment button {
    flex: 0 0 auto;
    min-height: 40px;
    border: 0;
    border-radius: 7px;
    padding: 0 14px;
    background: #111;
    color: #fff;
    font-size: 13px;
    font-weight: 900;
}

.commerce-order-success-next {
    display: grid;
    gap: 8px;
    color: #555;
    font-size: 13px;
    font-weight: 700;
}

.commerce-order-success-next span {
    display: flex;
    gap: 9px;
}

.commerce-order-success-next i {
    color: #ff1010;
    font-size: 15px;
}

.commerce-order-success-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.commerce-order-success-actions button,
.commerce-order-success-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    border: 2px solid #ff1010;
    border-radius: 7px;
    font-size: 15px;
    font-weight: 900;
    text-decoration: none;
}

.commerce-order-success-actions button {
    background: #fff;
    color: #111;
}

.commerce-order-success-actions a {
    background: #ff1010;
    color: #fff;
}

.commerce-cart-totals {
    display: block;
    align-self: start;
    padding: 0;
    background: transparent;
}

.commerce-cart-totals label,
.commerce-cart-totals > div:not(.commerce-cart-total) {
    display: none;
}

.commerce-cart-totals > div {
    font-size: 17px;
}

.commerce-cart-total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 64px;
    margin: 0;
    padding: 14px 19px;
    border: 0;
    border-radius: 8px;
    background: #fff;
    font-size: 16px;
    font-weight: 900;
}

.commerce-cart-total span i {
    color: #ff1010;
    margin-right: 10px;
    font-size: 23px;
}

.commerce-vat-note {
    margin: 12px 30px 12px;
    color: #111;
    font-size: 13px;
    text-align: center;
}

.commerce-cart-actions {
    display: flex;
    gap: 12px;
    padding: 0 30px 24px;
    background: #dedede;
}

.commerce-cart-actions button {
    flex: 1;
    min-height: 52px;
    border: 0;
    border-radius: 8px;
    background: #ff1010;
    color: #fff;
    font-size: 20px;
    font-weight: 900;
}

.commerce-cart-actions button[data-clear-cart],
.commerce-cart-actions button[data-edit-order] {
    display: none;
    background: #fff;
    color: #111;
    font-size: 0;
}

.commerce-cart-drawer.is-reviewing .commerce-cart-items,
.commerce-cart-drawer.is-reviewing .commerce-cart-empty,
.commerce-cart-drawer.is-reviewing .commerce-cart-totals,
.commerce-cart-drawer.is-reviewing .commerce-vat-note {
    display: none;
}

.commerce-cart-drawer.is-reviewing .commerce-cart-summary {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    gap: 14px;
    min-height: 0;
    padding: 0 30px 18px;
    overflow-y: auto;
}

.commerce-cart-drawer.is-reviewing .commerce-order-form {
    display: grid;
    flex: 0 0 auto;
}

.commerce-cart-drawer.is-reviewing .commerce-order-review {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    width: 100%;
    min-height: 0;
    padding: 22px 28px 22px 22px;
}

.commerce-cart-drawer.is-reviewing .commerce-order-review-list {
    flex: 1 1 auto;
    overflow-y: auto;
    margin-right: -14px;
    padding-right: 22px;
    scrollbar-gutter: stable;
}

.commerce-cart-drawer.is-reviewing .commerce-order-review-list::-webkit-scrollbar {
    width: 10px;
}

.commerce-cart-drawer.is-reviewing .commerce-order-review-list::-webkit-scrollbar-track {
    background: #f4f4f4;
}

.commerce-cart-drawer.is-reviewing .commerce-order-review-list::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: #b8b8b8;
}

.commerce-cart-drawer.is-reviewing .commerce-cart-actions {
    padding-top: 0;
}

.commerce-cart-drawer.is-reviewing .commerce-cart-actions button[data-send-order]:not([hidden]),
.commerce-cart-drawer.is-reviewing .commerce-cart-actions button[data-edit-order]:not([hidden]) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.commerce-cart-drawer.is-reviewing .commerce-cart-actions button[data-send-order] {
    flex: 1 1 auto;
}

.commerce-cart-drawer.is-reviewing .commerce-cart-actions button[data-edit-order] {
    flex: 0 0 178px;
    border: 2px solid #ff1010;
    background: #fff;
    color: #111;
    font-size: 16px;
}

.commerce-cart-drawer.is-order-success .commerce-cart-items,
.commerce-cart-drawer.is-order-success .commerce-cart-empty,
.commerce-cart-drawer.is-order-success .commerce-cart-totals,
.commerce-cart-drawer.is-order-success .commerce-vat-note,
.commerce-cart-drawer.is-order-success .commerce-cart-actions {
    display: none;
}

.commerce-cart-drawer.is-order-success .commerce-cart-summary {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    min-height: 0;
    padding: 0 30px 30px;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

.commerce-cart-actions button:disabled {
    opacity: .7;
    cursor: wait;
}

.commerce-description-modal {
    position: fixed;
    inset: 0;
    z-index: 1550;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 22px;
}

.commerce-description-modal.is-open {
    display: flex;
}

.commerce-description-backdrop {
    position: absolute;
    inset: 0;
    border: 0;
    background: rgba(0, 0, 0, .48);
}

.commerce-description-dialog {
    position: relative;
    width: min(1450px, calc(100vw - 30px));
    max-height: min(90vh, 760px);
    overflow: auto;
    padding: 0;
    border-radius: 8px;
    background: transparent;
}

.commerce-product-dialog {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(380px, .9fr);
    gap: 18px;
}

.commerce-product-modal-media,
.commerce-product-modal-info {
    min-height: 610px;
    border-radius: 8px;
    background: #fff;
}

.commerce-product-modal-media {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 28px;
}

.commerce-product-modal-media img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: 540px;
    object-fit: contain;
}

.commerce-product-modal-info {
    display: flex;
    flex-direction: column;
    padding: 28px 32px 26px;
}

.commerce-product-modal-brand {
    display: block;
    min-height: 34px;
    margin: 0 48px 18px 0;
    color: #0d4d9b;
    font-size: 27px;
    font-weight: 900;
    text-transform: uppercase;
}

.commerce-description-dialog h2 {
    margin: 0 36px 20px 0;
    color: #111;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.22;
}

.commerce-product-modal-refs {
    display: flex;
    flex-wrap: wrap;
    gap: 22px;
    margin-bottom: 22px;
    color: #69707a;
    font-size: 14px;
    font-weight: 700;
}

.commerce-product-modal-refs strong {
    margin-right: 8px;
    color: #ff1010;
    font-style: normal;
    font-weight: 900;
}

.commerce-product-modal-refs em {
    font-style: normal;
}

.commerce-product-modal-stock {
    display: flex;
    align-items: flex-start;
    gap: 7px;
    margin-bottom: 22px;
    color: #32ad3c;
}

.commerce-product-modal-stock i {
    margin-top: 2px;
    font-size: 17px;
}

.commerce-product-modal-stock strong {
    display: block;
    font-size: 15px;
    font-weight: 900;
    line-height: 1.15;
}

.commerce-product-modal-stock span {
    display: block;
    margin-top: 4px;
    font-size: 13px;
    font-weight: 800;
}

.commerce-product-modal-price {
    display: flex;
    align-items: baseline;
    gap: 10px;
    margin-bottom: 18px;
    color: #ff1010;
}

.commerce-product-modal-price strong {
    font-size: 32px;
    font-weight: 900;
    line-height: 1;
}

.commerce-product-modal-price span {
    font-size: 16px;
}

.commerce-product-modal-vat {
    margin: 0 0 18px;
    color: #111;
    font-size: 13px;
    font-weight: 600;
}

.commerce-product-modal-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 54px;
    gap: 10px;
    margin-bottom: 22px;
}

.commerce-product-modal-actions button {
    min-height: 52px;
    border: 0;
    border-radius: 7px;
    font-weight: 900;
}

.commerce-product-modal-actions button:first-child {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    background: #ff1010;
    color: #fff;
    font-size: 19px;
}

.commerce-product-modal-actions button[data-product-modal-add].is-in-cart {
    background: #22a05a;
    box-shadow: 0 12px 24px rgba(34, 160, 90, .26);
}

.commerce-product-modal-actions button:first-child i {
    font-size: 24px;
}

.commerce-product-modal-actions button:last-child {
    background: #ddd;
    color: #4b4b4b;
    font-size: 24px;
}

.commerce-product-modal-actions button:last-child.is-active {
    color: #ff1010;
}

.commerce-product-modal-qty h3 {
    margin: 0 0 10px;
    color: #ff1010;
    font-size: 14px;
    font-weight: 900;
    letter-spacing: .04em;
}

.commerce-product-modal-qty > div {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 7px 0;
    padding: 12px;
    border-radius: 7px;
    background: #e4e4e4;
    color: #4a4a4a;
}

.commerce-product-modal-qty span,
.commerce-product-modal-qty strong {
    min-height: 36px;
    padding: 7px 9px;
    background: rgba(255, 255, 255, .7);
    font-size: 12px;
    text-align: center;
}

.commerce-product-modal-qty span {
    background: transparent;
    font-weight: 900;
}

.commerce-product-modal-qty strong {
    font-weight: 900;
}

.commerce-product-modal-qty i {
    margin-right: 6px;
    color: #111;
}

.commerce-description-dialog p {
    margin: 16px 0 0;
    color: #444;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.45;
}

.commerce-description-close {
    position: absolute;
    top: 18px;
    right: 18px;
    z-index: 2;
    width: 40px;
    height: 40px;
    border: 3px solid #ff1010;
    border-radius: 50%;
    background: #fff;
    color: #ff1010;
    font-size: 18px;
}

@media (max-width: 1100px) {
    .commerce-description-dialog {
        max-height: calc(100vh - 24px);
    }

    .commerce-product-dialog {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .commerce-product-modal-media,
    .commerce-product-modal-info {
        min-height: 0;
    }

    .commerce-product-modal-media {
        min-height: 300px;
        padding: 18px;
    }

    .commerce-product-modal-media img {
        max-height: 285px;
    }

    .commerce-product-modal-info {
        padding: 22px;
    }
}

@media (max-width: 640px) {
    .commerce-description-modal {
        align-items: stretch;
        padding: 8px;
    }

    .commerce-description-dialog {
        width: 100%;
        max-height: calc(100dvh - 16px);
        overflow-y: auto;
    }

    .commerce-product-modal-media {
        min-height: 210px;
        padding: 12px;
    }

    .commerce-product-modal-media img {
        max-height: 210px;
    }

    .commerce-product-modal-info {
        padding: 16px 14px;
    }

    .commerce-product-modal-brand {
        min-height: 0;
        margin: 0 44px 10px 0;
        font-size: 20px;
    }

    .commerce-description-dialog h2 {
        margin: 0 0 12px;
        font-size: 17px;
    }

    .commerce-product-modal-refs,
    .commerce-product-modal-stock,
    .commerce-product-modal-price,
    .commerce-product-modal-vat,
    .commerce-product-modal-actions {
        margin-bottom: 12px;
    }

    .commerce-product-modal-refs {
        gap: 8px 14px;
        font-size: 12px;
    }

    .commerce-product-modal-stock strong {
        font-size: 14px;
    }

    .commerce-product-modal-stock span {
        font-size: 12px;
    }

    .commerce-product-modal-price strong {
        font-size: 27px;
    }

    .commerce-product-modal-price span,
    .commerce-product-modal-vat {
        font-size: 12px;
    }

    .commerce-product-modal-actions {
        grid-template-columns: minmax(0, 1fr) 48px;
        gap: 8px;
    }

    .commerce-product-modal-actions button {
        min-height: 48px;
    }

    .commerce-product-modal-actions button:first-child {
        font-size: 15px;
    }

    .commerce-product-modal-actions button:first-child i,
    .commerce-product-modal-actions button:last-child {
        font-size: 21px;
    }

    .commerce-product-modal-qty h3 {
        font-size: 12px;
    }

    .commerce-product-modal-qty > div {
        padding: 8px;
        overflow-x: auto;
    }

    .commerce-product-modal-qty span,
    .commerce-product-modal-qty strong {
        min-width: 82px;
        min-height: 30px;
        padding: 6px 4px;
        font-size: 11px;
        white-space: nowrap;
    }

    .commerce-description-dialog p {
        margin-top: 12px;
        font-size: 12px;
    }

    .commerce-description-close {
        top: 12px;
        right: 12px;
        width: 36px;
        height: 36px;
        border-width: 2px;
        font-size: 15px;
    }
}

@media (max-width: 1500px) {
    .commerce-header {
        grid-template-columns: 110px 210px minmax(240px, 1fr) 40px auto 58px;
    }

    .commerce-tax-switch {
        display: none;
    }

    .commerce-product-grid {
        grid-auto-columns: calc((100% - 48px) / 5);
    }
}

@media (max-width: 1180px) {
    .commerce-header {
        grid-template-columns: 140px 180px minmax(220px, 1fr) auto 58px;
        padding: 8px 16px;
    }

    .commerce-icon-button {
        display: none;
    }

    .commerce-brand-logo--desktop {
        height: 30px;
        max-width: 170px;
    }

    .commerce-hero-cta {
        right: 40px;
        min-width: 360px;
        font-size: 28px;
    }

    .commerce-product-grid {
        grid-auto-columns: calc((100% - 36px) / 4);
    }

    .commerce-footer-top {
        align-items: flex-start;
        flex-direction: column;
    }

    .commerce-footer-adm {
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    .commerce-footer-main {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 34px;
    }

    .commerce-footer-brand {
        grid-column: 1 / -1;
    }
}

@media (max-width: 820px) {
    .commerce-header {
        grid-template-columns: 112px minmax(0, 1fr) auto 48px;
        grid-template-areas:
            "menu brand participate cart"
            "search search search search";
        gap: 8px;
        min-height: 116px;
        padding: 8px;
    }

    .commerce-menu-button {
        grid-area: menu;
        height: 50px;
        gap: 8px;
        font-size: 17px;
    }

    .commerce-brand {
        grid-area: brand;
        display: inline-flex;
        height: 50px;
        justify-content: flex-start;
    }

    .commerce-brand-logo--desktop {
        display: none;
    }

    .commerce-brand-logo--mobile {
        display: block;
        height: 40px;
        max-width: 44px;
    }

    .commerce-header-search {
        grid-area: search;
        height: 48px;
        grid-template-columns: 34px minmax(0, 1fr) 34px 34px;
    }

    .commerce-participation {
        grid-area: participate;
    }

    .commerce-cart-button {
        grid-area: cart;
    }

    .commerce-header-search input {
        font-size: 16px;
    }

    .commerce-categories-shell {
        padding-top: 18px;
    }

    .commerce-categories {
        grid-auto-columns: 146px;
    }

    .commerce-categories button {
        min-height: 132px;
        font-size: 15px;
    }

    .commerce-hero {
        min-height: 420px;
    }

    .commerce-hero-brand {
        min-width: 280px;
        width: 70%;
        height: 82px;
        padding: 18px 22px;
    }

    .commerce-hero-brand strong {
        font-size: 21px;
    }

    .commerce-hero-content {
        left: 28px;
        right: 28px;
        bottom: 116px;
    }

    .commerce-hero h1 {
        font-size: 38px;
    }

    .commerce-hero p {
        font-size: 18px;
    }

    .commerce-hero-cta {
        left: 28px;
        right: 28px;
        top: auto;
        bottom: 34px;
        min-width: 0;
        min-height: 58px;
        font-size: 22px;
    }

    .commerce-hero-nav,
    .commerce-hero-dots {
        display: none;
    }

    .commerce-toolbar {
        align-items: center;
        flex-direction: row;
        gap: 10px;
        margin-bottom: 14px;
    }

    .commerce-section-heading h2 {
        font-size: 21px;
        line-height: 1.08;
    }

    .commerce-section-heading i {
        margin-right: 6px;
        font-size: 21px;
    }

    .commerce-tools a {
        font-size: 15px;
    }

    .commerce-product-grid {
        grid-auto-columns: calc((100% - 12px) / 2);
    }

    .commerce-product-card {
        min-height: 620px;
    }

    .commerce-product-media {
        height: 230px;
    }

    .commerce-cart-panel {
        width: 100%;
    }

    .commerce-cart-summary {
        grid-template-columns: 1fr;
    }

    .commerce-footer-contact {
        flex-wrap: wrap;
        gap: 10px;
    }

    .commerce-footer-contact a {
        min-height: 46px;
        padding: 0 15px;
        font-size: 17px;
    }

    .commerce-footer-contact i {
        font-size: 23px;
    }

    .commerce-footer-partners strong {
        font-size: 28px;
    }

    .commerce-footer-partners span {
        font-size: 17px;
    }

    .commerce-footer-main {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 28px;
        padding-top: 28px;
    }

    .commerce-footer-brand {
        grid-column: 1 / -1;
    }
}

@media (max-width: 560px) {
    .commerce-header {
        grid-template-columns: 48px minmax(0, 1fr) 50px 42px;
        gap: 7px;
        padding: 8px;
    }

    .commerce-menu-button {
        height: 44px;
    }

    .commerce-menu-button span {
        display: none;
    }

    .commerce-smart-menu {
        width: 100%;
        max-width: none;
        border-right: 0;
    }

    .commerce-smart-menu-header {
        padding-right: 16px;
        padding-left: 16px;
    }

    .commerce-smart-menu-search {
        margin-right: 12px;
        margin-left: 12px;
    }

    .commerce-smart-menu-nav {
        padding-right: 12px;
        padding-left: 12px;
    }

    .commerce-smart-menu-nav a {
        min-height: 62px;
        font-size: 10px;
    }

    .commerce-smart-menu-categories,
    .commerce-smart-menu-footer {
        padding-right: 12px;
        padding-left: 12px;
    }

    .commerce-brand {
        height: 44px;
    }

    .commerce-brand-logo--mobile {
        height: 36px;
        max-width: 40px;
    }

    .commerce-header-search {
        height: 44px;
    }

    .commerce-participation summary {
        width: 50px;
        min-height: 50px;
        padding: 0;
        border-color: rgba(112, 89, 0, .22);
        background: #ffeca0;
    }

    .commerce-participation-avatar { width: 44px; height: 44px; border-color: rgba(112, 89, 0, .22); }

    .commerce-participation summary span,
    .commerce-participation summary > i:last-child {
        display: none;
    }

    .commerce-participation-menu {
        right: -49px;
        min-width: 210px;
    }

    .commerce-cart-button {
        width: 42px;
        height: 42px;
        font-size: 34px;
    }

    .commerce-cart-button span {
        top: -6px;
        right: -5px;
        min-width: 25px;
        height: 25px;
        padding: 0 7px;
        font-size: 13px;
        line-height: 25px;
    }

    .commerce-product-grid {
        grid-auto-columns: 84%;
        gap: 10px;
        padding-right: 42px;
        scroll-padding-left: 0;
    }

    .commerce-product-card {
        min-height: auto;
    }

    .commerce-product-body {
        padding: 0 12px 12px;
    }

    .commerce-product-footer {
        gap: 8px;
    }

    .commerce-price-block strong {
        font-size: 20px;
    }

    .commerce-price-block span,
    .commerce-price-block del {
        font-size: 12px;
    }

    .commerce-product-actions button {
        width: 44px;
        height: 44px;
        font-size: 23px;
    }

    .commerce-product-card.is-in-cart .commerce-product-actions {
        grid-template-columns: minmax(0, 1fr) 88px;
        gap: 7px;
    }

    .commerce-product-actions button.is-in-cart {
        height: 44px;
        font-size: 12px;
    }

    .commerce-product-actions button.is-in-cart i {
        font-size: 15px;
    }

    .commerce-card-qty {
        grid-template-columns: 28px minmax(24px, 1fr) 28px;
        min-width: 88px;
        height: 44px;
    }

    .commerce-card-qty button {
        width: 28px;
        height: 44px;
        font-size: 13px;
    }

    .commerce-card-qty strong {
        min-width: 24px;
        font-size: 16px;
    }

    .commerce-products-section {
        padding-right: 6px;
        padding-left: 6px;
        padding-bottom: 14px;
    }

    .commerce-products-section + .commerce-products-section {
        padding-top: 6px;
    }

    .commerce-toolbar {
        gap: 8px;
    }

    .commerce-section-heading h2 {
        font-size: 18px;
    }

    .commerce-section-heading i {
        font-size: 18px;
    }

    .commerce-tools a {
        font-size: 13px;
    }

    .commerce-footer-top {
        margin: 0 6px;
        min-height: 0;
        padding: 12px;
    }

    .commerce-footer-contact,
    .commerce-footer-partners {
        width: 100%;
    }

    .commerce-footer-contact a {
        width: 100%;
        justify-content: center;
        font-size: 16px;
    }

    .commerce-footer-partners {
        gap: 12px;
    }

    .commerce-footer-partners strong {
        font-size: 24px;
    }

    .commerce-footer-partners span {
        font-size: 15px;
    }

    .commerce-footer-main {
        grid-template-columns: 1fr;
        gap: 24px;
        padding: 24px 10px;
    }

    .commerce-footer-brand > a {
        font-size: 32px;
    }

    .commerce-footer-social {
        gap: 13px;
        margin: 24px 0;
    }

    .commerce-footer-col {
        gap: 9px;
    }

    .commerce-footer-col h3 {
        margin-bottom: 6px;
        font-size: 16px;
    }

    .commerce-footer-col a,
    .commerce-footer-col button {
        font-size: 15px;
    }

    .commerce-footer-col button {
        width: 100%;
    }

    .commerce-cart-toast {
        top: 76px;
        grid-template-columns: 76px minmax(0, 1fr) 28px;
        gap: 12px;
        min-height: 92px;
        padding: 14px 12px;
    }

    .commerce-cart-toast img {
        width: 76px;
        height: 62px;
    }

    .commerce-cart-toast strong {
        margin-bottom: 6px;
        font-size: 24px;
    }

    .commerce-cart-toast span {
        font-size: 18px;
    }

    .commerce-cart-toast > button {
        width: 28px;
        height: 28px;
        border-width: 2px;
        font-size: 16px;
    }

    .commerce-scroll-top {
        right: 16px;
        bottom: 16px;
        width: 48px;
        height: 48px;
        font-size: 28px;
    }

    .commerce-cart-panel header,
    .commerce-cart-items,
    .commerce-cart-summary,
    .commerce-cart-actions {
        padding-left: 16px;
        padding-right: 16px;
    }

    .commerce-cart-panel header h2 {
        font-size: 16px;
    }

    .commerce-cart-item {
        grid-template-columns: 72px minmax(0, 1fr);
        gap: 10px;
        padding: 12px 10px;
    }

    .commerce-cart-item img {
        width: 72px;
        height: 58px;
    }

    .commerce-cart-item h3 {
        font-size: 13px;
    }

    .commerce-cart-row {
        grid-template-columns: 1fr;
        gap: 8px;
        align-items: flex-start;
    }

    .commerce-payment-options {
        grid-template-columns: 1fr;
    }

    .commerce-payment-option {
        min-height: 68px;
    }

    .commerce-cart-actions {
        flex-direction: column;
    }

    .commerce-cart-actions button,
    .commerce-cart-actions button[data-clear-cart],
    .commerce-cart-actions button[data-edit-order] {
        flex-basis: auto;
        width: 100%;
        min-height: 48px;
        font-size: 18px;
    }

    .commerce-cart-drawer.is-reviewing .commerce-order-review {
        padding: 16px 20px 16px 16px;
    }

    .commerce-cart-drawer.is-reviewing .commerce-order-review-list {
        margin-right: -8px;
        padding-right: 14px;
    }

    .commerce-order-review-item {
        grid-template-columns: 46px minmax(0, 1fr);
    }

    .commerce-order-review-item img {
        width: 46px;
        height: 38px;
    }

    .commerce-order-review-item strong {
        grid-column: 2;
        font-size: 13px;
    }

    .commerce-cart-drawer.is-reviewing .commerce-cart-actions {
        flex-direction: column-reverse;
    }

    .commerce-cart-drawer.is-reviewing .commerce-cart-actions button[data-edit-order] {
        flex-basis: auto;
        width: 100%;
        font-size: 15px;
    }

    .commerce-cart-drawer.is-order-success .commerce-cart-summary {
        align-items: flex-start;
        max-height: calc(100vh - 74px);
        padding: 0 16px 18px;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .commerce-order-success {
        padding: 18px;
    }

    .commerce-order-success > strong {
        font-size: 20px;
    }

    .commerce-order-success dl,
    .commerce-order-success-actions {
        grid-template-columns: 1fr;
    }

    .commerce-order-success-payment {
        align-items: stretch;
        flex-direction: column;
    }

    .commerce-order-success-payment button {
        width: 100%;
    }

    .commerce-vat-note {
        margin-left: 16px;
        margin-right: 16px;
        font-size: 17px;
    }
}

@media (max-width: 1180px) {
    .commerce-footer {
        overflow: hidden;
        padding-top: 8px;
    }

    .commerce-footer-top {
        display: grid;
        grid-template-columns: 1fr;
        align-items: stretch;
        gap: 14px;
        margin: 0 12px;
        min-height: 0;
        padding: 14px;
    }

    .commerce-footer-contact {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        width: 100%;
    }

    .commerce-footer-contact a {
        justify-content: center;
        min-height: 48px;
        padding: 0 14px;
        font-size: 17px;
    }

    .commerce-footer-contact i {
        flex: 0 0 auto;
        font-size: 23px;
    }

    .commerce-footer-partners {
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px 14px;
        width: 100%;
        padding-top: 12px;
        border-top: 1px solid rgba(255, 255, 255, .12);
    }

    .commerce-footer-partners strong {
        font-size: 28px;
    }

    .commerce-footer-partners span {
        min-height: 24px;
        font-size: 16px;
    }

    .commerce-footer-main {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
        padding: 24px 16px 32px;
    }

    .commerce-footer-brand {
        grid-column: 1 / -1;
    }

    .commerce-footer-brand > a {
        max-width: 220px;
    }

    .commerce-footer-brand > a img {
        max-width: 220px;
        height: 46px;
    }

    .commerce-footer-social {
        flex-wrap: wrap;
        gap: 12px;
        margin: 18px 0 20px;
    }

    .commerce-footer-col {
        min-width: 0;
        padding: 16px;
        border-radius: 8px;
        background: #fff;
        box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .04);
    }

    .commerce-footer-col h3 {
        margin-bottom: 6px;
        font-size: 15px;
    }

    .commerce-footer-col h3:not(:first-child) {
        margin-top: 18px;
    }

    .commerce-footer-col a,
    .commerce-footer-col button {
        font-size: 15px;
    }

    .commerce-footer-col button {
        width: 100%;
    }

    .commerce-search-layout {
        grid-template-columns: minmax(0, 1fr) 280px;
        gap: 12px;
    }

    .commerce-search-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
    }

    .commerce-search-grid .commerce-product-card {
        min-height: 560px;
    }

    .commerce-search-grid .commerce-product-media {
        height: 230px;
    }

    .commerce-search-filters {
        padding: 18px;
    }
}

@media (max-width: 640px) {
    .commerce-footer {
        padding-top: 6px;
        background: #dedede;
    }

    .commerce-footer-top {
        margin: 0 8px;
        padding: 10px;
        border-radius: 7px;
    }

    .commerce-footer-contact {
        grid-template-columns: 1fr;
    }

    .commerce-footer-contact a {
        min-height: 44px;
        border-radius: 6px;
        font-size: 15px;
    }

    .commerce-footer-contact i {
        font-size: 21px;
    }

    .commerce-footer-partners {
        justify-content: flex-start;
        gap: 6px 12px;
        padding: 10px 2px 0;
    }

    .commerce-footer-partners strong {
        font-size: 23px;
    }

    .commerce-footer-partners span {
        font-size: 14px;
    }

    .commerce-footer-partners span:last-child {
        font-size: 13px;
    }

    .commerce-footer-main {
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 16px 8px 24px;
    }

    .commerce-footer-brand {
        padding: 16px 14px;
        border-radius: 8px;
        background: #f7f7f7;
    }

    .commerce-footer-brand > a {
        max-width: 178px;
    }

    .commerce-footer-brand > a img {
        max-width: 178px;
        height: 38px;
    }

    .commerce-footer-brand > span {
        display: block;
        margin: 7px 0 0;
        font-size: 9px;
    }

    .commerce-footer-social {
        gap: 9px;
        margin: 16px 0;
    }

    .commerce-footer-social a {
        width: 30px;
        height: 30px;
        font-size: 18px;
    }

    .commerce-footer-brand strong {
        margin-bottom: 8px;
        font-size: 15px;
    }

    .commerce-footer-brand p {
        margin-bottom: 10px;
        font-size: 13px;
        line-height: 1.45;
    }

    .commerce-footer-brand small {
        max-width: none;
        font-size: 12px;
        line-height: 1.45;
    }

    .commerce-footer-col {
        gap: 8px;
        padding: 14px;
    }

    .commerce-footer-col h3 {
        margin-bottom: 4px;
        font-size: 14px;
        letter-spacing: .03em;
    }

    .commerce-footer-col h3:not(:first-child) {
        margin-top: 14px;
        padding-top: 12px;
        border-top: 1px solid #ededed;
    }

    .commerce-footer-col a {
        min-height: 28px;
        font-size: 14px;
        line-height: 1.25;
    }

    .commerce-footer-col button {
        min-height: 42px;
        padding: 0 12px;
        font-size: 14px;
    }
}

@media (max-width: 900px) {
    .commerce-row-scroll {
        display: none;
    }

    .commerce-search-results {
        padding: 18px 8px 24px;
    }

    .commerce-search-title {
        grid-template-columns: 1fr;
        gap: 10px;
        margin-bottom: 18px;
    }

    .commerce-search-title h1 {
        font-size: 21px;
        text-align: left;
    }

    .commerce-search-title h1 i {
        font-size: 24px;
    }

    .commerce-search-title button {
        justify-self: start;
        font-size: 13px;
    }

    .commerce-search-summary {
        align-items: stretch;
        flex-direction: column;
        gap: 12px;
    }

    .commerce-search-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 54px;
        gap: 10px;
    }

    .commerce-search-actions label {
        grid-template-columns: 1fr;
        gap: 6px;
        font-size: 14px;
    }

    .commerce-search-actions select {
        width: 100%;
        height: 48px;
        font-size: 15px;
    }

    .commerce-search-filter-button {
        width: 54px;
        height: 48px;
        font-size: 24px;
    }

    .commerce-search-layout {
        display: block;
    }

    .commerce-search-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .commerce-search-grid .commerce-product-card {
        min-height: auto;
    }

    .commerce-search-grid .commerce-product-media {
        height: 238px;
    }

    .commerce-search-results.is-filter-open::before {
        content: "";
        position: fixed;
        inset: 0;
        z-index: 1490;
        background: rgba(0, 0, 0, .38);
    }

    .commerce-search-filters {
        position: fixed;
        top: auto;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 1500;
        max-height: min(82vh, 680px);
        padding: 18px;
        border-radius: 16px 16px 0 0;
        transform: translateY(110%);
        transition: transform .22s ease;
    }

    .commerce-search-results.is-filter-open .commerce-search-filters {
        transform: translateY(0);
    }

    .commerce-search-filter-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 16px;
    }

    .commerce-search-filter-head strong {
        color: #111;
        font-size: 20px;
        font-weight: 900;
    }

    .commerce-search-filter-head button {
        width: 42px;
        height: 42px;
        border: 2px solid #ff1010;
        border-radius: 50%;
        background: #fff;
        color: #ff1010;
        font-size: 18px;
    }
}

@media (max-width: 390px) {
    .commerce-product-grid {
        grid-auto-columns: 88%;
        padding-right: 32px;
    }

    .commerce-search-grid .commerce-product-media {
        height: 220px;
    }
}

/* Vitrine viva: palco comercial progressivo, independente de imagens inline/CSP. */
.commerce-hero {
    isolation: isolate;
    min-height: var(--shop-hero-min-height, 506px);
    border: 1px solid rgba(255, 255, 255, .08);
    background-color: #09090b;
    background-image:
        linear-gradient(90deg, rgba(9, 9, 11, .94) 0%, rgba(17, 17, 22, .72) 52%, rgba(9, 9, 11, .18) 100%),
        var(--hero-image);
    background-position: center, var(--shop-hero-focus-x, 50%) var(--shop-hero-focus-y, 50%);
    background-repeat: no-repeat;
    background-size: cover, var(--shop-hero-zoom, 100%);
    box-shadow: 0 18px 44px rgba(16, 16, 18, .16);
}

.commerce-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    opacity: .28;
    background-image:
        linear-gradient(rgba(255, 255, 255, .09) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .09) 1px, transparent 1px);
    background-size: 52px 52px;
    mask-image: linear-gradient(90deg, #000, transparent 72%);
}

.commerce-hero::after {
    content: "";
    position: absolute;
    top: -180px;
    right: -110px;
    z-index: -1;
    width: 560px;
    height: 560px;
    border: 110px solid color-mix(in srgb, var(--shop-primary, #ffd000) 9%, transparent);
    border-radius: 50%;
}

.commerce-hero-brand {
    top: 34px;
    left: 48px;
    z-index: 4;
    width: auto;
    min-width: 0;
    height: auto;
    padding: 10px 15px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 999px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 12px 30px rgba(0, 0, 0, .16);
}

.commerce-hero-brand strong {
    font-size: 20px;
}

.commerce-hero-brand span {
    padding-left: 13px;
    border-left: 1px solid #d7d7dc;
    color: #4f4f58;
    font-size: 13px;
    letter-spacing: .04em;
}

.commerce-hero-content {
    top: 126px;
    bottom: auto;
    left: clamp(40px, 5vw, 86px);
    z-index: 4;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    width: min(46%, 690px);
    max-width: none;
}

.commerce-hero-kicker {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 32px;
    margin-bottom: 19px;
    padding: 6px 11px;
    border: 1px solid color-mix(in srgb, var(--shop-primary, #ffd000) 38%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, var(--shop-primary, #ffd000) 10%, transparent);
    color: var(--shop-primary, #ffd000);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.commerce-hero h1 {
    max-width: 690px;
    margin: 0 0 16px;
    color: #fff;
    font-size: clamp(42px, 4.2vw, 72px);
    line-height: .98;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.commerce-hero p {
    display: -webkit-box;
    max-width: 620px;
    margin: 0;
    overflow: hidden;
    color: rgba(255, 255, 255, .76);
    font-size: clamp(16px, 1.4vw, 21px);
    font-weight: 600;
    line-height: 1.45;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.commerce-hero-meta {
    display: flex;
    align-items: center;
    gap: 17px;
    margin-top: 24px;
}

.commerce-hero-price {
    color: var(--shop-primary, #ffd000);
    font-size: clamp(25px, 2.2vw, 36px);
    font-weight: 950;
    letter-spacing: -.04em;
}

.commerce-hero-availability {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
    font-weight: 800;
}

.commerce-hero-availability i {
    color: #62d892;
}

.commerce-hero-actions {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-top: 25px;
}

.commerce-hero-detail,
.commerce-hero--enhanced .commerce-hero-cta {
    position: static;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    width: auto;
    min-width: 0;
    min-height: 48px;
    padding: 11px 18px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 900;
    line-height: 1;
}

.commerce-hero-detail {
    border: 0;
    background: var(--shop-primary, #ffd000);
    color: #111;
}

.commerce-hero-detail:hover,
.commerce-hero-detail:focus-visible {
    background: color-mix(in srgb, var(--shop-primary, #ffd000) 78%, white);
    color: #111;
    outline: 3px solid color-mix(in srgb, var(--shop-primary, #ffd000) 28%, transparent);
    outline-offset: 3px;
}

.commerce-hero--enhanced .commerce-hero-cta {
    border: 1px solid rgba(255, 255, 255, .2);
    background: rgba(255, 255, 255, .08);
    color: #fff;
    backdrop-filter: blur(10px);
}

.commerce-hero--enhanced .commerce-hero-cta:hover,
.commerce-hero--enhanced .commerce-hero-cta:focus-visible {
    border-color: rgba(255, 255, 255, .42);
    background: rgba(255, 255, 255, .15);
    filter: none;
    outline: none;
}

.commerce-hero-showcase {
    position: absolute;
    top: 50%;
    right: clamp(42px, 5vw, 92px);
    z-index: 2;
    width: min(41vw, 590px);
    height: 430px;
    transform: translateY(-50%);
}

.commerce-hero-orbit {
    position: absolute;
    top: 7px;
    right: 1%;
    width: 385px;
    height: 385px;
    border: 1px solid color-mix(in srgb, var(--shop-primary, #ffd000) 28%, transparent);
    border-radius: 50%;
    box-shadow: inset 0 0 80px color-mix(in srgb, var(--shop-primary, #ffd000) 6%, transparent), 0 0 80px color-mix(in srgb, var(--shop-primary, #ffd000) 4%, transparent);
}

.commerce-hero-orbit::before,
.commerce-hero-orbit::after {
    content: "";
    position: absolute;
    inset: 48px;
    border: 1px dashed rgba(255, 255, 255, .17);
    border-radius: 50%;
}

.commerce-hero-orbit::after {
    inset: 96px;
    border-style: solid;
    border-color: color-mix(in srgb, var(--shop-action, #ff1010) 22%, transparent);
}

.commerce-hero-orbit-dot {
    position: absolute;
    width: 15px;
    height: 15px;
    border: 4px solid #111;
    border-radius: 50%;
    background: var(--shop-primary, #ffd000);
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--shop-primary, #ffd000) 16%, transparent);
}

.commerce-hero-orbit-dot--one { top: 58px; right: 28px; }
.commerce-hero-orbit-dot--two { bottom: 48px; left: 22px; background: var(--shop-action, #ff1010); }

.commerce-hero-product {
    position: absolute;
    top: 23px;
    right: 48px;
    display: grid;
    place-items: center;
    width: 330px;
    height: 330px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .48);
    border-radius: 42% 58% 58% 42% / 46% 40% 60% 54%;
    background: linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(241, 241, 244, .9));
    box-shadow: 0 28px 70px rgba(0, 0, 0, .34), inset 0 0 0 9px rgba(255, 255, 255, .42);
}

.commerce-hero-product::after {
    content: "";
    position: absolute;
    right: -18%;
    bottom: -32%;
    width: 72%;
    height: 72%;
    border-radius: 50%;
    background: var(--shop-primary, #ffd000);
    opacity: .18;
}

.commerce-hero-product-image {
    z-index: 2;
    width: 77%;
    height: 77%;
    object-fit: contain;
    filter: drop-shadow(0 18px 24px rgba(0, 0, 0, .18));
}

.commerce-hero-image-fallback {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    color: #d1d1d7;
    font-size: 92px;
}

.commerce-hero-product.has-image-error .commerce-hero-product-image { display: none; }

.commerce-hero-product-badge,
.commerce-hero-product-reference {
    position: absolute;
    z-index: 3;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.commerce-hero-product-badge {
    top: 20px;
    left: 22px;
    max-width: 60%;
    overflow: hidden;
    padding: 7px 10px;
    background: var(--shop-action, #ff1010);
    color: #fff;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.commerce-hero-product-reference {
    right: 22px;
    bottom: 19px;
    padding: 6px 9px;
    background: #111;
    color: #fff;
}

.commerce-hero-peeks {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 4;
    display: flex;
    justify-content: center;
    gap: 8px;
}

.commerce-hero-peek {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    width: 132px;
    min-height: 54px;
    padding: 6px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 9px;
    background: rgba(20, 20, 24, .72);
    color: #fff;
    text-align: left;
    backdrop-filter: blur(12px);
}

.commerce-hero-peek:hover,
.commerce-hero-peek:focus-visible {
    border-color: var(--shop-primary, #ffd000);
    outline: none;
}

.commerce-hero-peek img {
    width: 42px;
    height: 42px;
    border-radius: 7px;
    background: #fff;
    object-fit: contain;
}

.commerce-hero-peek span {
    display: -webkit-box;
    overflow: hidden;
    font-size: 10px;
    font-weight: 800;
    line-height: 1.2;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.commerce-hero-nav {
    z-index: 6;
    bottom: 26px;
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 50%;
    background: rgba(255, 255, 255, .07);
    color: #fff;
    font-size: 30px;
    backdrop-filter: blur(8px);
}

.commerce-hero-nav:hover,
.commerce-hero-nav:focus-visible {
    border-color: var(--shop-primary, #ffd000);
    color: var(--shop-primary, #ffd000);
    outline: none;
}

.commerce-hero-nav-prev { left: 48px; }
.commerce-hero-nav-next { right: 48px; }

.commerce-hero-dots {
    z-index: 6;
    bottom: 41px;
    align-items: center;
    gap: 7px;
}

.commerce-hero-dots button {
    width: 8px;
    height: 8px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, .35);
    transition: width .25s ease, background-color .25s ease;
}

.commerce-hero-dots button.is-active {
    width: 34px;
    background: var(--shop-primary, #ffd000);
}

.commerce-hero-dots button:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 3px;
}

.commerce-hero-progress {
    position: absolute;
    right: 105px;
    bottom: 0;
    left: 105px;
    z-index: 5;
    height: 3px;
    overflow: hidden;
    border-radius: 999px 999px 0 0;
    background: rgba(255, 255, 255, .08);
}

.commerce-hero-progress > span {
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, var(--shop-action, #ff1010), var(--shop-primary, #ffd000));
    transform: scaleX(0);
    transform-origin: left;
}

.commerce-hero.is-autoplay .commerce-hero-progress > span {
    animation: commerceHeroProgress 6.5s linear forwards;
}

.commerce-hero.is-changing .commerce-hero-kicker,
.commerce-hero.is-changing .commerce-hero-meta,
.commerce-hero.is-changing .commerce-hero-product {
    opacity: 0;
    transform: translateY(9px) scale(.985);
}

.commerce-hero-kicker,
.commerce-hero-meta,
.commerce-hero-product {
    transition: opacity .42s ease, transform .42s ease;
}

.commerce-hero-orbit { animation: commerceHeroOrbit 18s linear infinite; }
.commerce-hero-product { animation: commerceHeroFloat 5s ease-in-out infinite; }

.commerce-hero.has-single-slide .commerce-hero-nav,
.commerce-hero.has-single-slide .commerce-hero-dots,
.commerce-hero.has-single-slide .commerce-hero-progress,
.commerce-hero.has-single-slide .commerce-hero-peeks { display: none; }

@keyframes commerceHeroProgress { to { transform: scaleX(1); } }
@keyframes commerceHeroOrbit { to { transform: rotate(360deg); } }
@keyframes commerceHeroFloat { 50% { transform: translateY(-8px); } }

@media (max-width: 1180px) {
    .commerce-hero-content { width: 48%; }
    .commerce-hero-showcase { right: 28px; width: 45%; transform: translateY(-50%) scale(.9); }
    .commerce-hero h1 { font-size: clamp(38px, 5vw, 57px); }
    .commerce-hero-peek { width: 116px; }
}

@media (max-width: 820px) {
    .commerce-hero {
        min-height: 690px;
        margin-right: 6px;
        margin-left: 6px;
        border-radius: 11px;
    }

    .commerce-hero::before { mask-image: linear-gradient(#000, transparent 78%); }
    .commerce-hero::after { top: -245px; right: -245px; }

    .commerce-hero-brand {
        top: 18px;
        left: 18px;
        gap: 10px;
        padding: 8px 11px;
    }

    .commerce-hero-brand strong { font-size: 15px; }
    .commerce-hero-brand span { padding-left: 9px; font-size: 10px; }

    .commerce-hero-showcase {
        top: 77px;
        right: 20px;
        left: 20px;
        width: auto;
        height: 246px;
        transform: none;
    }

    .commerce-hero-orbit {
        top: -5px;
        right: 50%;
        width: 245px;
        height: 245px;
        margin-right: -122px;
    }

    .commerce-hero-product {
        top: 5px;
        right: 50%;
        width: 220px;
        height: 220px;
        margin-right: -110px;
        border-radius: 36% 64% 58% 42% / 49% 43% 57% 51%;
    }

    .commerce-hero-product-image { width: 72%; height: 72%; }
    .commerce-hero-product-badge { top: 13px; left: 14px; padding: 5px 7px; font-size: 9px; }
    .commerce-hero-product-reference { right: 13px; bottom: 13px; font-size: 9px; }
    .commerce-hero-peeks { display: none; }

    .commerce-hero-content {
        top: 334px;
        right: 20px;
        left: 20px;
        width: auto;
    }

    .commerce-hero-kicker { min-height: 28px; margin-bottom: 12px; font-size: 10px; }
    .commerce-hero h1 { margin-bottom: 10px; font-size: clamp(32px, 9vw, 43px); }
    .commerce-hero p { font-size: 15px; line-height: 1.35; -webkit-line-clamp: 2; }
    .commerce-hero-meta { margin-top: 15px; }
    .commerce-hero-price { font-size: 25px; }
    .commerce-hero-availability { font-size: 11px; }
    .commerce-hero-actions { width: 100%; margin-top: 16px; }
    .commerce-hero-detail, .commerce-hero--enhanced .commerce-hero-cta { flex: 1 1 0; min-height: 46px; padding: 9px 11px; font-size: 12px; }

    .commerce-hero-nav { bottom: 17px; display: grid; width: 42px; height: 42px; }
    .commerce-hero-nav-prev { left: 16px; }
    .commerce-hero-nav-next { right: 16px; }
    .commerce-hero-dots { bottom: 31px; display: flex; }
    .commerce-hero-progress { right: 72px; left: 72px; }
}

@media (max-width: 430px) {
    .commerce-hero { min-height: 650px; }
    .commerce-hero-showcase { top: 72px; height: 218px; }
    .commerce-hero-orbit { width: 215px; height: 215px; }
    .commerce-hero-orbit { margin-right: -107px; }
    .commerce-hero-product { width: 194px; height: 194px; margin-right: -97px; }
    .commerce-hero-content { top: 303px; }
    .commerce-hero h1 { font-size: clamp(29px, 8.7vw, 37px); }
    .commerce-hero-actions { gap: 7px; }
    .commerce-hero-detail, .commerce-hero--enhanced .commerce-hero-cta { font-size: 11px; }
}

/* Centro de contacto: modal progressivo com composição dedicada a desktop e smartphone. */
.commerce-contact-hub {
    position: fixed;
    inset: 0;
    z-index: 1700;
    display: grid;
    visibility: hidden;
    place-items: center;
    padding: 24px;
    background: rgba(9, 11, 15, .68);
    opacity: 0;
    backdrop-filter: blur(7px);
    transition: opacity .22s ease, visibility 0s linear .22s;
}

.commerce-contact-hub.is-open {
    visibility: visible;
    opacity: 1;
    transition-delay: 0s;
}

.commerce-contact-dialog {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    width: min(1040px, 100%);
    height: min(720px, calc(100vh - 48px));
    height: min(720px, calc(100dvh - 48px));
    min-height: 0;
    max-height: calc(100vh - 48px);
    max-height: calc(100dvh - 48px);
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 18px;
    background: #f5f6f8;
    box-shadow: 0 32px 90px rgba(0, 0, 0, .38);
    opacity: 0;
    transform: translateY(18px) scale(.985);
    transition: opacity .24s ease, transform .24s ease;
}

.commerce-contact-hub.is-open .commerce-contact-dialog {
    opacity: 1;
    transform: translateY(0) scale(1);
}

.commerce-contact-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    min-height: 0;
    margin: 0;
    padding: 20px 22px;
    background:
        radial-gradient(circle at 86% 15%, rgba(255, 208, 0, .2), transparent 25%),
        linear-gradient(130deg, #111318, #20242c);
    color: #fff;
}

.commerce-contact-heading {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    align-items: start;
    gap: 16px;
}

.commerce-contact-heading-icon {
    display: grid;
    place-items: center;
    width: 54px;
    height: 54px;
    border-radius: 15px;
    background: #ffd000;
    color: #e41f26;
    font-size: 25px;
    box-shadow: 0 10px 28px rgba(255, 208, 0, .18);
}

.commerce-contact-heading > div > span {
    display: block;
    margin-bottom: 4px;
    color: #ffd000;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.commerce-contact-heading h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(22px, 3vw, 31px);
    font-weight: 950;
    line-height: 1.08;
    letter-spacing: -.025em;
}

.commerce-contact-heading p {
    max-width: 680px;
    margin: 8px 0 0;
    color: rgba(255, 255, 255, .68);
    font-size: 14px;
    font-weight: 650;
    line-height: 1.4;
}

.commerce-contact-close {
    display: grid;
    flex: 0 0 44px;
    place-items: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 50%;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    font-size: 18px;
}

.commerce-contact-close:hover,
.commerce-contact-close:focus-visible {
    border-color: #ffd000;
    color: #ffd000;
    outline: 3px solid rgba(255, 208, 0, .2);
    outline-offset: 2px;
}

.commerce-contact-body {
    display: grid;
    grid-template-columns: minmax(230px, .78fr) minmax(0, 1.7fr);
    height: 100%;
    min-height: 0;
    overflow: hidden;
}

.commerce-contact-channels {
    display: grid;
    align-content: start;
    gap: 9px;
    padding: 18px 16px;
    overflow-y: auto;
    border-right: 1px solid #dde0e5;
    background: #eceef2;
}

.commerce-contact-channels a,
.commerce-contact-channels button {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) 18px;
    align-items: center;
    gap: 11px;
    width: 100%;
    min-height: 68px;
    padding: 10px 12px;
    border: 1px solid #d9dde3;
    border-radius: 12px;
    background: #fff;
    color: #22262c;
    text-align: left;
    text-decoration: none;
}

.commerce-contact-channels a > i:first-child,
.commerce-contact-channels button > i:first-child {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 11px;
    background: #f1f2f4;
    color: #e41f26;
    font-size: 19px;
}

.commerce-contact-channels span {
    display: grid;
    min-width: 0;
    gap: 3px;
}

.commerce-contact-channels strong {
    overflow: hidden;
    font-size: 14px;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.commerce-contact-channels small {
    overflow: hidden;
    color: #707681;
    font-size: 11px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.commerce-contact-channels a > i:last-child,
.commerce-contact-channels button > i:last-child {
    color: #89909a;
    text-align: right;
}

.commerce-contact-channels .is-primary {
    border-color: #dfbd00;
    background: #fff8d2;
}

.commerce-contact-channels .is-primary > i:first-child {
    background: #ffd000;
    color: #111;
}

.commerce-contact-channels a:hover,
.commerce-contact-channels a:focus-visible,
.commerce-contact-channels button:hover,
.commerce-contact-channels button:focus-visible {
    border-color: #cdaa00;
    box-shadow: 0 0 0 3px rgba(255, 208, 0, .2);
    outline: 0;
}

.commerce-contact-form {
    min-height: 0;
    padding: 18px 22px;
    overflow-y: auto;
    overscroll-behavior: contain;
    background: #fff;
}

.commerce-contact-honeypot {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
}

.commerce-contact-form-intro {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 14px;
}

.commerce-contact-form-intro > div > span {
    color: #d81d25;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.commerce-contact-form-intro h3 {
    margin: 3px 0 0;
    color: #20242a;
    font-size: 22px;
    font-weight: 950;
}

.commerce-contact-form-intro > small {
    color: #777e88;
    font-size: 11px;
    font-weight: 700;
}

.commerce-contact-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.commerce-contact-grid label {
    display: grid;
    gap: 7px;
    margin: 0;
}

.commerce-contact-grid label > span {
    color: #30343b;
    font-size: 13px;
    font-weight: 850;
}

.commerce-contact-grid input,
.commerce-contact-grid select,
.commerce-contact-grid textarea {
    width: 100%;
    min-width: 0;
    border: 1px solid #cfd4dc;
    border-radius: 9px;
    background: #fff;
    color: #1e2228;
    font-size: 16px;
    font-weight: 650;
    outline: 0;
}

.commerce-contact-grid input,
.commerce-contact-grid select {
    height: 52px;
    padding: 0 13px;
}

.commerce-contact-grid textarea {
    min-height: 116px;
    padding: 12px 13px;
    line-height: 1.45;
    resize: vertical;
}

.commerce-contact-grid input:hover,
.commerce-contact-grid select:hover,
.commerce-contact-grid textarea:hover {
    border-color: #9ea6b2;
}

.commerce-contact-grid input:focus,
.commerce-contact-grid select:focus,
.commerce-contact-grid textarea:focus {
    border-color: #d5b300;
    box-shadow: 0 0 0 3px rgba(255, 208, 0, .22);
}

.commerce-contact-field-wide {
    grid-column: 1 / -1;
}

.commerce-contact-field-wide > small {
    justify-self: end;
    margin-top: -3px;
    color: #7d838c;
    font-size: 11px;
    font-weight: 700;
}

.commerce-contact-form-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 14px;
}

.commerce-contact-form-footer p {
    max-width: 310px;
    margin: 0;
    color: #747a84;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.4;
}

.commerce-contact-form-footer p i {
    margin-right: 5px;
    color: #278a51;
}

.commerce-contact-form-footer button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-width: 190px;
    min-height: 50px;
    padding: 10px 18px;
    border: 0;
    border-radius: 9px;
    background: #111318;
    color: #fff;
    font-size: 14px;
    font-weight: 900;
}

.commerce-contact-form-footer button:hover,
.commerce-contact-form-footer button:focus-visible {
    background: #242932;
    color: #ffd000;
    outline: 3px solid rgba(255, 208, 0, .3);
    outline-offset: 2px;
}

.commerce-contact-form-footer button:disabled {
    cursor: wait;
    opacity: .65;
}

.commerce-contact-feedback {
    min-height: 0;
    margin-top: 12px;
    padding: 0;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 800;
}

.commerce-contact-feedback:not(:empty) {
    min-height: 42px;
    padding: 11px 13px;
}

.commerce-contact-feedback.is-success {
    background: #e9f8ef;
    color: #17643a;
}

.commerce-contact-feedback.is-error {
    background: #fff0f1;
    color: #9c1f2a;
}

@media (max-width: 760px) {
    .commerce-contact-hub {
        display: block;
        padding: 0;
    }

    .commerce-contact-dialog {
        width: 100%;
        max-width: none;
        height: var(--commerce-contact-viewport-height, 100vh);
        height: var(--commerce-contact-viewport-height, 100dvh);
        max-height: none;
        border: 0;
        border-radius: 0;
    }

    .commerce-contact-header {
        padding: max(16px, env(safe-area-inset-top)) 14px 15px;
    }

    .commerce-contact-heading {
        grid-template-columns: 44px minmax(0, 1fr);
        gap: 11px;
    }

    .commerce-contact-heading-icon {
        width: 44px;
        height: 44px;
        border-radius: 12px;
        font-size: 20px;
    }

    .commerce-contact-heading h2 {
        font-size: 20px;
    }

    .commerce-contact-heading p {
        display: none;
    }

    .commerce-contact-body {
        display: block;
        overflow-y: auto;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
    }

    .commerce-contact-channels {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 7px;
        padding: 11px 10px;
        overflow: visible;
        border-right: 0;
        border-bottom: 1px solid #dde0e5;
    }

    .commerce-contact-channels a,
    .commerce-contact-channels button {
        grid-template-columns: 1fr;
        justify-items: center;
        min-height: 82px;
        padding: 8px 5px;
        text-align: center;
    }

    .commerce-contact-channels span {
        display: block;
    }

    .commerce-contact-channels strong {
        display: block;
        font-size: 11px;
        white-space: normal;
    }

    .commerce-contact-channels small,
    .commerce-contact-channels a > i:last-child,
    .commerce-contact-channels button > i:last-child {
        display: none;
    }

    .commerce-contact-form {
        overflow: visible;
        padding: 17px 14px calc(20px + env(safe-area-inset-bottom));
    }

    .commerce-contact-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .commerce-contact-field-wide {
        grid-column: auto;
    }

    .commerce-contact-form-footer {
        align-items: stretch;
        flex-direction: column;
    }

    .commerce-contact-form-footer button {
        width: 100%;
    }

    .commerce-footer-contact button {
        width: 100%;
        justify-content: center;
        font-size: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .commerce-contact-hub,
    .commerce-contact-dialog,
    .commerce-smart-menu,
    .commerce-smart-menu-backdrop,
    .commerce-menu-button {
        scroll-behavior: auto !important;
        transition: none !important;
    }

    .commerce-hero *,
    .commerce-hero *::before,
    .commerce-hero *::after {
        scroll-behavior: auto !important;
        animation: none !important;
        transition-duration: .01ms !important;
    }
}

/* Home 4 Shop: variáveis controladas pelo editor administrativo. */
.commerce-home {
    background: var(--shop-page-bg, #dedede);
    color: var(--shop-text, #101114);
}

.commerce-header {
    display: flex;
    align-items: center;
    gap: 10px;
    background: var(--shop-primary, #ffd000);
}
.commerce-menu-button { flex: 0 0 110px; }
.commerce-brand { flex: 0 1 220px; }
.commerce-header-search { flex: 1 1 320px; }
.commerce-tax-switch,
.commerce-icon-button,
.commerce-participation,
.commerce-cart-button { flex: 0 0 auto; }
.commerce-brand-logo {
    width: var(--shop-logo-zoom, 100%);
    max-width: none;
    transform: translate(var(--shop-logo-offset-x, 0%), var(--shop-logo-offset-y, 0%));
}
.commerce-categories-shell,
.commerce-products-section { background: var(--shop-page-bg, #dedede); }
.commerce-categories-shell,
.commerce-products-section,
.commerce-checkout-strip,
.commerce-footer { max-width: var(--shop-content-max, 2200px); margin-right: auto; margin-left: auto; }
.commerce-categories button,
.commerce-product-card,
.commerce-search-empty { border-radius: var(--shop-card-radius, 8px); background: var(--shop-surface, #fff); color: var(--shop-text, #101114); }
.commerce-categories button i,
.commerce-section-heading i,
.commerce-read-more,
.commerce-product-media button,
.commerce-footer-contact i { color: var(--shop-action, #ff1010); }
.commerce-categories button.is-active,
.commerce-categories button:hover { box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--shop-action, #ff1010) 25%, transparent); }
.commerce-hero-brand {
    top: 28px;
    left: clamp(24px, 3.4vw, 52px);
    gap: 12px;
    max-width: min(360px, calc(100% - 48px));
    min-height: 58px;
    padding: 9px 14px;
    border-radius: 18px;
}
.commerce-hero-brand img {
    display: block;
    width: auto;
    max-width: 150px;
    height: auto;
    max-height: 40px;
    object-fit: contain;
    object-position: left center;
}
.commerce-hero-brand span {
    min-width: 0;
    padding-left: 12px;
    font-size: 12px;
    line-height: 1.2;
    white-space: nowrap;
}
.commerce-hero-content {
    top: 118px;
    width: min(43%, 620px);
}
.commerce-home .commerce-hero h1 {
    max-width: 620px;
    margin-bottom: 13px;
    overflow-wrap: anywhere;
    font-family: "Roboto Condensed", "Arial Narrow", Roboto, Arial, sans-serif;
    font-size: clamp(34px, 3.25vw, 54px);
    font-weight: 850;
    line-height: 1.02;
    letter-spacing: -.035em;
}
.commerce-home .commerce-hero p {
    max-width: 560px;
    font-family: "Roboto Condensed", "Arial Narrow", Roboto, Arial, sans-serif;
    font-size: clamp(15px, 1.15vw, 18px);
    font-weight: 500;
    line-height: 1.4;
}
.commerce-hero-kicker {
    max-width: 100%;
    min-height: 30px;
    margin-bottom: 14px;
    padding: 5px 10px;
    overflow: hidden;
    font-size: 11px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.commerce-hero-badge {
    position: absolute;
    top: 32px;
    right: clamp(24px, 3.4vw, 52px);
    z-index: 2;
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 11px;
    border-radius: 999px;
    background: var(--shop-primary, #ffd000);
    color: var(--shop-text, #101114);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.commerce-hero [hidden] { display: none !important; }
.commerce-hero[data-show-hero-brand="0"] .commerce-hero-content { top: 64px; }
.commerce-hero[data-show-hero-product="0"] .commerce-hero-content { width: min(74%, 860px); }
.commerce-hero-cta,
.commerce-product-actions > button { background: var(--shop-action, #ff1010); }
.commerce-cart-button {
    width: 46px;
    height: 44px;
    border: 1px solid rgba(16, 17, 20, .14);
    border-radius: 12px;
    background: rgba(255, 255, 255, .68);
    color: var(--shop-text, #101114);
    font-size: 20px;
    transition: background-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.commerce-cart-button:hover,
.commerce-cart-button:focus-visible {
    background: #fff;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--shop-action, #ff1010) 18%, transparent);
    outline: 0;
    transform: translateY(-1px);
}
.commerce-cart-button span {
    top: -7px;
    right: -7px;
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    background: var(--shop-action, #ff1010);
    font-size: 11px;
    line-height: 22px;
}
.commerce-price-block strong,
.commerce-tools a { color: var(--shop-action, #ff1010); }
.commerce-product-body h3,
.commerce-product-code,
.commerce-section-heading h2 { color: var(--shop-text, #101114); }
.commerce-product-body p,
.commerce-search-empty { color: var(--shop-muted, #777); }
.commerce-footer { background: var(--shop-footer-bg, #f3f3f3); color: var(--shop-footer-text, #4b4b4b); }
.commerce-footer-contact a,
.commerce-footer-contact button { background: var(--shop-primary, #ffd000); }
.commerce-footer-adm strong { color: var(--shop-primary, #ffd000); }
.commerce-footer-brand > span { color: var(--shop-action, #ff1010); }
.commerce-home[data-shop-wishlist="0"] [data-wishlist-toggle],
.commerce-home[data-shop-wishlist="0"] .commerce-smart-menu-nav a[href="#minha-escolha"] { display: none !important; }

@media (max-width: 820px) {
    .commerce-header {
        display: flex;
        flex-wrap: wrap;
        min-height: 0;
    }
    .commerce-menu-button { flex: 0 0 112px; }
    .commerce-brand { flex: 1 1 100px; }
    .commerce-participation { margin-left: auto; }
    .commerce-header-search { order: 10; flex: 1 0 100%; }
    .commerce-hero-brand {
        top: 16px;
        left: 16px;
        min-height: 48px;
        padding: 7px 10px;
        border-radius: 14px;
    }
    .commerce-hero-brand img { max-width: 112px; max-height: 30px; }
    .commerce-hero-brand span { padding-left: 9px; font-size: 10px; }
    .commerce-hero-badge { top: 76px; right: auto; left: 18px; }
    .commerce-hero-content { top: 315px; }
    .commerce-hero[data-show-hero-brand="0"] .commerce-hero-content { top: 315px; }
    .commerce-hero[data-show-hero-product="0"] .commerce-hero-content { top: 92px; width: auto; }
    .commerce-home .commerce-hero h1 {
        font-size: clamp(28px, 8.2vw, 38px);
        line-height: 1.04;
    }
    .commerce-home .commerce-hero p { font-size: 14px; line-height: 1.35; }
    .commerce-hero-kicker { margin-bottom: 10px; font-size: 10px; }
    .commerce-cart-button { width: 44px; height: 44px; font-size: 19px; }
}

@media (max-width: 560px) {
    .commerce-menu-button { flex-basis: 48px; }
    .commerce-brand { flex: 1 1 64px; }
}
