body.frontend-template-boutique {
    background: #f5f7f9;
    color: #17202a;
}

.frontend-template-boutique a,
.frontend-template-boutique button {
    transition: color .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.frontend-template-boutique .top-navbar {
    background: #17202a !important;
    border: 0 !important;
    color: #fff;
    font-size: 12px;
}

.frontend-template-boutique .top-navbar a,
.frontend-template-boutique .top-navbar .opacity-60 {
    color: rgba(255, 255, 255, .76) !important;
    opacity: 1 !important;
}

.frontend-template-boutique .top-navbar a:hover {
    color: #fff !important;
}

.frontend-template-boutique header {
    background: rgba(255, 255, 255, .98) !important;
    border-bottom: 1px solid #dfe5ea !important;
    box-shadow: 0 10px 32px rgba(21, 33, 48, .08) !important;
}

.frontend-template-boutique .logo-bar-area .container > .d-flex {
    min-height: 78px;
}

.frontend-template-boutique .front-header-search .input-group {
    height: 48px;
    overflow: hidden;
    border: 1px solid #cfd9e2;
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(23, 32, 42, .06);
}

.frontend-template-boutique .front-header-search input {
    height: 48px;
    padding-left: 18px;
    font-size: 14px;
}

.frontend-template-boutique .front-header-search .btn-primary,
.frontend-template-boutique .btn-primary {
    background: #0f766e !important;
    border-color: #0f766e !important;
}

.frontend-template-boutique .front-header-search .btn-primary:hover,
.frontend-template-boutique .btn-primary:hover {
    background: #115e59 !important;
    border-color: #115e59 !important;
}

.frontend-template-boutique .aiz-p-hov-icon a,
.frontend-template-boutique .nav-cart-box .btn {
    border-radius: 6px;
}

.boutique-header {
    background: #fff;
    border-bottom: 1px solid #dfe5ea;
    box-shadow: 0 10px 32px rgba(21, 33, 48, .08);
}

.boutique-topline {
    background: #17202a;
    color: #fff;
    font-size: 12px;
}

.boutique-topline-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 34px;
    gap: 16px;
}

.boutique-switchers,
.boutique-top-links {
    display: flex;
    align-items: center;
    gap: 16px;
}

.boutique-topline a {
    color: rgba(255,255,255,.78);
    font-weight: 700;
}

.boutique-topline a:hover {
    color: #fff;
}

.boutique-topline img {
    margin-right: 6px;
}

.boutique-top-links i {
    margin-right: 5px;
}

.boutique-mainbar {
    background: #fff;
}

.boutique-mainbar-grid {
    display: grid;
    grid-template-columns: 260px minmax(360px, 1fr) 300px;
    gap: 20px;
    align-items: center;
    min-height: 84px;
}

.boutique-logo {
    display: flex;
    align-items: center;
    min-width: 0;
}

.boutique-logo img {
    max-width: 230px;
    max-height: 48px;
}

.boutique-search-wrap {
    display: block;
}

.boutique-search-box {
    display: grid;
    grid-template-columns: 1fr 56px;
    height: 50px;
    overflow: hidden;
    border: 1px solid #cfd9e2;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(23, 32, 42, .06);
}

.boutique-search-box button,
.boutique-search-box input {
    border: 0;
    background: transparent;
}

.boutique-search-box input {
    min-width: 0;
    padding: 0 16px;
    color: #17202a;
}

.boutique-search-box button[type="submit"] {
    background: #0f766e;
    color: #fff;
    font-size: 20px;
}

.boutique-search-box button.d-lg-none {
    display: none;
}

.boutique-mobile-tools {
    display: none;
}

.boutique-action-row {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 14px;
}

.boutique-action-row > div > a,
.boutique-action-row .nav-cart-box > a {
    min-height: 44px;
    padding: 6px 8px;
    border-radius: 8px;
}

.boutique-action-row > div > a:hover,
.boutique-action-row .nav-cart-box > a:hover {
    background: #eef8f6;
}

.boutique-navline {
    border-top: 1px solid #e5ebf0;
    background: #fff;
}

.boutique-navline-inner {
    display: flex;
    align-items: center;
    gap: 4px;
    min-height: 48px;
}

.frontend-template-boutique .boutique-navline {
    overflow: hidden;
}

.frontend-template-boutique .boutique-navline-inner {
    overflow-x: auto;
    overflow-y: hidden;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.frontend-template-boutique .boutique-navline-inner::-webkit-scrollbar {
    display: none;
}

.frontend-template-boutique .boutique-navline-inner > a,
.frontend-template-boutique .boutique-department-menu {
    flex: 0 0 auto;
}

.boutique-navline-inner > a,
.boutique-department-menu > a {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 13px;
    border-radius: 6px;
    color: #344256;
    font-size: 14px;
    font-weight: 900;
}

.boutique-department-menu > a {
    background: #17202a;
    color: #fff;
}

.boutique-department-menu > a i {
    margin-right: 7px;
}

.boutique-navline-inner > a:hover,
.boutique-navline-inner > a.active {
    background: #eef8f6;
    color: #0f766e;
}

.boutique-navline-inner > a.is-cta {
    margin-left: auto;
    background: #0f766e;
    color: #fff;
}

.boutique-department-menu .dropdown-menu {
    min-width: 260px;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    box-shadow: 0 18px 46px rgba(23,32,42,.12);
}

.boutique-department-menu .dropdown-item {
    min-height: 38px;
    font-weight: 800;
}

.template-boutique {
    background: linear-gradient(180deg, #eef4f8 0, #f8fafb 430px, #f5f7f9 100%);
    padding-bottom: 56px;
}

.template-boutique .container {
    width: calc(100% - 64px);
    max-width: 1600px;
}

.frontend-template-boutique .boutique-header .container,
.frontend-template-boutique .boutique-footer-trust .container,
.frontend-template-boutique .boutique-footer-main .container,
.frontend-template-boutique .boutique-footer-bottom .container {
    width: calc(100% - 64px);
    max-width: 1600px;
}

.commerce-hero {
    padding: 22px 0 0;
}

.commerce-hero-layout {
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr) 310px;
    gap: 16px;
    align-items: stretch;
}

.commerce-departments,
.commerce-hero-media,
.commerce-hero-panel,
.commerce-service-row,
.commerce-category-grid a,
.commerce-promo-card,
.commerce-deal-board,
.commerce-product-card,
.commerce-editorial-row a,
.commerce-brand-grid a,
.commerce-last-banner a {
    background: #fff;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .07);
}

.commerce-departments {
    padding: 18px;
    min-height: 430px;
}

.commerce-block-title,
.commerce-section-head {
    color: #17202a;
}

.commerce-block-title span,
.commerce-section-head span,
.commerce-deal-title span {
    display: block;
    color: #0f766e;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.commerce-block-title strong {
    display: block;
    margin-top: 5px;
    font-size: 18px;
}

.commerce-departments nav {
    display: grid;
    gap: 6px;
    margin-top: 18px;
}

.commerce-departments nav a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 38px;
    padding: 0 10px;
    color: #344256;
    border-radius: 6px;
    font-weight: 700;
}

.commerce-departments nav a:hover {
    background: #eef8f6;
    color: #0f766e;
}

.commerce-hero-media {
    position: relative;
    display: block;
    min-height: 430px;
    overflow: hidden;
    color: #fff;
}

.commerce-hero-media img {
    width: 100%;
    height: 100%;
    min-height: 430px;
    object-fit: cover;
}

.commerce-hero-media:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(10, 18, 28, .72), rgba(10, 18, 28, .08) 58%, rgba(10, 18, 28, .18));
}

.commerce-hero-copy {
    position: absolute;
    left: 34px;
    bottom: 34px;
    z-index: 1;
    max-width: 500px;
}

.commerce-hero-copy span {
    display: inline-flex;
    padding: 7px 10px;
    background: rgba(255, 255, 255, .16);
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 999px;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.commerce-hero-copy h1 {
    margin: 14px 0 12px;
    color: #fff;
    font-size: 44px;
    line-height: 1.06;
    font-weight: 800;
}

.commerce-hero-copy p {
    margin: 0 0 20px;
    color: rgba(255, 255, 255, .86);
    font-size: 16px;
    line-height: 1.72;
}

.commerce-hero-copy strong,
.commerce-deal-title a,
.commerce-section-head > a,
.commerce-countdown-wrap a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 16px;
    border-radius: 6px;
    background: #0f766e;
    color: #fff;
    font-weight: 800;
}

.commerce-hero-copy strong:hover,
.commerce-deal-title a:hover,
.commerce-section-head > a:hover,
.commerce-countdown-wrap a:hover {
    background: #115e59;
    color: #fff;
}

.commerce-hero-panel {
    display: grid;
    grid-template-rows: auto repeat(3, 1fr);
    gap: 12px;
    min-height: 430px;
    padding: 14px;
}

.commerce-search-card {
    padding: 16px;
    border-radius: 8px;
    background: #17202a;
}

.commerce-search-card label {
    display: block;
    margin-bottom: 10px;
    color: #fff;
    font-size: 14px;
    font-weight: 800;
}

.commerce-search-card div {
    display: grid;
    grid-template-columns: 1fr 42px;
    overflow: hidden;
    border-radius: 6px;
    background: #fff;
}

.commerce-search-card input,
.commerce-search-card button {
    height: 42px;
    border: 0;
}

.commerce-search-card input {
    min-width: 0;
    padding: 0 12px;
}

.commerce-search-card button {
    background: #0f766e;
    color: #fff;
    font-size: 18px;
}

.commerce-mini-product {
    display: grid;
    grid-template-columns: 86px 1fr;
    gap: 12px;
    align-items: center;
    padding: 10px;
    border: 1px solid #e5ebf0;
    border-radius: 8px;
    color: #17202a;
}

.commerce-mini-product:hover {
    border-color: #93c9c3;
    box-shadow: 0 10px 28px rgba(15, 118, 110, .12);
    color: #17202a;
}

.commerce-mini-product img {
    width: 86px;
    height: 86px;
    object-fit: cover;
    border-radius: 6px;
    background: #f2f5f7;
}

.commerce-mini-product strong {
    display: block;
    max-height: 40px;
    overflow: hidden;
    font-size: 13px;
    line-height: 1.45;
}

.commerce-mini-product em {
    display: block;
    margin-top: 6px;
    color: #c2410c;
    font-style: normal;
    font-weight: 800;
}

.commerce-service-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    margin-top: 16px;
    overflow: hidden;
}

.commerce-service-row div {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 74px;
    border-right: 1px solid #e5ebf0;
    color: #344256;
    font-weight: 800;
}

.commerce-service-row div:last-child {
    border-right: 0;
}

.commerce-service-row i {
    color: #0f766e;
    font-size: 28px;
}

.commerce-quick-row {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
    margin-top: 16px;
}

.commerce-quick-row a,
.commerce-coupon-board,
.commerce-floor,
.commerce-shop-card,
.commerce-operation-grid > div {
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .07);
}

.commerce-quick-row a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 66px;
    color: #17202a;
    font-weight: 900;
}

.commerce-quick-row i {
    color: #0f766e;
    font-size: 24px;
}

.commerce-stat-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 16px;
}

.commerce-stat-row div {
    min-height: 74px;
    padding: 14px 16px;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .06);
}

.commerce-stat-row strong,
.commerce-stat-row span {
    display: block;
}

.commerce-stat-row strong {
    color: #17202a;
    font-size: 22px;
    font-weight: 900;
}

.commerce-stat-row span {
    margin-top: 4px;
    color: #657386;
    font-size: 13px;
    font-weight: 800;
}

.commerce-quick-row a:hover {
    border-color: #93c9c3;
    color: #0f766e;
    transform: translateY(-2px);
}

.commerce-section {
    margin-top: 30px;
}

.commerce-coupon-board {
    display: grid;
    grid-template-columns: 260px 1fr;
    gap: 18px;
    padding: 18px;
    background: linear-gradient(135deg, #17202a, #203142);
    color: #fff;
}

.commerce-coupon-title {
    padding: 8px;
}

.commerce-coupon-title span {
    display: block;
    color: #8ee4d7;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.commerce-coupon-title h2 {
    margin: 6px 0 14px;
    color: #fff;
    font-size: 28px;
    font-weight: 900;
}

.commerce-coupon-title a {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 14px;
    border-radius: 6px;
    background: #0f766e;
    color: #fff;
    font-weight: 900;
}

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

.commerce-coupon-card {
    display: grid;
    align-content: center;
    min-height: 124px;
    padding: 18px;
    border: 1px dashed rgba(255, 255, 255, .36);
    border-radius: 8px;
    background: rgba(255, 255, 255, .09);
    color: #fff;
}

.commerce-coupon-card span {
    color: #ffd6cc;
    font-size: 25px;
    font-weight: 900;
}

.commerce-coupon-card strong,
.commerce-coupon-card em {
    display: block;
    color: #fff;
}

.commerce-coupon-card strong {
    margin-top: 2px;
    font-size: 14px;
}

.commerce-coupon-card em {
    margin-top: 10px;
    font-size: 12px;
    font-style: normal;
    opacity: .75;
}

.commerce-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 16px;
}

.commerce-section-head h2 {
    margin: 4px 0 0;
    font-size: 28px;
    line-height: 1.2;
    font-weight: 800;
}

.commerce-section-head > a {
    min-width: 118px;
    background: #fff;
    border: 1px solid #cfd9e2;
    color: #17202a;
}

.commerce-section-head > a i {
    margin-left: 6px;
}

.commerce-section-head > a:hover {
    border-color: #0f766e;
}

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

.commerce-category-grid a {
    display: block;
    overflow: hidden;
    color: #17202a;
}

.commerce-category-grid img {
    width: 100%;
    height: 112px;
    object-fit: cover;
    background: #edf2f5;
}

.commerce-category-grid span {
    display: block;
    min-height: 44px;
    padding: 12px;
    overflow: hidden;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.35;
}

.commerce-promo-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr;
    gap: 14px;
}

.commerce-promo-card {
    position: relative;
    min-height: 210px;
    overflow: hidden;
    color: #fff;
}

.commerce-promo-card.is-wide {
    grid-row: span 2;
    min-height: 434px;
}

.commerce-promo-card img,
.commerce-editorial-row img,
.commerce-last-banner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.commerce-promo-card:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .03) 20%, rgba(0, 0, 0, .58));
}

.commerce-promo-card span {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 18px;
    z-index: 1;
}

.commerce-promo-card small,
.commerce-promo-card strong {
    display: block;
    color: #fff;
}

.commerce-promo-card small {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.commerce-promo-card strong {
    margin-top: 5px;
    font-size: 20px;
}

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

.commerce-channel-card {
    overflow: hidden;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .07);
}

.commerce-channel-cover {
    position: relative;
    display: block;
    height: 190px;
    overflow: hidden;
    color: #fff;
    background: #17202a;
}

.commerce-channel-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .78;
}

.commerce-channel-cover:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .05), rgba(0, 0, 0, .62));
}

.commerce-channel-cover span {
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 16px;
    z-index: 1;
    color: #fff;
    font-size: 22px;
    font-weight: 900;
    line-height: 1.2;
}

.commerce-channel-products {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    padding: 12px;
}

.commerce-channel-products a {
    min-width: 0;
    color: #17202a;
}

.commerce-channel-products img {
    width: 100%;
    height: 104px;
    border-radius: 6px;
    background: #edf2f5;
    object-fit: cover;
}

.commerce-channel-products span {
    display: block;
    height: 36px;
    margin-top: 8px;
    overflow: hidden;
    color: #344256;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.45;
}

.commerce-deal-board {
    display: grid;
    grid-template-columns: 260px 1fr;
    gap: 18px;
    padding: 18px;
    background: #17202a;
    border-color: #17202a;
    color: #fff;
}

.commerce-deal-title {
    padding: 10px;
}

.commerce-deal-title span,
.commerce-deal-title h2 {
    color: #fff;
}

.commerce-deal-title h2 {
    margin: 6px 0 10px;
    font-size: 30px;
    font-weight: 800;
}

.commerce-deal-title p {
    color: rgba(255, 255, 255, .72);
    line-height: 1.7;
}

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

.commerce-product-card {
    position: relative;
    overflow: hidden;
}

.commerce-product-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 46px rgba(23, 32, 42, .11);
}

.commerce-deal-board .commerce-product-card {
    box-shadow: none;
}

.commerce-product-image {
    position: relative;
    display: block;
    height: 238px;
    background: #edf2f5;
}

.commerce-product-card.compact .commerce-product-image {
    height: 178px;
}

.commerce-product-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.commerce-product-image b {
    position: absolute;
    left: 10px;
    top: 10px;
    z-index: 1;
    padding: 5px 8px;
    border-radius: 6px;
    background: #c2410c;
    color: #fff;
    font-size: 12px;
}

.commerce-product-body {
    padding: 14px;
}

.commerce-product-price {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    min-height: 24px;
}

.commerce-product-price del {
    color: #8a97a5;
    font-size: 12px;
}

.commerce-product-body strong,
.commerce-product-price strong {
    color: #c2410c;
    font-size: 16px;
    font-weight: 900;
}

.commerce-product-body h3 {
    height: 40px;
    margin: 8px 0 8px;
    overflow: hidden;
    font-size: 14px;
    line-height: 1.45;
    font-weight: 800;
}

.commerce-product-body h3 a,
.commerce-product-body > a {
    color: #17202a;
}

.commerce-product-body h3 a:hover,
.commerce-product-body > a:hover {
    color: #0f766e;
}

.commerce-product-body > a {
    display: block;
    height: 40px;
    margin-top: 7px;
    overflow: hidden;
    font-weight: 800;
    line-height: 1.45;
}

.commerce-product-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-height: 22px;
    color: #6b7a8a;
    font-size: 12px;
}

.commerce-product-actions {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    margin-top: 12px;
}

.commerce-product-actions button {
    height: 36px;
    border: 1px solid #d7e0e7;
    border-radius: 6px;
    background: #f8fafb;
    color: #344256;
    font-size: 18px;
}

.commerce-product-actions button:hover {
    border-color: #0f766e;
    background: #eef8f6;
    color: #0f766e;
}

.commerce-floor-list {
    display: grid;
    gap: 18px;
}

.commerce-floor {
    display: grid;
    grid-template-columns: 260px 1fr;
    gap: 16px;
    padding: 16px;
}

.commerce-floor-cover {
    position: relative;
    display: block;
    min-height: 100%;
    overflow: hidden;
    border-radius: 8px;
    color: #fff;
    background: #17202a;
}

.commerce-floor-cover img {
    width: 100%;
    height: 100%;
    min-height: 360px;
    object-fit: cover;
    opacity: .74;
}

.commerce-floor-cover:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.70));
}

.commerce-floor-cover span,
.commerce-floor-cover strong,
.commerce-floor-cover em {
    position: absolute;
    left: 22px;
    right: 22px;
    z-index: 1;
    color: #fff;
}

.commerce-floor-cover span {
    bottom: 112px;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.commerce-floor-cover strong {
    bottom: 62px;
    font-size: 27px;
    line-height: 1.15;
    font-weight: 900;
}

.commerce-floor-cover em {
    bottom: 22px;
    font-style: normal;
    font-weight: 900;
}

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

.commerce-countdown-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
}

.commerce-countdown-wrap .aiz-count-down {
    color: #17202a;
    font-weight: 800;
}

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

.commerce-editorial-row a,
.commerce-last-banner a {
    display: block;
    overflow: hidden;
}

.commerce-editorial-row a {
    height: 240px;
}

.commerce-brand-section {
    padding-bottom: 8px;
}

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

.commerce-brand-grid a {
    display: grid;
    grid-template-columns: 58px 1fr;
    gap: 12px;
    align-items: center;
    min-height: 82px;
    padding: 12px;
    color: #17202a;
    font-weight: 800;
}

.commerce-brand-grid img {
    width: 58px;
    height: 58px;
    object-fit: contain;
    border-radius: 6px;
    background: #f3f6f8;
}

.commerce-brand-grid a:hover {
    border-color: #93c9c3;
    color: #0f766e;
}

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

.commerce-shop-card {
    display: grid;
    grid-template-columns: 82px 1fr;
    gap: 14px;
    align-items: center;
    min-height: 112px;
    padding: 14px;
    color: #17202a;
}

.commerce-shop-card img {
    width: 82px;
    height: 82px;
    object-fit: contain;
    border-radius: 8px;
    background: #f3f6f8;
}

.commerce-shop-card strong,
.commerce-shop-card small {
    display: block;
}

.commerce-shop-card strong {
    font-size: 16px;
    font-weight: 900;
}

.commerce-shop-card em {
    display: block;
    margin: 6px 0;
    font-style: normal;
}

.commerce-shop-card small {
    color: #0f766e;
    font-weight: 900;
}

.commerce-rank-board {
    display: grid;
    grid-template-columns: 360px 1fr;
    gap: 18px;
    align-items: start;
}

.commerce-rank-list {
    padding: 18px;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .07);
}

.commerce-rank-list .commerce-section-head {
    margin-bottom: 12px;
}

.commerce-rank-list a {
    display: grid;
    grid-template-columns: 32px 68px 1fr;
    gap: 12px;
    align-items: center;
    min-height: 84px;
    padding: 10px 0;
    border-top: 1px solid #edf2f5;
    color: #17202a;
}

.commerce-rank-list a:first-of-type {
    border-top: 0;
}

.commerce-rank-list em {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    background: #17202a;
    color: #fff;
    font-style: normal;
    font-weight: 900;
}

.commerce-rank-list img {
    width: 68px;
    height: 68px;
    border-radius: 6px;
    background: #edf2f5;
    object-fit: cover;
}

.commerce-rank-list strong,
.commerce-rank-list small {
    display: block;
}

.commerce-rank-list strong {
    max-height: 40px;
    overflow: hidden;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 900;
}

.commerce-rank-list small {
    margin-top: 5px;
    color: #c2410c;
    font-weight: 900;
}

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

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

.commerce-operation-grid > div {
    padding: 22px;
}

.commerce-operation-grid i {
    color: #0f766e;
    font-size: 34px;
}

.commerce-operation-grid strong,
.commerce-operation-grid span {
    display: block;
}

.commerce-operation-grid strong {
    margin-top: 12px;
    color: #17202a;
    font-size: 18px;
    font-weight: 900;
}

.commerce-operation-grid span {
    margin-top: 8px;
    color: #657386;
    line-height: 1.65;
}

.commerce-operation-grid a {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    margin-top: 16px;
    padding: 0 14px;
    border-radius: 6px;
    background: #eef8f6;
    color: #0f766e;
    font-weight: 900;
}

.commerce-subscribe-band {
    display: grid;
    grid-template-columns: 1fr minmax(300px, 520px);
    gap: 18px;
    align-items: center;
    padding: 22px;
    border-radius: 8px;
    background: #17202a;
    color: #fff;
    box-shadow: 0 18px 45px rgba(23, 32, 42, .13);
}

.commerce-subscribe-band span,
.commerce-subscribe-band strong {
    display: block;
    color: #fff;
}

.commerce-subscribe-band span {
    color: #8ee4d7;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.commerce-subscribe-band strong {
    margin-top: 5px;
    font-size: 24px;
    font-weight: 900;
    line-height: 1.25;
}

.commerce-subscribe-band form {
    display: grid;
    grid-template-columns: 1fr 138px;
    gap: 10px;
}

.commerce-subscribe-band input {
    min-width: 0;
    height: 46px;
    padding: 0 14px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 6px;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    font-weight: 800;
}

.commerce-subscribe-band input::placeholder {
    color: rgba(255, 255, 255, .7);
}

.commerce-subscribe-band button {
    height: 46px;
    border: 0;
    border-radius: 6px;
    background: #0f766e;
    color: #fff;
    font-weight: 900;
}

.commerce-last-banner .container {
    display: grid;
    gap: 14px;
}

.commerce-last-banner a {
    min-height: 220px;
}

.frontend-template-boutique section.bg-white.border-top {
    background: #fff !important;
    border-top: 1px solid #dfe5ea !important;
}

.frontend-template-boutique section.bg-white.border-top a {
    border-color: #e5ebf0 !important;
}

.frontend-template-boutique section.bg-white.border-top i {
    color: #0f766e !important;
}

.frontend-template-boutique .footer-widget {
    background: #17202a !important;
}

.frontend-template-boutique footer.bg-black {
    background: #0c1117 !important;
}

.frontend-template-boutique .footer-widget .btn-primary {
    background: #0f766e !important;
}

.frontend-template-boutique .footer-widget input.form-control {
    border-radius: 6px 0 0 6px;
}

.frontend-template-boutique .footer-widget button {
    border-radius: 0 6px 6px 0;
}

.frontend-template-boutique .aiz-mobile-bottom-nav {
    border-radius: 14px 14px 0 0 !important;
}

.frontend-template-boutique .aiz-mobile-bottom-nav .bg-primary {
    background: #0f766e !important;
}

.frontend-template-boutique .gry-bg,
.frontend-template-boutique .bg-light {
    background: #f5f7f9 !important;
}

.frontend-template-boutique .breadcrumb {
    margin-bottom: 14px;
    padding: 11px 14px !important;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff !important;
    box-shadow: 0 10px 30px rgba(23, 32, 42, .05);
}

.frontend-template-boutique .breadcrumb-item,
.frontend-template-boutique .breadcrumb a {
    color: #657386 !important;
    font-size: 13px;
    font-weight: 700;
    opacity: 1 !important;
}

.frontend-template-boutique .gry-bg,
.frontend-template-boutique section.gry-bg,
.frontend-template-boutique section.pt-5,
.frontend-template-boutique section.py-5,
.frontend-template-boutique section.py-4 {
    background: linear-gradient(180deg, #eef4f8 0, #f8fafb 300px, #f5f7f9 100%) !important;
}

.frontend-template-boutique .card,
.frontend-template-boutique .shadow-sm.bg-white,
.frontend-template-boutique .bg-white.rounded,
.frontend-template-boutique .border.rounded,
.frontend-template-boutique .modal-content {
    border: 1px solid #dfe5ea !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: 0 18px 45px rgba(23, 32, 42, .08) !important;
}

.frontend-template-boutique .card-header,
.frontend-template-boutique .modal-header {
    border-bottom: 1px solid #e5ebf0 !important;
    background: #fff !important;
}

.frontend-template-boutique .card h1,
.frontend-template-boutique .card h2,
.frontend-template-boutique .card h3,
.frontend-template-boutique .modal-title,
.frontend-template-boutique h1.h4,
.frontend-template-boutique h3.h3,
.frontend-template-boutique h3.h4 {
    color: #17202a !important;
    font-weight: 900 !important;
}

.frontend-template-boutique .form-control,
.frontend-template-boutique .custom-select,
.frontend-template-boutique .bootstrap-select > .dropdown-toggle {
    min-height: 44px;
    border-color: #d7e0e7 !important;
    border-radius: 6px !important;
    color: #17202a !important;
    font-weight: 700;
}

.frontend-template-boutique textarea.form-control {
    min-height: 110px;
}

.frontend-template-boutique .form-control:focus,
.frontend-template-boutique .custom-select:focus {
    border-color: #0f766e !important;
    box-shadow: 0 0 0 3px rgba(15, 118, 110, .12) !important;
}

.frontend-template-boutique .btn-primary,
.frontend-template-boutique .btn-soft-primary:hover {
    border-color: #0f766e !important;
    background: #0f766e !important;
    color: #fff !important;
}

.frontend-template-boutique .btn-link {
    color: #0f766e !important;
    font-weight: 900;
}

.frontend-template-boutique .btn-soft-primary,
.frontend-template-boutique .btn-light {
    border-color: #d7e0e7 !important;
    border-radius: 6px !important;
    background: #f8fafb !important;
    color: #344256 !important;
}

.frontend-template-boutique .aiz-steps {
    padding: 18px;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .06);
}

.frontend-template-boutique .aiz-steps .col > div {
    min-height: 84px;
    padding: 8px 4px;
    border-radius: 8px;
}

.frontend-template-boutique .aiz-steps .active > div,
.frontend-template-boutique .aiz-steps .done > div {
    background: #eef8f6;
}

.frontend-template-boutique .aiz-steps i {
    color: #0f766e;
}

.frontend-template-boutique .list-group-item {
    border-color: #edf2f5 !important;
}

.frontend-template-boutique #cart-summary .list-group-item {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
}

.frontend-template-boutique #cart-summary img {
    width: 72px !important;
    height: 72px !important;
    object-fit: cover;
    border-radius: 8px !important;
    background: #edf2f5;
}

.frontend-template-boutique .aiz-plus-minus {
    width: 128px;
    overflow: hidden;
    border: 1px solid #d7e0e7;
    border-radius: 8px;
    background: #f8fafb;
}

.frontend-template-boutique .aiz-plus-minus .btn,
.frontend-template-boutique .aiz-plus-minus input {
    height: 38px;
    border-radius: 0 !important;
    background: transparent !important;
}

.frontend-template-boutique .separator span {
    background: #fff !important;
}

.frontend-template-boutique .social.colored a,
.frontend-template-boutique ul.social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 8px;
}

.frontend-template-boutique .aiz-megabox-elem {
    border-color: #dfe5ea !important;
    border-radius: 8px !important;
}

.frontend-template-boutique .aiz-megabox input:checked ~ .aiz-megabox-elem {
    border-color: #0f766e !important;
    box-shadow: 0 0 0 3px rgba(15, 118, 110, .12);
}

.frontend-template-boutique .table,
.frontend-template-boutique .table td,
.frontend-template-boutique .table th {
    border-color: #e5ebf0 !important;
}

.frontend-template-boutique .page-link {
    min-width: 38px;
    min-height: 38px;
    margin: 0 3px;
    border-color: #d7e0e7;
    border-radius: 6px !important;
    color: #344256;
    font-weight: 800;
}

.frontend-template-boutique .page-item.active .page-link {
    border-color: #0f766e;
    background: #0f766e;
}

.frontend-template-boutique .profile .card {
    overflow: hidden;
}

.frontend-template-boutique .profile .card:before {
    content: "";
    display: block;
    height: 6px;
    background: linear-gradient(90deg, #0f766e, #17202a);
}

.frontend-template-boutique .profile .card .text-center.pt-4 {
    padding-top: 28px !important;
}

.frontend-template-boutique .seller-shop-boutique,
.frontend-template-boutique section.bg-white:first-child {
    background: linear-gradient(180deg, #eef4f8 0, #fff 100%) !important;
}

.frontend-template-boutique .seller-shop-boutique-header,
.frontend-template-boutique section.bg-white:first-child .d-flex.justify-content-center {
    padding: 22px;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 45px rgba(23, 32, 42, .08);
}

.frontend-template-boutique section.bg-white:first-child h1 {
    color: #17202a;
    font-weight: 900;
}

.frontend-template-boutique section.bg-white:first-child ul.list-inline a {
    border-radius: 6px 6px 0 0;
}

.frontend-template-boutique section.bg-white:first-child ul.list-inline a.border-primary {
    border-color: #0f766e !important;
    color: #0f766e !important;
}

.frontend-template-boutique .product-box-2,
.frontend-template-boutique .product-box-3,
.frontend-template-boutique .product-box,
.frontend-template-boutique .aiz-card-box {
    border: 1px solid #dfe5ea !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: 0 12px 32px rgba(23, 32, 42, .06) !important;
}

.frontend-template-boutique .breadcrumb .fw-600,
.frontend-template-boutique .breadcrumb-item:last-child,
.frontend-template-boutique .breadcrumb-item:last-child a {
    color: #17202a !important;
}

.frontend-template-boutique .card,
.frontend-template-boutique .bg-white.shadow-sm,
.frontend-template-boutique .bg-white.shadow-sm.rounded,
.frontend-template-boutique .aiz-filter-sidebar .bg-white,
.frontend-template-boutique .collapse-sidebar .bg-white,
.frontend-template-boutique .profile .card,
.frontend-template-boutique #cart-summary,
.frontend-template-boutique .checkout-step,
.frontend-template-boutique .aiz-card-box {
    border: 1px solid #dfe5ea !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .07) !important;
}

.frontend-template-boutique .card-header,
.frontend-template-boutique .border-bottom {
    border-color: #e5ebf0 !important;
}

.frontend-template-boutique .aiz-filter-sidebar .fs-15.fw-600,
.frontend-template-boutique .card-header h5,
.frontend-template-boutique .card-header h6 {
    color: #17202a;
    font-weight: 800 !important;
}

.frontend-template-boutique #search-form h1.h6 {
    margin: 0;
    color: #17202a !important;
    font-size: 26px;
    font-weight: 900;
}

.frontend-template-boutique #search-form .form-control,
.frontend-template-boutique .form-default .form-control,
.frontend-template-boutique .profile .form-control,
.frontend-template-boutique select.form-control,
.frontend-template-boutique textarea.form-control,
.frontend-template-boutique input.form-control {
    min-height: 44px;
    border-color: #cfd9e2;
    border-radius: 6px;
    background: #fff;
    color: #17202a;
}

.frontend-template-boutique #search-form .bootstrap-select .dropdown-toggle,
.frontend-template-boutique .bootstrap-select .dropdown-toggle {
    min-height: 44px;
    border-color: #cfd9e2 !important;
    border-radius: 6px !important;
    background: #fff !important;
    color: #17202a !important;
}

.frontend-template-boutique .aiz-checkbox .aiz-square-check,
.frontend-template-boutique .aiz-megabox .aiz-megabox-elem {
    border-color: #cfd9e2;
    border-radius: 6px !important;
}

.frontend-template-boutique .aiz-checkbox input:checked ~ .aiz-square-check,
.frontend-template-boutique .aiz-megabox input:checked ~ .aiz-megabox-elem {
    border-color: #0f766e !important;
    background: #eef8f6;
    color: #0f766e;
}

.frontend-template-boutique .aiz-pagination .page-link {
    min-width: 38px;
    height: 38px;
    margin: 0 3px;
    border: 1px solid #d7e0e7;
    border-radius: 6px !important;
    color: #344256;
    font-weight: 800;
}

.frontend-template-boutique .aiz-pagination .active .page-link,
.frontend-template-boutique .page-item.active .page-link {
    background: #0f766e;
    border-color: #0f766e;
    color: #fff;
}

.frontend-template-boutique .product-gallery .carousel-box,
.frontend-template-boutique .product-gallery-thumb .carousel-box {
    overflow: hidden;
    border: 1px solid #dfe5ea !important;
    border-radius: 8px !important;
    background: #f3f6f8;
}

.frontend-template-boutique .product-gallery img {
    width: 100%;
    background: #f3f6f8;
}

.frontend-template-boutique .product-gallery-thumb img {
    object-fit: cover;
}

.frontend-template-boutique .product-quantity .btn {
    border-radius: 6px !important;
    background: #eef3f6;
}

.frontend-template-boutique .product-quantity input {
    min-height: 36px;
    border-radius: 6px;
    background: #fff;
}

.frontend-template-boutique .text-primary,
.frontend-template-boutique .hov-text-primary:hover {
    color: #0f766e !important;
}

.frontend-template-boutique .btn-soft-primary {
    background: #eef8f6 !important;
    color: #0f766e !important;
    border-color: #c8e4df !important;
}

.frontend-template-boutique .btn-soft-primary:hover {
    background: #dff1ee !important;
    color: #115e59 !important;
}

.frontend-template-boutique .buy-now,
.frontend-template-boutique .add-to-cart,
.frontend-template-boutique .btn-primary,
.frontend-template-boutique .btn-soft-primary,
.frontend-template-boutique .btn-secondary {
    min-height: 42px;
    border-radius: 6px !important;
    font-weight: 800;
}

.frontend-template-boutique .profile {
    padding: 12px 0;
}

.frontend-template-boutique .profile .card {
    overflow: hidden;
}

.frontend-template-boutique .profile .card h1 {
    color: #17202a;
    font-size: 24px;
    font-weight: 900;
}

.frontend-template-boutique .profile .card:before {
    content: "";
    display: block;
    height: 6px;
    background: linear-gradient(90deg, #0f766e, #2563eb, #c2410c);
}

.frontend-template-boutique .separator span {
    color: #657386;
    font-weight: 700;
}

.frontend-template-boutique .table {
    overflow: hidden;
    border-radius: 8px;
}

.frontend-template-boutique .table thead th {
    border-bottom: 1px solid #dfe5ea;
    background: #f3f6f8;
    color: #344256;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.frontend-template-boutique .table td,
.frontend-template-boutique .table th {
    border-color: #e5ebf0;
}

.frontend-template-boutique .cart-summary,
.frontend-template-boutique .cart-details,
.frontend-template-boutique .payment-option,
.frontend-template-boutique .delivery-info {
    border-radius: 8px;
}

.frontend-template-boutique .list-group-item {
    border-color: #e5ebf0;
}

.frontend-template-boutique .badge-primary,
.frontend-template-boutique .bg-primary {
    background-color: #0f766e !important;
}

.frontend-template-boutique .border-primary {
    border-color: #0f766e !important;
}

.frontend-template-boutique .aiz-card-box {
    overflow: hidden;
}

.frontend-template-boutique .aiz-card-box .badge-custom {
    background: #c2410c;
    border-radius: 0 0 6px 0;
}

.frontend-template-boutique .aiz-card-box .aiz-p-hov-icon a {
    border: 1px solid #d7e0e7;
    background: #fff;
    color: #344256;
}

.frontend-template-boutique .aiz-card-box .aiz-p-hov-icon a:hover {
    background: #0f766e;
    color: #fff;
}

.frontend-template-boutique .modal-content {
    border: 0;
    border-radius: 8px;
    box-shadow: 0 28px 80px rgba(23, 32, 42, .24);
}

.frontend-template-boutique .modal-header {
    border-color: #e5ebf0;
}

.boutique-footer-trust {
    margin-top: auto;
    background: #fff;
    border-top: 1px solid #dfe5ea;
}

.boutique-footer-trust-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.boutique-footer-trust-grid a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 90px;
    border-right: 1px solid #e5ebf0;
    color: #17202a;
    font-weight: 900;
}

.boutique-footer-trust-grid a:first-child {
    border-left: 1px solid #e5ebf0;
}

.boutique-footer-trust-grid i {
    color: #0f766e;
    font-size: 30px;
}

.boutique-footer-main {
    background: #17202a;
    color: rgba(255,255,255,.76);
    padding: 48px 0;
}

.boutique-footer-grid {
    display: grid;
    grid-template-columns: minmax(260px, 1.5fr) repeat(4, minmax(140px, 1fr));
    gap: 28px;
}

.boutique-footer-brand img {
    max-width: 230px;
    max-height: 52px;
}

.boutique-footer-copy {
    margin-top: 16px;
    line-height: 1.72;
}

.boutique-subscribe {
    display: grid;
    grid-template-columns: 1fr 112px;
    margin-top: 20px;
    max-width: 430px;
    overflow: hidden;
    border-radius: 8px;
    background: #fff;
}

.boutique-subscribe input,
.boutique-subscribe button {
    height: 46px;
    border: 0;
}

.boutique-subscribe input {
    min-width: 0;
    padding: 0 14px;
}

.boutique-subscribe button {
    background: #0f766e;
    color: #fff;
    font-weight: 900;
}

.boutique-footer-col h4 {
    margin: 0 0 15px;
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.boutique-footer-col a,
.boutique-footer-col span {
    display: block;
    color: rgba(255,255,255,.68);
    line-height: 1.55;
    margin-bottom: 10px;
}

.boutique-footer-col a:hover {
    color: #fff;
}

.boutique-footer-contact span a {
    display: inline;
    margin: 0;
}

.boutique-social {
    display: flex;
    gap: 8px;
    margin-top: 16px;
}

.boutique-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin: 0;
    border-radius: 999px;
    background: rgba(255,255,255,.10);
    color: #fff;
}

.boutique-footer-bottom {
    background: #0c1117;
    color: rgba(255,255,255,.62);
    padding: 16px 0 20px;
}

.boutique-footer-bottom-grid {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.boutique-footer-bottom ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.boutique-footer-bottom img {
    max-height: 30px;
}

.boutique-mobile-bottom {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    min-height: 62px;
    border: 1px solid #dfe5ea;
    border-bottom: 0;
    border-radius: 16px 16px 0 0;
    background: #fff;
    box-shadow: 0 -12px 32px rgba(23,32,42,.14);
}

.boutique-mobile-bottom a {
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 2px;
    color: #657386;
    font-size: 10px;
    font-weight: 800;
}

.boutique-mobile-bottom i {
    font-size: 21px;
}

.boutique-mobile-bottom .is-cart i {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: -24px;
    border: 4px solid #fff;
    border-radius: 999px;
    background: #0f766e;
    color: #fff;
    box-shadow: 0 -8px 22px rgba(15,118,110,.32);
}

.boutique-product-page {
    background: linear-gradient(180deg, #eef4f8 0, #f8fafb 360px, #f5f7f9 100%);
    padding: 18px 0 56px;
}

.boutique-product-page .container {
    max-width: 1240px;
}

.bpdp-shell {
    display: grid;
    grid-template-columns: minmax(360px, .95fr) minmax(0, 1.15fr) 270px;
    gap: 16px;
    align-items: start;
}

.bpdp-gallery-card,
.bpdp-info-card,
.bpdp-side-card,
.bpdp-tabs-card,
.bpdp-more-card,
.bpdp-query-card {
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .07);
}

.bpdp-gallery-card {
    padding: 14px;
    position: sticky;
    top: 96px;
}

.bpdp-gallery-main {
    overflow: hidden;
    border-radius: 8px;
    background: #f3f6f8;
}

.bpdp-gallery-main .carousel-box {
    min-height: 520px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bpdp-gallery-main img {
    width: 100%;
    max-height: 560px;
    object-fit: contain;
}

.bpdp-thumbs {
    margin-top: 12px;
}

.bpdp-thumbs .carousel-box {
    width: 74px;
    height: 74px;
    padding: 6px;
    margin-right: 8px;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
}

.bpdp-thumbs .carousel-box.slick-current,
.bpdp-thumbs .carousel-box:hover {
    border-color: #0f766e;
}

.bpdp-thumbs img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.bpdp-info-card {
    padding: 22px;
}

.bpdp-label-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}

.bpdp-badge,
.bpdp-brand {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
}

.bpdp-badge {
    background: #fff1eb;
    color: #c2410c;
}

.bpdp-brand {
    background: #eef8f6;
    color: #0f766e;
}

.bpdp-info-card h1 {
    margin: 0;
    color: #17202a;
    font-size: 26px;
    font-weight: 900;
    line-height: 1.32;
}

.bpdp-rating-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    align-items: center;
    margin-top: 12px;
    color: #657386;
    font-size: 13px;
    font-weight: 700;
}

.bpdp-price-panel {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 10px;
    margin-top: 18px;
    padding: 18px;
    border-radius: 8px;
    background: linear-gradient(135deg, #fff7ed, #f0fdfa);
    border: 1px solid #f1dfcf;
}

.bpdp-price-panel del {
    color: #8a97a5;
    font-size: 15px;
    font-weight: 700;
}

.bpdp-price-panel strong {
    color: #c2410c;
    font-size: 34px;
    font-weight: 900;
}

.bpdp-price-panel span {
    color: #657386;
    font-weight: 700;
}

.bpdp-wholesale {
    margin-top: 16px;
}

.bpdp-option-form {
    display: grid;
    gap: 16px;
    margin-top: 18px;
}

.bpdp-option-group {
    display: grid;
    grid-template-columns: 108px 1fr;
    gap: 14px;
    align-items: start;
}

.bpdp-option-title {
    padding-top: 8px;
    color: #657386;
    font-size: 13px;
    font-weight: 900;
}

.bpdp-option-values,
.bpdp-color-values {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.bpdp-option-values .aiz-megabox,
.bpdp-color-values .aiz-megabox {
    margin: 0;
    padding: 0;
}

.bpdp-option-values .aiz-megabox-elem {
    min-height: 40px;
    padding: 9px 14px;
    border-radius: 6px !important;
    font-weight: 800;
}

.bpdp-color-values .aiz-megabox-elem {
    width: 42px;
    height: 42px;
    padding: 5px;
    border-radius: 999px !important;
}

.bpdp-color-values i {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 999px;
}

.bpdp-qty-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

.bpdp-qty {
    display: grid;
    grid-template-columns: 40px 58px 40px;
    overflow: hidden;
    border: 1px solid #cfd9e2;
    border-radius: 6px;
    background: #fff;
}

.bpdp-qty .btn,
.bpdp-qty input {
    width: 100%;
    height: 40px;
    border: 0;
    border-radius: 0 !important;
    background: #fff;
}

.bpdp-qty input {
    text-align: center;
    font-weight: 900;
}

.bpdp-stock {
    color: #657386;
    font-size: 13px;
    font-weight: 800;
}

.bpdp-total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 14px;
    border-radius: 8px;
    background: #f3f6f8;
}

.bpdp-total strong {
    color: #c2410c;
    font-size: 22px;
}

.bpdp-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 20px;
}

.bpdp-actions .btn {
    min-height: 48px;
    font-size: 15px;
}

.bpdp-secondary-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 12px;
}

.bpdp-secondary-actions button {
    min-height: 40px;
    border: 1px solid #d7e0e7;
    border-radius: 6px;
    background: #fff;
    color: #344256;
    font-weight: 800;
}

.bpdp-secondary-actions button i {
    margin-right: 6px;
}

.bpdp-secondary-actions button:hover {
    border-color: #0f766e;
    color: #0f766e;
}

.bpdp-side-card {
    padding: 16px;
    position: sticky;
    top: 96px;
}

.bpdp-service-list {
    display: grid;
    gap: 10px;
}

.bpdp-service-list div {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 2px 10px;
    padding: 12px;
    border: 1px solid #e5ebf0;
    border-radius: 8px;
    background: #f8fafb;
}

.bpdp-service-list i {
    grid-row: span 2;
    color: #0f766e;
    font-size: 26px;
}

.bpdp-service-list span {
    color: #17202a;
    font-weight: 900;
}

.bpdp-service-list small {
    color: #657386;
    line-height: 1.45;
}

.bpdp-seller-box {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid #e5ebf0;
}

.bpdp-seller-box > span {
    display: block;
    color: #657386;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.bpdp-seller-box a,
.bpdp-seller-box strong {
    display: block;
    margin-top: 6px;
    color: #17202a;
    font-size: 16px;
    font-weight: 900;
}

.bpdp-seller-box p {
    margin: 8px 0;
    color: #657386;
    line-height: 1.55;
}

.bpdp-store-link {
    display: inline-flex !important;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border-radius: 6px;
    background: #eef8f6;
    color: #0f766e !important;
}

.bpdp-content-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 16px;
    margin-top: 18px;
    align-items: start;
}

.bpdp-tabs-card {
    overflow: hidden;
}

.bpdp-tabs {
    display: flex;
    flex-wrap: wrap;
    border-bottom: 1px solid #e5ebf0;
}

.bpdp-tabs a {
    display: inline-flex;
    min-height: 54px;
    align-items: center;
    padding: 0 20px;
    color: #657386;
    font-weight: 900;
}

.bpdp-tabs a.active {
    color: #0f766e;
    box-shadow: inset 0 -3px 0 #0f766e;
}

.bpdp-tabs-card .tab-content {
    padding: 22px;
}

.bpdp-editor {
    color: #344256;
    font-size: 15px;
    line-height: 1.78;
}

.bpdp-editor img {
    max-width: 100%;
    height: auto;
}

.bpdp-review-list {
    display: grid;
    gap: 14px;
}

.bpdp-review-list article {
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 12px;
    padding: 14px;
    border: 1px solid #e5ebf0;
    border-radius: 8px;
}

.bpdp-review-list img {
    width: 48px;
    height: 48px;
    border-radius: 999px;
    object-fit: cover;
}

.bpdp-review-list strong,
.bpdp-review-list small {
    display: block;
}

.bpdp-review-list small {
    color: #657386;
}

.bpdp-review-list p {
    margin: 8px 0 0;
    color: #344256;
}

.bpdp-empty {
    padding: 40px;
    text-align: center;
    color: #657386;
    font-weight: 800;
}

.bpdp-more-card {
    padding: 16px;
}

.bpdp-more-card h3,
.bpdp-query-card h3 {
    margin: 0 0 14px;
    color: #17202a;
    font-size: 18px;
    font-weight: 900;
}

.bpdp-more-card > div {
    display: grid;
    gap: 12px;
}

.bpdp-more-card a {
    display: grid;
    grid-template-columns: 76px 1fr;
    gap: 12px;
    color: #17202a;
}

.bpdp-more-card img {
    width: 76px;
    height: 76px;
    object-fit: cover;
    border-radius: 6px;
    background: #f3f6f8;
}

.bpdp-more-card strong {
    display: block;
    max-height: 40px;
    overflow: hidden;
    font-size: 13px;
    line-height: 1.45;
}

.bpdp-more-card em {
    display: block;
    margin-top: 5px;
    color: #c2410c;
    font-style: normal;
    font-weight: 900;
}

.bpdp-query-card {
    margin-top: 18px;
    padding: 18px;
}

.bpdp-query-card textarea {
    margin-bottom: 10px;
}

@media (max-width: 1199.98px) {
    .boutique-mainbar-grid {
        grid-template-columns: 220px minmax(0, 1fr) 260px;
    }

    .boutique-navline-inner {
        overflow-x: auto;
        padding: 5px 0;
        white-space: nowrap;
    }

    .boutique-footer-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .boutique-footer-brand {
        grid-column: span 3;
    }

    .commerce-hero-layout {
        grid-template-columns: 220px minmax(0, 1fr);
    }

    .commerce-hero-panel {
        grid-column: 1 / -1;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        grid-template-rows: auto;
        min-height: 0;
    }

    .commerce-search-card,
    .commerce-mini-product {
        min-height: 112px;
    }

    .commerce-category-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .commerce-channel-grid,
    .commerce-rank-board {
        grid-template-columns: 1fr;
    }

    .commerce-recommend-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .commerce-floor {
        grid-template-columns: 220px 1fr;
    }

    .commerce-floor-products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .commerce-brand-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .boutique-topline-inner {
        justify-content: center;
    }

    .boutique-top-links {
        display: none;
    }

    .boutique-mainbar-grid {
        grid-template-columns: 1fr auto;
        gap: 12px;
        min-height: 70px;
    }

    .boutique-logo img {
        max-width: 210px;
        max-height: 42px;
    }

    .boutique-mobile-tools {
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .boutique-mobile-tools a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 42px;
        height: 42px;
        border: 1px solid #d7e0e7;
        border-radius: 8px;
        color: #17202a;
        font-size: 24px;
    }

    .boutique-search-wrap {
        display: none;
        grid-column: 1 / -1;
        padding-bottom: 12px;
    }

    .boutique-search-wrap.active {
        display: block;
    }

    .boutique-search-box {
        grid-template-columns: 42px 1fr 52px;
    }

    .boutique-search-box button.d-lg-none {
        display: block;
        color: #344256;
        font-size: 20px;
    }

    .boutique-action-row {
        display: none;
    }

    .boutique-navline-inner > a.is-cta {
        margin-left: 0;
    }

    .boutique-footer-trust-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .boutique-footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .boutique-footer-brand {
        grid-column: span 2;
    }

    .bpdp-shell,
    .bpdp-content-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .bpdp-gallery-card,
    .bpdp-side-card {
        position: static;
        top: auto;
    }

    .bpdp-gallery-main .carousel-box {
        min-height: 420px;
    }

    .bpdp-side-card {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 14px;
    }

    .bpdp-seller-box {
        margin-top: 0;
        padding-top: 0;
        border-top: 0;
        border-left: 1px solid #e5ebf0;
        padding-left: 14px;
    }

    .commerce-hero-layout,
    .commerce-deal-board {
        grid-template-columns: 1fr;
    }

    .commerce-departments {
        min-height: 0;
    }

    .commerce-departments nav {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .commerce-hero-panel {
        grid-template-columns: 1fr;
    }

    .commerce-service-row,
    .commerce-quick-row,
    .commerce-stat-row,
    .commerce-coupon-grid,
    .commerce-channel-grid,
    .commerce-deal-grid,
    .commerce-product-grid,
    .commerce-shop-grid,
    .commerce-operation-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .commerce-coupon-board,
    .commerce-floor,
    .commerce-subscribe-band {
        grid-template-columns: 1fr;
    }

    .commerce-recommend-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .commerce-floor-cover img {
        min-height: 250px;
    }

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

    .commerce-promo-card.is-wide {
        grid-column: 1 / -1;
        min-height: 260px;
    }

    .commerce-brand-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .boutique-topline-inner {
        min-height: 34px;
    }

    .boutique-switchers {
        width: 100%;
        justify-content: space-between;
    }

    .boutique-logo img {
        max-width: 190px;
    }

    .boutique-navline-inner {
        min-height: 46px;
    }

    .boutique-department-menu > a,
    .boutique-navline-inner > a {
        min-height: 34px;
        padding: 0 11px;
        font-size: 13px;
    }

    .boutique-footer-trust-grid,
    .boutique-footer-grid,
    .boutique-footer-brand,
    .boutique-footer-bottom-grid {
        grid-template-columns: 1fr;
    }

    .boutique-footer-brand {
        grid-column: auto;
    }

    .boutique-footer-trust-grid a {
        justify-content: flex-start;
        min-height: 64px;
        padding: 0 16px;
        border-left: 0 !important;
        border-right: 0;
        border-bottom: 1px solid #e5ebf0;
    }

    .boutique-footer-main {
        padding: 34px 0 88px;
    }

    .boutique-footer-bottom-grid {
        display: grid;
        text-align: center;
    }

    .boutique-footer-bottom ul {
        justify-content: center;
    }

    .frontend-template-boutique {
        overflow-x: hidden;
    }

    .frontend-template-boutique img.zoomImg {
        display: none !important;
    }

    .frontend-template-boutique .aiz-mobile-bottom-nav .row {
        margin-left: 0;
        margin-right: 0;
    }

    .boutique-product-page {
        padding-top: 12px;
    }

    .bpdp-info-card h1 {
        font-size: 22px;
    }

    .bpdp-price-panel strong {
        font-size: 28px;
    }

    .bpdp-option-group {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .bpdp-side-card,
    .bpdp-actions,
    .bpdp-secondary-actions {
        grid-template-columns: 1fr;
    }

    .bpdp-seller-box {
        border-left: 0;
        border-top: 1px solid #e5ebf0;
        padding-left: 0;
        padding-top: 14px;
        margin-top: 0;
    }

    .bpdp-gallery-main .carousel-box {
        min-height: 430px;
    }

    .bpdp-gallery-main img {
        max-height: 430px;
    }

    .bpdp-tabs a {
        flex: 1 1 auto;
        justify-content: center;
        min-height: 48px;
        padding: 0 10px;
        font-size: 13px;
    }

    .bpdp-tabs-card .tab-content {
        padding: 16px;
    }

    .frontend-template-boutique .logo-bar-area .container > .d-flex {
        min-height: 64px;
    }

    .template-boutique {
        padding-bottom: 78px;
    }

    .commerce-hero-copy {
        left: 20px;
        right: 20px;
        bottom: 22px;
    }

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

    .commerce-hero-media,
    .commerce-hero-media img {
        min-height: 360px;
    }

    .commerce-section-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .commerce-section-head h2 {
        font-size: 23px;
    }

    .commerce-service-row,
    .commerce-stat-row,
    .commerce-category-grid,
    .commerce-coupon-grid,
    .commerce-promo-grid,
    .commerce-channel-grid,
    .commerce-editorial-row,
    .commerce-brand-grid,
    .commerce-shop-grid,
    .commerce-operation-grid,
    .commerce-recommend-grid {
        grid-template-columns: 1fr 1fr;
    }

    .commerce-service-row div {
        min-height: 66px;
        border-right: 0;
        border-bottom: 1px solid #e5ebf0;
        font-size: 12px;
    }

    .commerce-product-image {
        height: 205px;
    }
}

@media (max-width: 575.98px) {
    .commerce-hero {
        padding-top: 12px;
    }

    .commerce-departments nav,
    .commerce-service-row,
    .commerce-quick-row,
    .commerce-stat-row,
    .commerce-category-grid,
    .commerce-coupon-grid,
    .commerce-promo-grid,
    .commerce-channel-grid,
    .commerce-channel-products,
    .commerce-deal-grid,
    .commerce-product-grid,
    .commerce-floor-products,
    .commerce-editorial-row,
    .commerce-brand-grid,
    .commerce-shop-grid,
    .commerce-operation-grid,
    .commerce-recommend-grid,
    .commerce-subscribe-band,
    .commerce-subscribe-band form {
        grid-template-columns: 1fr;
    }

    .commerce-departments,
    .commerce-hero-panel,
    .commerce-coupon-board,
    .commerce-deal-board,
    .commerce-floor {
        padding: 12px;
    }

    .commerce-quick-row a {
        min-height: 54px;
    }

    .commerce-coupon-card {
        min-height: 104px;
    }

    .commerce-channel-cover {
        height: 210px;
    }

    .commerce-rank-list {
        padding: 12px;
    }

    .commerce-rank-list a {
        grid-template-columns: 30px 62px 1fr;
        gap: 10px;
    }

    .commerce-rank-list img {
        width: 62px;
        height: 62px;
    }

    .commerce-subscribe-band {
        padding: 16px;
    }

    .commerce-subscribe-band strong {
        font-size: 21px;
    }

    .commerce-floor-cover img {
        min-height: 220px;
    }

    .commerce-floor-cover strong {
        font-size: 23px;
    }

    .commerce-hero-media,
    .commerce-hero-media img {
        min-height: 330px;
    }

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

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

    .commerce-product-image,
.commerce-product-card.compact .commerce-product-image {
    height: 230px;
}

.commerce-editorial-row a,
.commerce-last-banner a {
    height: 190px;
    min-height: 190px;
}
}

.boutique-page {
    background: linear-gradient(180deg, #eef4f8 0, #f8fafb 300px, #f5f7f9 100%);
    padding: 26px 0 56px;
}

.boutique-page .container {
    max-width: 1240px;
}

.boutique-page-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.boutique-page-head span {
    color: #0f766e;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.boutique-page-head h1 {
    margin: 4px 0 8px;
    color: #17202a;
    font-size: 34px;
    font-weight: 900;
}

.boutique-page-head p {
    max-width: 620px;
    margin: 0;
    color: #657386;
    line-height: 1.65;
}

.boutique-page-head .breadcrumb {
    min-width: 280px;
    margin: 0;
    justify-content: flex-end;
}

.boutique-category-directory {
    display: grid;
    gap: 16px;
}

.boutique-directory-card {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 16px;
    padding: 16px;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .07);
}

.boutique-directory-cover {
    position: relative;
    min-height: 220px;
    overflow: hidden;
    border-radius: 8px;
    background: #17202a;
    color: #fff;
}

.boutique-directory-cover img {
    width: 100%;
    height: 100%;
    min-height: 220px;
    object-fit: cover;
    opacity: .76;
}

.boutique-directory-cover:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .04), rgba(0, 0, 0, .66));
}

.boutique-directory-cover span {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 18px;
    z-index: 1;
    color: #fff;
    font-size: 24px;
    font-weight: 900;
    line-height: 1.15;
}

.boutique-directory-links {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.boutique-directory-links div {
    padding: 12px;
    border: 1px solid #e5ebf0;
    border-radius: 8px;
    background: #fbfcfd;
}

.boutique-directory-links a {
    display: block;
    margin-bottom: 8px;
    color: #657386;
    font-weight: 700;
    line-height: 1.35;
}

.boutique-directory-links a:last-child {
    margin-bottom: 0;
}

.boutique-directory-links a.is-parent {
    color: #17202a;
    font-weight: 900;
}

.boutique-brand-directory {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
}

.boutique-brand-directory a {
    display: grid;
    min-height: 156px;
    align-content: center;
    justify-items: center;
    padding: 18px;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    color: #17202a;
    text-align: center;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .07);
}

.boutique-brand-directory img {
    width: 86px;
    height: 70px;
    margin-bottom: 12px;
    object-fit: contain;
}

.boutique-brand-directory strong {
    font-weight: 900;
}

.boutique-brand-directory span {
    margin-top: 6px;
    color: #0f766e;
    font-size: 12px;
    font-weight: 900;
}

.boutique-seller-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.boutique-seller-card {
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 16px;
    padding: 16px;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .07);
}

.boutique-seller-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: #f3f6f8;
}

.boutique-seller-logo img {
    max-width: 100%;
    max-height: 104px;
    object-fit: contain;
}

.boutique-seller-card h2 {
    margin: 0 0 6px;
    font-size: 18px;
    font-weight: 900;
    line-height: 1.25;
}

.boutique-seller-card h2 a {
    color: #17202a;
}

.boutique-seller-card p {
    min-height: 38px;
    margin: 8px 0 12px;
    color: #657386;
    line-height: 1.5;
    overflow: hidden;
}

.boutique-inline-btn {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 14px;
    border-radius: 6px;
    background: #eef8f6;
    color: #0f766e;
    font-weight: 900;
}

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

.boutique-coupon-item {
    display: grid;
    grid-template-columns: 1fr 190px;
    overflow: hidden;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .07);
}

.boutique-coupon-info {
    padding: 22px;
}

.boutique-coupon-info span {
    color: #657386;
    font-size: 13px;
    font-weight: 900;
}

.boutique-coupon-info strong {
    display: block;
    margin-top: 8px;
    color: #17202a;
    font-size: 20px;
    font-weight: 900;
}

.boutique-coupon-info p {
    margin: 10px 0 0;
    color: #657386;
    line-height: 1.6;
}

.boutique-coupon-products {
    display: flex;
    gap: 8px;
    margin-top: 14px;
}

.boutique-coupon-products img {
    width: 70px;
    height: 70px;
    border-radius: 6px;
    background: #f3f6f8;
    object-fit: cover;
}

.boutique-coupon-value {
    display: grid;
    align-content: center;
    justify-items: center;
    padding: 20px;
    background: #17202a;
    color: #fff;
    text-align: center;
}

.boutique-coupon-value strong {
    color: #ffd6cc;
    font-size: 28px;
    font-weight: 900;
}

.boutique-coupon-value span,
.boutique-coupon-value em {
    color: #fff;
    font-style: normal;
    font-weight: 900;
}

.boutique-coupon-value em {
    margin-top: 8px;
    opacity: .72;
}

.boutique-coupon-value a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    margin-top: 14px;
    padding: 0 12px;
    border-radius: 6px;
    background: #fff;
    color: #17202a;
    font-weight: 900;
}

.boutique-listing-shell {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 18px;
    align-items: start;
}

.boutique-listing-feature {
    display: grid;
    grid-template-columns: minmax(260px, 380px) 1fr;
    gap: 16px;
    align-items: center;
    margin-bottom: 18px;
    padding: 18px;
    border-radius: 8px;
    background: #17202a;
    color: #fff;
    box-shadow: 0 18px 45px rgba(23, 32, 42, .14);
}

.boutique-listing-feature span {
    display: block;
    margin-bottom: 6px;
    color: #ffd6cc;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.boutique-listing-feature strong {
    color: #fff;
    font-size: 22px;
    font-weight: 900;
    line-height: 1.22;
}

.boutique-listing-feature nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.boutique-listing-feature nav a {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 12px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 6px;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    font-weight: 900;
}

.boutique-filter-panel .collapse-sidebar {
    position: sticky;
    top: 96px;
    max-height: calc(100vh - 110px);
    overflow-y: auto;
}

.boutique-filter-mobile-head {
    display: none;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    border-bottom: 1px solid #e5ebf0;
    background: #fff;
}

.boutique-filter-mobile-head strong {
    color: #17202a;
    font-size: 16px;
    font-weight: 900;
}

.boutique-filter-mobile-head button {
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 6px;
    background: #f1f5f7;
    color: #17202a;
}

.boutique-filter-card {
    margin-bottom: 14px;
    padding: 16px;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .06);
}

.boutique-filter-card h2 {
    margin: 0 0 12px;
    color: #17202a;
    font-size: 15px;
    font-weight: 900;
}

.boutique-filter-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-height: 28px;
    margin: 0 0 12px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #17202a;
    text-align: left;
    font-size: 15px;
    font-weight: 900;
}

.boutique-filter-title i {
    transition: transform .2s ease;
}

.boutique-filter-collapsible:not(.is-open) .boutique-check-list {
    display: none;
}

.boutique-filter-collapsible.is-open .boutique-filter-title i {
    transform: rotate(180deg);
}

.boutique-filter-card nav {
    display: grid;
    gap: 8px;
}

.boutique-filter-card nav a {
    display: flex;
    align-items: center;
    min-height: 34px;
    padding: 0 10px;
    border-radius: 6px;
    color: #657386;
    font-weight: 800;
}

.boutique-filter-card nav a:hover,
.boutique-filter-card nav a.is-current {
    background: #eef8f6;
    color: #0f766e;
}

.boutique-filter-card nav a.is-strong {
    color: #17202a;
}

.boutique-price-values {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-top: 12px;
    color: #17202a;
    font-weight: 900;
}

.boutique-check-list {
    display: grid;
    gap: 8px;
}

.boutique-check-list .aiz-checkbox {
    margin: 0;
    color: #657386;
    font-weight: 700;
}

.boutique-color-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.boutique-color-list .aiz-megabox {
    margin: 0;
}

.boutique-color-list .aiz-megabox-elem {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 8px;
    border-color: #dfe5ea;
    padding: 4px;
}

.boutique-color-list .aiz-megabox-elem span {
    display: block;
    width: 26px;
    height: 26px;
    border-radius: 7px;
}

.boutique-listing-results {
    min-width: 0;
}

.boutique-listing-toolbar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    margin-bottom: 14px;
    padding: 14px;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .06);
}

.boutique-listing-toolbar > div {
    margin-right: auto;
}

.boutique-listing-toolbar strong {
    color: #17202a;
    font-size: 20px;
    font-weight: 900;
}

.boutique-listing-toolbar > div span {
    color: #657386;
    font-weight: 800;
}

.boutique-listing-toolbar label {
    min-width: 190px;
    margin: 0;
}

.boutique-listing-toolbar label > span {
    display: block;
    margin-bottom: 5px;
    color: #657386;
    font-size: 12px;
    font-weight: 900;
}

.boutique-listing-toolbar .form-control {
    min-height: 40px;
    border-color: #dfe5ea;
    border-radius: 6px;
    color: #17202a;
    font-weight: 800;
}

.boutique-filter-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 40px;
    padding: 0 12px;
    border: 1px solid #dfe5ea;
    border-radius: 6px;
    background: #f8fafb;
    color: #17202a;
    font-weight: 900;
}

.boutique-product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.boutique-empty-state {
    display: grid;
    justify-items: center;
    padding: 54px 20px;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    text-align: center;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .06);
}

.boutique-empty-state i {
    color: #0f766e;
    font-size: 44px;
}

.boutique-empty-state strong {
    margin-top: 10px;
    color: #17202a;
    font-size: 22px;
    font-weight: 900;
}

.boutique-empty-state p {
    margin: 8px 0 18px;
    color: #657386;
}

.boutique-empty-state a {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 0 14px;
    border-radius: 6px;
    background: #17202a;
    color: #fff;
    font-weight: 900;
}

.boutique-flash-page {
    background: #f5f7f9;
    padding-bottom: 58px;
}

.boutique-flash-hero {
    padding: 28px 0;
    background: linear-gradient(135deg, #17202a, #203142);
    color: #fff;
}

.boutique-flash-hero-grid,
.boutique-flash-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 18px;
    align-items: stretch;
}

.boutique-flash-copy,
.boutique-flash-panel,
.boutique-flash-detail-copy,
.boutique-flash-detail-banner {
    border-radius: 8px;
}

.boutique-flash-copy,
.boutique-flash-detail-copy {
    padding: 28px;
    background: rgba(255, 255, 255, .07);
}

.boutique-flash-copy span,
.boutique-flash-detail-copy span {
    display: block;
    color: #8ee4d7;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.boutique-flash-copy h1,
.boutique-flash-detail-copy h1 {
    margin: 8px 0 12px;
    color: #fff;
    font-size: 42px;
    font-weight: 900;
    line-height: 1.1;
}

.boutique-flash-copy p,
.boutique-flash-detail-copy p {
    max-width: 680px;
    margin: 0;
    color: rgba(255, 255, 255, .76);
    font-size: 16px;
    line-height: 1.7;
}

.boutique-flash-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
}

.boutique-flash-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 6px;
    background: #0f766e;
    color: #fff;
    font-weight: 900;
}

.boutique-flash-actions a + a {
    background: rgba(255, 255, 255, .12);
}

.boutique-flash-panel {
    display: grid;
    align-content: center;
    justify-items: center;
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, .16);
    background: rgba(255, 255, 255, .08);
    text-align: center;
}

.boutique-flash-panel strong {
    color: #ffd6cc;
    font-size: 54px;
    font-weight: 900;
    line-height: 1;
}

.boutique-flash-panel span,
.boutique-flash-panel em {
    display: block;
    margin-top: 8px;
    color: #fff;
    font-style: normal;
    font-weight: 900;
}

.boutique-flash-panel .aiz-count-down,
.boutique-flash-detail-copy .aiz-count-down {
    margin-top: 16px;
    color: #fff;
    font-weight: 900;
}

.boutique-flash-content {
    padding-top: 24px;
}

.boutique-flash-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.boutique-flash-card {
    overflow: hidden;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .07);
}

.boutique-flash-image {
    position: relative;
    display: block;
    height: 230px;
    overflow: hidden;
    background: #17202a;
}

.boutique-flash-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.boutique-flash-image span {
    position: absolute;
    left: 14px;
    top: 14px;
    padding: 6px 10px;
    border-radius: 6px;
    background: #c2410c;
    color: #fff;
    font-size: 12px;
    font-weight: 900;
}

.boutique-flash-card-body {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 14px;
    align-items: center;
    padding: 18px;
}

.boutique-flash-card-body h2 {
    margin: 0 0 8px;
    font-size: 20px;
    font-weight: 900;
    line-height: 1.25;
}

.boutique-flash-card-body h2 a {
    color: #17202a;
}

.boutique-flash-mini-products {
    display: flex;
    gap: 6px;
}

.boutique-flash-mini-products img {
    width: 54px;
    height: 54px;
    border-radius: 6px;
    background: #edf2f5;
    object-fit: cover;
}

.boutique-flash-link {
    grid-column: 1 / -1;
    display: inline-flex;
    align-items: center;
    width: max-content;
    min-height: 38px;
    padding: 0 13px;
    border-radius: 6px;
    background: #eef8f6;
    color: #0f766e;
    font-weight: 900;
}

.boutique-flash-empty {
    display: grid;
    justify-items: center;
    padding: 58px 20px;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    text-align: center;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .07);
}

.boutique-flash-empty i {
    color: #0f766e;
    font-size: 52px;
}

.boutique-flash-empty strong {
    margin-top: 12px;
    color: #17202a;
    font-size: 24px;
    font-weight: 900;
}

.boutique-flash-empty p {
    max-width: 560px;
    margin: 8px 0 18px;
    color: #657386;
    line-height: 1.65;
}

.boutique-flash-empty a {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 0 14px;
    border-radius: 6px;
    background: #17202a;
    color: #fff;
    font-weight: 900;
}

.boutique-flash-upcoming,
.boutique-flash-recommend {
    margin-top: 26px;
}

.boutique-flash-upcoming-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.boutique-flash-upcoming-grid a {
    display: grid;
    min-height: 96px;
    align-content: center;
    padding: 16px;
    border: 1px solid #dfe5ea;
    border-radius: 8px;
    background: #fff;
    color: #17202a;
    box-shadow: 0 16px 42px rgba(23, 32, 42, .06);
}

.boutique-flash-upcoming-grid strong {
    font-weight: 900;
}

.boutique-flash-upcoming-grid span {
    margin-top: 5px;
    color: #0f766e;
    font-weight: 900;
}

.boutique-flash-detail-hero {
    padding: 28px 0;
    background: var(--deal-bg);
}

.boutique-flash-detail-grid {
    grid-template-columns: minmax(0, .88fr) minmax(360px, 1.12fr);
}

.boutique-flash-detail-banner {
    overflow: hidden;
    min-height: 360px;
    background: #17202a;
    box-shadow: 0 18px 45px rgba(0, 0, 0, .16);
}

.boutique-flash-detail-banner img {
    width: 100%;
    height: 100%;
    min-height: 360px;
    object-fit: cover;
}

.frontend-template-boutique .boutique-header {
    box-shadow: 0 8px 28px rgba(23, 32, 42, .06);
}

.frontend-template-boutique .boutique-topline {
    border-bottom: 1px solid #e5ebf0;
    background: #f8fafb;
    color: #657386;
}

.frontend-template-boutique .boutique-topline a {
    color: #657386;
}

.frontend-template-boutique .boutique-topline a:hover {
    color: #0f766e;
}

.frontend-template-boutique .boutique-mainbar {
    background: #fff;
}

.frontend-template-boutique .boutique-mainbar-grid {
    min-height: 78px;
}

.frontend-template-boutique .boutique-navline {
    border-top: 1px solid #edf2f5;
    border-bottom: 1px solid #dfe5ea;
    background: #fff;
}

.frontend-template-boutique .boutique-navline-inner {
    min-height: 44px;
}

.frontend-template-boutique .boutique-navline-inner > a,
.frontend-template-boutique .boutique-department-menu > a {
    color: #344256;
}

.frontend-template-boutique .boutique-navline-inner > a:hover,
.frontend-template-boutique .boutique-navline-inner > a.active,
.frontend-template-boutique .boutique-department-menu > a:hover {
    background: #eef8f6;
    color: #0f766e;
}

.frontend-template-boutique .boutique-footer-trust {
    border-top: 1px solid #dfe5ea;
    background: #fff;
}

.frontend-template-boutique .boutique-footer-trust-grid a {
    min-height: 72px;
    color: #344256;
}

.frontend-template-boutique .boutique-footer-main {
    border-top: 1px solid #dfe5ea;
    background: #f8fafb;
    color: #657386;
    padding: 38px 0;
}

.frontend-template-boutique .boutique-footer-grid {
    grid-template-columns: minmax(280px, 1.6fr) repeat(3, minmax(150px, 1fr));
}

.frontend-template-boutique .boutique-footer-copy {
    color: #657386;
}

.frontend-template-boutique .boutique-footer-col h4 {
    color: #17202a;
}

.frontend-template-boutique .boutique-footer-col a,
.frontend-template-boutique .boutique-footer-col span {
    color: #657386;
}

.frontend-template-boutique .boutique-footer-col a:hover {
    color: #0f766e;
}

.frontend-template-boutique .boutique-subscribe input {
    border-color: #d7e0e7;
    background: #fff;
    color: #17202a;
}

.frontend-template-boutique .boutique-footer-bottom {
    border-top: 1px solid #dfe5ea;
    background: #fff;
    color: #657386;
}

@media (max-width: 767.98px) {
    .frontend-template-boutique .boutique-footer-grid {
        grid-template-columns: 1fr;
    }

    .frontend-template-boutique .boutique-footer-brand {
        grid-column: auto;
    }

    .frontend-template-boutique .boutique-footer-main {
        padding-bottom: 88px;
    }
}

/* Cohesive commerce skin: keep homepage modules visually related. */
.template-boutique {
    --commerce-accent: #0f766e;
    --commerce-ink: #17202a;
    --commerce-muted: #657386;
    --commerce-line: #dfe5ea;
    --commerce-soft: #f5f7f9;
    --commerce-warm: #c2410c;
}

.template-boutique .container {
    width: calc(100% - 64px);
    max-width: 1600px;
}

.template-boutique .commerce-section {
    margin-top: 24px;
}

.template-boutique .commerce-hero {
    padding-top: 18px;
}

.template-boutique .commerce-hero-layout {
    grid-template-columns: 240px minmax(0, 1fr) 290px;
    gap: 14px;
}

.template-boutique .commerce-hero-media,
.template-boutique .commerce-hero-media img,
.template-boutique .commerce-hero-panel {
    min-height: 340px;
}

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

.template-boutique .commerce-hero-copy p {
    max-width: 520px;
}

.template-boutique .commerce-search-card,
.template-boutique .commerce-mini-product {
    grid-template-columns: 72px minmax(0, 1fr);
    min-height: 96px;
}

.template-boutique .commerce-mini-product img {
    width: 72px;
    height: 72px;
}

.template-boutique .commerce-mini-product span,
.template-boutique .commerce-mini-product strong,
.template-boutique .commerce-mini-product em {
    min-width: 0;
    max-width: 100%;
}

.template-boutique .commerce-departments,
.template-boutique .commerce-hero-media,
.template-boutique .commerce-hero-panel,
.template-boutique .commerce-service-row,
.template-boutique .commerce-quick-row a,
.template-boutique .commerce-stat-row div,
.template-boutique .commerce-coupon-board,
.template-boutique .commerce-category-grid a,
.template-boutique .commerce-promo-card,
.template-boutique .commerce-channel-card,
.template-boutique .commerce-deal-board,
.template-boutique .commerce-product-card,
.template-boutique .commerce-floor,
.template-boutique .commerce-rank-list,
.template-boutique .commerce-shop-card,
.template-boutique .commerce-brand-grid a,
.template-boutique .commerce-operation-grid > div,
.template-boutique .commerce-subscribe-band,
.template-boutique .commerce-editorial-row a,
.template-boutique .commerce-last-banner a {
    border: 1px solid var(--commerce-line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(23, 32, 42, .055);
}

.template-boutique .commerce-coupon-board,
.template-boutique .commerce-deal-board,
.template-boutique .commerce-subscribe-band {
    background: #fff;
    color: var(--commerce-ink);
}

.template-boutique .commerce-coupon-title h2,
.template-boutique .commerce-deal-title h2,
.template-boutique .commerce-deal-title span,
.template-boutique .commerce-subscribe-band strong {
    color: var(--commerce-ink);
}

.template-boutique .commerce-coupon-title span,
.template-boutique .commerce-deal-title span,
.template-boutique .commerce-subscribe-band span {
    color: var(--commerce-accent);
}

.template-boutique .commerce-deal-title p {
    color: var(--commerce-muted);
}

.template-boutique .commerce-coupon-card {
    border-color: #e5ebf0;
    background: #f8fafb;
    color: var(--commerce-ink);
}

.template-boutique .commerce-coupon-card strong,
.template-boutique .commerce-coupon-card em {
    color: var(--commerce-ink);
}

.template-boutique .commerce-coupon-card span {
    color: var(--commerce-warm);
}

.template-boutique .commerce-deal-board .commerce-product-card {
    box-shadow: 0 10px 26px rgba(23, 32, 42, .05);
}

.template-boutique .commerce-section-head {
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e5ebf0;
}

.template-boutique .commerce-section-head h2 {
    font-size: 24px;
    font-weight: 900;
}

.template-boutique .commerce-section-head span,
.template-boutique .commerce-block-title span {
    color: var(--commerce-accent);
    font-weight: 900;
}

.template-boutique .commerce-section-head > a,
.template-boutique .commerce-countdown-wrap a,
.template-boutique .commerce-deal-title a,
.template-boutique .commerce-coupon-title a {
    border: 1px solid #cfd9e2;
    background: #fff;
    color: var(--commerce-ink);
}

.template-boutique .commerce-section-head > a:hover,
.template-boutique .commerce-countdown-wrap a:hover,
.template-boutique .commerce-deal-title a:hover,
.template-boutique .commerce-coupon-title a:hover {
    border-color: var(--commerce-accent);
    background: #eef8f6;
    color: var(--commerce-accent);
}

.template-boutique .commerce-product-image {
    height: 212px;
}

.template-boutique .commerce-product-card.compact .commerce-product-image {
    height: 158px;
}

.template-boutique .commerce-product-body h3,
.template-boutique .commerce-product-body > a {
    height: 38px;
}

.template-boutique .commerce-product-actions button {
    background: #fff;
}

.template-boutique .commerce-floor {
    grid-template-columns: 230px 1fr;
    gap: 14px;
    padding: 14px;
}

.template-boutique .commerce-floor-cover img {
    min-height: 300px;
}

.template-boutique .commerce-floor-products {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.template-boutique .commerce-recommend-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.template-boutique .commerce-rank-board {
    grid-template-columns: 340px 1fr;
}

.template-boutique .commerce-subscribe-band input {
    border-color: #d7e0e7;
    background: #f8fafb;
    color: var(--commerce-ink);
}

.template-boutique .commerce-subscribe-band input::placeholder {
    color: var(--commerce-muted);
}

.template-boutique .commerce-subscribe-band button {
    background: var(--commerce-accent);
}

.template-boutique .commerce-editorial-row a {
    height: 210px;
}

.template-boutique .commerce-last-banner .container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.template-boutique .commerce-last-banner a {
    height: 210px;
    min-height: 210px;
}

@media (max-width: 1199.98px) {
    .template-boutique .commerce-hero-layout,
    .template-boutique .commerce-rank-board {
        grid-template-columns: 1fr;
    }

    .template-boutique .commerce-hero-panel {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        grid-template-rows: auto;
    }

    .template-boutique .commerce-search-card {
        grid-column: 1 / -1;
    }

    .template-boutique .commerce-floor {
        grid-template-columns: 1fr;
    }

    .template-boutique .commerce-floor-products,
    .template-boutique .commerce-recommend-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .template-boutique .container,
    .frontend-template-boutique .boutique-header .container,
    .frontend-template-boutique .boutique-footer-trust .container,
    .frontend-template-boutique .boutique-footer-main .container,
    .frontend-template-boutique .boutique-footer-bottom .container {
        width: calc(100% - 24px);
    }

    .template-boutique .commerce-hero-media,
    .template-boutique .commerce-hero-media img,
    .template-boutique .commerce-hero-panel {
        min-height: 0;
    }

    .template-boutique .commerce-hero-media img {
        min-height: 320px;
    }

    .template-boutique .commerce-hero-copy h1 {
        font-size: 28px;
    }

    .template-boutique .commerce-product-image,
    .template-boutique .commerce-product-card.compact .commerce-product-image {
        height: 210px;
    }

    .template-boutique .commerce-floor-products,
    .template-boutique .commerce-recommend-grid,
    .template-boutique .commerce-last-banner .container {
        grid-template-columns: 1fr;
    }

    .template-boutique .commerce-last-banner a {
        height: 180px;
        min-height: 180px;
    }
}

@media (max-width: 991.98px) {
    .boutique-page-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .boutique-page-head .breadcrumb {
        width: 100%;
        min-width: 0;
        justify-content: flex-start;
    }

    .boutique-directory-card,
    .boutique-coupon-item {
        grid-template-columns: 1fr;
    }

    .boutique-directory-links,
    .boutique-seller-grid,
    .boutique-coupon-list {
        grid-template-columns: 1fr;
    }

    .boutique-listing-shell {
        display: block;
    }

    .boutique-listing-feature {
        grid-template-columns: 1fr;
    }

    .boutique-listing-feature nav {
        justify-content: flex-start;
    }

    .boutique-filter-panel .collapse-sidebar {
        position: fixed;
        top: 0;
        max-height: 100vh;
    }

    .boutique-filter-mobile-head,
    .boutique-filter-toggle {
        display: flex;
    }

    .boutique-listing-toolbar {
        flex-wrap: wrap;
        align-items: stretch;
    }

    .boutique-listing-toolbar > div {
        width: 100%;
        margin-right: 0;
    }

    .boutique-listing-toolbar label {
        flex: 1 1 190px;
        min-width: 0;
    }

    .boutique-product-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .boutique-flash-hero-grid,
    .boutique-flash-detail-grid,
    .boutique-flash-grid {
        grid-template-columns: 1fr;
    }

    .boutique-flash-upcoming-grid {
        grid-template-columns: 1fr;
    }

    .boutique-brand-directory {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .boutique-page {
        padding-top: 16px;
    }

    .boutique-page-head h1 {
        font-size: 28px;
    }

    .boutique-directory-links,
    .boutique-brand-directory {
        grid-template-columns: 1fr;
    }

    .boutique-seller-card {
        grid-template-columns: 1fr;
    }

    .boutique-seller-logo {
        min-height: 120px;
    }

    .boutique-listing-toolbar {
        gap: 10px;
        padding: 12px;
    }

    .boutique-listing-toolbar label,
    .boutique-filter-toggle {
        flex: 1 1 100%;
        width: 100%;
    }

    .boutique-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .boutique-flash-copy,
    .boutique-flash-detail-copy,
    .boutique-flash-panel,
    .boutique-flash-card-body {
        padding: 16px;
    }

    .boutique-flash-copy h1,
    .boutique-flash-detail-copy h1 {
        font-size: 32px;
    }

    .boutique-flash-card-body {
        grid-template-columns: 1fr;
    }

    .boutique-flash-image {
        height: 190px;
    }

    .boutique-flash-detail-banner,
    .boutique-flash-detail-banner img {
        min-height: 240px;
    }
}

.buyer-home {
    --buyer-bg: #eef4f6;
    --buyer-surface: #ffffff;
    --buyer-ink: #17202a;
    --buyer-muted: #657386;
    --buyer-line: #dfe5ea;
    --buyer-accent: #0f766e;
    --buyer-accent-dark: #115e59;
    --buyer-warm: #c2410c;
    background:
        linear-gradient(180deg, #eaf2f4 0, #f7fafb 460px, #f4f7f8 100%),
        repeating-linear-gradient(90deg, rgba(23, 32, 42, .04) 0 1px, transparent 1px 90px);
    color: var(--buyer-ink);
    padding-bottom: 56px;
}

.buyer-home *,
.buyer-home *::before,
.buyer-home *::after {
    box-sizing: border-box;
}

.buyer-home a {
    text-decoration: none;
}

.buyer-container {
    width: min(calc(100% - 48px), 1780px);
    margin: 0 auto;
}

.buyer-hero-band {
    padding: 22px 0 0;
}

.buyer-hero-grid {
    display: grid;
    grid-template-columns: 270px minmax(0, 1fr) 330px;
    gap: 14px;
    align-items: stretch;
}

.buyer-department-rail,
.buyer-hero-stage,
.buyer-hero-side,
.buyer-service-strip,
.buyer-quick-grid a,
.buyer-coupon-board,
.buyer-category-grid a,
.buyer-promo-card,
.buyer-deal-board,
.buyer-floor,
.buyer-rank-list,
.buyer-support-grid > div,
.buyer-subscribe-band,
.buyer-editorial-row a,
.buyer-last-banner a {
    border: 1px solid var(--buyer-line);
    border-radius: 8px;
    background: var(--buyer-surface);
    box-shadow: 0 14px 34px rgba(23, 32, 42, .065);
}

.buyer-department-rail {
    min-height: 470px;
    padding: 18px;
}

.buyer-block-title span,
.buyer-section-head span,
.buyer-coupon-title span,
.buyer-deal-title span,
.buyer-subscribe-band span {
    display: block;
    color: var(--buyer-accent);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.buyer-block-title strong {
    display: block;
    margin-top: 5px;
    color: var(--buyer-ink);
    font-size: 18px;
    font-weight: 900;
}

.buyer-department-rail nav {
    display: grid;
    gap: 5px;
    margin-top: 18px;
}

.buyer-department-rail nav a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 36px;
    min-width: 0;
    padding: 0 10px;
    border-radius: 6px;
    color: #344256;
    font-weight: 800;
}

.buyer-department-rail nav a span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.buyer-department-rail nav a:hover {
    background: #eef8f6;
    color: var(--buyer-accent);
}

.buyer-hero-stage {
    position: relative;
    display: block;
    min-height: 470px;
    overflow: hidden;
    color: #ffffff;
    background: #17202a;
}

.buyer-hero-stage img {
    width: 100%;
    height: 100%;
    min-height: 470px;
    object-fit: cover;
}

.buyer-hero-stage:hover img {
    transform: scale(1.025);
}

.buyer-hero-stage img,
.buyer-promo-card img,
.buyer-editorial-row img,
.buyer-last-banner img,
.buyer-category-grid img,
.buyer-floor-cover img {
    transition: transform .35s ease;
}

.buyer-hero-shade {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(9, 15, 24, .76), rgba(9, 15, 24, .14) 58%, rgba(9, 15, 24, .24)),
        linear-gradient(0deg, rgba(9, 15, 24, .44), transparent 50%);
}

.buyer-hero-copy {
    position: absolute;
    left: 34px;
    bottom: 34px;
    z-index: 1;
    max-width: 620px;
}

.buyer-hero-copy > span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border: 1px solid rgba(255, 255, 255, .26);
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    color: #ffffff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.buyer-hero-copy h1 {
    margin: 14px 0 12px;
    color: #ffffff;
    font-size: 48px;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.05;
}

.buyer-hero-copy p {
    max-width: 600px;
    margin: 0 0 20px;
    color: rgba(255, 255, 255, .86);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.7;
}

.buyer-hero-copy strong,
.buyer-coupon-title a,
.buyer-deal-title a,
.buyer-section-head > a,
.buyer-countdown-wrap a,
.buyer-support-grid a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 0 15px;
    border-radius: 6px;
    background: var(--buyer-accent);
    color: #ffffff;
    font-weight: 900;
}

.buyer-hero-copy strong:hover,
.buyer-coupon-title a:hover,
.buyer-deal-title a:hover,
.buyer-section-head > a:hover,
.buyer-countdown-wrap a:hover,
.buyer-support-grid a:hover {
    background: var(--buyer-accent-dark);
    color: #ffffff;
}

.buyer-hero-stats {
    position: absolute;
    right: 22px;
    bottom: 22px;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, minmax(94px, 1fr));
    gap: 8px;
}

.buyer-hero-stats span {
    min-width: 0;
    padding: 12px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 8px;
    background: rgba(255, 255, 255, .12);
    backdrop-filter: blur(12px);
}

.buyer-hero-stats strong,
.buyer-hero-stats em {
    display: block;
    color: #ffffff;
}

.buyer-hero-stats strong {
    font-size: 22px;
    font-weight: 900;
    line-height: 1;
}

.buyer-hero-stats em {
    margin-top: 6px;
    overflow: hidden;
    font-size: 11px;
    font-style: normal;
    font-weight: 900;
    opacity: .72;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.buyer-hero-side {
    display: grid;
    grid-template-rows: auto repeat(3, minmax(0, 1fr));
    gap: 12px;
    min-height: 470px;
    padding: 14px;
}

.buyer-search-card {
    padding: 16px;
    border-radius: 8px;
    background: #17202a;
}

.buyer-search-card label {
    display: block;
    margin-bottom: 10px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 900;
}

.buyer-search-card div {
    display: grid;
    grid-template-columns: 1fr 42px;
    overflow: hidden;
    border-radius: 6px;
    background: #ffffff;
}

.buyer-search-card input,
.buyer-search-card button {
    height: 42px;
    border: 0;
}

.buyer-search-card input {
    min-width: 0;
    padding: 0 12px;
}

.buyer-search-card button {
    background: var(--buyer-accent);
    color: #ffffff;
    font-size: 18px;
}

.buyer-mini-product {
    display: grid;
    grid-template-columns: 86px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    min-width: 0;
    padding: 10px;
    border: 1px solid #e5ebf0;
    border-radius: 8px;
    color: var(--buyer-ink);
}

.buyer-mini-product:hover {
    border-color: #93c9c3;
    color: var(--buyer-ink);
    box-shadow: 0 10px 28px rgba(15, 118, 110, .12);
    transform: translateY(-1px);
}

.buyer-mini-product img {
    width: 86px;
    height: 86px;
    border-radius: 6px;
    background: #f2f5f7;
    object-fit: cover;
}

.buyer-mini-product span {
    min-width: 0;
}

.buyer-mini-product strong {
    display: -webkit-box;
    overflow: hidden;
    color: var(--buyer-ink);
    font-size: 13px;
    font-weight: 900;
    line-height: 1.45;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.buyer-mini-product em {
    display: block;
    margin-top: 6px;
    color: var(--buyer-warm);
    font-style: normal;
    font-weight: 900;
}

.buyer-mini-empty i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 86px;
    height: 86px;
    border-radius: 6px;
    background: #eef8f6;
    color: var(--buyer-accent);
    font-size: 32px;
}

.buyer-service-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 16px;
    overflow: hidden;
}

.buyer-service-strip a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 74px;
    min-width: 0;
    border-right: 1px solid #e5ebf0;
    color: #344256;
    font-weight: 900;
}

.buyer-service-strip a:last-child {
    border-right: 0;
}

.buyer-service-strip i,
.buyer-quick-grid i {
    color: var(--buyer-accent);
    font-size: 25px;
}

.buyer-service-strip a:hover,
.buyer-quick-grid a:hover {
    color: var(--buyer-accent);
}

.buyer-quick-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
    margin-top: 16px;
}

.buyer-quick-grid a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 66px;
    min-width: 0;
    color: var(--buyer-ink);
    font-weight: 900;
}

.buyer-quick-grid span,
.buyer-service-strip span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.buyer-quick-grid a:hover,
.buyer-category-grid a:hover,
.buyer-promo-card:hover,
.buyer-support-grid > div:hover,
.buyer-coupon-card:hover,
.buyer-rank-list > a:hover {
    transform: translateY(-2px);
}

.buyer-section {
    margin-top: 28px;
}

.buyer-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid #e5ebf0;
}

.buyer-section-head.compact {
    margin-bottom: 8px;
    padding-bottom: 10px;
}

.buyer-section-head h2 {
    margin: 4px 0 0;
    color: var(--buyer-ink);
    font-size: 27px;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.2;
}

.buyer-section-head > a,
.buyer-countdown-wrap a {
    border: 1px solid #cfd9e2;
    background: #ffffff;
    color: var(--buyer-ink);
}

.buyer-section-head > a:hover,
.buyer-countdown-wrap a:hover {
    border-color: var(--buyer-accent);
    background: #eef8f6;
    color: var(--buyer-accent);
}

.buyer-coupon-board {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 18px;
    padding: 18px;
}

.buyer-coupon-title {
    padding: 8px;
}

.buyer-coupon-title h2,
.buyer-deal-title h2 {
    margin: 6px 0 14px;
    color: var(--buyer-ink);
    font-size: 29px;
    font-weight: 900;
    line-height: 1.14;
}

.buyer-coupon-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.buyer-coupon-card {
    display: grid;
    align-content: center;
    min-height: 126px;
    padding: 18px;
    border: 1px dashed #d4dee5;
    border-radius: 8px;
    background: #f8fafb;
    color: var(--buyer-ink);
}

.buyer-coupon-card span {
    color: var(--buyer-warm);
    font-size: 25px;
    font-weight: 900;
}

.buyer-coupon-card strong,
.buyer-coupon-card em {
    display: block;
    color: var(--buyer-ink);
}

.buyer-coupon-card strong {
    margin-top: 2px;
    font-weight: 900;
}

.buyer-coupon-card em {
    margin-top: 10px;
    color: var(--buyer-muted);
    font-size: 12px;
    font-style: normal;
    font-weight: 800;
}

.buyer-category-grid {
    display: grid;
    grid-template-columns: repeat(10, minmax(0, 1fr));
    gap: 12px;
}

.buyer-category-grid a {
    display: block;
    overflow: hidden;
    color: var(--buyer-ink);
}

.buyer-category-grid a:hover {
    color: var(--buyer-accent);
}

.buyer-category-grid img {
    width: 100%;
    height: 112px;
    background: #edf2f5;
    object-fit: cover;
}

.buyer-category-grid a:hover img,
.buyer-promo-card:hover img,
.buyer-floor-cover:hover img {
    transform: scale(1.035);
}

.buyer-category-grid span {
    display: block;
    min-height: 46px;
    padding: 12px;
    overflow: hidden;
    font-size: 13px;
    font-weight: 900;
    line-height: 1.35;
}

.buyer-promo-grid {
    display: grid;
    grid-template-columns: 1.35fr 1fr 1fr;
    gap: 14px;
}

.buyer-promo-card {
    position: relative;
    min-height: 220px;
    overflow: hidden;
    color: #ffffff;
}

.buyer-promo-card.is-wide {
    grid-row: span 2;
    min-height: 454px;
}

.buyer-promo-card img,
.buyer-editorial-row img,
.buyer-last-banner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.buyer-promo-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .02) 18%, rgba(0, 0, 0, .62));
}

.buyer-promo-card span {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 18px;
    z-index: 1;
}

.buyer-promo-card small,
.buyer-promo-card strong {
    display: block;
    color: #ffffff;
}

.buyer-promo-card small {
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.buyer-promo-card strong {
    margin-top: 5px;
    font-size: 21px;
    font-weight: 900;
}

.buyer-deal-board {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 18px;
    padding: 18px;
}

.buyer-deal-title {
    padding: 10px;
}

.buyer-deal-title p {
    color: var(--buyer-muted);
    font-weight: 700;
    line-height: 1.7;
}

.buyer-deal-grid,
.buyer-product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.buyer-home .commerce-product-card {
    border-color: var(--buyer-line);
    box-shadow: 0 12px 30px rgba(23, 32, 42, .055);
}

.buyer-home .commerce-product-image {
    height: 226px;
}

.buyer-home .commerce-product-card.compact .commerce-product-image {
    height: 170px;
}

.buyer-home .commerce-product-body h3,
.buyer-home .commerce-product-body > a {
    height: 40px;
    display: -webkit-box;
    overflow: hidden;
    color: var(--buyer-ink);
    font-weight: 900;
    line-height: 1.38;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.buyer-countdown-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
}

.buyer-floor-list {
    display: grid;
    gap: 16px;
}

.buyer-floor {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 14px;
    padding: 14px;
}

.buyer-floor-cover {
    position: relative;
    display: block;
    min-height: 320px;
    overflow: hidden;
    border-radius: 8px;
    background: #17202a;
    color: #ffffff;
}

.buyer-floor-cover img {
    width: 100%;
    height: 100%;
    min-height: 320px;
    object-fit: cover;
    opacity: .82;
}

.buyer-floor-cover::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .06), rgba(0, 0, 0, .68));
}

.buyer-floor-cover span,
.buyer-floor-cover strong,
.buyer-floor-cover em {
    position: absolute;
    left: 20px;
    right: 20px;
    z-index: 1;
    color: #ffffff;
}

.buyer-floor-cover span {
    bottom: 96px;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.buyer-floor-cover strong {
    bottom: 54px;
    font-size: 27px;
    font-weight: 900;
    line-height: 1.1;
}

.buyer-floor-cover em {
    bottom: 20px;
    font-style: normal;
    font-weight: 900;
}

.buyer-floor-products {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

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

.buyer-editorial-row a {
    display: block;
    height: 220px;
    overflow: hidden;
}

.buyer-rank-board {
    display: grid;
    grid-template-columns: 360px minmax(0, 1fr);
    gap: 16px;
}

.buyer-rank-list {
    padding: 16px;
}

.buyer-rank-list > a {
    display: grid;
    grid-template-columns: 32px 58px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    min-height: 78px;
    padding: 10px;
    border-radius: 8px;
    color: var(--buyer-ink);
}

.buyer-rank-list > a:not(:last-child) {
    border-bottom: 1px solid #e5ebf0;
    border-radius: 0;
}

.buyer-rank-list > a:hover {
    background: #f8fafb;
    color: var(--buyer-ink);
}

.buyer-rank-list em {
    color: var(--buyer-warm);
    font-size: 20px;
    font-style: normal;
    font-weight: 900;
}

.buyer-rank-list img {
    width: 58px;
    height: 58px;
    border-radius: 8px;
    background: #edf2f5;
    object-fit: cover;
}

.buyer-rank-list strong,
.buyer-rank-list small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.buyer-rank-list strong {
    color: var(--buyer-ink);
    font-weight: 900;
}

.buyer-rank-list small {
    margin-top: 5px;
    color: var(--buyer-warm);
    font-weight: 900;
}

.buyer-recommend-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.buyer-support-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.buyer-support-grid > div {
    display: grid;
    align-content: start;
    min-height: 190px;
    padding: 20px;
}

.buyer-support-grid i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 8px;
    background: #eef8f6;
    color: var(--buyer-accent);
    font-size: 24px;
}

.buyer-support-grid strong {
    margin-top: 16px;
    color: var(--buyer-ink);
    font-size: 19px;
    font-weight: 900;
}

.buyer-support-grid span {
    margin: 8px 0 16px;
    color: var(--buyer-muted);
    font-weight: 700;
    line-height: 1.65;
}

.buyer-support-grid a {
    width: max-content;
}

.buyer-subscribe-band {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 520px);
    gap: 20px;
    align-items: center;
    padding: 22px;
}

.buyer-subscribe-band strong {
    display: block;
    margin-top: 4px;
    color: var(--buyer-ink);
    font-size: 24px;
    font-weight: 900;
}

.buyer-subscribe-band form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
}

.buyer-subscribe-band input,
.buyer-subscribe-band button {
    height: 46px;
    border-radius: 6px;
}

.buyer-subscribe-band input {
    min-width: 0;
    padding: 0 14px;
    border: 1px solid #d7e0e7;
    background: #f8fafb;
    color: var(--buyer-ink);
}

.buyer-subscribe-band button {
    padding: 0 18px;
    border: 0;
    background: var(--buyer-accent);
    color: #ffffff;
    font-weight: 900;
}

.buyer-last-banner .buyer-container {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.buyer-last-banner a {
    display: block;
    height: 220px;
    overflow: hidden;
}

@media (max-width: 1399.98px) {
    .buyer-hero-grid {
        grid-template-columns: 240px minmax(0, 1fr);
    }

    .buyer-hero-side {
        grid-column: 1 / -1;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        grid-template-rows: auto;
        min-height: 0;
    }

    .buyer-search-card {
        grid-column: 1 / -1;
    }

    .buyer-category-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }
}

@media (max-width: 1199.98px) {
    .buyer-hero-grid,
    .buyer-coupon-board,
    .buyer-deal-board,
    .buyer-floor,
    .buyer-rank-board,
    .buyer-subscribe-band {
        grid-template-columns: 1fr;
    }

    .buyer-department-rail {
        min-height: 0;
    }

    .buyer-department-rail nav {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .buyer-product-grid,
    .buyer-deal-grid,
    .buyer-floor-products,
    .buyer-recommend-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .buyer-support-grid,
    .buyer-promo-grid {
        grid-template-columns: 1fr;
    }

    .buyer-promo-card.is-wide {
        grid-row: auto;
        min-height: 260px;
    }
}

@media (max-width: 767.98px) {
    .buyer-container {
        width: calc(100% - 24px);
    }

    .buyer-hero-band {
        padding-top: 14px;
    }

    .buyer-hero-side,
    .buyer-service-strip,
    .buyer-quick-grid,
    .buyer-coupon-grid,
    .buyer-category-grid,
    .buyer-editorial-row,
    .buyer-last-banner .buyer-container {
        grid-template-columns: 1fr;
    }

    .buyer-department-rail nav {
        grid-template-columns: 1fr;
    }

    .buyer-hero-stage {
        order: 1;
    }

    .buyer-hero-side {
        order: 2;
    }

    .buyer-department-rail {
        order: 3;
    }

    .buyer-hero-stage,
    .buyer-hero-stage img {
        min-height: 430px;
    }

    .buyer-hero-copy {
        left: 20px;
        right: 20px;
        bottom: 22px;
    }

    .buyer-hero-copy h1 {
        font-size: 31px;
    }

    .buyer-hero-copy p {
        font-size: 13px;
    }

    .buyer-hero-stats {
        position: static;
        grid-template-columns: 1fr;
        margin: 14px 20px 20px;
    }

    .buyer-service-strip a {
        border-right: 0;
        border-bottom: 1px solid #e5ebf0;
    }

    .buyer-service-strip a:last-child {
        border-bottom: 0;
    }

    .buyer-section-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .buyer-section-head > a,
    .buyer-countdown-wrap,
    .buyer-countdown-wrap a {
        width: 100%;
    }

    .buyer-product-grid,
    .buyer-deal-grid,
    .buyer-floor-products,
    .buyer-recommend-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .buyer-home .commerce-product-image,
    .buyer-home .commerce-product-card.compact .commerce-product-image {
        height: 180px;
    }

    .buyer-floor-cover,
    .buyer-floor-cover img {
        min-height: 250px;
    }

    .buyer-subscribe-band form {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 420px) {
    .buyer-product-grid,
    .buyer-deal-grid,
    .buyer-floor-products,
    .buyer-recommend-grid {
        grid-template-columns: 1fr;
    }

    .buyer-home .commerce-product-image,
    .buyer-home .commerce-product-card.compact .commerce-product-image {
        height: 230px;
    }
}
