@media (min-width: 901px) {
    .sf-mobile-product-view,
    .sf-mobile-product-topbar,
    .sf-mobile-fixed-cta,
    .sf-mobile-cart-view,
    .sf-mobile-checkout-view,
    .sf-mobile-pagebar,
    .sf-mobile-pay-total,
    .sf-mobile-order-detail-view,
    .sf-mobile-tracking-view {
        display: none !important;
    }
}

/* Completion sweep: app-parity spacing, cart/checkout polish, header, product media. */
body.storefront-shell--v2 .sf-wordmark--desktop {
    display: grid !important;
    grid-template-rows: auto auto !important;
    align-content: center !important;
    gap: 3px !important;
    text-decoration: none !important;
}

body.storefront-shell--v2 .sf-wordmark__home {
    display: inline-flex !important;
    min-width: 0 !important;
    align-items: center !important;
    text-decoration: none !important;
}

body.storefront-shell--v2 .sf-wordmark--desktop img,
body.storefront-shell--v2 .sf-mobile-brand-lockup img,
body.storefront-shell--v2 .sf-footer .sf-wordmark img {
    object-fit: contain !important;
    object-position: left center !important;
}

body.storefront-shell--v2 .sf-desktop-location--under-logo {
    display: grid !important;
    width: min(100%, 230px) !important;
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #111827 !important;
}

body.storefront-shell--v2 .sf-desktop-location--under-logo span {
    letter-spacing: 0 !important;
    text-transform: none !important;
}

body.storefront-shell--v2 .sf-desktop-location--under-logo strong {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.storefront-shell--v2 .sf-desktop-header__top,
.sf-desktop-header__top {
    grid-template-columns: minmax(190px, 230px) minmax(320px, max-content) minmax(280px, 1fr) auto !important;
    grid-template-areas: "brand services search actions" !important;
    gap: 14px !important;
}

.storefront-shell--v2 .sf-desktop-actions,
.sf-desktop-actions {
    flex-wrap: nowrap !important;
    justify-content: flex-end !important;
}

.sf-desktop-link--button {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    cursor: pointer !important;
    font: inherit !important;
}

.sf-desktop-link--button svg,
.sf-desktop-link svg,
.sf-desktop-cart svg,
.sf-desktop-icon svg,
.sf-side-menu__links svg {
    width: 22px !important;
    height: 22px !important;
    flex: 0 0 auto !important;
}

.sf-side-menu__links a {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.sf-desktop-cart {
    position: relative !important;
    overflow: visible !important;
}

.sf-desktop-cart .sf-badge-count,
#desktopCartBadge {
    position: absolute !important;
    top: -7px !important;
    right: -7px !important;
    display: grid !important;
    min-width: 22px !important;
    height: 22px !important;
    place-items: center !important;
    border: 2px solid #fff !important;
    border-radius: 999px !important;
    background: #078c23 !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

.sf-header-offers-modal[hidden] { display: none !important; }
.sf-header-offers-modal { position: fixed !important; inset: 0 !important; z-index: 6500 !important; display: grid !important; place-items: center !important; padding: 20px !important; }
.sf-header-offers-modal__scrim { position: absolute !important; inset: 0 !important; border: 0 !important; background: rgba(15, 23, 42, .58) !important; }
.sf-header-offers-modal__panel { position: relative !important; z-index: 1 !important; display: grid !important; width: min(520px, 100%) !important; max-height: min(720px, 86dvh) !important; grid-template-rows: auto minmax(0, 1fr) !important; overflow: hidden !important; border-radius: 18px !important; background: #f4f6fc !important; box-shadow: 0 24px 70px rgba(15, 23, 42, .28) !important; }
.sf-header-offers-modal__panel header { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 14px !important; padding: 18px !important; background: #fff !important; }
.sf-header-offers-modal__panel header span { color: #078c23 !important; font-size: .76rem !important; font-weight: 900 !important; text-transform: uppercase !important; }
.sf-header-offers-modal__panel h2 { margin: 0 !important; font-size: 1.2rem !important; font-weight: 900 !important; }
.sf-header-offers-modal__panel header button { display: grid !important; width: 40px !important; height: 40px !important; place-items: center !important; border: 0 !important; border-radius: 999px !important; background: #f3f4f6 !important; }
.sf-header-offers-modal__list { display: grid !important; align-content: start !important; gap: 12px !important; padding: 14px !important; overflow-y: auto !important; }
.sf-header-offer-row { display: grid !important; grid-template-columns: 44px minmax(0, 1fr) auto !important; gap: 12px !important; align-items: center !important; padding: 14px !important; border: 1px solid #eef0f4 !important; border-radius: 12px !important; background: #fff !important; }
.sf-header-offer-row > span { display: grid !important; width: 44px !important; height: 44px !important; place-items: center !important; border-radius: 12px !important; background: #eaf8ed !important; color: #078c23 !important; }
.sf-header-offer-row svg { width: 22px !important; height: 22px !important; }
.sf-header-offer-row div { display: grid !important; min-width: 0 !important; gap: 3px !important; }
.sf-header-offer-row strong { font-size: .92rem !important; font-weight: 900 !important; }
.sf-header-offer-row p, .sf-header-offer-row small { margin: 0 !important; overflow: hidden !important; color: #667085 !important; font-size: .78rem !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
.sf-header-offer-row button { min-height: 38px !important; padding: 0 12px !important; border: 1px dashed #078c23 !important; border-radius: 10px !important; background: #f0fff4 !important; color: #078c23 !important; font-weight: 900 !important; }
.sf-header-offers-empty { display: grid !important; gap: 6px !important; padding: 42px 18px !important; border-radius: 12px !important; background: #fff !important; text-align: center !important; }

body.storefront-shell--v2 .sf-location-modal__actions {
    grid-template-columns: 1fr !important;
}

body.storefront-shell--v2 .sf-location-modal__map,
body.storefront-shell--v2 .sf-location-modal__map-canvas {
    display: none !important;
}

body.storefront-shell--v2 .sf-location-modal__panel {
    width: min(520px, calc(100% - 28px)) !important;
    border-radius: 22px !important;
}

body.storefront-shell--v2 .sf-location-modal__manual-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 52px !important;
}

body.storefront-shell--v2 .sf-location-modal__current {
    border-radius: 16px !important;
    background: #f7faf8 !important;
}

body.storefront-shell--v2 .sf-product-card {
    overflow: hidden !important;
}

body.storefront-shell--v2 .sf-product-card__thumb {
    isolation: isolate !important;
    overflow: hidden !important;
    background: #f7f8fb !important;
}

body.storefront-shell--v2 .sf-product-card__image-track,
body.storefront-shell--v2 .sf-product-card__image-slide,
body.storefront-shell--v2 .sf-product-card__thumb > img {
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
}

body.storefront-shell--v2 .sf-product-card__action {
    min-width: 58px !important;
    max-width: 68px !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 12px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 900 !important;
}

body.storefront-shell--v2 .sf-product-card__action-plus {
    display: none !important;
}

body.storefront-shell--v2 .sf-product-card__action-label {
    display: inline !important;
}

body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid,
body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid {
    grid-auto-columns: clamp(154px, 12vw, 190px) !important;
    gap: 14px !important;
}

body.storefront-shell--v2 .sf-home-category-tile,
body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile {
    display: grid !important;
    justify-items: center !important;
    gap: 8px !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: center !important;
}

body.storefront-shell--v2 .sf-home-category-tile__top,
body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile__top {
    width: clamp(72px, 8vw, 104px) !important;
    height: clamp(72px, 8vw, 104px) !important;
    aspect-ratio: 1 / 1 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 999px !important;
    background: #eefafa !important;
}

body.storefront-shell--v2 .sf-home-category-tile img,
body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile img {
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    object-fit: cover !important;
}

body.storefront-shell--v2 .sf-home-category-tile > span,
body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile > span {
    display: block !important;
    max-width: 110px !important;
    color: #202124 !important;
    font-size: .82rem !important;
    font-weight: 800 !important;
    line-height: 1.18 !important;
}

body.sf-mobile-product-page .sf-bottom-nav {
    display: none !important;
}

body.sf-mobile-product-page .sf-app-pdp__bottom-bar {
    grid-template-columns: minmax(0, 1fr) minmax(150px, 46%) !important;
    gap: 12px !important;
    padding-inline: 14px !important;
}

body.sf-mobile-product-page .sf-app-pdp__bottom-bar form,
body.sf-mobile-product-page .sf-app-pdp__bottom-bar button,
body.sf-mobile-product-page .sf-app-pdp__bottom-bar a {
    width: 100% !important;
}

body.sf-mobile-product-page .sf-app-pdp__offer,
body.sf-mobile-product-page .sf-app-pdp__store,
body.sf-mobile-product-page .sf-app-pdp__description {
    order: 8 !important;
}

body.sf-reference-cart-page {
    height: 100dvh !important;
    overflow: hidden !important;
}

body.sf-reference-cart-page .sf-main,
body.sf-reference-cart-page .sf-container,
body.sf-reference-cart-page .sf-cart-stage {
    height: 100dvh !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

.sf-reference-cart__scroll {
    min-height: 0 !important;
    overflow-y: auto !important;
}

.sf-reference-cart-item__image img {
    padding: 0 !important;
    object-fit: cover !important;
}

body.sf-mobile-checkout-page .sf-page-shell,
body.sf-mobile-cart-page .sf-page-shell {
    background: #f4f6fc !important;
}

body.sf-mobile-checkout-page .sf-checkout-layout--v2 {
    align-items: start !important;
}

@media (max-width: 900px) {
    body.storefront-shell--v2:not(.sf-reference-cart-page) .sf-main > .sf-container {
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    body.storefront-shell--v2 .sf-app-chrome {
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    body.storefront-shell--v2 .sf-tab-rail--categories {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-header-service-select {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector {
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    body.storefront-shell--v2 .sf-product-card__thumb {
        min-height: 118px !important;
    }

    body.storefront-shell--v2 .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.is-scroller {
        gap: 10px !important;
    }

    body.storefront-shell--v2 .sf-footer {
        display: block !important;
        padding: 28px 12px 96px !important;
        background: #101828 !important;
        color: #fff !important;
    }

    body.storefront-shell--v2 .sf-footer__grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }

    body.storefront-shell--v2 .sf-footer a,
    body.storefront-shell--v2 .sf-footer p,
    body.storefront-shell--v2 .sf-footer small {
        color: rgba(255, 255, 255, .78) !important;
    }

    .sf-header-offers-modal {
        align-items: end !important;
        padding: 0 !important;
    }

    .sf-header-offers-modal__panel {
        width: 100% !important;
        max-height: 82dvh !important;
        border-radius: 18px 18px 0 0 !important;
    }

    .sf-header-offer-row {
        grid-template-columns: 42px minmax(0, 1fr) !important;
    }

    .sf-header-offer-row button {
        grid-column: 2 !important;
        justify-self: start !important;
    }
}

/* Final parity layer for account, search, orders, help/contact screens. */
.sf-app-profile-menu {
    display: grid !important;
    gap: 10px !important;
}

.sf-app-profile-menu__item {
    display: grid !important;
    grid-template-columns: 50px minmax(0, 1fr) auto !important;
    gap: 14px !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 62px !important;
    padding: 8px 12px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: #fff !important;
    color: #111827 !important;
    text-align: left !important;
    text-decoration: none !important;
}

.sf-app-profile-menu__item > span {
    display: grid !important;
    width: 50px !important;
    height: 50px !important;
    place-items: center !important;
    border-radius: 14px !important;
    background: #f5f5f5 !important;
    color: #667085 !important;
}

.sf-app-profile-menu__item svg {
    width: 24px !important;
    height: 24px !important;
}

.sf-app-profile-menu__item strong {
    min-width: 0 !important;
    font-size: 1rem !important;
    font-weight: 850 !important;
}

.sf-app-profile-menu__item small {
    overflow: hidden !important;
    color: #667085 !important;
    font-size: .78rem !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.sf-app-profile-menu__logout,
.sf-app-profile-menu__logout button {
    margin: 0 !important;
    padding: 0 !important;
}

.sf-app-profile-menu__logout .sf-app-profile-menu__item {
    cursor: pointer !important;
}

body.storefront-shell--v2 .sf-page-shell .sf-side-card,
body.storefront-shell--v2 .sf-page-shell .sf-summary-card,
body.storefront-shell--v2 .sf-order-list-card {
    border-radius: 16px !important;
    border-color: #eef0f4 !important;
    box-shadow: 0 10px 30px rgba(15, 23, 42, .05) !important;
}

body.storefront-shell--v2 .sf-home-product-grid.sf-catalog-grid,
body.storefront-shell--v2 .sf-catalog-grid,
body.storefront-shell--v2 .sf-product-grid {
    grid-template-columns: repeat(auto-fill, minmax(164px, 1fr)) !important;
    gap: 14px !important;
}

body.storefront-shell--v2 .sf-home-product-grid.sf-catalog-grid .sf-product-card,
body.storefront-shell--v2 .sf-catalog-grid .sf-product-card {
    min-height: 0 !important;
}

body.storefront-shell--v2 .sf-page-hero--catalog {
    border-radius: 18px !important;
    background: linear-gradient(135deg, #f7fff8, #fff) !important;
}

body.storefront-shell--v2 .sf-order-list-card__head,
body.storefront-shell--v2 .sf-order-list-card__footer,
body.storefront-shell--v2 .sf-order-app-actions {
    gap: 12px !important;
}

body.storefront-shell--v2 .sf-order-preview-images span,
body.storefront-shell--v2 .sf-order-preview-images img {
    border-radius: 12px !important;
    object-fit: cover !important;
}

body.storefront-shell--v2 .sf-support-compose textarea,
body.storefront-shell--v2 .sf-support-compose select,
body.storefront-shell--v2 .sf-support-compose input {
    background: #fff !important;
}

@media (min-width: 901px) {
    body.storefront-shell--v2 .sf-account-shell,
    body.storefront-shell--v2 .sf-checkout-layout--v2,
    body.storefront-shell--v2 .sf-order-detail-layout {
        grid-template-columns: minmax(0, 1fr) minmax(300px, 360px) !important;
        gap: 18px !important;
    }

    body.storefront-shell--v2 .sf-page-shell {
        padding-top: 18px !important;
    }
}

@media (max-width: 900px) {
    .sf-app-profile-menu__item {
        grid-template-columns: 52px minmax(0, 1fr) !important;
        padding: 7px 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

    .sf-app-profile-menu__item small {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-profile-hero,
    body.storefront-shell--v2 .sf-profile-stat-grid,
    body.storefront-shell--v2 .sf-account-side {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-account-shell,
    body.storefront-shell--v2 .sf-account-main {
        display: grid !important;
        gap: 12px !important;
    }

    body.storefront-shell--v2 .sf-account-main > .sf-side-card:first-child .sf-card-head {
        display: block !important;
        padding-bottom: 2px !important;
    }

    body.storefront-shell--v2 .sf-account-main > .sf-side-card:first-child .sf-card-head p {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-home-product-grid.sf-catalog-grid,
    body.storefront-shell--v2 .sf-catalog-grid,
    body.storefront-shell--v2 .sf-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }
}

/* Final app parity pass: cart offers popup and service tabs. */
.sf-cart-offers-link {
    width: 100% !important;
    border: 1px solid #eef0f4 !important;
    text-align: left !important;
    cursor: pointer !important;
}

.sf-cart-offers-modal[hidden] {
    display: none !important;
}

.sf-cart-offers-modal {
    position: fixed;
    inset: 0;
    z-index: 6100;
    display: grid;
    place-items: end;
}

.sf-cart-offers-modal__scrim {
    position: absolute;
    inset: 0;
    border: 0;
    background: rgba(17, 24, 39, .62);
    cursor: pointer;
}

.sf-cart-offers-modal__panel {
    position: relative;
    z-index: 1;
    display: grid;
    width: min(100%, 486px);
    max-height: 86dvh;
    grid-template-rows: auto minmax(0, 1fr);
    overflow: hidden;
    border-radius: 8px 0 0 8px;
    background: #f4f6fc;
    box-shadow: -18px 0 44px rgba(15, 23, 42, .24);
}

.sf-cart-offers-modal__panel header {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding: 18px 16px;
    background: #fff;
}

.sf-cart-offers-modal__panel header button {
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.sf-cart-offers-modal__panel header img {
    width: 22px;
    height: 22px;
}

.sf-cart-offers-modal__panel h2,
.sf-cart-offers-modal__panel p {
    margin: 0;
}

.sf-cart-offers-modal__panel h2 {
    font-size: 1.08rem;
    font-weight: 900;
}

.sf-cart-offers-modal__panel header p {
    color: #667085;
    font-size: .78rem;
}

.sf-cart-offers-modal__list {
    display: grid;
    align-content: start;
    gap: 12px;
    padding: 14px;
    overflow-y: auto;
}

.sf-cart-offer-row {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    padding: 14px;
    border: 1px solid #eef0f4;
    border-radius: 8px;
    background: #fff;
}

.sf-cart-offer-row > span {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border-radius: 8px;
    background: #eaf8ed;
}

.sf-cart-offer-row > span img {
    width: 24px;
    height: 24px;
}

.sf-cart-offer-row div {
    display: grid;
    min-width: 0;
    gap: 3px;
}

.sf-cart-offer-row strong {
    font-size: .9rem;
    font-weight: 900;
}

.sf-cart-offer-row p,
.sf-cart-offer-row small {
    overflow: hidden;
    color: #667085;
    font-size: .76rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sf-cart-offer-row button {
    min-height: 38px;
    padding: 0 12px;
    border: 1px dashed #078c23;
    border-radius: 8px;
    background: #f0fff4;
    color: #078c23;
    font-size: .78rem;
    font-weight: 900;
    cursor: pointer;
}

.sf-cart-offers-empty {
    display: grid;
    justify-items: center;
    gap: 8px;
    padding: 42px 18px;
    border-radius: 8px;
    background: #fff;
    color: #667085;
    text-align: center;
}

.sf-cart-offers-empty img {
    width: 54px;
    height: 54px;
}

.sf-cart-offers-empty strong {
    color: #101828;
    font-size: 1rem;
}

.sf-desktop-service-tabs {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 10px;
    overflow-x: auto;
    padding: 4px 0;
    scrollbar-width: none;
}

.sf-desktop-service-tabs a {
    display: grid;
    min-width: 108px;
    min-height: 74px;
    grid-template-rows: 32px auto;
    place-items: center;
    gap: 6px;
    padding: 9px 12px;
    border: 1px solid #e6e8ee;
    border-radius: 8px;
    background: #fff;
    color: #202124;
    font-size: .8rem;
    font-weight: 900;
    line-height: 1.05;
    text-align: center;
    box-shadow: 0 6px 18px rgba(15, 23, 42, .05);
}

.sf-desktop-service-tabs a.is-active {
    border-color: #078c23;
    background: #f0fff4;
    color: #078c23;
}

.sf-desktop-service-tabs img {
    width: 32px;
    height: 32px;
    object-fit: contain;
}

.sf-desktop-service-tabs span {
    display: block;
    max-width: 92px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 900px) {
    .sf-cart-offers-modal {
        place-items: end stretch;
    }

    .sf-cart-offers-modal__panel {
        width: 100%;
        max-height: 82dvh;
        border-radius: 18px 18px 0 0;
        box-shadow: 0 -18px 44px rgba(15, 23, 42, .2);
    }

    body.storefront-shell--v2 .sf-header-service-selector {
        height: 116px !important;
        min-height: 116px !important;
        grid-auto-columns: minmax(112px, 128px) !important;
        gap: 12px !important;
        padding: 8px 14px !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a {
        height: 98px !important;
        min-width: 112px !important;
        grid-template-rows: 38px auto !important;
        gap: 8px !important;
        padding: 8px !important;
        border-radius: 8px !important;
        font-size: 13px !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector img,
    body.storefront-shell--v2 .sf-header-service-selector .sf-service-tab-icon {
        width: 38px !important;
        height: 38px !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector span,
    body.storefront-shell--v2 .sf-header-service-selector a span:last-child {
        max-width: 104px !important;
        font-size: 13px !important;
        line-height: 1.12 !important;
        white-space: normal !important;
    }
}

/* Storefront product card alignment: keep desktop cards full-width with non-floating media. */
body.storefront-shell--v2 .sf-home-product-grid .sf-product-card,
body.storefront-shell--v2 .sf-catalog-grid .sf-product-card,
body.storefront-shell--v2 .sf-store-product-list .sf-product-card {
    display: flex !important;
    min-width: 0 !important;
    min-height: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
}

body.storefront-shell--v2 .sf-product-card__thumb {
    float: none !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    flex: 0 0 auto !important;
}

body.storefront-shell--v2 .sf-product-card__image-track,
body.storefront-shell--v2 .sf-product-card__image-slide,
body.storefront-shell--v2 .sf-product-card__thumb > img,
body.storefront-shell--v2 .sf-product-card__placeholder {
    width: 100% !important;
    height: 100% !important;
}

body.storefront-shell--v2 .sf-product-card__image-slide,
body.storefront-shell--v2 .sf-product-card__thumb > img {
    object-fit: cover !important;
}

body.storefront-shell--v2 .sf-product-card__subtitle {
    flex: 1 1 auto !important;
}

body.storefront-shell--v2 .sf-product-card__footer {
    margin-top: auto !important;
    align-items: end !important;
}

/* Final storefront spacing pass: desktop rails, responsive banners, and app-style store info. */
body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid,
body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: clamp(174px, 13.5vw, 218px) !important;
    grid-template-columns: none !important;
    gap: 22px !important;
    align-items: stretch !important;
    padding: 4px 2px 18px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: thin !important;
}

body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-product-card,
body.storefront-shell--v2 .sf-v3-section--product_rail .sf-product-card {
    scroll-snap-align: start !important;
}

body.storefront-shell--v2 .sf-mini-banner-grid,
body.storefront-shell--v2 .sf-mini-banner-grid--dynamic,
body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner-grid {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: calc((100% - 18px) / 2) !important;
    grid-template-columns: none !important;
    gap: 18px !important;
    align-items: stretch !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: thin !important;
}

body.storefront-shell--v2 .sf-mini-banner-grid:has(> .sf-mini-banner:only-child),
body.storefront-shell--v2 .sf-mini-banner-grid--dynamic:has(> .sf-mini-banner:only-child) {
    grid-auto-columns: min(100%, 720px) !important;
    justify-content: center !important;
}

body.storefront-shell--v2 .sf-mini-banner,
body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner {
    width: 100% !important;
    min-width: 0 !important;
    aspect-ratio: 16 / 6.2 !important;
    overflow: hidden !important;
    scroll-snap-align: start !important;
}

body.storefront-shell--v2 .sf-mini-banner img,
body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}

body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info article {
    min-width: 0 !important;
}

body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info strong,
body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info span {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-mini-banner-grid,
    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic,
    body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner-grid {
        grid-auto-columns: 100% !important;
        gap: 0 !important;
        padding: 0 !important;
        scrollbar-width: none !important;
    }

    body.storefront-shell--v2 .sf-mini-banner,
    body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner {
        aspect-ratio: 16 / 7.5 !important;
        border-radius: 0 !important;
    }

    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid {
        grid-auto-columns: calc((100% - 20px) / 3) !important;
        gap: 10px !important;
        padding: 0 4px 10px !important;
        scrollbar-width: none !important;
    }

    body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 8px !important;
        padding: 8px 0 !important;
        overflow: visible !important;
    }

    body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info article {
        display: grid !important;
        min-height: 70px !important;
        align-content: center !important;
        gap: 4px !important;
        padding: 8px 6px !important;
        border-radius: 12px !important;
    }

    body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info strong {
        font-size: .78rem !important;
        line-height: 1.1 !important;
    }

    body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info span {
        font-size: .58rem !important;
        line-height: 1.12 !important;
    }
}

/* Real cart surface shared by mobile and desktop. */
body.sf-reference-cart-page {
    overflow: hidden;
    background: #f3f6fc;
}

.sf-cart-stage {
    min-height: 100dvh;
}

.sf-cart-scrim {
    position: fixed;
    inset: 0;
    z-index: 6000;
    background: rgba(17, 24, 39, .72);
}

.sf-reference-cart {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 6001;
    display: grid;
    width: min(100%, 486px);
    grid-template-rows: 80px minmax(0, 1fr) auto;
    overflow: hidden;
    background: #f4f6fc;
    color: #101828;
}

.sf-reference-cart__header {
    display: grid;
    grid-template-columns: 44px 1fr 84px;
    align-items: center;
    padding: 0 16px;
    background: #fff;
}

.sf-reference-cart__header h1 {
    margin: 0;
    text-align: center;
    font-size: 1.12rem;
    font-weight: 900;
}

.sf-reference-cart__header > a,
.sf-reference-cart__header > button {
    display: inline-flex;
    min-width: 40px;
    min-height: 40px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border: 0;
    background: transparent;
    color: #078c23;
    font-weight: 900;
    cursor: pointer;
}

.sf-reference-cart__header > a { justify-content: flex-start; }
.sf-reference-cart__header img { width: 22px; height: 22px; object-fit: contain; }
.sf-reference-cart__scroll { display: grid; align-content: start; gap: 14px; padding: 16px; overflow-y: auto; }

.sf-cart-store-card,
.sf-cart-bill-card,
.sf-cart-offers-link {
    border: 1px solid #eef0f4;
    border-radius: 8px;
    background: #fff;
}

.sf-cart-store-card { padding: 14px; }
.sf-cart-store-card__eta { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.sf-cart-store-card__eta > span { display: grid; width: 56px; height: 56px; flex: 0 0 56px; place-items: center; border-radius: 8px; background: #f8f8f8; }
.sf-cart-store-card__eta img { width: 38px; height: 38px; }
.sf-cart-store-card__eta h2 { margin: 0 0 3px; font-size: 1.02rem; font-weight: 900; }
.sf-cart-store-card__eta p { margin: 0; color: #7b8494; font-size: .82rem; }
.sf-cart-store-card__name { display: flex; align-items: center; gap: 7px; padding: 0 2px 10px; }
.sf-cart-store-card__name img { width: 20px; height: 20px; }
.sf-cart-store-card__name strong { overflow: hidden; font-size: .86rem; text-overflow: ellipsis; white-space: nowrap; }
.sf-reference-cart-items { display: grid; gap: 12px; }

.sf-reference-cart-item {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
}

.sf-reference-cart-item__image { display: grid; width: 92px; height: 92px; place-items: center; overflow: hidden; border: 1px solid #e8e8e8; border-radius: 8px; background: #fff; }
.sf-reference-cart-item__image img { width: 100%; height: 100%; padding: 5px; object-fit: contain; }
.sf-reference-cart-item__copy { display: grid; min-width: 0; gap: 3px; }
.sf-reference-cart-item__copy > strong { display: -webkit-box; overflow: hidden; font-size: .88rem; font-weight: 700; line-height: 1.3; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.sf-reference-cart-item__copy > span { color: #667085; font-size: .75rem; }
.sf-reference-cart-item__price { display: flex; gap: 7px; align-items: baseline; margin-top: 3px; }
.sf-reference-cart-item__price b { font-size: .88rem; }
.sf-reference-cart-item__price del { color: #7b8494; font-size: .72rem; }

.sf-reference-stepper { display: grid; grid-template-columns: 30px 28px 30px; height: 40px; align-items: center; border-radius: 8px; background: #208f17; color: #fff; }
.sf-reference-stepper form { display: contents; }
.sf-reference-stepper button { display: grid; width: 30px; height: 40px; place-items: center; border: 0; background: transparent; cursor: pointer; }
.sf-reference-stepper img { width: 14px; height: 14px; filter: brightness(0) invert(1); }
.sf-reference-stepper strong { text-align: center; font-size: .82rem; }
.sf-cart-add-more { display: inline-flex; align-items: center; gap: 6px; margin-top: 14px; color: #168b20; font-size: .82rem; font-weight: 900; }
.sf-cart-add-more img { width: 16px; height: 16px; }

.sf-cart-bill-card { padding: 14px; }
.sf-cart-bill-card h2 { margin: 0 0 8px; font-size: 1.02rem; font-weight: 900; }
.sf-cart-bill-card dl { display: grid; gap: 9px; margin: 0; }
.sf-cart-bill-card dl > div { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.sf-cart-bill-card dt { display: flex; min-width: 0; align-items: center; gap: 7px; font-size: .82rem; }
.sf-cart-bill-card dt img { width: 16px; height: 16px; }
.sf-cart-bill-card dt small { padding: 2px 5px; border-radius: 4px; background: #eaf2ff; color: #1468dc; font-size: .62rem; font-weight: 800; }
.sf-cart-bill-card dd { margin: 0; font-size: .82rem; white-space: nowrap; }
.sf-cart-bill-card .is-total { margin-top: 4px; padding-top: 10px; border-top: 1px solid #eef0f4; font-weight: 900; }
.sf-cart-bill-card .is-total dt,
.sf-cart-bill-card .is-total dd { font-size: .92rem; }

.sf-cart-offers-link { display: grid; grid-template-columns: 40px minmax(0, 1fr) 22px; align-items: center; gap: 10px; padding: 14px; }
.sf-cart-offers-link > img:first-child { width: 38px; height: 38px; }
.sf-cart-offers-link > img:last-child { width: 18px; height: 18px; }
.sf-cart-offers-link span { display: grid; gap: 2px; }
.sf-cart-offers-link strong { font-size: .88rem; }
.sf-cart-offers-link small { color: #7b8494; font-size: .75rem; }

.sf-reference-cart__footer { padding: 14px; border-top: 1px solid #e7eaf0; background: #fff; }
.sf-reference-cart__footer a { display: flex; min-height: 70px; align-items: center; justify-content: space-between; gap: 18px; padding: 12px 16px; border-radius: 8px; background: #078c23; color: #fff; }
.sf-reference-cart__footer a > span { display: grid; }
.sf-reference-cart__footer strong { font-size: 1.05rem; }
.sf-reference-cart__footer small { font-size: .7rem; }
.sf-reference-cart__footer b { display: flex; align-items: center; gap: 7px; font-size: 1.05rem; }
.sf-reference-cart__footer b img { width: 19px; height: 19px; filter: brightness(0) invert(1); }
.sf-reference-cart-empty { display: grid; align-content: center; justify-items: center; gap: 8px; padding: 28px; text-align: center; }
.sf-reference-cart-empty > img { width: 112px; height: 112px; }
.sf-reference-cart-empty h2,
.sf-reference-cart-empty p { margin: 0; }
.sf-reference-cart-empty p { color: #667085; }
.sf-reference-cart-empty a { margin-top: 8px; padding: 12px 18px; border-radius: 8px; background: #078c23; color: #fff; font-weight: 900; }

.sf-desktop-link > img,
.sf-desktop-cart > img,
.sf-desktop-icon > img { width: 22px; height: 22px; object-fit: contain; }
.sf-bottom-nav > a > img,
.sf-bottom-nav > button > img { width: 24px; height: 24px; object-fit: contain; }

@media (max-width: 900px) {
    body.sf-reference-cart-page .sf-header,
    body.sf-reference-cart-page .sf-top-strip,
    body.sf-reference-cart-page .sf-zepto-delivery-dock { display: none !important; }
    .sf-cart-scrim { display: none; }
    .sf-reference-cart { width: 100%; }
    .sf-reference-cart__header { grid-template-rows: 1fr; }
}

@media (max-width: 420px) {
    .sf-reference-cart { grid-template-rows: 74px minmax(0, 1fr) auto; }
    .sf-reference-cart__scroll { gap: 12px; padding: 14px 7px; }
    .sf-reference-cart-item { grid-template-columns: 82px minmax(0, 1fr) auto; gap: 10px; }
    .sf-reference-cart-item__image { width: 82px; height: 82px; }
    .sf-reference-stepper { grid-template-columns: 27px 24px 27px; }
    .sf-reference-stepper button { width: 27px; }
}

body.sf-mobile-product-page .sf-app-pdp__add-small button,
body.sf-mobile-product-page .sf-app-pdp__bottom-bar > button[data-auth-modal-open] {
    min-width: 128px !important;
    width: auto !important;
    padding: 0 18px !important;
    border-radius: 14px !important;
    background: #1faf38 !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

body.sf-mobile-product-page .sf-app-pdp__stepper button {
    padding: 0 !important;
}

.sf-mobile-cart-line__thumb {
    display: grid;
    width: 72px;
    height: 72px;
    place-items: center;
    border: 1px solid #f0f1f4;
    border-radius: 16px;
    background: #f8f8f8;
    color: #94a3b8;
}

/* Final storefront spacing pass: desktop rails, responsive banners, and app-style store info. */
body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid,
body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: clamp(174px, 13.5vw, 218px) !important;
    grid-template-columns: none !important;
    gap: 22px !important;
    align-items: stretch !important;
    padding: 4px 2px 18px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: thin !important;
}

body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-product-card,
body.storefront-shell--v2 .sf-v3-section--product_rail .sf-product-card {
    scroll-snap-align: start !important;
}

body.storefront-shell--v2 .sf-mini-banner-grid,
body.storefront-shell--v2 .sf-mini-banner-grid--dynamic,
body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner-grid {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: calc((100% - 18px) / 2) !important;
    grid-template-columns: none !important;
    gap: 18px !important;
    align-items: stretch !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: thin !important;
}

body.storefront-shell--v2 .sf-mini-banner-grid:has(> .sf-mini-banner:only-child),
body.storefront-shell--v2 .sf-mini-banner-grid--dynamic:has(> .sf-mini-banner:only-child) {
    grid-auto-columns: min(100%, 720px) !important;
    justify-content: center !important;
}

body.storefront-shell--v2 .sf-mini-banner,
body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner {
    width: 100% !important;
    min-width: 0 !important;
    aspect-ratio: 16 / 6.2 !important;
    overflow: hidden !important;
    scroll-snap-align: start !important;
}

body.storefront-shell--v2 .sf-mini-banner img,
body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}

body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info article {
    min-width: 0 !important;
}

body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info strong,
body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info span {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-mini-banner-grid,
    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic,
    body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner-grid {
        grid-auto-columns: 100% !important;
        gap: 0 !important;
        padding: 0 !important;
        scrollbar-width: none !important;
    }

    body.storefront-shell--v2 .sf-mini-banner,
    body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner {
        aspect-ratio: 16 / 7.5 !important;
        border-radius: 0 !important;
    }

    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid {
        grid-auto-columns: calc((100% - 20px) / 3) !important;
        gap: 10px !important;
        padding: 0 4px 10px !important;
        scrollbar-width: none !important;
    }

    body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 8px !important;
        padding: 8px 0 !important;
        overflow: visible !important;
    }

    body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info article {
        display: grid !important;
        min-height: 70px !important;
        align-content: center !important;
        gap: 4px !important;
        padding: 8px 6px !important;
        border-radius: 12px !important;
    }

    body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info strong {
        font-size: .78rem !important;
        line-height: 1.1 !important;
    }

    body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info span {
        font-size: .58rem !important;
        line-height: 1.12 !important;
    }
}

/* Customer-app order flow: real cart, checkout, order detail, and tracking data. */
.sf-orderflow-address {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) 24px;
    align-items: center;
    gap: 12px;
    margin: 16px;
    padding: 14px 16px;
    border: 1px solid #f0e7c3;
    border-radius: 16px;
    background: #fff;
    color: #171717;
}

.sf-orderflow-address > i:first-child,
.sf-orderflow-section-head > span {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 12px;
    background: #fff8cc;
    color: #171717;
}

.sf-orderflow-address span,
.sf-orderflow-address strong,
.sf-orderflow-address small {
    display: block;
    min-width: 0;
}

.sf-orderflow-address strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sf-orderflow-address small,
.sf-orderflow-section-head p {
    color: #6f6f6f;
}

.sf-orderflow-progress {
    height: 8px;
    margin: 12px 0 8px;
    overflow: hidden;
    border-radius: 8px;
    background: #e3f4e8;
}

.sf-orderflow-progress span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #1db954;
}

.sf-checkout-steps {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    width: min(720px, calc(100% - 32px));
    margin: 0 auto 18px;
    padding: 0;
    list-style: none;
}

.sf-checkout-steps li {
    position: relative;
    display: grid;
    justify-items: center;
    gap: 6px;
    color: #8b8b8b;
    font-size: 12px;
    font-weight: 800;
}

.sf-checkout-steps li:not(:last-child)::after {
    position: absolute;
    top: 17px;
    left: calc(50% + 21px);
    width: calc(100% - 42px);
    height: 2px;
    background: #e7e7e7;
    content: "";
}

.sf-checkout-steps i {
    display: grid;
    z-index: 1;
    width: 36px;
    height: 36px;
    place-items: center;
    border: 2px solid #e7e7e7;
    border-radius: 50%;
    background: #fff;
}

.sf-checkout-steps .is-complete i,
.sf-checkout-steps .is-active i {
    border-color: #1db954;
    background: #1db954;
    color: #fff;
}

.sf-checkout-steps .is-complete:not(:last-child)::after {
    background: #1db954;
}

.sf-checkout-steps .is-active span,
.sf-checkout-steps .is-complete span {
    color: #171717;
}

.sf-orderflow-section-head {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

.sf-orderflow-section-head h2,
.sf-orderflow-section-head p {
    margin: 0;
}

.sf-orderflow-section-head h2 {
    font-size: 1.05rem;
}

.sf-orderflow-section-head p {
    margin-top: 2px;
    font-size: .82rem;
}

.sf-payment-card > i {
    color: #1db954;
    font-size: 1.15rem;
}

@media (max-width: 900px) {
    body.sf-mobile-orders-page .sf-header {
        display: none !important;
    }

    body.sf-mobile-orders-page .sf-page-hero,
    body.sf-mobile-orders-page .sf-quick-strip {
        display: none !important;
    }

    body.sf-mobile-cart-page,
    body.sf-mobile-checkout-page,
    body.sf-mobile-orders-page,
    body.sf-mobile-order-page,
    body.sf-mobile-tracking-page {
        background: #f7f7f7 !important;
    }

    body.sf-mobile-cart-page .sf-bottom-nav,
    body.sf-mobile-checkout-page .sf-bottom-nav,
    body.sf-mobile-order-page .sf-bottom-nav,
    body.sf-mobile-tracking-page .sf-bottom-nav {
        display: none !important;
    }

    body.sf-mobile-cart-page,
    body.sf-mobile-checkout-page {
        padding-bottom: calc(82px + env(safe-area-inset-bottom, 0px)) !important;
    }

    body.sf-mobile-order-page,
    body.sf-mobile-tracking-page {
        padding-bottom: 20px !important;
    }

    body.sf-mobile-checkout-page .sf-checkout-main,
    body.sf-mobile-checkout-page .sf-checkout-summary,
    body.sf-mobile-order-page .sf-page-hero,
    body.sf-mobile-order-page .sf-order-progress-card,
    body.sf-mobile-order-page .sf-order-detail-layout,
    body.sf-mobile-tracking-page .sf-page-hero,
    body.sf-mobile-tracking-page .sf-tracking-layout {
        display: grid !important;
    }

    body.sf-mobile-checkout-page .sf-checkout-layout,
    body.sf-mobile-order-page .sf-order-detail-layout,
    body.sf-mobile-tracking-page .sf-tracking-layout {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 14px !important;
        padding: 0 16px 18px !important;
    }

    body.sf-mobile-checkout-page .sf-checkout-main {
        gap: 14px !important;
    }

    body.sf-mobile-checkout-page .sf-summary-card,
    body.sf-mobile-order-page .sf-side-card,
    body.sf-mobile-order-page .sf-summary-card,
    body.sf-mobile-tracking-page .sf-tracking-map-card,
    body.sf-mobile-tracking-page .sf-summary-card {
        margin: 0 !important;
        padding: 16px !important;
        border: 1px solid #ededed !important;
        border-radius: 16px !important;
        background: #fff !important;
        box-shadow: none !important;
    }

    body.sf-mobile-checkout-page .sf-form-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.sf-mobile-checkout-page .sf-form-field input,
    body.sf-mobile-checkout-page .sf-form-field textarea {
        min-height: 50px !important;
        border-radius: 12px !important;
    }

    body.sf-mobile-checkout-page .sf-payment-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.sf-mobile-checkout-page .sf-payment-card {
        display: grid !important;
        grid-template-columns: 22px 24px minmax(0, 1fr) !important;
        align-items: center !important;
        min-height: 68px !important;
        border-radius: 12px !important;
    }

    body.sf-mobile-checkout-page .sf-checkout-summary {
        position: static !important;
    }

    body.sf-mobile-checkout-page .sf-mobile-fixed-cta button,
    body.sf-mobile-cart-page .sf-mobile-fixed-cta a {
        display: flex !important;
        align-items: center;
        justify-content: space-between;
        max-width: none !important;
        padding: 0 18px !important;
        background: #1db954 !important;
    }

    body.sf-mobile-checkout-page .sf-mobile-fixed-cta button:disabled,
    body.sf-mobile-checkout-page .sf-primary-link:disabled {
        opacity: .45;
        cursor: not-allowed;
    }

    body.sf-mobile-cart-page .sf-mobile-offers-card {
        min-height: 0 !important;
    }

    body.sf-mobile-cart-page .sf-mobile-offers-card p,
    body.sf-mobile-cart-page .sf-mobile-offers-card small {
        display: block;
        margin: 6px 0;
        color: #6f6f6f;
        line-height: 1.4;
    }

    body.sf-mobile-cart-page .sf-mobile-cart-line {
        position: relative;
        padding-bottom: 50px !important;
    }

    body.sf-mobile-cart-page .sf-mobile-remove-item {
        position: absolute;
        right: 0;
        bottom: 12px;
    }

    body.sf-mobile-cart-page .sf-mobile-remove-item button {
        display: grid;
        width: 38px;
        height: 38px;
        place-items: center;
        border: 0;
        border-radius: 10px;
        background: #fff1f1;
        color: #c62828;
    }

    body.sf-mobile-order-page .sf-page-hero,
    body.sf-mobile-tracking-page .sf-page-hero {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 12px !important;
        margin: 16px !important;
        padding: 18px !important;
        border: 1px solid #f0e7c3 !important;
        border-radius: 16px !important;
        background: #fffdf2 !important;
        color: #171717 !important;
        box-shadow: none !important;
    }

    body.sf-mobile-order-page .sf-page-hero h1,
    body.sf-mobile-tracking-page .sf-page-hero h1 {
        margin: 4px 0 !important;
        color: #171717 !important;
        font-size: 1.35rem !important;
    }

    body.sf-mobile-order-page .sf-page-hero p,
    body.sf-mobile-tracking-page .sf-page-hero p,
    body.sf-mobile-order-page .sf-page-kicker,
    body.sf-mobile-tracking-page .sf-page-kicker {
        color: #6f6f6f !important;
    }

    body.sf-mobile-order-page .sf-page-hero__stats,
    body.sf-mobile-tracking-page .sf-page-hero__stats {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    body.sf-mobile-order-page .sf-page-stat,
    body.sf-mobile-tracking-page .sf-page-stat {
        min-width: 0 !important;
        padding: 10px 6px !important;
        border-radius: 10px !important;
        background: #fff !important;
        color: #171717 !important;
    }

    body.sf-mobile-order-page .sf-order-progress-card {
        margin: 0 16px 14px !important;
        padding: 16px !important;
        border-radius: 16px !important;
    }

    body.sf-mobile-order-page .sf-order-progress-rail {
        overflow-x: auto;
        padding-bottom: 6px;
    }

    body.sf-mobile-tracking-page .sf-route-preview {
        min-height: 260px !important;
    }

    body.sf-mobile-orders-page .sf-ticket-stack {
        gap: 12px !important;
        padding: 16px !important;
    }

    body.sf-mobile-orders-page .sf-order-list-card {
        padding: 16px !important;
        border: 1px solid #ededed !important;
        border-radius: 16px !important;
        background: #fff !important;
        box-shadow: none !important;
    }

    body.sf-mobile-orders-page .sf-order-list-card__head,
    body.sf-mobile-orders-page .sf-order-list-card__footer {
        align-items: start !important;
        gap: 12px !important;
    }

    body.sf-mobile-orders-page .sf-order-metric-strip {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    body.sf-mobile-orders-page .sf-order-list-card__details {
        display: none !important;
    }

    body.sf-mobile-orders-page .sf-order-list-card__footer .sf-inline-actions {
        width: 100%;
        justify-content: stretch;
    }

    body.sf-mobile-orders-page .sf-order-list-card__footer a {
        flex: 1;
    }
}

@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-mobile-header {
        height: calc(214px + env(safe-area-inset-top, 0px)) !important;
        min-height: calc(214px + env(safe-area-inset-top, 0px)) !important;
        background: #fff !important;
    }

    body.storefront-shell--v2 .sf-mobile-brand-lockup {
        position: absolute !important;
        top: calc(10px + env(safe-area-inset-top, 0px)) !important;
        left: 14px !important;
        z-index: 15 !important;
        display: flex !important;
        width: calc(100% - 124px) !important;
        height: 32px !important;
        align-items: center !important;
        color: #111827 !important;
        text-decoration: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-brand-lockup img {
        display: block !important;
        width: auto !important;
        max-width: 132px !important;
        height: 30px !important;
        object-fit: contain !important;
    }

    body.storefront-shell--v2 .sf-mobile-brand-lockup strong {
        display: block !important;
        overflow: hidden !important;
        color: #111827 !important;
        font-size: 19px !important;
        line-height: 1 !important;
        font-weight: 900 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.storefront-shell--v2 .sf-mobile-header__actions {
        top: calc(7px + env(safe-area-inset-top, 0px)) !important;
        right: 14px !important;
        gap: 8px !important;
    }

    body.storefront-shell--v2 .sf-mobile-action-btn {
        width: 38px !important;
        height: 38px !important;
        border-radius: 14px !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card {
        top: calc(45px + env(safe-area-inset-top, 0px)) !important;
        left: 14px !important;
        right: 14px !important;
        z-index: 14 !important;
        display: grid !important;
        width: auto !important;
        height: 42px !important;
        min-height: 42px !important;
        grid-template-columns: 22px minmax(0, 1fr) !important;
        column-gap: 8px !important;
        align-items: center !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        text-align: left !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__pin {
        display: grid !important;
        width: 22px !important;
        height: 34px !important;
        place-items: center !important;
        color: #2563eb !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__pin svg {
        width: 20px !important;
        height: 20px !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy {
        display: grid !important;
        min-width: 0 !important;
        grid-template-columns: minmax(0, 1fr) 18px !important;
        grid-template-rows: 16px 20px !important;
        align-items: center !important;
        gap: 0 !important;
        padding: 0 !important;
        background: transparent !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy::before,
    body.storefront-shell--v2 .sf-mobile-delivery-card__eta,
    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong em {
        content: none !important;
        display: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy > span {
        display: block !important;
        grid-column: 1 / 3 !important;
        color: #64748b !important;
        font-size: 10px !important;
        line-height: 1 !important;
        font-weight: 900 !important;
        text-transform: uppercase !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong {
        display: flex !important;
        grid-column: 1 / 3 !important;
        align-items: center !important;
        min-width: 0 !important;
        gap: 4px !important;
        color: #111827 !important;
        font-size: 14px !important;
        line-height: 1.15 !important;
        font-weight: 900 !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong b {
        display: block !important;
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong > svg {
        flex: 0 0 14px !important;
        width: 14px !important;
        height: 14px !important;
        color: #111827 !important;
    }

    body.storefront-shell--v2 .sf-searchbar--mobile,
    body.storefront-shell--v2 .sf-searchbar--mobile:not(.has-mobile-promo),
    body.storefront-shell--v2 .sf-searchbar--mobile.has-mobile-promo {
        top: calc(92px + env(safe-area-inset-top, 0px)) !important;
        left: 14px !important;
        right: 14px !important;
        display: grid !important;
        width: auto !important;
        height: 48px !important;
        min-height: 48px !important;
        grid-template-columns: 22px minmax(0, 1fr) 34px !important;
        align-items: center !important;
        padding: 0 10px 0 13px !important;
        border: 1px solid #eef0f4 !important;
        border-radius: 13px !important;
        background: #f6f7f9 !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-searchbar input::placeholder {
        color: #8b95a5 !important;
    }

    body.storefront-shell--v2 .sf-searchbar__submit::before {
        content: none !important;
        display: none !important;
    }

    body.storefront-shell--v2 .sf-searchbar__submit svg {
        display: block !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector {
        top: calc(151px + env(safe-area-inset-top, 0px)) !important;
        min-height: 62px !important;
        grid-auto-columns: minmax(82px, auto) !important;
        gap: 8px !important;
        padding: 0 14px 8px !important;
        border-bottom: 1px solid #eef0f4 !important;
        background: #fff !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a {
        display: inline-grid !important;
        width: auto !important;
        min-width: 82px !important;
        height: 44px !important;
        grid-template-columns: 20px minmax(0, auto) !important;
        gap: 6px !important;
        align-content: center !important;
        align-items: center !important;
        justify-items: center !important;
        padding: 0 10px !important;
        border: 1px solid #eef0f4 !important;
        border-radius: 999px !important;
        background: #fff !important;
        color: #475569 !important;
        font-size: 12px !important;
        font-weight: 900 !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a::before {
        content: none !important;
        display: none !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a.is-active {
        border-color: #1faf38 !important;
        background: #eefbf1 !important;
        color: #137b2e !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector img,
    body.storefront-shell--v2 .sf-service-tab-icon,
    body.storefront-shell--v2 .sf-service-tab-icon svg {
        width: 20px !important;
        height: 20px !important;
    }

    body.storefront-shell--v2 .sf-bottom-nav {
        left: 10px !important;
        right: 10px !important;
        bottom: calc(8px + env(safe-area-inset-bottom, 0px)) !important;
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        gap: 2px !important;
        min-height: 64px !important;
        padding: 6px !important;
        border: 1px solid rgba(226, 232, 240, .9) !important;
        border-radius: 22px !important;
        background: rgba(255, 255, 255, .96) !important;
        box-shadow: 0 14px 36px rgba(15, 23, 42, .16) !important;
        transform: translateY(0) !important;
        transition: transform .24s ease, opacity .24s ease !important;
        backdrop-filter: blur(14px) !important;
    }

    body.storefront-shell--v2 .sf-bottom-nav.is-hidden {
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translateY(calc(100% + 18px)) !important;
    }

    body.storefront-shell--v2 .sf-bottom-nav a,
    body.storefront-shell--v2 .sf-bottom-nav button {
        display: grid !important;
        min-width: 0 !important;
        height: 52px !important;
        align-content: center !important;
        justify-items: center !important;
        gap: 3px !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 16px !important;
        background: transparent !important;
        color: #64748b !important;
        font-size: 10px !important;
        line-height: 1 !important;
        font-weight: 900 !important;
        text-decoration: none !important;
    }

    body.storefront-shell--v2 .sf-bottom-nav svg {
        width: 21px !important;
        height: 21px !important;
    }

    body.storefront-shell--v2 .sf-bottom-nav .is-active {
        background: #eefbf1 !important;
        color: #137b2e !important;
    }

    body.storefront-shell--v2 .sf-search-suggestion {
        display: grid !important;
        grid-template-columns: 42px minmax(0, 1fr) auto !important;
        gap: 10px !important;
        align-items: center !important;
        padding: 10px 12px !important;
        border-bottom: 1px solid #f1f3f6 !important;
        color: #111827 !important;
        text-decoration: none !important;
    }

    body.storefront-shell--v2 .sf-search-suggestion.is-active,
    body.storefront-shell--v2 .sf-search-suggestion:hover {
        background: #f8fafc !important;
    }

    body.storefront-shell--v2 .sf-search-suggestion__media {
        display: grid !important;
        width: 42px !important;
        height: 42px !important;
        place-items: center !important;
        overflow: hidden !important;
        border-radius: 12px !important;
        background: #eef2f7 !important;
        color: #64748b !important;
    }

    body.storefront-shell--v2 .sf-search-suggestion__media img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    body.storefront-shell--v2 .sf-search-suggestion__media svg {
        width: 18px !important;
        height: 18px !important;
    }

    body.storefront-shell--v2 .sf-search-suggestion__copy {
        min-width: 0 !important;
    }

    body.storefront-shell--v2 .sf-search-suggestion__copy strong,
    body.storefront-shell--v2 .sf-search-suggestion__copy small {
        display: block !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.storefront-shell--v2 .sf-search-suggestion__copy strong {
        color: #111827 !important;
        font-size: 13px !important;
        font-weight: 900 !important;
    }

    body.storefront-shell--v2 .sf-search-suggestion__copy small,
    body.storefront-shell--v2 .sf-search-suggestion em {
        color: #64748b !important;
        font-size: 11px !important;
        font-style: normal !important;
        font-weight: 800 !important;
    }

    body.storefront-shell--v2 .sf-search-suggestion__price {
        display: flex !important;
        max-width: 106px !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 2px 4px !important;
        text-align: right !important;
    }

    body.storefront-shell--v2 .sf-search-suggestion__price strong {
        color: #111827 !important;
        font-size: 12px !important;
        font-weight: 900 !important;
        line-height: 1 !important;
    }

    body.storefront-shell--v2 .sf-search-suggestion__price s {
        color: #94a3b8 !important;
        font-size: 10px !important;
        font-weight: 800 !important;
        line-height: 1 !important;
        text-decoration: line-through !important;
        text-decoration-thickness: 1.4px !important;
    }

    body.storefront-shell--v2 .sf-search-suggestion__price b {
        display: inline-flex !important;
        min-height: 17px !important;
        align-items: center !important;
        padding: 0 5px !important;
        border-radius: 999px !important;
        background: #e8f8ed !important;
        color: #138236 !important;
        font-size: 9px !important;
        font-weight: 900 !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    body.storefront-shell--v2 .sf-search-suggestion__price small {
        flex-basis: 100% !important;
        overflow: hidden !important;
        color: #15803d !important;
        font-size: 9px !important;
        font-weight: 900 !important;
        line-height: 1.05 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.sf-category-modal-open {
        overflow: hidden !important;
    }

    body.storefront-shell--v2 .sf-category-modal[hidden] {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-category-modal {
        position: fixed !important;
        inset: 0 !important;
        z-index: 130 !important;
        display: grid !important;
        align-items: end !important;
    }

    body.storefront-shell--v2 .sf-category-modal__backdrop {
        position: absolute !important;
        inset: 0 !important;
        border: 0 !important;
        background: rgba(15, 23, 42, .48) !important;
    }

    body.storefront-shell--v2 .sf-category-modal__panel {
        position: relative !important;
        z-index: 1 !important;
        display: grid !important;
        max-height: min(82vh, 720px) !important;
        grid-template-rows: auto minmax(0, 1fr) !important;
        overflow: hidden !important;
        border-radius: 24px 24px 0 0 !important;
        background: #fff !important;
        box-shadow: 0 -18px 48px rgba(15, 23, 42, .24) !important;
    }

    body.storefront-shell--v2 .sf-category-modal__head {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
        padding: 16px 16px 12px !important;
        border-bottom: 1px solid #eef0f4 !important;
    }

    body.storefront-shell--v2 .sf-category-modal__head span {
        display: block !important;
        color: #1faf38 !important;
        font-size: 11px !important;
        font-weight: 900 !important;
        text-transform: uppercase !important;
    }

    body.storefront-shell--v2 .sf-category-modal__head h2 {
        margin: 2px 0 0 !important;
        color: #111827 !important;
        font-size: 19px !important;
        line-height: 1.1 !important;
        font-weight: 900 !important;
    }

    body.storefront-shell--v2 .sf-category-modal__head button {
        display: grid !important;
        width: 38px !important;
        height: 38px !important;
        place-items: center !important;
        border: 1px solid #eef0f4 !important;
        border-radius: 14px !important;
        background: #fff !important;
        color: #111827 !important;
    }

    body.storefront-shell--v2 .sf-category-modal__head svg {
        width: 18px !important;
        height: 18px !important;
    }

    body.storefront-shell--v2 .sf-category-modal__grid {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 10px !important;
        min-height: 0 !important;
        padding: 14px 14px calc(18px + env(safe-area-inset-bottom, 0px)) !important;
        overflow-y: auto !important;
        background: #f7f8fa !important;
    }

    body.storefront-shell--v2 .sf-category-modal__item {
        display: grid !important;
        min-width: 0 !important;
        gap: 7px !important;
        justify-items: center !important;
        padding: 10px 7px !important;
        border: 1px solid #edf0f4 !important;
        border-radius: 16px !important;
        background: #fff !important;
        color: #111827 !important;
        text-align: center !important;
        text-decoration: none !important;
    }

    body.storefront-shell--v2 .sf-category-modal__item span {
        display: grid !important;
        width: 54px !important;
        height: 54px !important;
        place-items: center !important;
        overflow: hidden !important;
        border-radius: 16px !important;
        background: #eefbf1 !important;
        color: #137b2e !important;
    }

    body.storefront-shell--v2 .sf-category-modal__item.is-child span {
        background: #eef2ff !important;
        color: #3730a3 !important;
    }

    body.storefront-shell--v2 .sf-category-modal__item img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    body.storefront-shell--v2 .sf-category-modal__item b {
        font-size: 20px !important;
        font-weight: 900 !important;
    }

    body.storefront-shell--v2 .sf-category-modal__item strong {
        display: -webkit-box !important;
        min-height: 26px !important;
        overflow: hidden !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        color: #111827 !important;
        font-size: 11px !important;
        line-height: 1.15 !important;
        font-weight: 900 !important;
    }

    body.storefront-shell--v2 .sf-category-modal__empty {
        grid-column: 1 / -1 !important;
        padding: 26px 12px !important;
        color: #64748b !important;
        text-align: center !important;
        font-size: 13px !important;
        font-weight: 800 !important;
    }
}

@media (min-width: 901px) {
    body.storefront-shell--v2 .sf-category-modal[hidden] {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-category-modal {
        position: fixed !important;
        inset: 0 !important;
        z-index: 130 !important;
        display: grid !important;
        place-items: center !important;
    }

    body.storefront-shell--v2 .sf-category-modal__backdrop {
        position: absolute !important;
        inset: 0 !important;
        border: 0 !important;
        background: rgba(15, 23, 42, .48) !important;
    }

    body.storefront-shell--v2 .sf-category-modal__panel {
        position: relative !important;
        z-index: 1 !important;
        display: grid !important;
        width: min(760px, calc(100% - 48px)) !important;
        max-height: min(82vh, 720px) !important;
        grid-template-rows: auto minmax(0, 1fr) !important;
        overflow: hidden !important;
        border-radius: 24px !important;
        background: #fff !important;
        box-shadow: 0 24px 60px rgba(15, 23, 42, .28) !important;
    }

    body.storefront-shell--v2 .sf-category-modal__head {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
        padding: 18px 20px 14px !important;
        border-bottom: 1px solid #eef0f4 !important;
    }

    body.storefront-shell--v2 .sf-category-modal__head h2 {
        margin: 2px 0 0 !important;
        color: #111827 !important;
        font-size: 22px !important;
        font-weight: 900 !important;
    }

    body.storefront-shell--v2 .sf-category-modal__head span {
        color: #1faf38 !important;
        font-size: 12px !important;
        font-weight: 900 !important;
        text-transform: uppercase !important;
    }

    body.storefront-shell--v2 .sf-category-modal__head button {
        display: grid !important;
        width: 42px !important;
        height: 42px !important;
        place-items: center !important;
        border: 1px solid #eef0f4 !important;
        border-radius: 14px !important;
        background: #fff !important;
        color: #111827 !important;
    }

    body.storefront-shell--v2 .sf-category-modal__grid {
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        gap: 12px !important;
        padding: 18px !important;
        overflow-y: auto !important;
        background: #f7f8fa !important;
    }

    body.storefront-shell--v2 .sf-category-modal__item {
        display: grid !important;
        gap: 8px !important;
        justify-items: center !important;
        padding: 12px 8px !important;
        border: 1px solid #edf0f4 !important;
        border-radius: 16px !important;
        background: #fff !important;
        color: #111827 !important;
        text-align: center !important;
        text-decoration: none !important;
    }

    body.storefront-shell--v2 .sf-category-modal__item span {
        display: grid !important;
        width: 62px !important;
        height: 62px !important;
        place-items: center !important;
        overflow: hidden !important;
        border-radius: 18px !important;
        background: #eefbf1 !important;
        color: #137b2e !important;
    }

    body.storefront-shell--v2 .sf-category-modal__item img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    body.storefront-shell--v2 .sf-category-modal__item strong {
        color: #111827 !important;
        font-size: 12px !important;
        font-weight: 900 !important;
    }
}

@media (max-width: 900px) {
    :root {
        --sfm-pink: #ff2b7a;
        --sfm-purple: #7a00ff;
        --sfm-green: #19c37d;
        --sfm-light-green: #eaf8ef;
        --sfm-bg: #f5f5f7;
        --sfm-card: #ffffff;
        --sfm-line: #ececec;
        --sfm-text: #202124;
        --sfm-muted: #6b7280;
        --sfm-light: #9ca3af;
        --sfm-card-radius: 24px;
        --sfm-control-radius: 14px;
        --sfm-shadow: 0 4px 18px rgba(0, 0, 0, .08);
        --sfm-float-shadow: 0 3px 12px rgba(0, 0, 0, .1);
        --sfm-sheet-shadow: 0 -6px 24px rgba(0, 0, 0, .12);
    }

    html {
        background: var(--sfm-bg) !important;
    }

    .storefront-shell--v2 {
        background: var(--sfm-bg) !important;
        color: var(--sfm-text) !important;
        font-family: "Nunito Sans", system-ui, sans-serif !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        padding-bottom: calc(82px + env(safe-area-inset-bottom, 0px)) !important;
    }

    .storefront-shell--v2 button,
    .storefront-shell--v2 input,
    .storefront-shell--v2 select,
    .storefront-shell--v2 textarea {
        font-family: inherit !important;
    }

    .storefront-shell--v2 .sf-main,
    .storefront-shell--v2 .sf-section,
    .storefront-shell--v2 .sf-page-shell,
    .storefront-shell--v2 .sf-mobile-product-view,
    .storefront-shell--v2 .sf-mobile-cart-view,
    .storefront-shell--v2 .sf-mobile-checkout-view,
    .storefront-shell--v2 .sf-mobile-order-detail-view,
    .storefront-shell--v2 .sf-mobile-tracking-view {
        background: var(--sfm-bg) !important;
    }

    .storefront-shell--v2 .sf-mobile-header,
    .storefront-shell--v2 .sf-header,
    .storefront-shell--v2 .sf-header__inner,
    .storefront-shell--v2 .sf-app-chrome {
        min-height: 248px !important;
        background: var(--sfm-bg) !important;
    }

    .storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-header,
    .storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-header__inner,
    .storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-app-chrome,
    .storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-mobile-header {
        min-height: 248px !important;
        background: var(--sfm-bg) !important;
    }

    .storefront-shell--v2 .sf-mobile-brandbar,
    .storefront-shell--v2 .sf-mobile-round-icon,
    .storefront-shell--v2 .sf-mobile-pagebar > a,
    .storefront-shell--v2 .sf-mobile-product-topbar__item > a,
    .storefront-shell--v2 .sf-mobile-product-topbar__item > button {
        width: 40px !important;
        height: 40px !important;
        border: 1px solid var(--sfm-line) !important;
        border-radius: 999px !important;
        background: #fff !important;
        box-shadow: none !important;
        color: var(--sfm-text) !important;
    }

    .storefront-shell--v2 .sf-mobile-delivery-card {
        top: calc(12px + env(safe-area-inset-top, 0px)) !important;
        right: 64px !important;
        left: 16px !important;
        min-height: 72px !important;
    }

    .storefront-shell--v2 .sf-mobile-brandbar {
        top: calc(12px + env(safe-area-inset-top, 0px)) !important;
        right: 16px !important;
    }

    .storefront-shell--v2 .sf-mobile-delivery-card__copy {
        min-height: 72px !important;
        padding: 12px 14px !important;
        border-radius: 20px !important;
        box-shadow: var(--sfm-shadow) !important;
    }

    .storefront-shell--v2 .sf-mobile-delivery-card__copy span {
        color: var(--sfm-purple) !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        letter-spacing: 0 !important;
    }

    .storefront-shell--v2 .sf-mobile-delivery-card__copy strong {
        color: var(--sfm-text) !important;
        font-size: 18px !important;
        font-weight: 700 !important;
    }

    .storefront-shell--v2 .sf-mobile-delivery-card__copy strong em,
    .storefront-shell--v2 .sf-mobile-delivery-card__eta {
        color: var(--sfm-muted) !important;
        font-size: 12px !important;
        font-style: normal !important;
        font-weight: 400 !important;
    }

    .storefront-shell--v2 .sf-header-service-selector {
        top: calc(92px + env(safe-area-inset-top, 0px)) !important;
        right: 16px !important;
        left: 16px !important;
        gap: 12px !important;
        padding: 0 0 12px !important;
    }

    .storefront-shell--v2 .sf-header-service-selector a {
        min-width: 112px !important;
        height: 52px !important;
        gap: 6px !important;
        border: 1px solid var(--sfm-line) !important;
        border-radius: 999px !important;
        box-shadow: none !important;
        color: var(--sfm-text) !important;
        font-size: 13px !important;
        font-weight: 700 !important;
    }

    .storefront-shell--v2 .sf-header-service-selector img {
        width: 24px !important;
        height: 24px !important;
    }

    .storefront-shell--v2 .sf-header-service-selector a.is-active {
        border-color: rgba(255, 43, 122, .18) !important;
        background: #fff0f6 !important;
        color: var(--sfm-pink) !important;
        box-shadow: none !important;
    }

    .storefront-shell--v2 .sf-searchbar--mobile {
        top: calc(160px + env(safe-area-inset-top, 0px)) !important;
        left: 16px !important;
        width: calc(100% - 158px) !important;
        min-height: 52px !important;
        padding: 0 16px !important;
        border: 0 !important;
        border-radius: 14px !important;
        box-shadow: var(--sfm-shadow) !important;
    }

    .storefront-shell--v2 .sf-searchbar input {
        color: var(--sfm-text) !important;
        font-size: 15px !important;
        font-weight: 500 !important;
    }

    .storefront-shell--v2 .sf-zepto-search-promo {
        top: calc(160px + env(safe-area-inset-top, 0px)) !important;
        right: 16px !important;
        width: 126px !important;
        height: 52px !important;
        border-radius: 14px !important;
        box-shadow: var(--sfm-shadow) !important;
    }

    .storefront-shell--v2 .sf-tab-rail--categories {
        min-height: 84px !important;
        padding: 0 16px !important;
        border-bottom: 1px solid var(--sfm-line) !important;
    }

    .storefront-shell--v2 .sf-tab-chip {
        height: 84px !important;
        min-width: 78px !important;
        color: var(--sfm-text) !important;
        font-size: 13px !important;
        font-weight: 700 !important;
    }

    .storefront-shell--v2 .sf-front-section,
    .storefront-shell--v2 .sf-dynamic-section,
    .storefront-shell--v2 .sf-mobile-pdp-section {
        margin: 16px !important;
        padding: 18px !important;
        border-radius: var(--sfm-card-radius) !important;
        background: var(--sfm-card) !important;
        box-shadow: var(--sfm-shadow) !important;
    }

    .storefront-shell--v2 .sf-front-section__head {
        margin-bottom: 16px !important;
    }

    .storefront-shell--v2 .sf-front-section__head h2,
    .storefront-shell--v2 .sf-mobile-pdp-section h2,
    .storefront-shell--v2 .sf-mobile-card h2,
    .storefront-shell--v2 .sf-mobile-order-sheet h2 {
        color: var(--sfm-text) !important;
        font-size: 20px !important;
        font-weight: 700 !important;
        line-height: 1.15 !important;
    }

    .storefront-shell--v2 .sf-front-section__cta {
        color: var(--sfm-pink) !important;
        font-size: 13px !important;
        font-weight: 700 !important;
    }

    .storefront-shell--v2 .sf-home-product-grid,
    .storefront-shell--v2 .sf-home-product-grid.is-scroller,
    .storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid {
        grid-auto-columns: 150px !important;
        gap: 14px !important;
        padding-bottom: 4px !important;
    }

    .storefront-shell--v2 .sf-product-card {
        width: 150px !important;
        max-width: 150px !important;
        min-height: 260px !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 8px !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .storefront-shell--v2 .sf-catalog-grid .sf-product-card {
        width: 100% !important;
        max-width: none !important;
    }

    .storefront-shell--v2 .sf-product-card__thumb {
        width: 120px !important;
        height: 120px !important;
        aspect-ratio: auto !important;
        margin: 0 auto !important;
        border-radius: 18px !important;
        background: #fff !important;
        box-shadow: var(--sfm-shadow) !important;
    }

    .storefront-shell--v2 .sf-product-card__thumb img,
    .storefront-shell--v2 .sf-product-card__placeholder {
        padding: 10px !important;
        object-fit: contain !important;
    }

    .storefront-shell--v2 .sf-product-card__footer {
        gap: 6px !important;
        padding-top: 10px !important;
    }

    .storefront-shell--v2 .sf-product-card__price strong {
        min-height: auto !important;
        padding: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        color: var(--sfm-text) !important;
        font-size: 18px !important;
        font-weight: 700 !important;
    }

    .storefront-shell--v2 .sf-product-card__price small {
        color: var(--sfm-light) !important;
        font-size: 14px !important;
        font-weight: 400 !important;
    }

    .storefront-shell--v2 .sf-product-card h3 {
        min-height: 2.5em !important;
        color: var(--sfm-text) !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;
    }

    .storefront-shell--v2 .sf-product-card__subtitle,
    .storefront-shell--v2 .sf-product-card__saving {
        color: var(--sfm-muted) !important;
        font-size: 12px !important;
        font-weight: 400 !important;
    }

    .storefront-shell--v2 .sf-product-card__footer form,
    .storefront-shell--v2 .sf-product-card__footer > .sf-product-card__action,
    .storefront-shell--v2 .sf-product-card > .sf-product-card__action {
        top: 88px !important;
        right: 8px !important;
    }

    .storefront-shell--v2 .sf-product-card__action,
    .storefront-shell--v2 .sf-product-card__stepper {
        width: 78px !important;
        min-width: 78px !important;
        height: 40px !important;
        border: 1.5px solid var(--sfm-pink) !important;
        border-radius: 12px !important;
        background: #fff !important;
        color: var(--sfm-pink) !important;
        font-size: 15px !important;
        font-weight: 700 !important;
        box-shadow: var(--sfm-float-shadow) !important;
    }

    .storefront-shell--v2 .sf-product-card__stepper {
        width: 112px !important;
        min-width: 112px !important;
        height: 44px !important;
        justify-content: space-around !important;
    }

    .sf-mobile-product-topbar {
        height: calc(74px + env(safe-area-inset-top, 0px)) !important;
        padding: calc(10px + env(safe-area-inset-top, 0px)) 16px 10px !important;
        background: #fff !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, .08) !important;
    }

    .sf-mobile-product-topbar__location {
        display: none !important;
    }

    .sf-mobile-product-topbar__item {
        height: 56px !important;
        gap: 10px !important;
    }

    .sf-mobile-product-topbar__item img {
        width: 56px !important;
        height: 56px !important;
        border-radius: 12px !important;
        object-fit: contain !important;
    }

    .sf-mobile-product-topbar__item strong {
        font-size: 15px !important;
        font-weight: 700 !important;
    }

    .sf-mobile-product-topbar__item span {
        color: var(--sfm-muted) !important;
        font-size: 13px !important;
    }

    .sf-mobile-pdp-media {
        height: 360px !important;
        margin: 0 !important;
        border-radius: 0 0 20px 20px !important;
        background: #fff !important;
        box-shadow: none !important;
    }

    .sf-mobile-pdp-media img {
        width: 100% !important;
        height: 100% !important;
        padding: 44px 28px 28px !important;
        object-fit: contain !important;
    }

    .sf-mobile-pdp-card {
        margin: 16px !important;
        padding: 24px !important;
        border-radius: var(--sfm-card-radius) !important;
        background: #fff !important;
        box-shadow: var(--sfm-shadow) !important;
    }

    .sf-mobile-pdp-card h1 {
        color: var(--sfm-text) !important;
        font-size: 24px !important;
        font-weight: 700 !important;
        line-height: 1.18 !important;
    }

    .sf-mobile-pdp-card p,
    .sf-mobile-pdp-section p,
    .sf-mobile-pdp-section article p {
        color: var(--sfm-muted) !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        line-height: 1.7 !important;
    }

    .sf-mobile-pdp-meta span:first-child {
        color: var(--sfm-green) !important;
        font-size: 16px !important;
        font-weight: 700 !important;
    }

    .sf-mobile-price-row strong {
        color: var(--sfm-text) !important;
        font-size: 30px !important;
        font-weight: 700 !important;
    }

    .sf-mobile-price-row span {
        color: var(--sfm-muted) !important;
        font-size: 18px !important;
    }

    .sf-mobile-price-row em {
        border-radius: 999px !important;
        background: var(--sfm-light-green) !important;
        color: var(--sfm-green) !important;
        font-size: 13px !important;
        font-weight: 700 !important;
    }

    .sf-mobile-info-grid {
        grid-template-columns: 45% 55% !important;
        border: 1px solid var(--sfm-line) !important;
        border-radius: 18px !important;
        overflow: hidden !important;
    }

    .sf-mobile-info-grid div {
        min-height: 48px !important;
        padding: 12px !important;
        border-bottom: 1px solid var(--sfm-line) !important;
    }

    .sf-mobile-pdp-section article {
        min-height: 92px !important;
        padding: 20px !important;
        border: 1px solid var(--sfm-line) !important;
        border-radius: 18px !important;
        background: #fff !important;
    }

    .sf-mobile-card,
    .sf-mobile-offers-card,
    .sf-mobile-delivery-card-v2,
    .sf-mobile-bill-card,
    .sf-mobile-savings-card,
    .sf-mobile-address-card,
    .sf-mobile-upi-card,
    .sf-mobile-payment-section,
    .sf-mobile-order-details {
        margin: 16px !important;
        padding: 18px !important;
        border: 0 !important;
        border-radius: var(--sfm-card-radius) !important;
        background: #fff !important;
        box-shadow: var(--sfm-shadow) !important;
    }

    .sf-mobile-pagebar {
        position: sticky !important;
        top: 0 !important;
        z-index: 60 !important;
        min-height: calc(60px + env(safe-area-inset-top, 0px)) !important;
        padding: calc(10px + env(safe-area-inset-top, 0px)) 16px 10px !important;
        background: #fff !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, .06) !important;
    }

    .sf-mobile-pagebar strong {
        font-size: 18px !important;
        font-weight: 700 !important;
    }

    .sf-mobile-cart-view,
    .sf-mobile-checkout-view,
    .sf-mobile-order-detail-view {
        padding-bottom: 98px !important;
    }

    .sf-mobile-saving-ribbon {
        margin: 16px !important;
        padding: 12px 16px !important;
        border-radius: 18px !important;
        background: var(--sfm-light-green) !important;
        color: var(--sfm-green) !important;
        font-size: 13px !important;
        font-weight: 700 !important;
    }

    .sf-mobile-offers-card {
        min-height: 130px !important;
    }

    .sf-mobile-offers-card a,
    .sf-mobile-offers-card > div,
    .sf-mobile-payment-section label,
    .sf-mobile-pay-row {
        min-height: 56px !important;
        border-bottom: 1px solid var(--sfm-line) !important;
    }

    .sf-mobile-cart-line {
        min-height: 132px !important;
        grid-template-columns: 72px minmax(0, 1fr) auto !important;
        gap: 14px !important;
        padding: 14px 0 !important;
        border-bottom: 1px solid var(--sfm-line) !important;
    }

    .sf-mobile-cart-line img,
    .sf-mobile-order-item img {
        width: 72px !important;
        height: 72px !important;
        border-radius: 16px !important;
        object-fit: contain !important;
        background: #f8f8f8 !important;
    }

    .sf-mobile-stepper {
        width: 112px !important;
        height: 44px !important;
        border: 1.5px solid var(--sfm-pink) !important;
        border-radius: 12px !important;
        color: var(--sfm-pink) !important;
    }

    .sf-mobile-bill-card {
        min-height: 190px !important;
    }

    .sf-mobile-bill-card dl div,
    .sf-mobile-savings-card dl div {
        min-height: 44px !important;
        border-bottom: 1px solid var(--sfm-line) !important;
    }

    .sf-mobile-savings-card {
        background: #f0fff5 !important;
        border-radius: 18px !important;
    }

    .sf-mobile-savings-card h2 {
        min-height: 52px !important;
    }

    .sf-mobile-savings-card dl div {
        min-height: 48px !important;
    }

    .sf-mobile-tip-card {
        min-height: 240px !important;
        margin: 16px !important;
        padding: 18px !important;
        border-radius: var(--sfm-card-radius) !important;
        background: #fff !important;
        box-shadow: var(--sfm-shadow) !important;
    }

    .sf-mobile-segment {
        min-height: 48px !important;
        border-radius: 999px !important;
    }

    .sf-mobile-tip-grid {
        grid-template-columns: repeat(4, 72px) !important;
        gap: 12px !important;
        overflow-x: auto !important;
    }

    .sf-mobile-tip-grid button {
        width: 72px !important;
        height: 42px !important;
        border-radius: 999px !important;
    }

    .sf-mobile-pay-total {
        position: sticky !important;
        top: calc(60px + env(safe-area-inset-top, 0px)) !important;
        z-index: 55 !important;
        min-height: 60px !important;
        margin: 0 !important;
        border-radius: 0 !important;
        background: #fff !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, .06) !important;
    }

    .sf-mobile-pay-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .sf-mobile-pay-grid label {
        width: 72px !important;
        min-height: 72px !important;
        border: 1px solid var(--sfm-line) !important;
        border-radius: 14px !important;
    }

    .sf-mobile-payment-section {
        padding: 20px !important;
    }

    .sf-mobile-bank-grid {
        grid-template-columns: repeat(4, 1fr) !important;
    }

    .sf-mobile-address-card {
        border-radius: 20px !important;
    }

    .sf-mobile-fixed-cta {
        min-height: calc(82px + env(safe-area-inset-bottom, 0px)) !important;
        padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
        background: #fff !important;
        box-shadow: var(--sfm-sheet-shadow) !important;
    }

    .sf-mobile-fixed-cta a,
    .sf-mobile-fixed-cta button {
        width: 100% !important;
        max-width: 358px !important;
        min-height: 56px !important;
        margin: 0 auto !important;
        border: 0 !important;
        border-radius: 14px !important;
        background: var(--sfm-pink) !important;
        color: #fff !important;
        font-size: 18px !important;
        font-weight: 700 !important;
    }

    .sf-mobile-map-panel {
        min-height: 470px !important;
        background: #e8edf5 !important;
    }

    .sf-mobile-eta-card {
        min-height: 260px !important;
        margin: 16px !important;
        padding: 18px 18px 76px !important;
        border-radius: var(--sfm-card-radius) !important;
        box-shadow: var(--sfm-shadow) !important;
    }

    .sf-mobile-ontime {
        min-height: 32px !important;
        padding: 8px 14px !important;
        border-radius: 0 0 0 12px !important;
        background: #14b866 !important;
    }

    .sf-mobile-order-sheet {
        min-height: 340px !important;
        margin-top: 16px !important;
        padding: 10px 20px 20px !important;
        border-radius: 24px 24px 0 0 !important;
        background: #fff !important;
        box-shadow: var(--sfm-sheet-shadow) !important;
    }

    .sf-mobile-order-sheet > span {
        width: 36px !important;
        height: 4px !important;
        border-radius: 999px !important;
    }

    .sf-mobile-campaign-hero {
        min-height: 190px !important;
        margin: 16px !important;
        padding: 24px !important;
        border-radius: 20px !important;
        overflow: hidden !important;
    }

    .sf-mobile-map-mini {
        width: 140px !important;
        min-height: 95px !important;
        border-radius: 18px !important;
        box-shadow: var(--sfm-shadow) !important;
    }

    .sf-auth-modal__panel,
    .sf-location-modal__panel {
        padding: 20px !important;
        border-radius: 24px 24px 0 0 !important;
        box-shadow: var(--sfm-sheet-shadow) !important;
    }
}

@media (max-width: 900px) {
    :root {
        --sfm-pink: #f60b62;
        --sfm-green: #168a3a;
        --sfm-purple: #7d18b8;
        --sfm-bg: #f2f4f8;
        --sfm-line: #e8ebf0;
        --sfm-text: #111318;
        --sfm-muted: #68707d;
    }

    .storefront-shell--v2 {
        overflow-x: hidden;
        background: #fff;
        color: var(--sfm-text);
        font-family: "Nunito Sans", system-ui, sans-serif;
        padding-bottom: 88px;
    }

    .storefront-shell--v2 .sf-container,
    .storefront-shell--v2 .sf-main > .sf-container,
    .storefront-shell--v2 .sf-page-shell .sf-container {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .storefront-shell--v2 .sf-top-strip,
    .storefront-shell--v2 .sf-desktop-header,
    .storefront-shell--v2 .sf-footer,
    .storefront-shell--v2 .sf-card-head,
    .sf-mobile-product-page .sf-product-detail,
    .sf-mobile-product-page .sf-section > .sf-container > .sf-section__header,
    .sf-mobile-product-page .sf-section > .sf-container > .sf-product-grid,
    .sf-mobile-cart-page .sf-cart-layout,
    .sf-mobile-checkout-page .sf-checkout-main,
    .sf-mobile-checkout-page .sf-checkout-summary,
    .sf-mobile-order-page .sf-page-hero,
    .sf-mobile-order-page .sf-order-progress-card,
    .sf-mobile-order-page .sf-order-detail-layout,
    .sf-mobile-tracking-page .sf-page-hero,
    .sf-mobile-tracking-page .sf-quick-strip,
    .sf-mobile-tracking-page .sf-tracking-layout {
        display: none !important;
    }

    .storefront-shell--v2 .sf-header,
    .storefront-shell--v2 .sf-header__inner,
    .storefront-shell--v2 .sf-app-chrome,
    .storefront-shell--v2 .sf-mobile-header {
        position: relative !important;
        display: block !important;
        min-height: 302px !important;
        overflow: visible !important;
        border: 0 !important;
        background: #e6c8ff !important;
        box-shadow: none !important;
    }

    .sf-mobile-product-page .sf-header,
    .sf-mobile-cart-page .sf-header,
    .sf-mobile-checkout-page .sf-header,
    .sf-mobile-order-page .sf-header,
    .sf-mobile-tracking-page .sf-header {
        display: none !important;
    }

    .storefront-shell--v2 .sf-mobile-header,
    .storefront-shell--v2 .sf-mobile-header * {
        font-family: "Nunito Sans", system-ui, sans-serif !important;
    }


    .storefront-shell--v2 .sf-searchbar__submit {
        display: none !important;
    }

    .storefront-shell--v2 .sf-searchbar input {
        width: 100% !important;
        border: 0 !important;
        background: transparent !important;
        color: #20232a !important;
        font-size: 1rem !important;
    }

    .storefront-shell--v2 .sf-zepto-search-promo {
        position: absolute !important;
        top: 178px !important;
        right: 18px !important;
        z-index: 8 !important;
        display: grid !important;
        width: 146px !important;
        height: 58px !important;
        place-items: center !important;
        overflow: hidden !important;
        border-radius: 14px !important;
        background: #fff !important;
        border: 1px solid rgba(17, 17, 17, .08) !important;
        color: #d4185b !important;
        text-align: center !important;
        text-decoration: none !important;
        box-shadow: 0 18px 40px rgba(63, 23, 96, .08) !important;
    }

    .storefront-shell--v2 .sf-zepto-search-promo img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    .storefront-shell--v2 .sf-zepto-search-promo__fallback {
        display: grid !important;
        color: #d4185b !important;
        font-size: .78rem !important;
        font-weight: 900 !important;
        line-height: 1.05 !important;
        text-transform: uppercase !important;
        letter-spacing: .5px !important;
    }

    .storefront-shell--v2 .sf-tab-rail--categories {
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: max-content !important;
        gap: 18px !important;
        min-height: 84px !important;
        margin: 0 !important;
        overflow-x: auto !important;
        padding: 14px 18px 0 !important;
        border-bottom: 1px solid rgba(17, 17, 17, .08) !important;
        background: #fff !important;
        scrollbar-width: none;
    }

    .storefront-shell--v2 .sf-tab-chip {
        display: grid !important;
        min-width: 86px !important;
        height: 88px !important;
        place-items: center !important;
        align-content: center !important;
        gap: 8px !important;
        padding: 0 0 8px !important;
        border-bottom: 3px solid transparent !important;
        color: #111 !important;
        font-size: .88rem !important;
        font-weight: 900 !important;
        text-align: center !important;
    }

    .storefront-shell--v2 .sf-tab-chip.is-active,
    .storefront-shell--v2 .sf-tab-chip:first-child {
        border-bottom-color: #111 !important;
    }

    .storefront-shell--v2 .sf-tab-chip img {
        display: block !important;
        width: 32px !important;
        height: 32px !important;
        object-fit: contain !important;
        border-radius: 999px !important;
        background: #f3f0ff !important;
        padding: 6px !important;
    }

    .storefront-shell--v2 .sf-front-section,
    .storefront-shell--v2 .sf-dynamic-section {
        display: block !important;
        padding: 24px 18px 18px !important;
        background: #fff !important;
    }

    .storefront-shell--v2 .sf-front-section__head {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: center !important;
        margin: 0 0 16px !important;
    }

    .storefront-shell--v2 .sf-section-chip,
    .storefront-shell--v2 .sf-front-section__head p {
        display: none !important;
    }

    .storefront-shell--v2 .sf-front-section__head h2 {
        margin: 0 !important;
        color: #111 !important;
        font-size: 1.35rem !important;
        font-weight: 900 !important;
        line-height: 1.1 !important;
    }

    .storefront-shell--v2 .sf-front-section__cta {
        color: var(--sfm-pink) !important;
        font-weight: 900 !important;
    }

    .storefront-shell--v2 .sf-home-product-grid,
    .storefront-shell--v2 .sf-home-product-grid.is-scroller,
    .storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid {
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: 146px !important;
        grid-template-columns: none !important;
        gap: 16px !important;
        overflow-x: auto !important;
        padding: 0 0 16px !important;
        scrollbar-width: none;
    }

    .storefront-shell--v2 .sf-catalog-grid {
        grid-auto-flow: row !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        grid-auto-columns: initial !important;
        gap: 28px 16px !important;
        overflow: visible !important;
    }

    .storefront-shell--v2 .sf-product-card {
        position: relative !important;
        display: flex !important;
        width: 146px !important;
        min-width: 0 !important;
        max-width: 146px !important;
        min-height: 320px !important;
        flex-direction: column !important;
        gap: 8px !important;
        padding: 0 !important;
        overflow: visible !important;
        border: 0 !important;
        border-radius: 22px !important;
        background: #ffffff !important;
        box-shadow: 0 22px 45px rgba(16, 23, 56, .08) !important;
    }

    .storefront-shell--v2 .sf-catalog-grid .sf-product-card {
        width: 100% !important;
        max-width: none !important;
    }

    .storefront-shell--v2 .sf-product-card__thumb {
        position: relative !important;
        order: 1 !important;
        display: grid !important;
        width: 100% !important;
        aspect-ratio: 1 / 1.02 !important;
        min-height: 0 !important;
        place-items: center !important;
        overflow: hidden !important;
        border: 0 !important;
        border-radius: 18px !important;
        background: #faf8ff !important;
    }

    .storefront-shell--v2 .sf-product-card__thumb img,
    .storefront-shell--v2 .sf-product-card__placeholder {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        padding: 12px !important;
        object-fit: contain !important;
    }

    .storefront-shell--v2 .sf-product-card__topline,
    .storefront-shell--v2 .sf-product-card__brand,
    .storefront-shell--v2 .sf-product-card__wish,
    .storefront-shell--v2 .sf-product-card__discount-flag {
        display: none !important;
    }

    .storefront-shell--v2 .sf-product-card__footer {
        order: 2 !important;
        display: grid !important;
        gap: 8px !important;
        min-height: 72px !important;
        padding: 0 !important;
    }

    .storefront-shell--v2 .sf-product-card__price {
        display: flex !important;
        align-items: center !important;
        gap: 6px !important;
    }

    .storefront-shell--v2 .sf-product-card__price strong {
        display: inline-flex !important;
        align-items: center !important;
        min-height: 30px !important;
        padding: 4px 8px !important;
        border-radius: 10px !important;
        background: var(--sfm-green) !important;
        color: #fff !important;
        font-size: .96rem !important;
        font-weight: 900 !important;
    }

    .storefront-shell--v2 .sf-product-card__price small {
        color: #9ca3af !important;
        font-size: .72rem !important;
        text-decoration: line-through !important;
    }

    .storefront-shell--v2 .sf-product-card__saving {
        order: 3 !important;
        display: block !important;
        min-height: 14px !important;
        color: var(--sfm-green) !important;
        font-size: .74rem !important;
        font-weight: 800 !important;
    }

    .storefront-shell--v2 .sf-product-card a:has(h3) {
        order: 4 !important;
    }

    .storefront-shell--v2 .sf-product-card h3 {
        display: -webkit-box !important;
        min-height: 2.45em !important;
        margin: 0 !important;
        overflow: hidden !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        color: #111 !important;
        font-size: .84rem !important;
        font-weight: 800 !important;
        line-height: 1.22 !important;
    }

    .storefront-shell--v2 .sf-product-card__subtitle {
        order: 5 !important;
        display: block !important;
        overflow: hidden !important;
        color: #68707d !important;
        font-size: .74rem !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .storefront-shell--v2 .sf-product-card__tags {
        order: 6 !important;
        display: block !important;
        min-height: 18px !important;
    }

    .storefront-shell--v2 .sf-product-card__tags span {
        display: inline-block !important;
        max-width: 100% !important;
        overflow: hidden !important;
        padding: 2px 6px !important;
        border-radius: 4px !important;
        background: #e9fbf8 !important;
        color: #168077 !important;
        font-size: .68rem !important;
        font-weight: 800 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .storefront-shell--v2 .sf-product-card__tags span + span {
        display: none !important;
    }

    .storefront-shell--v2 .sf-product-card__footer form,
    .storefront-shell--v2 .sf-product-card__footer > .sf-product-card__action,
    .storefront-shell--v2 .sf-product-card > .sf-product-card__action {
        position: absolute !important;
        top: calc((128px * .96) - 40px) !important;
        right: 6px !important;
        z-index: 3 !important;
        display: block !important;
    }

    .storefront-shell--v2 .sf-catalog-grid .sf-product-card__footer form,
    .storefront-shell--v2 .sf-catalog-grid .sf-product-card__footer > .sf-product-card__action {
        top: calc((100vw - 72px) / 3 * .96 - 40px) !important;
    }

    .storefront-shell--v2 .sf-product-card__action,
    .storefront-shell--v2 .sf-product-card__stepper {
        display: inline-flex !important;
        width: 50px !important;
        min-width: 50px !important;
        height: 40px !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        border: 2px solid var(--sfm-pink) !important;
        border-radius: 10px !important;
        background: #fff !important;
        color: var(--sfm-pink) !important;
        font-size: 1.45rem !important;
        font-weight: 900 !important;
        line-height: 1 !important;
        box-shadow: 0 2px 5px rgba(17, 17, 17, .14) !important;
    }

    .storefront-shell--v2 .sf-product-card__stepper {
        width: 76px !important;
        gap: 8px !important;
        font-size: .95rem !important;
    }

    .storefront-shell--v2 .sf-product-card__action-label {
        display: inline !important;
        font-size: .86rem !important;
        text-transform: uppercase !important;
    }

    .storefront-shell--v2 .sf-product-card__action-plus {
        display: none !important;
    }

    .storefront-shell--v2 .sf-mini-banner-grid,
    .storefront-shell--v2 .sf-home-category-grid,
    .storefront-shell--v2 .sf-home-store-grid {
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: minmax(148px, 78vw) !important;
        grid-template-columns: none !important;
        gap: 14px !important;
        overflow-x: auto !important;
        scrollbar-width: none;
    }

    .storefront-shell--v2 .sf-mini-banner {
        min-height: 178px !important;
        overflow: hidden !important;
        border-radius: 12px !important;
    }

    .sf-bottom-nav {
        position: fixed !important;
        right: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        z-index: 90 !important;
        display: grid !important;
        grid-template-columns: repeat(5, 1fr) !important;
        min-height: 64px !important;
        padding: 5px 6px env(safe-area-inset-bottom) !important;
        border-top: 1px solid #e7e7e7 !important;
        background: #fff !important;
    }

    .sf-bottom-nav a,
    .sf-bottom-nav button {
        display: grid !important;
        place-items: center !important;
        gap: 2px !important;
        border: 0 !important;
        background: transparent !important;
        color: #626a75 !important;
        font-size: .72rem !important;
        font-weight: 800 !important;
        text-decoration: none !important;
    }

    .sf-bottom-nav .is-active {
        color: var(--sfm-pink) !important;
    }

    .sf-zepto-delivery-dock {
        position: fixed !important;
        right: 8px !important;
        bottom: 76px !important;
        left: 8px !important;
        z-index: 88 !important;
        display: flex !important;
        min-height: 74px !important;
        align-items: center !important;
        gap: 12px !important;
        padding: 14px 18px !important;
        border-radius: 14px !important;
        background: #252d3a !important;
        color: #fff !important;
        box-shadow: 0 12px 30px rgba(14, 22, 34, .22) !important;
    }

    .sf-mobile-product-page .sf-zepto-delivery-dock,
    .sf-mobile-cart-page .sf-zepto-delivery-dock,
    .sf-mobile-checkout-page .sf-zepto-delivery-dock,
    .sf-mobile-order-page .sf-zepto-delivery-dock,
    .sf-mobile-tracking-page .sf-zepto-delivery-dock {
        display: none !important;
    }

    .sf-zepto-delivery-dock__icon {
        display: grid;
        width: 40px;
        height: 40px;
        place-items: center;
        border-radius: 999px;
        background: rgba(255, 255, 255, .08);
    }

    .sf-zepto-delivery-dock__copy {
        display: grid;
        gap: 2px;
    }

    .sf-zepto-delivery-dock__copy strong {
        font-size: .9rem;
        font-weight: 900;
    }

    .sf-zepto-delivery-dock__copy small {
        color: rgba(255, 255, 255, .76);
    }

    .sf-mobile-pagebar,
    .sf-mobile-product-topbar {
        position: sticky;
        top: 0;
        z-index: 70;
        display: flex;
        min-height: 64px;
        align-items: center;
        gap: 14px;
        padding: 12px 18px;
        border-bottom: 1px solid #eceff3;
        background: #fff;
        box-shadow: 0 1px 8px rgba(14, 22, 34, .05);
    }

    .sf-mobile-pagebar > a:first-child,
    .sf-mobile-product-topbar a,
    .sf-mobile-product-topbar button {
        display: grid;
        width: 42px;
        height: 42px;
        flex: 0 0 auto;
        place-items: center;
        border: 1px solid #edf0f4;
        border-radius: 999px;
        background: #fff;
        color: #111;
        text-decoration: none;
    }

    .sf-mobile-help {
        margin-left: auto;
        padding: 10px 14px;
        border: 1px solid #f1d5e2;
        border-radius: 999px;
        color: #d53678;
        font-size: .8rem;
        font-weight: 900;
        text-decoration: none;
    }

    .sf-mobile-fixed-cta {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 110;
        padding: 14px 16px calc(14px + env(safe-area-inset-bottom));
        background: rgba(255, 255, 255, .96);
        box-shadow: 0 -8px 24px rgba(14, 22, 34, .08);
    }

    .sf-mobile-fixed-cta a,
    .sf-mobile-fixed-cta button {
        display: grid;
        width: 100%;
        min-height: 64px;
        place-items: center;
        border: 0;
        border-radius: 10px;
        background: var(--sfm-pink);
        color: #fff;
        font-size: 1.15rem;
        font-weight: 900;
        text-decoration: none;
    }

    .sf-page-shell--home {
        background: #f7efff !important;
    }

    .storefront-shell--v2 .sf-page-hero--home {
        background: linear-gradient(180deg, #f8efff 0%, #f0e3ff 100%) !important;
        border: 0 !important;
        box-shadow: 0 30px 52px rgba(125, 24, 184, .12) !important;
        padding: 20px !important;
        border-radius: 26px !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 1fr !important;
        gap: 18px !important;
        margin: 0 18px 22px !important;
        overflow: hidden !important;
    }

    .storefront-shell--v2 .sf-page-hero--home .sf-page-hero__content {
        display: grid !important;
        gap: 14px !important;
    }

    .storefront-shell--v2 .sf-page-hero--home .sf-page-kicker {
        background: rgba(255, 255, 255, .88) !important;
        color: #7d18b8 !important;
        border-radius: 999px !important;
        padding: 8px 14px !important;
        font-size: .72rem !important;
        letter-spacing: .08em !important;
    }

    .storefront-shell--v2 .sf-page-hero--home h1 {
        margin: 0 !important;
        color: #1b1b1f !important;
        font-size: 1.45rem !important;
        font-weight: 900 !important;
        line-height: 1.08 !important;
    }

    .storefront-shell--v2 .sf-page-hero--home p {
        margin: 0 !important;
        color: #4a4a62 !important;
        font-size: .98rem !important;
        line-height: 1.5 !important;
    }

    .storefront-shell--v2 .sf-page-hero--home .sf-hero-card__cta {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: fit-content !important;
        min-height: 52px !important;
        padding: 0 18px !important;
        border-radius: 14px !important;
        background: #ed1d75 !important;
        color: #fff !important;
        font-size: .95rem !important;
        font-weight: 900 !important;
        text-transform: uppercase !important;
        letter-spacing: .04em !important;
        box-shadow: 0 18px 40px rgba(237, 29, 117, .18) !important;
    }

    .storefront-shell--v2 .sf-page-hero__media {
        display: grid !important;
        place-items: center !important;
    }

    .storefront-shell--v2 .sf-page-hero__media img {
        width: 100% !important;
        height: auto !important;
        max-width: 182px !important;
        object-fit: contain !important;
    }

    .storefront-shell--v2 .sf-front-section--featured {
        margin: 0 18px 24px !important;
    }

    .storefront-shell--v2 .sf-home-product-grid.is-scroller {
        gap: 18px !important;
        padding: 2px 0 16px !important;
        margin: 0 4px !important;
    }

    .storefront-shell--v2 .sf-home-product-grid.is-scroller .sf-product-card {
        width: 172px !important;
        max-width: 172px !important;
        min-height: 338px !important;
    }

    .storefront-shell--v2 .sf-front-section__head {
        margin-bottom: 12px !important;
    }

    .storefront-shell--v2 .sf-front-section__head h2 {
        font-size: 1.12rem !important;
        font-weight: 900 !important;
    }

    .storefront-shell--v2 .sf-front-section__cta {
        color: #d4185b !important;
        font-size: .9rem !important;
        text-transform: uppercase !important;
        letter-spacing: .04em !important;
    }

    .sf-mobile-product-page {
        background: var(--sfm-bg);
        padding-bottom: 98px;
    }

    .sf-mobile-product-view {
        display: block;
    }

    .sf-mobile-product-topbar {
        display: block;
        padding: 8px 16px 10px;
    }

    .sf-mobile-product-topbar__location {
        display: flex;
        min-width: 0;
        align-items: center;
        gap: 6px;
        margin-bottom: 8px;
        font-size: .82rem;
    }

    .sf-mobile-product-topbar__location span {
        overflow: hidden;
        color: #333942;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .sf-mobile-product-topbar__item {
        display: grid;
        grid-template-columns: 42px 42px minmax(0, 1fr) 42px 42px;
        align-items: center;
        gap: 10px;
    }

    .sf-mobile-product-topbar__item img {
        width: 42px;
        height: 42px;
        object-fit: contain;
    }

    .sf-mobile-product-topbar__item strong,
    .sf-mobile-product-topbar__item span {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .sf-mobile-pdp-media {
        position: relative;
        display: grid;
        min-height: 430px;
        place-items: center;
        background: #fff;
    }

    .sf-mobile-pdp-media img {
        width: 100%;
        max-height: 420px;
        object-fit: contain;
    }

    .sf-mobile-round-icon {
        position: absolute;
        top: 24px;
        left: 18px;
        z-index: 2;
        display: grid;
        width: 48px;
        height: 48px;
        place-items: center;
        border-radius: 999px;
        background: rgba(255, 255, 255, .86);
        color: #111;
        text-decoration: none;
    }

    .sf-mobile-round-icon--search {
        right: 78px;
        left: auto;
    }

    .sf-mobile-round-icon--share {
        right: 18px;
        left: auto;
        border: 0;
    }

    .sf-mobile-pdp-badge {
        position: absolute;
        top: 34px;
        left: 12px;
        max-width: 132px;
        color: #f60b62;
        font-size: 1.2rem;
        font-weight: 900;
        line-height: .95;
        text-transform: uppercase;
    }

    .sf-mobile-pdp-card,
    .sf-mobile-pdp-section,
    .sf-mobile-card,
    .sf-mobile-order-details {
        margin: 0 18px 18px;
        padding: 20px;
        border: 1px solid #eceff3;
        border-radius: 14px;
        background: #fff;
        box-shadow: 0 2px 14px rgba(14, 22, 34, .04);
    }

    .sf-mobile-pdp-card {
        margin-top: -6px;
        border-radius: 14px 14px 12px 12px;
    }

    .sf-mobile-pdp-meta {
        display: flex;
        gap: 14px;
        color: #68707d;
        font-size: .82rem;
    }

    .sf-mobile-pdp-meta i {
        color: #32b553;
    }

    .sf-mobile-pdp-card h1 {
        margin: 10px 0 8px;
        font-size: 1.08rem;
        font-weight: 900;
        line-height: 1.32;
    }

    .sf-mobile-price-row {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        margin: 14px 0;
    }

    .sf-mobile-price-row strong {
        padding: 4px 8px;
        border-radius: 6px;
        background: var(--sfm-green);
        color: #fff;
        font-size: 1.3rem;
        font-weight: 900;
    }

    .sf-mobile-price-row span {
        color: #68707d;
    }

    .sf-mobile-price-row em {
        color: var(--sfm-green);
        font-style: normal;
        font-weight: 900;
    }

    .sf-mobile-offer-row,
    .sf-mobile-list-row,
    .sf-mobile-add-more {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        margin-top: 12px;
        padding: 14px;
        border: 1px solid #f0eef8;
        border-radius: 10px;
        background: #fbf9ff;
        color: #111;
        text-decoration: none;
    }

    .sf-mobile-offer-row span {
        display: grid;
        gap: 4px;
    }

    .sf-mobile-service-strip {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 14px;
        margin: 0 18px 18px;
    }

    .sf-mobile-service-strip div {
        display: grid;
        min-height: 96px;
        place-items: center;
        gap: 8px;
        border-radius: 14px;
        background: #faf9ff;
        font-weight: 900;
    }

    .sf-mobile-pdp-section h2,
    .sf-mobile-card h2,
    .sf-mobile-order-details h2 {
        margin: 0 0 16px;
        font-size: 1.25rem;
        font-weight: 900;
    }

    .sf-mobile-pdp-section p,
    .sf-mobile-pdp-section article,
    .sf-mobile-order-details dd {
        color: #4f5967;
        font-size: 1rem;
        line-height: 1.45;
    }

    .sf-mobile-info-grid div,
    .sf-mobile-order-details dl div {
        display: grid;
        grid-template-columns: 34% 1fr;
        gap: 16px;
        margin: 0 0 18px;
    }

    .sf-mobile-info-grid dt,
    .sf-mobile-order-details dt {
        color: #8a929f;
    }

    .sf-mobile-cart-page,
    .sf-mobile-checkout-page {
        background: var(--sfm-bg);
    }

    .sf-mobile-saving-ribbon,
    .sf-mobile-pay-total {
        position: sticky;
        top: 64px;
        z-index: 65;
        padding: 8px 18px;
        background: #e3f8e9;
        color: #21934d;
        text-align: center;
        font-size: .85rem;
        font-weight: 900;
    }

    .sf-mobile-pay-total {
        top: 64px;
        background: #fbf9ff;
        color: #111;
        text-align: left;
        font-size: 1.1rem;
    }

    .sf-mobile-pay-total strong {
        color: #098c63;
    }

    .sf-mobile-card {
        margin-top: 18px;
    }

    .sf-mobile-card a,
    .sf-mobile-card label,
    .sf-mobile-card > div:not([class]),
    .sf-mobile-payment-section button {
        display: flex;
        min-height: 58px;
        align-items: center;
        gap: 14px;
        padding: 12px 0;
        border: 0;
        border-bottom: 1px solid #f0f1f4;
        background: transparent;
        color: #111;
        text-decoration: none;
    }

    .sf-mobile-card a:last-child,
    .sf-mobile-card label:last-child,
    .sf-mobile-card > div:not([class]):last-child {
        border-bottom: 0;
    }

    .sf-mobile-offers-card button,
    .sf-mobile-payment-section button {
        margin-left: auto;
        padding: 10px 18px;
        border: 1px solid #e14783;
        border-radius: 8px;
        color: #d93177;
        font-weight: 900;
    }

    .sf-mobile-delivery-card-v2__head,
    .sf-mobile-cart-line,
    .sf-mobile-order-item {
        display: grid;
        grid-template-columns: 52px minmax(0, 1fr) auto;
        align-items: center;
        gap: 12px;
    }

    .sf-mobile-delivery-card-v2__head {
        grid-template-columns: 52px minmax(0, 1fr) auto;
        margin-bottom: 12px;
    }

    .sf-mobile-delivery-card-v2__head button {
        padding: 10px 12px;
        border: 1px solid #f0dcb4;
        border-radius: 8px;
        background: #fff;
        color: #111;
        font-weight: 900;
    }

    .sf-mobile-cart-line {
        grid-template-columns: 54px minmax(0, 1fr) auto auto;
        padding: 14px 0;
        border-top: 1px solid #f0f1f4;
    }

    .sf-mobile-cart-line img,
    .sf-mobile-order-item img {
        width: 54px;
        height: 54px;
        object-fit: contain;
        border: 1px solid #f0f1f4;
        border-radius: 8px;
    }

    .sf-mobile-cart-line strong,
    .sf-mobile-order-item strong {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        font-size: .9rem;
        line-height: 1.25;
    }

    .sf-mobile-cart-line small,
    .sf-mobile-order-item span {
        color: #68707d;
        font-size: .78rem;
    }

    .sf-mobile-stepper {
        display: inline-grid;
        grid-template-columns: 30px 28px 30px;
        overflow: hidden;
        border: 1px solid #f4c3d7;
        border-radius: 8px;
        background: #fff5fa;
    }

    .sf-mobile-stepper button {
        border: 0;
        background: transparent;
        color: var(--sfm-pink);
        font-size: 1rem;
        font-weight: 900;
    }

    .sf-mobile-stepper strong {
        display: grid;
        place-items: center;
    }

    .sf-mobile-bill-card dl,
    .sf-mobile-savings-card dl {
        display: grid;
        gap: 14px;
    }

    .sf-mobile-bill-card dl div,
    .sf-mobile-savings-card dl div {
        display: flex;
        justify-content: space-between;
        color: #68707d;
    }

    .sf-mobile-bill-card dl div:last-child {
        padding-top: 16px;
        border-top: 1px solid #eef0f3;
        color: #111;
        font-size: 1.08rem;
        font-weight: 900;
    }

    .sf-mobile-savings-card {
        background: #e8fbef;
    }

    .sf-mobile-savings-card h2 {
        display: flex;
        justify-content: space-between;
    }

    .sf-mobile-savings-card h2 span {
        padding: 8px 10px;
        border-radius: 8px;
        background: #30a64b;
        color: #fff;
    }

    .sf-mobile-tip-card {
        margin: 18px;
        padding: 18px;
        border: 1px solid #dceff3;
        border-radius: 14px;
        background: #eafbff;
    }

    .sf-mobile-segment {
        display: grid;
        grid-template-columns: 1fr 1fr;
        margin-bottom: 18px;
        padding: 4px;
        border-radius: 999px;
        background: #cce8ef;
    }

    .sf-mobile-segment button {
        min-height: 46px;
        border: 0;
        border-radius: 999px;
        background: transparent;
        color: #596575;
        font-weight: 900;
    }

    .sf-mobile-segment button.is-active {
        background: #fff;
        color: #111;
    }

    .sf-mobile-tip-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 12px;
        margin-top: 18px;
    }

    .sf-mobile-tip-grid button {
        min-height: 50px;
        border: 1px solid #dfe6ee;
        border-radius: 8px;
        background: #fff;
        font-weight: 900;
    }

    .sf-mobile-pagebar--pay div {
        display: grid;
        min-width: 0;
    }

    .sf-mobile-pagebar--pay span {
        overflow: hidden;
        color: #68707d;
        font-size: .82rem;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .sf-mobile-pay-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 10px;
    }

    .sf-mobile-pay-grid label {
        display: grid !important;
        min-height: 82px !important;
        place-items: center !important;
        gap: 6px !important;
        border-bottom: 0 !important;
    }

    .sf-mobile-pay-grid input,
    .sf-mobile-payment-section input,
    .sf-mobile-pay-row input {
        position: absolute;
        opacity: 0;
        pointer-events: none;
    }

    .sf-mobile-pay-grid i,
    .sf-mobile-payment-section i:first-of-type,
    .sf-mobile-upi-card i:first-of-type {
        display: grid;
        width: 42px;
        height: 42px;
        place-items: center;
        border-radius: 8px;
        background: #fafafa;
        color: var(--sfm-pink);
        font-size: 1.35rem;
    }

    .sf-mobile-pay-row {
        border-top: 1px solid #f0f1f4 !important;
    }

    .sf-mobile-pay-row span {
        flex: 1;
        font-weight: 900;
    }

    .sf-mobile-pay-row em {
        margin-left: 6px;
        padding: 2px 6px;
        border-radius: 4px;
        background: #18a565;
        color: #fff;
        font-size: .68rem;
        font-style: normal;
    }

    .sf-mobile-payment-section label span {
        display: grid;
        flex: 1;
        gap: 2px;
    }

    .sf-mobile-payment-section label small {
        color: #68707d;
    }

    .sf-mobile-bank-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 8px;
        margin-bottom: 8px;
        text-align: center;
        font-size: .82rem;
    }

    .sf-mobile-address-card p {
        display: flex;
        gap: 12px;
        margin: 0;
        color: #68707d;
    }

    .sf-mobile-order-page {
        background: #fff;
        padding-bottom: 0;
    }

    .sf-mobile-order-packed {
        display: flex;
        align-items: center;
        gap: 16px;
        padding: 26px 22px;
        border-bottom: 1px solid #f0f1f4;
    }

    .sf-mobile-order-packed span {
        display: grid;
        width: 50px;
        height: 50px;
        place-items: center;
        border-radius: 10px;
        background: #fff1d9;
        color: #f27410;
        font-size: 1.4rem;
    }

    .sf-mobile-order-packed h1,
    .sf-mobile-order-items h2 {
        margin: 0;
        font-size: 1.35rem;
        font-weight: 900;
    }

    .sf-mobile-order-items {
        padding: 22px;
        border-bottom: 8px solid #eef4fb;
    }

    .sf-mobile-order-item {
        grid-template-columns: 54px minmax(0, 1fr) auto;
        margin-top: 16px;
    }

    .sf-mobile-order-item em {
        color: #111;
        font-style: normal;
        font-weight: 900;
    }

    .sf-mobile-order-page .sf-mobile-bill-card {
        margin: 0;
        padding: 26px 22px;
        border-width: 0 0 8px;
        border-color: #eef4fb;
        border-radius: 0;
        box-shadow: none;
    }

    .sf-mobile-order-details {
        margin: 0;
        padding: 26px 22px;
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }

    .sf-mobile-tracking-page {
        background: var(--sfm-bg);
        padding-bottom: 0;
    }

    .sf-mobile-map-panel {
        position: relative;
        min-height: 560px;
        overflow: hidden;
        background: #e8edf5;
    }

    .sf-mobile-map-grid {
        position: absolute;
        inset: -60px;
        background:
            linear-gradient(36deg, transparent 47%, #fff 48% 52%, transparent 53%),
            linear-gradient(126deg, transparent 47%, #fff 48% 52%, transparent 53%);
        background-size: 118px 118px;
        transform: rotate(8deg);
        opacity: .95;
    }

    .sf-mobile-map-panel svg {
        position: absolute;
        inset: 90px 90px 80px;
        width: calc(100% - 180px);
        height: calc(100% - 170px);
        fill: none;
        stroke: #2f3742;
        stroke-dasharray: 7 12;
        stroke-linecap: round;
        stroke-width: 2.4;
    }

    .sf-mobile-map-pin {
        position: absolute;
        z-index: 2;
        display: grid;
        width: 42px;
        height: 42px;
        place-items: center;
        border-radius: 10px;
        background: #6a249e;
        color: #fff;
        font-weight: 900;
    }

    .sf-mobile-map-pin--store {
        top: 76px;
        left: 38%;
    }

    .sf-mobile-map-pin--home {
        right: 36%;
        bottom: 150px;
        background: #263d67;
    }

    .sf-mobile-map-panel button {
        position: absolute;
        top: 22px;
        right: 18px;
        display: grid;
        width: 50px;
        height: 50px;
        place-items: center;
        border: 0;
        border-radius: 999px;
        background: #fff;
        color: var(--sfm-pink);
    }

    .sf-mobile-campaign-hero {
        position: relative;
        min-height: 300px;
        padding: 130px 22px 24px;
        background: linear-gradient(180deg, #7e1619 0%, #221 58%, #000 100%);
        color: #fff;
    }

    .sf-mobile-campaign-hero h2 {
        margin: 0 0 6px;
        font-size: 1.45rem;
        font-weight: 900;
    }

    .sf-mobile-campaign-hero a {
        display: inline-grid;
        min-height: 42px;
        place-items: center;
        margin-top: 12px;
        padding: 0 18px;
        border-radius: 6px;
        background: #fff;
        color: #111;
        font-weight: 900;
        text-decoration: none;
    }

    .sf-mobile-map-mini {
        position: absolute;
        right: 18px;
        bottom: 36px;
        display: grid;
        width: 160px;
        min-height: 108px;
        place-items: center;
        border: 8px solid #fff;
        border-radius: 14px;
        background: #dce2ea;
        color: #111;
    }

    .sf-mobile-map-mini strong {
        margin-bottom: -32px;
        padding: 8px 18px;
        border-radius: 999px;
        background: #fff;
        box-shadow: 0 3px 8px rgba(0, 0, 0, .15);
    }

    .sf-mobile-eta-card {
        position: relative;
        margin: 22px 18px;
        padding: 34px 22px 78px;
        overflow: hidden;
        border-radius: 14px;
        background: #fff;
        box-shadow: 0 8px 24px rgba(19, 31, 49, .08);
    }

    .sf-mobile-eta-card > div:first-of-type {
        position: relative;
        z-index: 2;
        max-width: 44%;
    }

    .sf-mobile-eta-card p {
        margin: 0;
        font-size: 1.05rem;
    }

    .sf-mobile-eta-card strong {
        display: block;
        color: #a000d6;
        font-size: 2.1rem;
        font-weight: 900;
    }

    .sf-mobile-eta-card h2 {
        margin: 24px 0 0;
        font-size: 1.25rem;
        line-height: 1.45;
    }

    .sf-mobile-ontime {
        position: absolute;
        top: 0;
        right: 0;
        z-index: 3;
        padding: 12px 22px;
        border-radius: 0 0 0 12px;
        background: #0aa77a;
        color: #fff;
        font-weight: 900;
    }

    .sf-mobile-ad-art {
        position: absolute;
        top: 18px;
        right: 18px;
        bottom: 70px;
        width: 48%;
        display: grid;
        place-items: center;
        border-radius: 0 12px 12px 0;
        background: linear-gradient(160deg, #08111d, #d2f2f6);
        color: #fff;
        text-align: center;
    }

    .sf-mobile-ad-art strong {
        color: #fff;
    }

    .sf-mobile-eta-card > a {
        position: absolute;
        right: 18px;
        bottom: 16px;
        left: 18px;
        display: grid;
        grid-template-columns: auto auto minmax(0, 1fr);
        gap: 10px;
        color: #111;
        text-decoration: none;
    }

    .sf-mobile-eta-card > a strong {
        color: #1b9a6b;
        font-size: .9rem;
    }

    .sf-mobile-eta-card > a small {
        overflow: hidden;
        color: #68707d;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .sf-mobile-help-card {
        display: grid;
        grid-template-columns: 44px minmax(0, 1fr) 20px;
        align-items: center;
        gap: 12px;
        margin: 22px 18px;
        padding: 18px;
        border-radius: 12px;
        background: #fff;
    }

    .sf-mobile-help-card div {
        display: grid;
        gap: 2px;
    }

    .sf-mobile-help-card span {
        color: #68707d;
    }

    .sf-mobile-order-sheet {
        margin-top: 22px;
        padding: 10px 22px 22px;
        border-radius: 20px 20px 0 0;
        background: #fff;
        box-shadow: 0 -12px 28px rgba(14, 22, 34, .12);
    }

    .sf-mobile-order-sheet > span {
        display: block;
        width: 46px;
        height: 5px;
        margin: 0 auto 18px;
        border-radius: 999px;
        background: #dedede;
    }

    .sf-mobile-order-sheet h2,
    .sf-mobile-order-sheet h3 {
        text-align: center;
    }

    .sf-mobile-sheet-address {
        display: flex;
        gap: 14px;
        margin: 22px -22px;
        padding: 18px 22px;
        border-block: 1px solid #eef0f3;
        color: #68707d;
    }

    .sf-mobile-order-sheet > a {
        display: grid;
        min-height: 58px;
        place-items: center;
        margin-top: 18px;
        border-radius: 8px;
        background: var(--sfm-pink);
        color: #fff;
        font-size: 1rem;
        font-weight: 900;
        text-decoration: none;
    }

    .sf-auth-modal__panel {
        right: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        width: auto !important;
        max-width: none !important;
        border-radius: 18px 18px 0 0 !important;
    }

    .sf-location-modal__panel {
        right: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        width: auto !important;
        max-width: none !important;
        border-radius: 18px 18px 0 0 !important;
    }
}

@media (max-width: 900px) {
    .storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-header,
    .storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-header__inner,
    .storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-app-chrome,
    .storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-mobile-header {
        min-height: 252px !important;
        background: #e7c9ff !important;
    }

    .storefront-shell--v2 .sf-mobile-brandbar {
        top: 28px !important;
        right: 22px !important;
        display: grid !important;
        width: 46px !important;
        height: 46px !important;
        place-items: center !important;
        border-radius: 999px !important;
        background: #fff !important;
        color: #111 !important;
        box-shadow: 0 12px 24px rgba(63, 23, 96, .14) !important;
    }

    .storefront-shell--v2 .sf-mobile-brandbar::after {
        content: none !important;
    }

    .storefront-shell--v2 .sf-mobile-brandbar i {
        display: block !important;
        color: inherit !important;
        font-size: 1rem !important;
    }

    .storefront-shell--v2 .sf-mobile-delivery-card {
        top: 28px !important;
        right: 82px !important;
        left: 22px !important;
        z-index: 5 !important;
        min-height: 72px !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }

    .storefront-shell--v2 .sf-mobile-delivery-card__copy {
        display: grid !important;
        gap: 6px !important;
        padding: 16px 18px !important;
        border-radius: 20px !important;
        background: rgba(255, 255, 255, .97) !important;
        box-shadow: 0 18px 42px rgba(63, 23, 96, .12) !important;
    }

    .storefront-shell--v2 .sf-mobile-delivery-card__copy span {
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
        color: #7d18b8 !important;
        font-size: .9rem !important;
        font-weight: 900 !important;
        text-transform: uppercase !important;
        letter-spacing: .04em !important;
    }

    .storefront-shell--v2 .sf-mobile-delivery-card__copy strong {
        display: grid !important;
        gap: 4px !important;
        color: #111 !important;
        font-size: 1.06rem !important;
        font-weight: 900 !important;
        line-height: 1.18 !important;
    }

    .storefront-shell--v2 .sf-mobile-delivery-card__copy strong em {
        color: #68707d !important;
        font-size: .82rem !important;
        font-weight: 600 !important;
        font-style: normal !important;
    }

    .storefront-shell--v2 .sf-mobile-delivery-card__copy strong > i {
        display: inline-flex !important;
        color: #111 !important;
        font-size: .78rem !important;
    }

    .storefront-shell--v2 .sf-mobile-delivery-card__eta {
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
        color: #68707d !important;
        font-size: .78rem !important;
        font-weight: 700 !important;
    }

    .storefront-shell--v2 .sf-header-service-selector {
        position: absolute !important;
        top: 108px !important;
        right: 18px !important;
        left: 18px !important;
        z-index: 6 !important;
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: minmax(112px, 1fr) !important;
        gap: 10px !important;
        overflow-x: auto !important;
        padding: 8px 0 10px !important;
        scrollbar-width: none !important;
    }

    .storefront-shell--v2 .sf-header-service-selector a {
        display: grid !important;
        align-items: center !important;
        justify-items: center !important;
        min-width: 120px !important;
        height: 66px !important;
        padding: 0 14px !important;
        gap: 8px !important;
        border-radius: 20px !important;
        background: #fff !important;
        border: 1px solid rgba(17, 17, 17, .08) !important;
        color: #2b2b2d !important;
        font-size: .95rem !important;
        font-weight: 900 !important;
        text-align: center !important;
        text-decoration: none !important;
        box-shadow: 0 14px 30px rgba(63, 23, 96, .1) !important;
    }

    .storefront-shell--v2 .sf-header-service-selector img {
        width: 36px !important;
        height: 36px !important;
        object-fit: contain !important;
    }

    .storefront-shell--v2 .sf-header-service-selector a.is-active {
        background: #f8e6ff !important;
        color: #7d18b8 !important;
        border-color: transparent !important;
        box-shadow: 0 14px 26px rgba(125, 24, 184, .12) !important;
    }

    .storefront-shell--v2 .sf-searchbar--mobile {
        position: absolute !important;
        top: 188px !important;
        left: 18px !important;
        z-index: 8 !important;
        display: grid !important;
        grid-template-columns: 28px minmax(0, 1fr) !important;
        width: calc(100% - 162px) !important;
        min-height: 56px !important;
        margin: 0 !important;
        padding: 0 14px !important;
        border: 0 !important;
        border-radius: 16px !important;
        background: #fff !important;
        box-shadow: 0 18px 44px rgba(128, 50, 177, .08) !important;
    }

    .storefront-shell--v2 .sf-searchbar--mobile:not(.has-mobile-promo) {
        width: calc(100% - 162px) !important;
    }

    .storefront-shell--v2 .sf-searchbar--mobile input::placeholder {
        color: #3f424b !important;
        opacity: .9 !important;
    }

    .storefront-shell--v2 .sf-zepto-search-promo {
        position: absolute !important;
        top: 178px !important;
        right: 18px !important;
        width: 146px !important;
        height: 58px !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        border: 1px solid rgba(17, 17, 17, .08) !important;
    }

    .storefront-shell--v2 .sf-zepto-search-promo__fallback {
        display: grid !important;
        color: #d4185b !important;
        font-size: .78rem !important;
        font-weight: 900 !important;
        text-transform: uppercase !important;
        letter-spacing: .5px !important;
    }

    .storefront-shell--v2 .sf-tab-rail--categories {
        min-height: 84px !important;
        gap: 18px !important;
        margin: 0 !important;
        padding: 14px 18px 0 !important;
        border-bottom: 1px solid rgba(17, 17, 17, .08) !important;
        background: #fff !important;
    }

    .storefront-shell--v2 .sf-tab-chip {
        display: grid !important;
        min-width: 86px !important;
        height: 88px !important;
        place-items: center !important;
        align-content: center !important;
        gap: 8px !important;
        padding: 0 0 8px !important;
        border-bottom: 3px solid transparent !important;
        color: #111 !important;
        font-size: .88rem !important;
        font-weight: 900 !important;
        text-align: center !important;
    }

    .storefront-shell--v2 .sf-tab-chip:first-child,
    .storefront-shell--v2 .sf-tab-chip.is-active {
        border-bottom-color: #111 !important;
    }

    .storefront-shell--v2 .sf-tab-chip img {
        display: block !important;
        width: 32px !important;
        height: 32px !important;
        object-fit: contain !important;
        border-radius: 999px !important;
        background: #f3f0ff !important;
        padding: 6px !important;
    }

    .storefront-shell--v2 .sf-tab-chip span {
        display: block !important;
        overflow: hidden !important;
        max-width: 84px !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }
}

@media (max-width: 900px) {
    body.storefront-shell--v2 {
        background: #f5f5f7 !important;
        color: #202124 !important;
        font-family: "Nunito Sans", system-ui, sans-serif !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        padding-bottom: calc(82px + env(safe-area-inset-bottom, 0px)) !important;
    }

    body.storefront-shell--v2 .sf-main,
    body.storefront-shell--v2 .sf-section,
    body.storefront-shell--v2 .sf-page-shell,
    body.storefront-shell--v2 .sf-mobile-product-view,
    body.storefront-shell--v2 .sf-mobile-cart-view,
    body.storefront-shell--v2 .sf-mobile-checkout-view,
    body.storefront-shell--v2 .sf-mobile-order-detail-view,
    body.storefront-shell--v2 .sf-mobile-tracking-view {
        background: #f5f5f7 !important;
    }

    body.storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-header,
    body.storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-header__inner,
    body.storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-app-chrome,
    body.storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-mobile-header {
        min-height: 248px !important;
        background: #f5f5f7 !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card {
        top: calc(12px + env(safe-area-inset-top, 0px)) !important;
        right: 64px !important;
        left: 16px !important;
    }

    body.storefront-shell--v2 .sf-mobile-brandbar {
        top: calc(12px + env(safe-area-inset-top, 0px)) !important;
        right: 16px !important;
        width: 40px !important;
        height: 40px !important;
        border: 1px solid #ececec !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy {
        min-height: 72px !important;
        padding: 12px 14px !important;
        border-radius: 20px !important;
        background: #fff !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, .08) !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy span {
        color: #7a00ff !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        letter-spacing: 0 !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong {
        color: #202124 !important;
        font-size: 18px !important;
        font-weight: 700 !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong em,
    body.storefront-shell--v2 .sf-mobile-delivery-card__eta {
        color: #6b7280 !important;
        font-size: 12px !important;
        font-style: normal !important;
        font-weight: 400 !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector {
        top: calc(92px + env(safe-area-inset-top, 0px)) !important;
        right: 16px !important;
        left: 16px !important;
        gap: 12px !important;
        padding: 0 0 12px !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a {
        min-width: 112px !important;
        height: 52px !important;
        gap: 6px !important;
        border: 1px solid #ececec !important;
        border-radius: 999px !important;
        box-shadow: none !important;
        color: #202124 !important;
        font-size: 13px !important;
        font-weight: 700 !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a.is-active {
        border-color: rgba(255, 43, 122, .18) !important;
        background: #fff0f6 !important;
        color: #ff2b7a !important;
    }

    body.storefront-shell--v2 .sf-searchbar--mobile,
    body.storefront-shell--v2 .sf-searchbar--mobile:not(.has-mobile-promo) {
        top: calc(160px + env(safe-area-inset-top, 0px)) !important;
        left: 16px !important;
        width: calc(100% - 158px) !important;
        min-height: 52px !important;
        padding: 0 16px !important;
        border-radius: 14px !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, .08) !important;
    }

    body.storefront-shell--v2 .sf-zepto-search-promo {
        top: calc(160px + env(safe-area-inset-top, 0px)) !important;
        right: 16px !important;
        width: 126px !important;
        height: 52px !important;
        border-radius: 14px !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, .08) !important;
    }

    body.storefront-shell--v2 .sf-front-section,
    body.storefront-shell--v2 .sf-dynamic-section,
    body.storefront-shell--v2 .sf-mobile-pdp-section,
    body.storefront-shell--v2 .sf-mobile-card,
    body.storefront-shell--v2 .sf-mobile-offers-card,
    body.storefront-shell--v2 .sf-mobile-delivery-card-v2,
    body.storefront-shell--v2 .sf-mobile-bill-card,
    body.storefront-shell--v2 .sf-mobile-savings-card,
    body.storefront-shell--v2 .sf-mobile-address-card,
    body.storefront-shell--v2 .sf-mobile-upi-card,
    body.storefront-shell--v2 .sf-mobile-payment-section,
    body.storefront-shell--v2 .sf-mobile-order-details,
    body.storefront-shell--v2 .sf-mobile-pdp-card {
        margin: 16px !important;
        padding: 18px !important;
        border: 0 !important;
        border-radius: 24px !important;
        background: #fff !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, .08) !important;
    }

    body.storefront-shell--v2 .sf-front-section__head h2,
    body.storefront-shell--v2 .sf-mobile-pdp-section h2,
    body.storefront-shell--v2 .sf-mobile-card h2,
    body.storefront-shell--v2 .sf-mobile-order-sheet h2 {
        color: #202124 !important;
        font-size: 20px !important;
        font-weight: 700 !important;
        line-height: 1.15 !important;
    }

    body.storefront-shell--v2 .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.is-scroller,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid {
        grid-auto-columns: 150px !important;
        gap: 14px !important;
    }

    body.storefront-shell--v2 .sf-product-card {
        width: 150px !important;
        max-width: 150px !important;
        min-height: 260px !important;
        border-radius: 8px !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card {
        width: 100% !important;
        max-width: none !important;
    }

    body.storefront-shell--v2 .sf-product-card__thumb {
        width: 120px !important;
        height: 120px !important;
        aspect-ratio: auto !important;
        margin: 0 auto !important;
        border-radius: 18px !important;
        background: #fff !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, .08) !important;
    }

    body.storefront-shell--v2 .sf-product-card__price strong {
        min-height: auto !important;
        padding: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        color: #202124 !important;
        font-size: 18px !important;
        font-weight: 700 !important;
    }

    body.storefront-shell--v2 .sf-product-card__price small {
        color: #9ca3af !important;
        font-size: 14px !important;
        font-weight: 400 !important;
    }

    body.storefront-shell--v2 .sf-product-card h3 {
        color: #202124 !important;
        font-size: 13px !important;
        font-weight: 500 !important;
    }

    body.storefront-shell--v2 .sf-product-card__footer form,
    body.storefront-shell--v2 .sf-product-card__footer > .sf-product-card__action,
    body.storefront-shell--v2 .sf-product-card > .sf-product-card__action {
        top: 88px !important;
        right: 8px !important;
    }

    body.storefront-shell--v2 .sf-product-card__action,
    body.storefront-shell--v2 .sf-product-card__stepper {
        width: 78px !important;
        min-width: 78px !important;
        height: 40px !important;
        border: 1.5px solid #ff2b7a !important;
        border-radius: 12px !important;
        background: #fff !important;
        color: #ff2b7a !important;
        font-size: 15px !important;
        font-weight: 700 !important;
        box-shadow: 0 3px 12px rgba(0, 0, 0, .1) !important;
    }

    body.storefront-shell--v2 .sf-product-card__stepper,
    body.storefront-shell--v2 .sf-mobile-stepper {
        width: 112px !important;
        min-width: 112px !important;
        height: 44px !important;
        border: 1.5px solid #ff2b7a !important;
        border-radius: 12px !important;
        color: #ff2b7a !important;
    }

    body.storefront-shell--v2 .sf-mobile-product-topbar {
        height: calc(74px + env(safe-area-inset-top, 0px)) !important;
        padding: calc(10px + env(safe-area-inset-top, 0px)) 16px 10px !important;
        background: #fff !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, .08) !important;
    }

    body.storefront-shell--v2 .sf-mobile-product-topbar__location {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-product-topbar__item img {
        width: 56px !important;
        height: 56px !important;
        border-radius: 12px !important;
        object-fit: contain !important;
    }

    body.storefront-shell--v2 .sf-mobile-pdp-media {
        height: 360px !important;
        margin: 0 !important;
        border-radius: 0 0 20px 20px !important;
        background: #fff !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-pdp-media img {
        width: 100% !important;
        height: 100% !important;
        padding: 44px 28px 28px !important;
        object-fit: contain !important;
    }

    body.storefront-shell--v2 .sf-mobile-pdp-card {
        padding: 24px !important;
    }

    body.storefront-shell--v2 .sf-mobile-pdp-card h1 {
        color: #202124 !important;
        font-size: 24px !important;
        font-weight: 700 !important;
    }

    body.storefront-shell--v2 .sf-mobile-price-row strong {
        font-size: 30px !important;
        font-weight: 700 !important;
    }

    body.storefront-shell--v2 .sf-mobile-price-row span {
        color: #6b7280 !important;
        font-size: 18px !important;
    }

    body.storefront-shell--v2 .sf-mobile-price-row em {
        border-radius: 999px !important;
        background: #eaf8ef !important;
        color: #19c37d !important;
    }

    body.storefront-shell--v2 .sf-mobile-pagebar {
        min-height: calc(60px + env(safe-area-inset-top, 0px)) !important;
        padding: calc(10px + env(safe-area-inset-top, 0px)) 16px 10px !important;
        background: #fff !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, .06) !important;
    }

    body.storefront-shell--v2 .sf-mobile-cart-line {
        min-height: 132px !important;
        grid-template-columns: 72px minmax(0, 1fr) auto !important;
        gap: 14px !important;
        border-bottom: 1px solid #ececec !important;
    }

    body.storefront-shell--v2 .sf-mobile-cart-line img,
    body.storefront-shell--v2 .sf-mobile-order-item img {
        width: 72px !important;
        height: 72px !important;
        border-radius: 16px !important;
        object-fit: contain !important;
    }

    body.storefront-shell--v2 .sf-mobile-bill-card {
        min-height: 190px !important;
    }

    body.storefront-shell--v2 .sf-mobile-bill-card dl div,
    body.storefront-shell--v2 .sf-mobile-savings-card dl div {
        min-height: 44px !important;
        border-bottom: 1px solid #ececec !important;
    }

    body.storefront-shell--v2 .sf-mobile-savings-card {
        background: #f0fff5 !important;
        border-radius: 18px !important;
    }

    body.storefront-shell--v2 .sf-mobile-tip-card {
        min-height: 240px !important;
        margin: 16px !important;
        padding: 18px !important;
        border-radius: 24px !important;
        background: #fff !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, .08) !important;
    }

    body.storefront-shell--v2 .sf-mobile-segment {
        min-height: 48px !important;
        border-radius: 999px !important;
    }

    body.storefront-shell--v2 .sf-mobile-tip-grid {
        grid-template-columns: repeat(4, 72px) !important;
        gap: 12px !important;
        overflow-x: auto !important;
    }

    body.storefront-shell--v2 .sf-mobile-tip-grid button {
        width: 72px !important;
        height: 42px !important;
        border-radius: 999px !important;
    }

    body.storefront-shell--v2 .sf-mobile-pay-total {
        min-height: 60px !important;
        background: #fff !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, .06) !important;
    }

    body.storefront-shell--v2 .sf-mobile-pay-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    body.storefront-shell--v2 .sf-mobile-pay-grid label {
        min-height: 72px !important;
        border: 1px solid #ececec !important;
        border-radius: 14px !important;
    }

    body.storefront-shell--v2 .sf-mobile-fixed-cta {
        min-height: calc(82px + env(safe-area-inset-bottom, 0px)) !important;
        padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
        background: #fff !important;
        box-shadow: 0 -6px 24px rgba(0, 0, 0, .12) !important;
    }

    body.storefront-shell--v2 .sf-mobile-fixed-cta a,
    body.storefront-shell--v2 .sf-mobile-fixed-cta button {
        width: 100% !important;
        max-width: 358px !important;
        min-height: 56px !important;
        margin: 0 auto !important;
        border-radius: 14px !important;
        background: #ff2b7a !important;
        color: #fff !important;
        font-size: 18px !important;
        font-weight: 700 !important;
    }

    body.storefront-shell--v2 .sf-mobile-map-panel {
        min-height: 470px !important;
    }

    body.storefront-shell--v2 .sf-mobile-eta-card {
        min-height: 260px !important;
        margin: 16px !important;
        padding: 18px 18px 76px !important;
        border-radius: 24px !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, .08) !important;
    }

    body.storefront-shell--v2 .sf-mobile-ontime {
        min-height: 32px !important;
        padding: 8px 14px !important;
        border-radius: 0 0 0 12px !important;
        background: #14b866 !important;
    }

    body.storefront-shell--v2 .sf-mobile-order-sheet {
        min-height: 340px !important;
        padding: 10px 20px 20px !important;
        border-radius: 24px 24px 0 0 !important;
        box-shadow: 0 -6px 24px rgba(0, 0, 0, .12) !important;
    }

    body.storefront-shell--v2 .sf-mobile-order-sheet > span {
        width: 36px !important;
        height: 4px !important;
    }
}

@media (max-width: 900px) {
    body.storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-header,
    body.storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-header__inner,
    body.storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-app-chrome,
    body.storefront-shell--v2:not(.sf-mobile-product-page):not(.sf-mobile-cart-page):not(.sf-mobile-checkout-page):not(.sf-mobile-order-page):not(.sf-mobile-tracking-page) .sf-mobile-header {
        min-height: 232px !important;
        background: #fff !important;
        box-shadow: 0 1px 0 rgba(15, 23, 42, .08) !important;
    }

    body.storefront-shell--v2 .sf-mobile-header {
        padding-top: env(safe-area-inset-top, 0px) !important;
    }

    body.storefront-shell--v2 .sf-mobile-menu {
        position: absolute !important;
        top: calc(18px + env(safe-area-inset-top, 0px)) !important;
        left: 4px !important;
        z-index: 12 !important;
        display: grid !important;
        width: 32px !important;
        height: 32px !important;
        place-items: center !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        color: #111827 !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-wordmark--mobile {
        position: absolute !important;
        top: calc(18px + env(safe-area-inset-top, 0px)) !important;
        left: 48px !important;
        z-index: 12 !important;
        display: flex !important;
        width: 128px !important;
        height: 40px !important;
        align-items: center !important;
        justify-content: flex-start !important;
    }

    body.storefront-shell--v2 .sf-wordmark--mobile img {
        display: block !important;
        width: auto !important;
        max-width: 124px !important;
        height: 38px !important;
        object-fit: contain !important;
    }

    body.storefront-shell--v2 .sf-wordmark--mobile .sf-wordmark__text {
        display: block !important;
        font-size: 17px !important;
        font-weight: 900 !important;
        line-height: 1 !important;
    }

    body.storefront-shell--v2 .sf-mobile-brandbar {
        top: calc(18px + env(safe-area-inset-top, 0px)) !important;
        right: 12px !important;
        z-index: 12 !important;
        width: 36px !important;
        height: 36px !important;
        border: 0 !important;
        border-radius: 999px !important;
        background: #fff !important;
        color: #70747d !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-brandbar i {
        font-size: 20px !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card {
        top: calc(82px + env(safe-area-inset-top, 0px)) !important;
        left: 4px !important;
        right: auto !important;
        z-index: 10 !important;
        display: inline-flex !important;
        width: 188px !important;
        min-height: 36px !important;
        align-items: center !important;
        padding: 0 !important;
        background: transparent !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy {
        display: inline-flex !important;
        min-height: 36px !important;
        align-items: center !important;
        gap: 8px !important;
        padding: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy::before {
        content: "\f3c5" !important;
        display: inline-grid !important;
        width: 22px !important;
        height: 22px !important;
        place-items: center !important;
        color: #2563ff !important;
        font-family: "Font Awesome 6 Free" !important;
        font-size: 17px !important;
        font-weight: 900 !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy > span,
    body.storefront-shell--v2 .sf-mobile-delivery-card__eta,
    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong em {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong {
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
        color: #1d4ed8 !important;
        font-size: 16px !important;
        font-weight: 500 !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong::before {
        content: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong b {
        max-width: 132px !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong > i {
        display: inline-flex !important;
        color: #1d4ed8 !important;
        font-size: 12px !important;
    }

    body.storefront-shell--v2 .sf-searchbar--mobile,
    body.storefront-shell--v2 .sf-searchbar--mobile:not(.has-mobile-promo),
    body.storefront-shell--v2 .sf-searchbar--mobile.has-mobile-promo {
        top: calc(80px + env(safe-area-inset-top, 0px)) !important;
        right: 10px !important;
        left: 210px !important;
        width: auto !important;
        min-height: 50px !important;
        grid-template-columns: 24px minmax(0, 1fr) 28px !important;
        padding: 0 12px !important;
        border: 0 !important;
        border-radius: 8px !important;
        background: #f5f5f6 !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-searchbar__icon {
        color: #8b95a5 !important;
    }

    body.storefront-shell--v2 .sf-searchbar__field {
        min-width: 0 !important;
    }

    body.storefront-shell--v2 .sf-searchbar input {
        height: 48px !important;
        color: #5b6472 !important;
        font-size: 14px !important;
        font-weight: 500 !important;
    }

    body.storefront-shell--v2 .sf-searchbar input::placeholder {
        color: transparent !important;
    }

    body.storefront-shell--v2 .sf-searchbar__submit {
        display: grid !important;
        width: 28px !important;
        height: 28px !important;
        place-items: center !important;
        border: 0 !important;
        background: transparent !important;
        color: #777b83 !important;
    }

    body.storefront-shell--v2 .sf-searchbar__submit svg {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-searchbar__submit::before {
        content: "\f044" !important;
        font-family: "Font Awesome 6 Free" !important;
        font-size: 20px !important;
        font-weight: 400 !important;
    }

    body.storefront-shell--v2 .sf-zepto-search-promo {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector {
        top: calc(140px + env(safe-area-inset-top, 0px)) !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 9 !important;
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: 74px !important;
        gap: 19px !important;
        min-height: 91px !important;
        overflow-x: auto !important;
        padding: 0 22px !important;
        border-bottom: 1px solid #e6e8ee !important;
        background: #fff !important;
        scrollbar-width: none !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a {
        display: grid !important;
        min-width: 74px !important;
        width: 74px !important;
        height: 91px !important;
        align-content: start !important;
        justify-items: center !important;
        gap: 8px !important;
        padding: 0 !important;
        border: 0 !important;
        border-bottom: 2px solid transparent !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        color: #4d5360 !important;
        font-size: 14px !important;
        font-weight: 500 !important;
        text-align: center !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a::before {
        content: "\f00a" !important;
        display: grid !important;
        width: 50px !important;
        height: 50px !important;
        place-items: center !important;
        border-radius: 9px !important;
        background: #f3f5f8 !important;
        color: #2563ff !important;
        font-family: "Font Awesome 6 Free" !important;
        font-size: 24px !important;
        font-weight: 900 !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a:nth-child(2)::before {
        content: "\f805" !important;
        color: #178144 !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a:nth-child(3)::before {
        content: "\f553" !important;
        color: #4f46e5 !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a:nth-child(4)::before {
        content: "\f7d9" !important;
        color: #0f172a !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a:nth-child(5)::before {
        content: "\f290" !important;
        color: #111827 !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector img {
        width: 50px !important;
        height: 50px !important;
        padding: 7px !important;
        border-radius: 9px !important;
        background: #f3f5f8 !important;
        object-fit: contain !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector img + span {
        margin-top: 0 !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a:has(img)::before {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a.is-active,
    body.storefront-shell--v2 .sf-header-service-selector a:first-child {
        border-bottom-color: #2563ff !important;
        background: transparent !important;
        color: #2563ff !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a:first-child::before {
        background: #eaf2ff !important;
        color: #2563ff !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector span {
        display: block !important;
        max-width: 74px !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.storefront-shell--v2 .sf-location-modal {
        position: fixed !important;
        inset: 0 !important;
        z-index: 2000 !important;
        display: grid !important;
        place-items: end center !important;
        padding: 0 !important;
    }

    body.storefront-shell--v2 .sf-location-modal[hidden] {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-location-modal__backdrop {
        position: absolute !important;
        inset: 0 !important;
        background: rgba(17, 24, 39, .58) !important;
        backdrop-filter: blur(7px) !important;
    }

    body.storefront-shell--v2 .sf-location-modal__panel {
        position: relative !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        display: grid !important;
        width: min(100%, 430px) !important;
        max-width: 430px !important;
        max-height: min(90vh, 760px) !important;
        overflow-y: auto !important;
        padding: 18px 20px 20px !important;
        border-radius: 22px 22px 0 0 !important;
        background: #fff !important;
        box-shadow: 0 -18px 48px rgba(15, 23, 42, .22) !important;
    }

    body.storefront-shell--v2 .sf-location-modal__head {
        min-height: 44px !important;
        padding: 0 42px 14px 0 !important;
        border-bottom: 1px solid #edf0f5 !important;
    }

    body.storefront-shell--v2 .sf-location-modal__head h3 {
        margin: 0 !important;
        color: #111 !important;
        font-size: 22px !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
    }

    body.storefront-shell--v2 .sf-location-modal__head p {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-location-modal__close {
        position: absolute !important;
        top: 14px !important;
        right: 14px !important;
        display: grid !important;
        width: 34px !important;
        height: 34px !important;
        place-items: center !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 999px !important;
        background: transparent !important;
        color: #111 !important;
        font-size: 18px !important;
    }

    body.storefront-shell--v2 .sf-location-modal__actions {
        display: grid !important;
        gap: 16px !important;
        padding-top: 16px !important;
    }

    body.storefront-shell--v2 .sf-location-modal__manual {
        display: grid !important;
        gap: 8px !important;
    }

    body.storefront-shell--v2 .sf-location-modal__manual label {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-location-modal__manual-row {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 44px !important;
        gap: 8px !important;
        min-height: 50px !important;
        padding: 0 8px 0 16px !important;
        border: 1px solid #e4e7ee !important;
        border-radius: 9px !important;
        background: #f7f7f8 !important;
    }

    body.storefront-shell--v2 .sf-location-modal__manual-row::before {
        content: "\f3c5" !important;
        align-self: center !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
        color: #9ca3af !important;
        font-family: "Font Awesome 6 Free" !important;
        font-weight: 400 !important;
    }

    body.storefront-shell--v2 .sf-location-modal__manual-row input {
        grid-column: 1 !important;
        grid-row: 1 !important;
        min-width: 0 !important;
        height: 48px !important;
        padding: 0 0 0 30px !important;
        border: 0 !important;
        background: transparent !important;
        color: #111827 !important;
        font-size: 15px !important;
        font-weight: 500 !important;
    }

    body.storefront-shell--v2 .sf-location-modal__manual-row button {
        grid-column: 2 !important;
        width: 38px !important;
        height: 38px !important;
        align-self: center !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 999px !important;
        background: transparent !important;
        color: #3b82f6 !important;
        font-size: 18px !important;
    }

    body.storefront-shell--v2 .sf-location-modal__map {
        position: relative !important;
        min-height: 270px !important;
        overflow: hidden !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 12px !important;
        background: #eef2f7 !important;
    }

    body.storefront-shell--v2 .sf-location-modal__current {
        display: grid !important;
        grid-template-columns: 50px minmax(0, 1fr) !important;
        gap: 12px !important;
        align-items: center !important;
    }

    body.storefront-shell--v2 .sf-location-modal__current > span {
        display: grid !important;
        width: 48px !important;
        height: 48px !important;
        place-items: center !important;
        border-radius: 999px !important;
        background: #eff6ff !important;
        color: #3b82f6 !important;
        font-size: 20px !important;
    }

    body.storefront-shell--v2 .sf-location-modal__current small {
        display: block !important;
        color: #6b7280 !important;
        font-size: 13px !important;
        font-weight: 600 !important;
    }

    body.storefront-shell--v2 .sf-location-modal__current strong {
        display: block !important;
        overflow: hidden !important;
        color: #111 !important;
        font-size: 15px !important;
        font-weight: 700 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.storefront-shell--v2 .sf-location-modal__footer {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 14px !important;
    }

    body.storefront-shell--v2 .sf-location-modal__footer a,
    body.storefront-shell--v2 .sf-location-modal__footer button {
        display: grid !important;
        min-height: 50px !important;
        place-items: center !important;
        border: 1px solid #d4dae5 !important;
        border-radius: 8px !important;
        background: #fff !important;
        color: #111 !important;
        font-size: 15px !important;
        font-weight: 700 !important;
        text-align: center !important;
        text-decoration: none !important;
    }

    body.storefront-shell--v2 .sf-location-modal__footer button {
        border-color: #3b82f6 !important;
        background: #3b82f6 !important;
        color: #fff !important;
    }
}

@media (min-width: 901px) {
    .storefront-shell--v2 .sf-location-modal__panel {
        width: min(960px, calc(100vw - 48px)) !important;
        max-width: 960px !important;
        padding: 22px 20px 20px !important;
        border-radius: 14px !important;
    }

    .storefront-shell--v2 .sf-location-modal__head {
        padding-bottom: 18px !important;
        border-bottom: 1px solid #edf0f5 !important;
    }

    .storefront-shell--v2 .sf-location-modal__head h3 {
        margin: 0 !important;
        color: #111 !important;
        font-size: 24px !important;
        font-weight: 700 !important;
    }

    .storefront-shell--v2 .sf-location-modal__head p {
        display: none !important;
    }

    .storefront-shell--v2 .sf-location-modal__actions {
        display: grid !important;
        gap: 20px !important;
        padding-top: 16px !important;
    }

    .storefront-shell--v2 .sf-location-modal__manual label {
        display: none !important;
    }

    .storefront-shell--v2 .sf-location-modal__manual-row {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 44px !important;
        gap: 8px !important;
        min-height: 50px !important;
        padding: 0 10px 0 16px !important;
        border: 1px solid #e4e7ee !important;
        border-radius: 9px !important;
        background: #f7f7f8 !important;
    }

    .storefront-shell--v2 .sf-location-modal__manual-row input {
        height: 48px !important;
        border: 0 !important;
        background: transparent !important;
        color: #111827 !important;
        font-size: 16px !important;
    }

    .storefront-shell--v2 .sf-location-modal__manual-row button {
        width: 38px !important;
        height: 38px !important;
        align-self: center !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 999px !important;
        background: transparent !important;
        color: #3b82f6 !important;
        font-size: 18px !important;
    }

    .storefront-shell--v2 .sf-location-modal__map {
        position: relative !important;
        min-height: 365px !important;
        overflow: hidden !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 10px !important;
        background: #eef2f7 !important;
    }

    .storefront-shell--v2 .sf-location-modal__current {
        display: grid !important;
        grid-template-columns: 50px minmax(0, 1fr) !important;
        gap: 12px !important;
        align-items: center !important;
    }

    .storefront-shell--v2 .sf-location-modal__current > span {
        display: grid !important;
        width: 48px !important;
        height: 48px !important;
        place-items: center !important;
        border-radius: 999px !important;
        background: #eff6ff !important;
        color: #3b82f6 !important;
        font-size: 20px !important;
    }

    .storefront-shell--v2 .sf-location-modal__current small {
        display: block !important;
        color: #6b7280 !important;
        font-size: 13px !important;
        font-weight: 600 !important;
    }

    .storefront-shell--v2 .sf-location-modal__current strong {
        color: #111 !important;
        font-size: 17px !important;
        font-weight: 700 !important;
    }

    .storefront-shell--v2 .sf-location-modal__footer {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 16px !important;
    }

    .storefront-shell--v2 .sf-location-modal__footer a,
    .storefront-shell--v2 .sf-location-modal__footer button {
        display: grid !important;
        min-height: 50px !important;
        place-items: center !important;
        border: 1px solid #d4dae5 !important;
        border-radius: 8px !important;
        background: #fff !important;
        color: #111 !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        text-decoration: none !important;
    }

    .storefront-shell--v2 .sf-location-modal__footer button {
        border-color: #3b82f6 !important;
        background: #3b82f6 !important;
        color: #fff !important;
    }
}

@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-header-service-selector {
        top: calc(136px + env(safe-area-inset-top, 0px)) !important;
        grid-auto-columns: 102px !important;
        gap: 12px !important;
        min-height: 104px !important;
        padding: 7px 16px 11px !important;
        border-bottom: 1px solid #ede9f5 !important;
        background: #fff !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a {
        width: 102px !important;
        min-width: 102px !important;
        height: 86px !important;
        align-content: center !important;
        gap: 7px !important;
        border: 1px solid #e8e4ef !important;
        border-radius: 22px !important;
        background: #fff !important;
        color: #202124 !important;
        box-shadow: 0 5px 14px rgba(0, 0, 0, .035) !important;
        font-size: 12px !important;
        font-weight: 800 !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a.is-active,
    body.storefront-shell--v2 .sf-header-service-selector a:first-child.is-active {
        border-color: transparent !important;
        background: linear-gradient(135deg, #7c3aed, #4f46e5) !important;
        color: #fff !important;
        box-shadow: 0 5px 14px rgba(109, 74, 255, .24) !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a:first-child:not(.is-active) {
        border-bottom-color: #e8e4ef !important;
        color: #202124 !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector img {
        width: 30px !important;
        height: 30px !important;
        padding: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector span {
        max-width: 94px !important;
        font-size: 12px !important;
        font-weight: 800 !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a:has(.sf-service-tab-icon)::before,
    body.storefront-shell--v2 .sf-header-service-selector a:has(img)::before {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a > .sf-service-tab-icon {
        display: grid !important;
        width: 30px !important;
        height: 30px !important;
        place-items: center !important;
        border-radius: 0 !important;
        background: transparent !important;
        color: #6d4aff !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a > .sf-service-tab-icon svg {
        width: 28px !important;
        height: 28px !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a[data-service-key="pharmacy"] > .sf-service-tab-icon {
        color: #16a34a !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a[data-service-key="food"] > .sf-service-tab-icon {
        color: #f97316 !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a[data-service-key="parcel"] > .sf-service-tab-icon {
        color: #7c3aed !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a.is-active > .sf-service-tab-icon {
        background: rgba(255, 255, 255, .18) !important;
        color: #fff !important;
    }

    body.storefront-shell--v2 .sf-location-modal__map {
        min-height: 270px !important;
        overflow: hidden !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 12px !important;
        background: #eef2f7 !important;
    }

    body.storefront-shell--v2 .sf-location-modal__map-canvas,
    body.storefront-shell--v2 .sf-location-modal__map-unavailable {
        width: 100% !important;
        height: 270px !important;
        min-height: 270px !important;
    }

    body.storefront-shell--v2 .sf-location-modal__map-unavailable {
        display: grid !important;
        place-items: center !important;
        gap: 10px !important;
        padding: 22px !important;
        color: #64748b !important;
        text-align: center !important;
    }

    body.storefront-shell--v2 .sf-location-modal__map-unavailable i {
        color: #2563ff !important;
        font-size: 28px !important;
    }
}

@media (min-width: 901px) {
    .storefront-shell--v2 .sf-location-modal__map {
        min-height: 365px !important;
        overflow: hidden !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 10px !important;
        background: #eef2f7 !important;
    }

    .storefront-shell--v2 .sf-location-modal__map-canvas,
    .storefront-shell--v2 .sf-location-modal__map-unavailable {
        width: 100% !important;
        height: 365px !important;
        min-height: 365px !important;
    }

    .storefront-shell--v2 .sf-location-modal__map-unavailable {
        display: grid !important;
        place-items: center !important;
        gap: 10px !important;
        padding: 28px !important;
        color: #64748b !important;
        text-align: center !important;
    }
}

/* Flutter V3 home feed parity layer. */
.storefront-shell--v2 .sf-v3-home-feed {
    gap: 14px !important;
}

.storefront-shell--v2 .sf-v3-section {
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
}

.storefront-shell--v2 .sf-v3-section__head {
    margin-bottom: 10px !important;
}

.storefront-shell--v2 .sf-v3-section__head h2 {
    color: #202124 !important;
    font-size: .95rem !important;
    line-height: 1.12 !important;
    font-weight: 900 !important;
}

.storefront-shell--v2 .sf-v3-section__head p {
    margin-top: 2px !important;
    color: #6b7280 !important;
    font-size: .74rem !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}

.storefront-shell--v2 .sf-v3-section .sf-front-section__cta {
    color: #137b2e !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 5px 0 !important;
    font-size: .7rem !important;
    font-weight: 900 !important;
    text-transform: none !important;
}

.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner-grid {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(260px, 1fr) !important;
    grid-template-columns: none !important;
    gap: 10px !important;
    overflow-x: auto !important;
    scroll-snap-type: x proximity;
}

.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner {
    min-height: 145px !important;
    border-radius: 14px !important;
    background: #f7f2df !important;
    scroll-snap-align: start;
}

.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner img {
    object-fit: cover !important;
}

.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner strong {
    max-width: 12ch;
    color: #fff !important;
    font-size: 1.55rem !important;
    line-height: .96 !important;
    font-weight: 900 !important;
}

.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner span {
    color: rgba(255, 255, 255, .92) !important;
    font-size: .76rem !important;
    font-weight: 900 !important;
}

.storefront-shell--v2 .sf-v3-section--category_grid .sf-home-category-grid,
.storefront-shell--v2 .sf-v3-section--subcategory_chips .sf-home-category-grid {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: 84px !important;
    grid-template-columns: none !important;
    gap: 10px !important;
    overflow-x: auto !important;
    padding-bottom: 4px !important;
}

.storefront-shell--v2 .sf-v3-section .sf-home-category-tile {
    width: 84px !important;
    min-height: 92px !important;
    padding: 6px 6px 8px !important;
    border: 1px solid rgba(255, 255, 255, .75) !important;
    border-radius: 13px !important;
    background: #f2f8ee !important;
    box-shadow: none !important;
}

.storefront-shell--v2 .sf-v3-section .sf-home-category-tile:nth-child(4n+2) {
    background: #fff3e7 !important;
}

.storefront-shell--v2 .sf-v3-section .sf-home-category-tile:nth-child(4n+3) {
    background: #eef2ff !important;
}

.storefront-shell--v2 .sf-v3-section .sf-home-category-tile:nth-child(4n+4) {
    background: #fff0f7 !important;
}

.storefront-shell--v2 .sf-v3-section .sf-home-category-tile__top {
    min-height: 46px !important;
    background: transparent !important;
}

.storefront-shell--v2 .sf-v3-section .sf-home-category-tile img {
    width: 48px !important;
    height: 48px !important;
    object-fit: contain !important;
}

.storefront-shell--v2 .sf-home-category-tile__fallback {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border-radius: 12px;
    background: rgba(255, 255, 255, .74);
    color: #137b2e;
    font-weight: 900;
}

.storefront-shell--v2 .sf-v3-section .sf-home-category-tile > span {
    color: #202124 !important;
    font-size: .64rem !important;
    line-height: 1.12 !important;
    font-weight: 900 !important;
}

.storefront-shell--v2 .sf-v3-section .sf-home-product-grid.is-scroller,
.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid,
.storefront-shell--v2 .sf-v3-section--store_rail .sf-home-store-grid,
.storefront-shell--v2 .sf-combo-rail {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: 150px !important;
    grid-template-columns: none !important;
    gap: 10px !important;
    overflow-x: auto !important;
    padding-bottom: 6px !important;
}

.storefront-shell--v2 .sf-v3-section--store_rail .sf-home-store-grid {
    grid-auto-columns: 214px !important;
}

.storefront-shell--v2 .sf-v3-section .sf-product-card {
    min-height: 248px !important;
    padding: 8px !important;
    border: 1px solid #ededed !important;
    border-radius: 15px !important;
    background: #fff !important;
    box-shadow: 0 4px 12px rgba(15, 23, 42, .04) !important;
}

.storefront-shell--v2 .sf-v3-section .sf-product-card__thumb {
    height: 108px !important;
    border: 1px solid #f2f2f2 !important;
    border-radius: 14px !important;
    background: #fafafa !important;
}

.storefront-shell--v2 .sf-v3-section .sf-product-card__wish,
.storefront-shell--v2 .sf-v3-section .sf-product-card__topline,
.storefront-shell--v2 .sf-v3-section .sf-product-card__brand,
.storefront-shell--v2 .sf-v3-section .sf-product-card__tags {
    display: none !important;
}

.storefront-shell--v2 .sf-v3-section .sf-product-card h3 {
    color: #202124 !important;
    font-size: .72rem !important;
    line-height: 1.08 !important;
    font-weight: 900 !important;
}

.storefront-shell--v2 .sf-v3-section .sf-product-card__subtitle {
    color: #6b7280 !important;
    font-size: .63rem !important;
    font-weight: 800 !important;
}

.storefront-shell--v2 .sf-v3-section .sf-product-card__price strong {
    color: #202124 !important;
    background: transparent !important;
    padding: 0 !important;
    font-size: .92rem !important;
    line-height: 1 !important;
    font-weight: 900 !important;
}

.storefront-shell--v2 .sf-v3-section .sf-product-card__price small {
    color: #8a8f98 !important;
    font-size: .65rem !important;
    font-weight: 800 !important;
}

.storefront-shell--v2 .sf-v3-section .sf-product-card__saving {
    color: #2563a9 !important;
    background: transparent !important;
    padding: 0 !important;
    font-size: .58rem !important;
    font-weight: 900 !important;
}

.storefront-shell--v2 .sf-v3-section .sf-product-card__action,
.storefront-shell--v2 .sf-v3-section .sf-product-card__stepper {
    width: 70px !important;
    min-height: 40px !important;
    border: 1.2px solid #1faf38 !important;
    border-radius: 9px !important;
    background: #fff !important;
    color: #1faf38 !important;
    font-size: .7rem !important;
    font-weight: 900 !important;
}

.storefront-shell--v2 .sf-v3-section .sf-product-card__action-plus {
    display: none !important;
}

.storefront-shell--v2 .sf-combo-rail {
    grid-auto-columns: 240px !important;
}

.storefront-shell--v2 .sf-combo-card {
    display: grid;
    gap: 7px;
    min-height: 188px;
    padding: 14px;
    border: 1px solid #ededed;
    border-radius: 20px;
    background: #fff;
}

.storefront-shell--v2 .sf-combo-card__badge {
    color: #1faf38;
    font-size: .68rem;
    font-weight: 900;
}

.storefront-shell--v2 .sf-combo-card__saving {
    width: fit-content;
    padding: 4px 8px;
    border-radius: 999px;
    background: #fff0af;
    color: #202124;
    font-size: .6rem;
    font-weight: 900;
}

.storefront-shell--v2 .sf-combo-card__media {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 5px;
}

.storefront-shell--v2 .sf-combo-card__media a {
    display: grid;
    height: 74px;
    place-items: center;
    border-radius: 14px;
    background: #fafafa;
    color: #202124;
    text-decoration: none;
    font-weight: 900;
}

.storefront-shell--v2 .sf-combo-card__media img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.storefront-shell--v2 .sf-combo-card h3 {
    margin: 0;
    color: #202124;
    font-size: .82rem;
    line-height: 1.15;
    font-weight: 900;
}

.storefront-shell--v2 .sf-combo-card > strong {
    color: #202124;
    font-size: .84rem;
    font-weight: 900;
}

.storefront-shell--v2 .sf-combo-card p {
    margin: 0;
    color: #6b7280;
    font-size: .68rem;
    line-height: 1.25;
    font-weight: 700;
}

@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-searchbar--mobile:not(.has-mobile-promo) {
        width: 100% !important;
    }

    body.storefront-shell--v2 .sf-v3-home-feed {
        padding-inline: 0 !important;
    }

    body.storefront-shell--v2 .sf-v3-section {
        padding: 12px 16px !important;
    }

    body.storefront-shell--v2 .sf-v3-section--banner {
        padding-top: 10px !important;
    }

    body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner-grid,
    body.storefront-shell--v2 .sf-v3-section .sf-home-product-grid.is-scroller,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--category_grid .sf-home-category-grid,
    body.storefront-shell--v2 .sf-v3-section--subcategory_chips .sf-home-category-grid,
    body.storefront-shell--v2 .sf-v3-section--store_rail .sf-home-store-grid,
    body.storefront-shell--v2 .sf-combo-rail {
        margin-inline: -16px !important;
        padding-inline: 16px !important;
    }

    body.storefront-shell--v2 .sf-v3-section--product_grid .sf-home-product-grid {
        display: grid !important;
        grid-template-columns: repeat(var(--mobile-cols, 2), minmax(0, 1fr)) !important;
        gap: 10px !important;
        overflow: visible !important;
        padding-inline: 0 !important;
    }
}

/* Final Flutter V3 mobile storefront composition. Keep this at EOF. */
@media (max-width: 900px) {
    body.storefront-shell--v2 {
        --sf-v3-header-h: 276px;
        background: #f7f8fa !important;
        color: #202124 !important;
        font-family: "Nunito Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    }

    body.storefront-shell--v2 .sf-top-strip,
    body.storefront-shell--v2 .sf-mobile-brandbar,
    body.storefront-shell--v2 .sf-header-service-select,
    body.storefront-shell--v2 .sf-mobile-menu,
    body.storefront-shell--v2 .sf-wordmark--mobile {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-header {
        position: sticky !important;
        top: 0 !important;
        z-index: 70 !important;
        height: var(--sf-v3-header-h) !important;
        min-height: var(--sf-v3-header-h) !important;
        padding: 0 !important;
        border: 0 !important;
        background: #fff !important;
        box-shadow: 0 8px 24px rgba(15, 23, 42, .07) !important;
    }

    body.storefront-shell--v2 .sf-header__inner,
    body.storefront-shell--v2 .sf-app-chrome,
    body.storefront-shell--v2 .sf-mobile-header {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        height: var(--sf-v3-header-h) !important;
        min-height: var(--sf-v3-header-h) !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: #fff !important;
        box-shadow: none !important;
        overflow: visible !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card {
        position: absolute !important;
        top: calc(10px + env(safe-area-inset-top, 0px)) !important;
        left: 14px !important;
        right: 116px !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        min-width: 0 !important;
        height: 62px !important;
        min-height: 62px !important;
        padding: 8px 10px !important;
        border: 0 !important;
        border-radius: 18px !important;
        background: #f7f7f8 !important;
        color: #202124 !important;
        text-align: left !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy {
        display: grid !important;
        grid-template-columns: 22px minmax(0, 1fr) 18px !important;
        grid-template-rows: 20px 20px !important;
        column-gap: 7px !important;
        align-items: center !important;
        min-width: 0 !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy::before {
        content: "\f3c5" !important;
        grid-row: 1 / 3 !important;
        display: grid !important;
        width: 22px !important;
        height: 40px !important;
        place-items: center !important;
        color: #1faf38 !important;
        font-family: "Font Awesome 6 Free" !important;
        font-size: 18px !important;
        font-weight: 900 !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy > span {
        display: block !important;
        grid-column: 2 !important;
        grid-row: 1 !important;
        color: #202124 !important;
        font-size: 13px !important;
        line-height: 1.1 !important;
        font-weight: 900 !important;
        text-transform: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy > span i {
        color: #1faf38 !important;
        font-size: 13px !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong {
        display: flex !important;
        grid-column: 2 / 4 !important;
        grid-row: 2 !important;
        align-items: center !important;
        min-width: 0 !important;
        color: #6b7280 !important;
        font-size: 10px !important;
        line-height: 1.15 !important;
        font-weight: 800 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong b {
        display: inline-block !important;
        max-width: 42% !important;
        color: #202124 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong em {
        display: inline-block !important;
        min-width: 0 !important;
        color: #6b7280 !important;
        font-style: normal !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong > i {
        flex: 0 0 auto !important;
        margin-left: 4px !important;
        color: #202124 !important;
        font-size: 10px !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__eta {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-header__actions {
        position: absolute !important;
        top: calc(17px + env(safe-area-inset-top, 0px)) !important;
        right: 14px !important;
        display: flex !important;
        gap: 8px !important;
        align-items: center !important;
        z-index: 2 !important;
    }

    body.storefront-shell--v2 .sf-mobile-action-btn {
        position: relative !important;
        display: grid !important;
        width: 44px !important;
        height: 44px !important;
        place-items: center !important;
        border: 1px solid #ededed !important;
        border-radius: 16px !important;
        background: #fff !important;
        color: #202124 !important;
        box-shadow: 0 5px 14px rgba(15, 23, 42, .06) !important;
        text-decoration: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-action-btn span {
        position: absolute !important;
        top: -4px !important;
        right: -4px !important;
        display: grid !important;
        min-width: 17px !important;
        height: 17px !important;
        place-items: center !important;
        border-radius: 999px !important;
        background: #ef4444 !important;
        color: #fff !important;
        font-size: 10px !important;
        font-weight: 900 !important;
    }

    body.storefront-shell--v2 .sf-searchbar--mobile,
    body.storefront-shell--v2 .sf-searchbar--mobile:not(.has-mobile-promo),
    body.storefront-shell--v2 .sf-searchbar--mobile.has-mobile-promo {
        position: absolute !important;
        top: calc(82px + env(safe-area-inset-top, 0px)) !important;
        left: 14px !important;
        right: 14px !important;
        display: grid !important;
        grid-template-columns: 22px minmax(0, 1fr) 30px !important;
        align-items: center !important;
        width: auto !important;
        height: 50px !important;
        min-height: 50px !important;
        margin: 0 !important;
        padding: 0 10px 0 14px !important;
        border: 0 !important;
        border-radius: 13px !important;
        background: #f5f5f6 !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-searchbar__icon {
        display: grid !important;
        color: #64748b !important;
    }

    body.storefront-shell--v2 .sf-searchbar__field,
    body.storefront-shell--v2 .sf-searchbar--mobile input {
        min-width: 0 !important;
        height: 50px !important;
        color: #202124 !important;
        font-size: 14px !important;
        font-weight: 800 !important;
    }

    body.storefront-shell--v2 .sf-searchbar--mobile input::placeholder {
        color: #8d94a1 !important;
        font-weight: 800 !important;
    }

    body.storefront-shell--v2 .sf-searchbar__submit {
        display: grid !important;
        width: 30px !important;
        height: 30px !important;
        place-items: center !important;
        border: 0 !important;
        border-radius: 10px !important;
        background: transparent !important;
        color: #64748b !important;
    }

    body.storefront-shell--v2 .sf-zepto-search-promo {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector {
        position: absolute !important;
        top: calc(144px + env(safe-area-inset-top, 0px)) !important;
        left: 0 !important;
        right: 0 !important;
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: minmax(92px, 110px) !important;
        grid-template-columns: none !important;
        gap: 12px !important;
        min-height: 100px !important;
        margin: 0 !important;
        padding: 7px 14px !important;
        border: 0 !important;
        background: #fff !important;
        overflow-x: auto !important;
        overscroll-behavior-x: contain !important;
        scroll-snap-type: x proximity !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector::-webkit-scrollbar {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a {
        display: grid !important;
        width: 100% !important;
        min-width: 0 !important;
        height: 86px !important;
        place-items: center !important;
        align-content: center !important;
        gap: 7px !important;
        padding: 0 6px !important;
        border: 1px solid #e8e4ef !important;
        border-radius: 22px !important;
        background: #fff !important;
        color: #202124 !important;
        box-shadow: 0 5px 14px rgba(0, 0, 0, .035) !important;
        font-size: 12px !important;
        font-weight: 900 !important;
        text-align: center !important;
        text-decoration: none !important;
        scroll-snap-align: start !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a.is-active {
        border-color: transparent !important;
        background: linear-gradient(135deg, #7c3aed, #4f46e5) !important;
        color: #fff !important;
        box-shadow: 0 5px 14px rgba(109, 74, 255, .24) !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a::before {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector img,
    body.storefront-shell--v2 .sf-header-service-selector .sf-service-tab-icon {
        display: grid !important;
        width: 30px !important;
        height: 30px !important;
        place-items: center !important;
        padding: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        color: #6d4aff !important;
        object-fit: contain !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector .sf-service-tab-icon svg {
        width: 29px !important;
        height: 29px !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a.is-active img,
    body.storefront-shell--v2 .sf-header-service-selector a.is-active .sf-service-tab-icon {
        color: #fff !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a span:last-child {
        display: block !important;
        max-width: 96px !important;
        color: inherit !important;
        font-size: 12px !important;
        line-height: 1.05 !important;
        font-weight: 900 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.storefront-shell--v2 .sf-page-shell--home {
        margin-top: 0 !important;
        padding-top: 0 !important;
        background: #f7f8fa !important;
    }

    body.storefront-shell--v2 .sf-page-shell--home > .sf-container,
    body.storefront-shell--v2 .sf-v3-home-feed {
        display: grid !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 10px 0 92px !important;
    }

    body.storefront-shell--v2 .sf-v3-section {
        margin: 0 !important;
        padding: 12px 14px !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: #fff !important;
    }

    body.storefront-shell--v2 .sf-v3-section__head {
        margin: 0 0 9px !important;
        align-items: center !important;
    }

    body.storefront-shell--v2 .sf-v3-section__head h2 {
        margin: 0 !important;
        color: #202124 !important;
        font-size: 13.5px !important;
        line-height: 1.15 !important;
        font-weight: 900 !important;
    }

    body.storefront-shell--v2 .sf-v3-section__head p {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-v3-section .sf-front-section__cta {
        min-height: 26px !important;
        padding: 0 2px !important;
        color: #137b2e !important;
        font-size: 10px !important;
        font-weight: 900 !important;
    }

    body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner-grid {
        grid-auto-columns: calc(100vw - 28px) !important;
        margin-inline: -14px !important;
        padding-inline: 14px !important;
    }

    body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner {
        min-height: 145px !important;
        border-radius: 14px !important;
    }

    body.storefront-shell--v2 .sf-v3-section--category_grid .sf-home-category-grid,
    body.storefront-shell--v2 .sf-v3-section--subcategory_chips .sf-home-category-grid {
        height: 104px !important;
        grid-auto-columns: 84px !important;
        gap: 8px !important;
        margin-inline: -14px !important;
        padding: 0 14px 4px !important;
    }

    body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile {
        width: 84px !important;
        min-height: 92px !important;
        border-radius: 13px !important;
    }

    body.storefront-shell--v2 .sf-v3-section .sf-home-product-grid.is-scroller,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--store_rail .sf-home-store-grid,
    body.storefront-shell--v2 .sf-combo-rail {
        grid-auto-columns: 148px !important;
        gap: 10px !important;
        margin-inline: -14px !important;
        padding-inline: 14px !important;
    }

    body.storefront-shell--v2 .sf-v3-section--store_rail .sf-home-store-grid {
        grid-auto-columns: 214px !important;
    }
}

/* App-style product detail screen and inline header icons. */
@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-mobile-action-btn > svg {
        width: 21px !important;
        height: 21px !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy > span svg {
        display: inline-block !important;
        width: 13px !important;
        height: 13px !important;
        margin-right: 4px !important;
        color: #1faf38 !important;
        vertical-align: -2px !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong > svg {
        flex: 0 0 auto !important;
        width: 12px !important;
        height: 12px !important;
        margin-left: 4px !important;
        color: #202124 !important;
    }

    body.sf-mobile-product-page {
        --sf-pdp-bottom-h: 82px;
        background: #f7f8fc !important;
    }

    body.sf-mobile-product-page .sf-header,
    body.sf-mobile-product-page .sf-bottom-nav,
    body.sf-mobile-product-page .sf-zepto-delivery-dock,
    body.sf-mobile-product-page .sf-mobile-fixed-cta,
    body.sf-mobile-product-page .sf-floating-cart,
    body.sf-mobile-product-page .sf-floating-whatsapp {
        display: none !important;
    }

    body.sf-mobile-product-page .sf-app-pdp {
        display: block !important;
        min-height: 100vh !important;
        padding: 0 0 calc(var(--sf-pdp-bottom-h) + env(safe-area-inset-bottom, 0px) + 18px) !important;
        background: #f7f8fc !important;
        color: #202124 !important;
        font-family: "Nunito Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__topbar {
        position: sticky !important;
        top: 0 !important;
        z-index: 60 !important;
        display: grid !important;
        grid-template-columns: 42px minmax(0, 1fr) 42px 42px !important;
        gap: 8px !important;
        align-items: center !important;
        min-height: calc(62px + env(safe-area-inset-top, 0px)) !important;
        padding: calc(10px + env(safe-area-inset-top, 0px)) 14px 10px !important;
        border-bottom: 1px solid rgba(226, 232, 240, .86) !important;
        background: rgba(247, 248, 252, .96) !important;
        backdrop-filter: blur(14px) !important;
    }

    body.sf-mobile-product-page .sf-app-icon-btn {
        display: grid !important;
        width: 42px !important;
        height: 42px !important;
        place-items: center !important;
        border: 1px solid #edf0f4 !important;
        border-radius: 15px !important;
        background: #fff !important;
        color: #202124 !important;
        box-shadow: 0 5px 16px rgba(15, 23, 42, .06) !important;
        text-decoration: none !important;
    }

    body.sf-mobile-product-page .sf-app-icon-btn svg {
        width: 22px !important;
        height: 22px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__top-title {
        min-width: 0 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__top-title strong,
    body.sf-mobile-product-page .sf-app-pdp__top-title span {
        display: block !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__top-title strong {
        color: #202124 !important;
        font-size: 13px !important;
        line-height: 1.15 !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__top-title span {
        margin-top: 2px !important;
        color: #64748b !important;
        font-size: 11px !important;
        font-weight: 800 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__hero {
        background: #f8f9fc !important;
        min-height: 328px !important;
        padding: 12px 0 8px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__single-image,
    body.sf-mobile-product-page .sf-app-pdp__image-slide {
        display: grid !important;
        height: 300px !important;
        place-items: center !important;
        padding: 20px 24px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__single-image img,
    body.sf-mobile-product-page .sf-app-pdp__image-slide img {
        display: block !important;
        width: 100% !important;
        max-width: 310px !important;
        height: 260px !important;
        object-fit: contain !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__single-image > span {
        display: grid !important;
        width: 142px !important;
        height: 142px !important;
        place-items: center !important;
        border-radius: 32px !important;
        background: #fff !important;
        color: #1faf38 !important;
        font-size: 56px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__image-rail {
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: 100% !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        scrollbar-width: none !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__image-rail::-webkit-scrollbar {
        display: none !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__image-slide {
        scroll-snap-align: center !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__dots {
        display: flex !important;
        justify-content: center !important;
        gap: 8px !important;
        margin-top: 2px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__dots span {
        width: 7px !important;
        height: 7px !important;
        border-radius: 999px !important;
        background: #d6dae0 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__dots span.is-active {
        background: #4d5562 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__highlight-rail {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) 84px !important;
        gap: 6px !important;
        height: 58px !important;
        padding: 0 12px !important;
        margin: 0 0 8px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__highlight-rail > div,
    body.sf-mobile-product-page .sf-app-pdp__highlight-rail > a {
        display: grid !important;
        align-content: center !important;
        min-width: 0 !important;
        padding: 7px 8px !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 11px !important;
        background: #fff !important;
        color: #202124 !important;
        text-decoration: none !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__highlight-rail span,
    body.sf-mobile-product-page .sf-app-pdp__highlight-rail a {
        color: #64748b !important;
        font-size: 10px !important;
        line-height: 1.1 !important;
        font-weight: 800 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__highlight-rail strong {
        display: block !important;
        margin-top: 3px !important;
        color: #202124 !important;
        font-size: 11px !important;
        line-height: 1.1 !important;
        font-weight: 900 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__highlight-rail > a {
        place-items: center !important;
        color: #1faf38 !important;
        font-size: 12px !important;
        font-weight: 900 !important;
        text-align: center !important;
    }

    body.sf-mobile-product-page .sf-app-panel {
        margin: 8px 14px 0 !important;
        padding: 14px !important;
        border: 1px solid #edf0f4 !important;
        border-radius: 18px !important;
        background: #fff !important;
        box-shadow: 0 8px 20px rgba(15, 23, 42, .035) !important;
        color: #202124 !important;
        text-decoration: none !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__meta,
    body.sf-mobile-product-page .sf-app-pdp__chips {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        align-items: center !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__meta span,
    body.sf-mobile-product-page .sf-app-pdp__chips span {
        display: inline-flex !important;
        align-items: center !important;
        gap: 4px !important;
        min-height: 27px !important;
        padding: 5px 8px !important;
        border-radius: 999px !important;
        background: #f4f6f8 !important;
        color: #64748b !important;
        font-size: 11px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__meta svg {
        width: 14px !important;
        height: 14px !important;
        color: #1faf38 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__info h1 {
        margin: 8px 0 0 !important;
        color: #202124 !important;
        font-size: 17px !important;
        line-height: 1.14 !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__info p {
        margin: 8px 0 0 !important;
        color: #64748b !important;
        font-size: 13px !important;
        font-weight: 800 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__price {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
        align-items: end !important;
        margin-top: 10px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__price strong {
        color: #202124 !important;
        font-size: 21px !important;
        line-height: 1 !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__price span {
        color: #8a8f98 !important;
        font-size: 12px !important;
        font-weight: 800 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__price em {
        flex-basis: 100% !important;
        color: #2563eb !important;
        font-size: 12px !important;
        font-style: normal !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__chips {
        margin-top: 12px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__chips .is-success {
        background: #e9f9e9 !important;
        color: #137b2e !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__chips .is-danger {
        background: #fee2e2 !important;
        color: #b91c1c !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__variants h2,
    body.sf-mobile-product-page .sf-app-pdp__description h2,
    body.sf-mobile-product-page .sf-app-pdp__reviews h2,
    body.sf-mobile-product-page .sf-app-pdp__related h2 {
        margin: 0 0 10px !important;
        color: #202124 !important;
        font-size: 15px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__variants > div {
        display: flex !important;
        gap: 8px !important;
        overflow-x: auto !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__variants label {
        display: grid !important;
        min-width: 124px !important;
        gap: 4px !important;
        padding: 10px !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 14px !important;
        background: #fff !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__variants label.is-selected {
        border-color: #1faf38 !important;
        background: #f0fdf4 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__variants input {
        display: none !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__variants span,
    body.sf-mobile-product-page .sf-app-pdp__variants strong {
        font-size: 12px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__offer,
    body.sf-mobile-product-page .sf-app-pdp__store {
        display: grid !important;
        grid-template-columns: 44px minmax(0, 1fr) 22px !important;
        gap: 12px !important;
        align-items: center !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__offer > span,
    body.sf-mobile-product-page .sf-app-pdp__store-logo {
        display: grid !important;
        width: 44px !important;
        height: 44px !important;
        place-items: center !important;
        border-radius: 14px !important;
        background: #fce7f3 !important;
        color: #be185d !important;
        overflow: hidden !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__offer svg,
    body.sf-mobile-product-page .sf-app-pdp__store > svg {
        width: 22px !important;
        height: 22px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__store-logo {
        background: #f0fdf4 !important;
        color: #137b2e !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__store-logo img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__offer strong,
    body.sf-mobile-product-page .sf-app-pdp__store strong {
        display: block !important;
        color: #202124 !important;
        font-size: 13px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__offer small,
    body.sf-mobile-product-page .sf-app-pdp__store span,
    body.sf-mobile-product-page .sf-app-pdp__store small {
        display: block !important;
        margin-top: 2px !important;
        color: #64748b !important;
        font-size: 11px !important;
        font-weight: 800 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__description p,
    body.sf-mobile-product-page .sf-app-pdp__reviews p {
        margin: 0 !important;
        color: #475569 !important;
        font-size: 13px !important;
        line-height: 1.5 !important;
        font-weight: 700 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__description dl {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
        margin: 14px 0 0 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__description dl > div {
        min-width: 0 !important;
        padding: 10px !important;
        border-radius: 13px !important;
        background: #f8fafc !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__description dt {
        color: #64748b !important;
        font-size: 10px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__description dd {
        margin: 4px 0 0 !important;
        color: #202124 !important;
        font-size: 12px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__reviews article {
        padding: 10px 0 !important;
        border-top: 1px solid #edf0f4 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__reviews article strong,
    body.sf-mobile-product-page .sf-app-pdp__reviews article span {
        display: inline-block !important;
        margin-right: 8px !important;
        color: #202124 !important;
        font-size: 12px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__related {
        overflow: hidden !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__related .sf-home-product-grid {
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: 148px !important;
        grid-template-columns: none !important;
        gap: 10px !important;
        margin-inline: -14px !important;
        padding-inline: 14px !important;
        overflow-x: auto !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__related .sf-product-card {
        min-height: 245px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar {
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        z-index: 80 !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto auto !important;
        gap: 10px !important;
        align-items: center !important;
        min-height: calc(var(--sf-pdp-bottom-h) + env(safe-area-inset-bottom, 0px)) !important;
        padding: 10px 14px calc(10px + env(safe-area-inset-bottom, 0px)) !important;
        border-top: 1px solid #e5e7eb !important;
        background: rgba(255, 255, 255, .98) !important;
        box-shadow: 0 -10px 26px rgba(15, 23, 42, .09) !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar > div {
        min-width: 0 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar > div strong,
    body.sf-mobile-product-page .sf-app-pdp__bottom-bar > div span {
        display: block !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar > div strong {
        color: #202124 !important;
        font-size: 16px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar > div span {
        color: #64748b !important;
        font-size: 11px !important;
        font-weight: 800 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar form {
        margin: 0 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar button {
        display: grid !important;
        min-width: 128px !important;
        height: 48px !important;
        place-items: center !important;
        border: 0 !important;
        border-radius: 14px !important;
        background: #1faf38 !important;
        color: #fff !important;
        font-size: 14px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar button:disabled {
        background: #cbd5e1 !important;
        color: #64748b !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__stepper {
        display: grid !important;
        grid-template-columns: 44px 34px !important;
        align-items: center !important;
        overflow: hidden !important;
        border: 1px solid #1faf38 !important;
        border-radius: 14px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__stepper button,
    body.sf-mobile-product-page .sf-app-pdp__add-small button {
        min-width: 44px !important;
        width: 44px !important;
        height: 46px !important;
        border-radius: 0 !important;
        background: #fff !important;
        color: #1faf38 !important;
        font-size: 18px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__stepper strong {
        display: grid !important;
        height: 46px !important;
        place-items: center !important;
        background: #fff !important;
        color: #1faf38 !important;
        font-size: 14px !important;
        font-weight: 900 !important;
    }
}

@media (max-width: 767px) {
    body.storefront-shell--v2 .sf-mobile-delivery-card {
        grid-template-columns: 24px minmax(0, 1fr) !important;
        column-gap: 7px !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__pin {
        display: grid !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
        width: 24px !important;
        height: 46px !important;
        place-items: center !important;
        color: #1faf38 !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__pin svg {
        width: 20px !important;
        height: 20px !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy {
        grid-column: 2 !important;
        grid-row: 1 !important;
        grid-template-columns: minmax(0, 1fr) 18px !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy::before {
        content: none !important;
        display: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy > span {
        grid-column: 1 / 3 !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong {
        grid-column: 1 / 3 !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy span > svg {
        width: 13px !important;
        height: 13px !important;
        margin-right: 3px !important;
        color: #1faf38 !important;
        vertical-align: -2px !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong > svg {
        flex: 0 0 14px !important;
        width: 14px !important;
        height: 14px !important;
        margin-left: 4px !important;
        color: #202124 !important;
    }

    body.storefront-shell--v2 .sf-product-card__rating-badge {
        position: absolute !important;
        left: 7px !important;
        bottom: 7px !important;
        z-index: 4 !important;
        display: inline-flex !important;
        max-width: calc(100% - 14px) !important;
        height: 24px !important;
        align-items: center !important;
        gap: 3px !important;
        padding: 3px 7px !important;
        border: 1px solid rgba(19, 123, 46, .18) !important;
        border-radius: 999px !important;
        background: rgba(255, 255, 255, .96) !important;
        color: #137b2e !important;
        box-shadow: 0 4px 10px rgba(15, 23, 42, .08) !important;
        backdrop-filter: blur(8px) !important;
    }

    body.storefront-shell--v2 .sf-product-card__rating-badge svg {
        flex: 0 0 12px !important;
        width: 12px !important;
        height: 12px !important;
        color: #19a34a !important;
    }

    body.storefront-shell--v2 .sf-product-card__rating-badge strong {
        color: #111827 !important;
        font-size: 11px !important;
        line-height: 1 !important;
        font-weight: 900 !important;
    }

    body.storefront-shell--v2 .sf-product-card__rating-badge small {
        color: #64748b !important;
        font-size: 10px !important;
        line-height: 1 !important;
        font-weight: 800 !important;
    }

    body.sf-pdp-offers-open {
        overflow: hidden !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__offer {
        width: calc(100% - 28px) !important;
        box-sizing: border-box !important;
        border: 1px solid #edf0f4 !important;
        cursor: pointer !important;
        text-align: left !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal[hidden] {
        display: none !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal {
        position: fixed !important;
        inset: 0 !important;
        z-index: 120 !important;
        display: grid !important;
        align-items: end !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__backdrop {
        position: absolute !important;
        inset: 0 !important;
        border: 0 !important;
        background: rgba(15, 23, 42, .48) !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__sheet {
        position: relative !important;
        z-index: 1 !important;
        display: grid !important;
        max-height: min(78vh, 640px) !important;
        grid-template-rows: auto minmax(0, 1fr) auto !important;
        overflow: hidden !important;
        border-radius: 24px 24px 0 0 !important;
        background: #fff !important;
        box-shadow: 0 -18px 44px rgba(15, 23, 42, .22) !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__handle {
        width: 42px !important;
        height: 4px !important;
        margin: 10px auto 2px !important;
        border-radius: 999px !important;
        background: #d7dce3 !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__head {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
        padding: 10px 16px 12px !important;
        border-bottom: 1px solid #eef0f3 !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__head span {
        display: block !important;
        color: #1faf38 !important;
        font-size: 11px !important;
        font-weight: 900 !important;
        text-transform: uppercase !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__head h2 {
        margin: 2px 0 0 !important;
        color: #202124 !important;
        font-size: 18px !important;
        line-height: 1.12 !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__head button {
        display: grid !important;
        width: 38px !important;
        height: 38px !important;
        place-items: center !important;
        border: 1px solid #edf0f4 !important;
        border-radius: 14px !important;
        background: #fff !important;
        color: #202124 !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__head svg {
        width: 18px !important;
        height: 18px !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__body {
        display: grid !important;
        gap: 10px !important;
        min-height: 0 !important;
        padding: 12px 14px !important;
        overflow-y: auto !important;
        background: #f7f8fa !important;
    }

    body.sf-mobile-product-page .sf-pdp-offer-row {
        display: grid !important;
        grid-template-columns: 42px minmax(0, 1fr) auto !important;
        gap: 10px !important;
        align-items: center !important;
        padding: 12px !important;
        border: 1px solid #edf0f4 !important;
        border-radius: 17px !important;
        background: #fff !important;
        box-shadow: 0 8px 18px rgba(15, 23, 42, .04) !important;
    }

    body.sf-mobile-product-page .sf-pdp-offer-row > span {
        display: grid !important;
        width: 42px !important;
        height: 42px !important;
        place-items: center !important;
        border-radius: 15px !important;
        background: #e9f9e9 !important;
        color: #1faf38 !important;
    }

    body.sf-mobile-product-page .sf-pdp-offer-row.is-markdown > span {
        background: #eff6ff !important;
        color: #2563eb !important;
    }

    body.sf-mobile-product-page .sf-pdp-offer-row > span svg {
        width: 20px !important;
        height: 20px !important;
    }

    body.sf-mobile-product-page .sf-pdp-offer-row div {
        min-width: 0 !important;
    }

    body.sf-mobile-product-page .sf-pdp-offer-row strong,
    body.sf-mobile-product-page .sf-pdp-offer-row p,
    body.sf-mobile-product-page .sf-pdp-offer-row small {
        display: block !important;
        margin: 0 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    body.sf-mobile-product-page .sf-pdp-offer-row strong {
        color: #202124 !important;
        font-size: 13px !important;
        line-height: 1.2 !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-pdp-offer-row p {
        margin-top: 3px !important;
        color: #64748b !important;
        font-size: 12px !important;
        line-height: 1.25 !important;
        font-weight: 700 !important;
    }

    body.sf-mobile-product-page .sf-pdp-offer-row small {
        margin-top: 5px !important;
        color: #8a8f98 !important;
        font-size: 10px !important;
        font-weight: 800 !important;
    }

    body.sf-mobile-product-page .sf-pdp-offer-row > button {
        min-width: 74px !important;
        height: 36px !important;
        padding: 0 10px !important;
        border: 1px dashed #1faf38 !important;
        border-radius: 12px !important;
        background: #f0fbf2 !important;
        color: #137b2e !important;
        font-size: 11px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__empty {
        padding: 24px 16px !important;
        border: 1px dashed #d8dde6 !important;
        border-radius: 18px !important;
        background: #fff !important;
        text-align: center !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__empty strong {
        display: block !important;
        color: #202124 !important;
        font-size: 14px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__empty p {
        margin: 6px 0 0 !important;
        color: #64748b !important;
        font-size: 12px !important;
        line-height: 1.35 !important;
        font-weight: 700 !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__footer {
        padding: 12px 14px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
        border-top: 1px solid #eef0f3 !important;
        background: #fff !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__footer a {
        display: grid !important;
        height: 46px !important;
        place-items: center !important;
        border-radius: 14px !important;
        background: #1faf38 !important;
        color: #fff !important;
        font-size: 14px !important;
        font-weight: 900 !important;
        text-decoration: none !important;
    }
}

@media (min-width: 901px) {
    body.sf-mobile-product-page {
        background: #f6f7fb !important;
    }

    body.sf-mobile-product-page .sf-app-pdp {
        display: grid !important;
        grid-template-columns: minmax(420px, 560px) minmax(360px, 1fr) !important;
        gap: 18px !important;
        width: min(1180px, calc(100% - 48px)) !important;
        margin: 28px auto 120px !important;
        color: #202124 !important;
        font-family: "Nunito Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__topbar {
        grid-column: 1 / -1 !important;
        display: grid !important;
        grid-template-columns: 44px minmax(0, 1fr) 44px 44px !important;
        gap: 10px !important;
        align-items: center !important;
        min-height: 56px !important;
        padding: 8px 0 !important;
    }

    body.sf-mobile-product-page .sf-app-icon-btn {
        display: grid !important;
        width: 44px !important;
        height: 44px !important;
        place-items: center !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 14px !important;
        background: #fff !important;
        color: #202124 !important;
        box-shadow: 0 8px 22px rgba(15, 23, 42, .06) !important;
        text-decoration: none !important;
    }

    body.sf-mobile-product-page .sf-app-icon-btn svg {
        width: 22px !important;
        height: 22px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__top-title {
        min-width: 0 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__top-title strong {
        display: block !important;
        overflow: hidden !important;
        color: #202124 !important;
        font-size: 15px !important;
        font-weight: 900 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__top-title span {
        display: none !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__hero {
        grid-column: 1 !important;
        grid-row: 2 / span 2 !important;
        position: sticky !important;
        top: 18px !important;
        align-self: start !important;
        overflow: hidden !important;
        border: 1px solid #edf0f4 !important;
        border-radius: 22px !important;
        background: #fff !important;
        box-shadow: 0 14px 34px rgba(15, 23, 42, .06) !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__single-image,
    body.sf-mobile-product-page .sf-app-pdp__image-slide {
        display: grid !important;
        min-height: 520px !important;
        place-items: center !important;
        padding: 34px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__single-image img,
    body.sf-mobile-product-page .sf-app-pdp__image-slide img {
        display: block !important;
        width: 100% !important;
        max-width: 470px !important;
        max-height: 470px !important;
        object-fit: contain !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__single-image > span {
        display: grid !important;
        width: 168px !important;
        height: 168px !important;
        place-items: center !important;
        border-radius: 34px !important;
        background: #f0fdf4 !important;
        color: #1faf38 !important;
        font-size: 68px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__image-rail {
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: 100% !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        scrollbar-width: thin !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__image-slide {
        scroll-snap-align: center !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__dots {
        display: flex !important;
        justify-content: center !important;
        gap: 8px !important;
        padding: 0 0 18px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__dots span {
        width: 8px !important;
        height: 8px !important;
        border-radius: 999px !important;
        background: #d5dae2 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__dots span.is-active {
        background: #1f2937 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__highlight-rail {
        grid-column: 1 !important;
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__highlight-rail > div,
    body.sf-mobile-product-page .sf-app-pdp__highlight-rail > a {
        display: grid !important;
        min-height: 66px !important;
        align-content: center !important;
        padding: 10px 12px !important;
        border: 1px solid #edf0f4 !important;
        border-radius: 16px !important;
        background: #fff !important;
        color: #202124 !important;
        text-decoration: none !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__highlight-rail span,
    body.sf-mobile-product-page .sf-app-pdp__highlight-rail a {
        color: #64748b !important;
        font-size: 12px !important;
        font-weight: 800 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__highlight-rail strong {
        display: block !important;
        margin-top: 4px !important;
        overflow: hidden !important;
        color: #202124 !important;
        font-size: 13px !important;
        font-weight: 900 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__info {
        grid-column: 2 !important;
        grid-row: 2 !important;
    }

    body.sf-mobile-product-page .sf-app-panel {
        padding: 18px !important;
        border: 1px solid #edf0f4 !important;
        border-radius: 20px !important;
        background: #fff !important;
        box-shadow: 0 12px 30px rgba(15, 23, 42, .05) !important;
        color: #202124 !important;
        text-decoration: none !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__meta,
    body.sf-mobile-product-page .sf-app-pdp__chips {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        align-items: center !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__meta span,
    body.sf-mobile-product-page .sf-app-pdp__chips span {
        display: inline-flex !important;
        align-items: center !important;
        gap: 5px !important;
        min-height: 30px !important;
        padding: 6px 10px !important;
        border-radius: 999px !important;
        background: #f4f6f8 !important;
        color: #64748b !important;
        font-size: 12px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__meta svg {
        width: 15px !important;
        height: 15px !important;
        color: #1faf38 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__info h1 {
        margin: 12px 0 0 !important;
        color: #202124 !important;
        font-size: 28px !important;
        line-height: 1.12 !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__info p {
        margin: 10px 0 0 !important;
        color: #64748b !important;
        font-size: 15px !important;
        font-weight: 800 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__price {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        align-items: end !important;
        margin-top: 16px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__price strong {
        color: #202124 !important;
        font-size: 30px !important;
        line-height: 1 !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__price span {
        color: #8a8f98 !important;
        font-size: 14px !important;
        font-weight: 800 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__price em {
        color: #2563eb !important;
        font-size: 13px !important;
        font-style: normal !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__chips {
        margin-top: 16px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__chips .is-success {
        background: #e9f9e9 !important;
        color: #137b2e !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__chips .is-danger {
        background: #fee2e2 !important;
        color: #b91c1c !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__variants,
    body.sf-mobile-product-page .sf-app-pdp__offer,
    body.sf-mobile-product-page .sf-app-pdp__store {
        grid-column: 2 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__variants h2,
    body.sf-mobile-product-page .sf-app-pdp__description h2,
    body.sf-mobile-product-page .sf-app-pdp__reviews h2,
    body.sf-mobile-product-page .sf-app-pdp__related h2 {
        margin: 0 0 12px !important;
        color: #202124 !important;
        font-size: 17px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__variants > div {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 10px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__variants label {
        display: grid !important;
        min-width: 136px !important;
        gap: 4px !important;
        padding: 12px !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 15px !important;
        background: #fff !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__variants label.is-selected {
        border-color: #1faf38 !important;
        background: #f0fdf4 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__variants input {
        display: none !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__offer,
    body.sf-mobile-product-page .sf-app-pdp__store {
        display: grid !important;
        width: 100% !important;
        grid-template-columns: 48px minmax(0, 1fr) 24px !important;
        gap: 13px !important;
        align-items: center !important;
        cursor: pointer !important;
        text-align: left !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__offer > span,
    body.sf-mobile-product-page .sf-app-pdp__store-logo {
        display: grid !important;
        width: 48px !important;
        height: 48px !important;
        place-items: center !important;
        overflow: hidden !important;
        border-radius: 15px !important;
        background: #fce7f3 !important;
        color: #be185d !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__store-logo {
        background: #f0fdf4 !important;
        color: #137b2e !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__store-logo img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__offer svg,
    body.sf-mobile-product-page .sf-app-pdp__store > svg {
        width: 22px !important;
        height: 22px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__offer strong,
    body.sf-mobile-product-page .sf-app-pdp__store strong {
        display: block !important;
        color: #202124 !important;
        font-size: 14px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__offer small,
    body.sf-mobile-product-page .sf-app-pdp__store span,
    body.sf-mobile-product-page .sf-app-pdp__store small {
        display: block !important;
        margin-top: 3px !important;
        color: #64748b !important;
        font-size: 12px !important;
        font-weight: 800 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__description,
    body.sf-mobile-product-page .sf-app-pdp__reviews {
        grid-column: 1 / -1 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__description p,
    body.sf-mobile-product-page .sf-app-pdp__reviews p {
        margin: 0 !important;
        color: #475569 !important;
        font-size: 14px !important;
        line-height: 1.55 !important;
        font-weight: 700 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__description dl {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 10px !important;
        margin: 16px 0 0 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__description dl > div {
        min-width: 0 !important;
        padding: 12px !important;
        border-radius: 14px !important;
        background: #f8fafc !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__description dt {
        color: #64748b !important;
        font-size: 11px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__description dd {
        margin: 5px 0 0 !important;
        color: #202124 !important;
        font-size: 13px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__reviews article {
        padding: 12px 0 !important;
        border-top: 1px solid #edf0f4 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__reviews article strong,
    body.sf-mobile-product-page .sf-app-pdp__reviews article span {
        display: inline-block !important;
        margin-right: 8px !important;
        color: #202124 !important;
        font-size: 13px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__related {
        grid-column: 1 / -1 !important;
        overflow: hidden !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__related .sf-home-product-grid {
        display: grid !important;
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
        gap: 14px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar {
        position: sticky !important;
        bottom: 18px !important;
        z-index: 40 !important;
        grid-column: 2 !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto auto !important;
        gap: 12px !important;
        align-items: center !important;
        width: min(1180px, calc(100% - 48px)) !important;
        max-width: 560px !important;
        margin: -100px auto 28px !important;
        padding: 14px !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 20px !important;
        background: rgba(255, 255, 255, .98) !important;
        box-shadow: 0 18px 42px rgba(15, 23, 42, .14) !important;
        backdrop-filter: blur(12px) !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar > div {
        min-width: 0 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar > div strong,
    body.sf-mobile-product-page .sf-app-pdp__bottom-bar > div span {
        display: block !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar > div strong {
        color: #202124 !important;
        font-size: 19px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar > div span {
        color: #64748b !important;
        font-size: 12px !important;
        font-weight: 800 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar form {
        margin: 0 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar button {
        display: grid !important;
        min-width: 146px !important;
        height: 50px !important;
        place-items: center !important;
        border: 0 !important;
        border-radius: 15px !important;
        background: #1faf38 !important;
        color: #fff !important;
        font-size: 15px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__bottom-bar button:disabled {
        background: #cbd5e1 !important;
        color: #64748b !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__stepper {
        display: grid !important;
        grid-template-columns: 48px 38px !important;
        align-items: center !important;
        overflow: hidden !important;
        border: 1px solid #1faf38 !important;
        border-radius: 15px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__stepper button,
    body.sf-mobile-product-page .sf-app-pdp__add-small button {
        min-width: 48px !important;
        width: 48px !important;
        height: 48px !important;
        border-radius: 0 !important;
        background: #fff !important;
        color: #1faf38 !important;
        font-size: 18px !important;
    }

    body.sf-mobile-product-page .sf-app-pdp__stepper strong {
        display: grid !important;
        height: 48px !important;
        place-items: center !important;
        background: #fff !important;
        color: #1faf38 !important;
        font-size: 14px !important;
        font-weight: 900 !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal[hidden] {
        display: none !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal {
        position: fixed !important;
        inset: 0 !important;
        z-index: 120 !important;
        display: grid !important;
        place-items: center !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__backdrop {
        position: absolute !important;
        inset: 0 !important;
        border: 0 !important;
        background: rgba(15, 23, 42, .48) !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__sheet {
        position: relative !important;
        z-index: 1 !important;
        display: grid !important;
        width: min(560px, calc(100% - 36px)) !important;
        max-height: min(78vh, 640px) !important;
        grid-template-rows: auto minmax(0, 1fr) auto !important;
        overflow: hidden !important;
        border-radius: 24px !important;
        background: #fff !important;
        box-shadow: 0 24px 60px rgba(15, 23, 42, .28) !important;
    }

    body.sf-mobile-product-page .sf-pdp-offers-modal__handle {
        display: none !important;
    }
}

@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-wordmark--mobile,
    body.storefront-shell--v2 .sf-mobile-menu {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-header {
        height: calc(214px + env(safe-area-inset-top, 0px)) !important;
        min-height: calc(214px + env(safe-area-inset-top, 0px)) !important;
        background: #fff !important;
    }

    body.storefront-shell--v2 .sf-mobile-brand-lockup {
        position: absolute !important;
        top: calc(10px + env(safe-area-inset-top, 0px)) !important;
        left: 14px !important;
        z-index: 25 !important;
        display: flex !important;
        width: calc(100% - 124px) !important;
        height: 32px !important;
        align-items: center !important;
        color: #111827 !important;
        text-decoration: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-brand-lockup img {
        width: auto !important;
        max-width: 132px !important;
        height: 30px !important;
        object-fit: contain !important;
    }

    body.storefront-shell--v2 .sf-mobile-brand-lockup strong {
        overflow: hidden !important;
        color: #111827 !important;
        font-size: 19px !important;
        line-height: 1 !important;
        font-weight: 900 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.storefront-shell--v2 .sf-mobile-header__actions {
        top: calc(7px + env(safe-area-inset-top, 0px)) !important;
        right: 14px !important;
        z-index: 26 !important;
    }

    body.storefront-shell--v2 .sf-mobile-action-btn {
        width: 38px !important;
        height: 38px !important;
        border-radius: 14px !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card {
        top: calc(45px + env(safe-area-inset-top, 0px)) !important;
        left: 14px !important;
        right: 14px !important;
        z-index: 24 !important;
        display: grid !important;
        width: auto !important;
        height: 42px !important;
        min-height: 42px !important;
        grid-template-columns: 22px minmax(0, 1fr) !important;
        column-gap: 8px !important;
        align-items: center !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        text-align: left !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__pin {
        display: grid !important;
        width: 22px !important;
        height: 34px !important;
        place-items: center !important;
        color: #2563eb !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__pin svg {
        width: 20px !important;
        height: 20px !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy {
        display: grid !important;
        min-width: 0 !important;
        grid-template-columns: minmax(0, 1fr) 18px !important;
        grid-template-rows: 16px 20px !important;
        align-items: center !important;
        gap: 0 !important;
        padding: 0 !important;
        background: transparent !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy::before,
    body.storefront-shell--v2 .sf-mobile-delivery-card__eta,
    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong em {
        content: none !important;
        display: none !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy > span {
        display: block !important;
        grid-column: 1 / 3 !important;
        color: #64748b !important;
        font-size: 10px !important;
        line-height: 1 !important;
        font-weight: 900 !important;
        text-transform: uppercase !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong {
        display: flex !important;
        grid-column: 1 / 3 !important;
        align-items: center !important;
        min-width: 0 !important;
        gap: 4px !important;
        color: #111827 !important;
        font-size: 14px !important;
        line-height: 1.15 !important;
        font-weight: 900 !important;
    }

    body.storefront-shell--v2 .sf-mobile-delivery-card__copy strong b {
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.storefront-shell--v2 .sf-searchbar--mobile,
    body.storefront-shell--v2 .sf-searchbar--mobile:not(.has-mobile-promo),
    body.storefront-shell--v2 .sf-searchbar--mobile.has-mobile-promo {
        top: calc(92px + env(safe-area-inset-top, 0px)) !important;
        left: 14px !important;
        right: 14px !important;
        width: auto !important;
        height: 48px !important;
        min-height: 48px !important;
        grid-template-columns: 22px minmax(0, 1fr) 34px !important;
        padding: 0 10px 0 13px !important;
        border: 1px solid #eef0f4 !important;
        border-radius: 13px !important;
        background: #f6f7f9 !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-searchbar input::placeholder {
        color: #8b95a5 !important;
    }

    body.storefront-shell--v2 .sf-searchbar__submit::before {
        content: none !important;
        display: none !important;
    }

    body.storefront-shell--v2 .sf-searchbar__submit svg {
        display: block !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector {
        top: calc(151px + env(safe-area-inset-top, 0px)) !important;
        min-height: 62px !important;
        grid-auto-columns: minmax(82px, auto) !important;
        gap: 8px !important;
        padding: 0 14px 8px !important;
        border-bottom: 1px solid #eef0f4 !important;
        background: #fff !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a {
        display: inline-grid !important;
        width: auto !important;
        min-width: 82px !important;
        height: 44px !important;
        grid-template-columns: 20px minmax(0, auto) !important;
        gap: 6px !important;
        align-content: center !important;
        align-items: center !important;
        justify-items: center !important;
        padding: 0 10px !important;
        border: 1px solid #eef0f4 !important;
        border-radius: 999px !important;
        background: #fff !important;
        color: #475569 !important;
        font-size: 12px !important;
        font-weight: 900 !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a::before {
        content: none !important;
        display: none !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a.is-active {
        border-color: #1faf38 !important;
        background: #eefbf1 !important;
        color: #137b2e !important;
    }

    body.storefront-shell--v2 .sf-bottom-nav {
        left: 10px !important;
        right: 10px !important;
        bottom: calc(8px + env(safe-area-inset-bottom, 0px)) !important;
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        gap: 2px !important;
        min-height: 64px !important;
        padding: 6px !important;
        border: 1px solid rgba(226, 232, 240, .9) !important;
        border-radius: 22px !important;
        background: rgba(255, 255, 255, .96) !important;
        box-shadow: 0 14px 36px rgba(15, 23, 42, .16) !important;
        transform: translateY(0) !important;
        transition: transform .24s ease, opacity .24s ease !important;
        backdrop-filter: blur(14px) !important;
    }

    body.storefront-shell--v2 .sf-bottom-nav.is-hidden {
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translateY(calc(100% + 18px)) !important;
    }

    body.storefront-shell--v2 .sf-bottom-nav a,
    body.storefront-shell--v2 .sf-bottom-nav button {
        display: grid !important;
        min-width: 0 !important;
        height: 52px !important;
        align-content: center !important;
        justify-items: center !important;
        gap: 3px !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 16px !important;
        background: transparent !important;
        color: #64748b !important;
        font-size: 10px !important;
        line-height: 1 !important;
        font-weight: 900 !important;
        text-decoration: none !important;
    }

    body.storefront-shell--v2 .sf-bottom-nav svg {
        width: 21px !important;
        height: 21px !important;
    }

    body.storefront-shell--v2 .sf-bottom-nav .is-active {
        background: #eefbf1 !important;
        color: #137b2e !important;
    }
}

/* Final mobile location picker override. Kept last because this file has repeated mobile header rules. */
body.storefront-shell--v2 .sf-mobile-delivery-card {
    pointer-events: auto !important;
}

body.storefront-shell--v2.sf-modal-open .sf-bottom-nav,
body.storefront-shell--v2.sf-location-modal-open .sf-bottom-nav,
body.storefront-shell--v2.sf-category-modal-open .sf-bottom-nav,
body.storefront-shell--v2.sf-brand-modal-open .sf-bottom-nav,
body.storefront-shell--v2.sf-service-popup-open .sf-bottom-nav,
body.storefront-shell--v2.fm-sheet-open .sf-bottom-nav,
body.storefront-shell--v2.sf-parcel-picker-open .sf-bottom-nav,
body.sf-modal-open .sf-bottom-nav,
body.sf-location-modal-open .sf-bottom-nav,
body.sf-category-modal-open .sf-bottom-nav,
body.sf-brand-modal-open .sf-bottom-nav,
body.sf-service-popup-open .sf-bottom-nav,
body.fm-sheet-open .sf-bottom-nav,
body.sf-parcel-picker-open .sf-bottom-nav {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(calc(100% + 24px)) !important;
}

body.storefront-shell--v2 .sf-location-modal {
    z-index: 10000 !important;
}

body.storefront-shell--v2 .sf-category-modal,
body.storefront-shell--v2 .fm-home-modal,
body.storefront-shell--v2 .fm-service-popup,
body.storefront-shell--v2 .fm-product-popup.fm-sheet-visible {
    z-index: 10000 !important;
}

body.storefront-shell--v2 .sf-location-modal[hidden] {
    display: none !important;
}

body.storefront-shell--v2 .sf-location-modal__backdrop {
    z-index: 1 !important;
}

body.storefront-shell--v2 .sf-location-modal__panel {
    z-index: 2 !important;
}

@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-location-modal {
        display: grid !important;
        align-items: end !important;
        padding: 0 !important;
    }

    body.storefront-shell--v2 .sf-location-modal__panel {
        width: 100% !important;
        max-width: none !important;
        max-height: min(88vh, 720px) !important;
        overflow-y: auto !important;
        border-radius: 24px 24px 0 0 !important;
        padding: 18px 16px calc(18px + env(safe-area-inset-bottom, 0px)) !important;
        box-shadow: 0 -18px 48px rgba(15, 23, 42, .24) !important;
    }

    body.storefront-shell--v2 .sf-location-modal__head {
        padding-right: 46px !important;
    }

    body.storefront-shell--v2 .sf-location-modal__actions {
        gap: 12px !important;
    }

    body.storefront-shell--v2 .sf-location-modal__manual-row {
        grid-template-columns: 1fr !important;
    }

    body.storefront-shell--v2 .sf-location-modal__manual-row input,
    body.storefront-shell--v2 .sf-location-modal__manual-row button,
    body.storefront-shell--v2 .sf-location-modal__footer button {
        width: 100% !important;
        min-height: 48px !important;
    }

    body.storefront-shell--v2 .sf-location-modal__map,
    body.storefront-shell--v2 .sf-location-modal__map-canvas {
        min-height: 190px !important;
    }

    body.storefront-shell--v2 .sf-location-modal__close {
        position: absolute !important;
        top: 14px !important;
        right: 14px !important;
        z-index: 3 !important;
    }
}

/* Stable product cards and customer-app order widgets. */
.storefront-shell--v2 .sf-product-card {
    position: relative !important;
    display: grid !important;
    grid-template-rows: auto !important;
    align-content: start !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    overflow: hidden !important;
}

.storefront-shell--v2 .sf-product-card__thumb {
    position: relative !important;
    display: grid !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    place-items: center !important;
    overflow: hidden !important;
}

.storefront-shell--v2 .sf-product-card__thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}

.storefront-shell--v2 .sf-product-card > a:not(.sf-product-card__thumb) {
    min-width: 0;
}

.storefront-shell--v2 .sf-product-card h3 {
    display: -webkit-box !important;
    min-height: 2.5em !important;
    max-height: 2.5em !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow-wrap: anywhere;
}

.storefront-shell--v2 .sf-product-card__subtitle {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.storefront-shell--v2 .sf-product-card__footer {
    position: static !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 78px !important;
    align-items: end !important;
    gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin-top: auto !important;
}

.storefront-shell--v2 .sf-product-card__footer form {
    position: static !important;
    width: 78px !important;
    min-width: 0 !important;
    margin: 0 !important;
}

.storefront-shell--v2 .sf-product-card__action,
.storefront-shell--v2 .sf-product-card__stepper {
    position: static !important;
    inset: auto !important;
    display: grid !important;
    width: 78px !important;
    min-width: 78px !important;
    height: 40px !important;
    min-height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1.5px solid #1db954 !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #168a3a !important;
    box-shadow: none !important;
}

.storefront-shell--v2 .sf-product-card__action {
    grid-template-columns: auto auto !important;
    place-content: center !important;
    gap: 6px !important;
    font-size: .78rem !important;
}

.storefront-shell--v2 .sf-product-card__action.is-unavailable {
    grid-template-columns: 1fr !important;
    border-color: #d1d5db !important;
    background: #f3f4f6 !important;
    color: #6b7280 !important;
    font-size: .62rem !important;
}

.storefront-shell--v2 .sf-product-card__stepper {
    grid-template-columns: 26px 24px 26px !important;
    align-items: center !important;
}

.storefront-shell--v2 .sf-product-card__stepper-btn {
    display: grid !important;
    width: 26px !important;
    height: 38px !important;
    place-items: center !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #168a3a !important;
    font-size: .7rem !important;
}

.storefront-shell--v2 .sf-product-card__stepper strong {
    text-align: center !important;
    font-size: .82rem !important;
}

.storefront-shell--v2 .sf-product-card__price {
    min-width: 0 !important;
}

.storefront-shell--v2 .sf-product-card__price strong {
    padding: 0 !important;
    background: transparent !important;
    color: #171717 !important;
    white-space: nowrap !important;
}

.storefront-shell--v2 .sf-product-card__rating-badge i {
    font-size: .65rem;
}

.sf-app-tracking-summary,
.sf-app-driver-card,
.sf-app-otp-card {
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    background: #fff;
}

.sf-app-tracking-summary {
    padding: 20px;
}

.sf-app-tracking-summary__top {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 14px;
}

.sf-app-tracking-summary__top > div {
    display: grid;
    gap: 4px;
}

.sf-app-tracking-summary__top > div > span,
.sf-app-tracking-summary__top small,
.sf-app-tracking-summary p,
.sf-app-driver-card small,
.sf-app-otp-card small,
.sf-app-order-summary small {
    color: #6f6f6f;
}

.sf-app-tracking-summary__top strong {
    color: #1b9b49;
    font-size: 1.5rem;
}

.sf-app-tracking-progress {
    height: 10px;
    margin: 16px 0 8px;
    overflow: hidden;
    border-radius: 8px;
    background: #e9eef5;
}

.sf-app-tracking-progress span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #1db954;
    transition: width .7s ease;
}

.sf-app-tracking-summary p {
    margin: 0;
    font-size: .82rem;
}

.sf-route-preview {
    position: relative;
}

.sf-live-map {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: none;
}

.sf-route-preview.is-map-ready .sf-live-map {
    display: block;
}

.sf-route-preview.is-map-ready .sf-route-preview__fallback,
.sf-route-preview.is-map-ready .sf-route-preview__empty {
    display: none !important;
}

.sf-app-driver-card,
.sf-app-otp-card {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    padding: 16px;
}

.sf-app-driver-card > span,
.sf-app-otp-card > span {
    display: grid;
    width: 56px;
    height: 56px;
    place-items: center;
    border-radius: 8px;
    background: #effbed;
    color: #168a3a;
    font-size: 1.4rem;
}

.sf-app-driver-card > div,
.sf-app-otp-card > div {
    display: grid;
    gap: 3px;
}

.sf-app-driver-card > a {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border: 1px solid #d7eadb;
    border-radius: 50%;
    color: #168a3a;
}

.sf-app-otp-card > span {
    background: #fff7d6;
    color: #9a6700;
}

.sf-app-otp-card code {
    color: #171717;
    font-family: inherit;
    font-size: 1.35rem;
    font-weight: 900;
    letter-spacing: 2px;
}

.sf-app-otp-card--order {
    margin: 0 0 18px;
}

.sf-app-order-summary .sf-app-tracking-progress {
    max-width: 520px;
    margin-bottom: 8px;
}

.sf-order-app-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 18px;
}

.sf-order-app-actions a {
    display: inline-flex;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 16px;
    border: 1px solid #dfe4e1;
    border-radius: 8px;
    background: #fff;
    color: #171717;
    font-weight: 800;
}

.sf-order-app-actions a.is-primary {
    border-color: #1db954;
    background: #1db954;
    color: #fff;
}

@media (max-width: 900px) {
    .storefront-shell--v2 .sf-home-product-grid,
    .storefront-shell--v2 .sf-home-product-grid.is-scroller,
    .storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid {
        grid-auto-columns: 164px !important;
        gap: 12px !important;
    }

    .storefront-shell--v2 .sf-dynamic-section[data-section-type="product_grid"] .sf-home-product-grid,
    .storefront-shell--v2 .sf-home-product-grid.sf-catalog-grid,
    .storefront-shell--v2 .sf-catalog-grid,
    .storefront-shell--v2 .sf-product-grid {
        grid-auto-flow: row !important;
        grid-auto-columns: auto !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        align-items: stretch !important;
        gap: 14px 12px !important;
        overflow: visible !important;
    }

    .storefront-shell--v2 .sf-product-card {
        min-height: 286px !important;
        padding: 8px !important;
        border: 1px solid #ececec !important;
        border-radius: 8px !important;
        background: #fff !important;
        box-shadow: 0 6px 18px rgba(17, 24, 39, .06) !important;
        gap: 7px !important;
    }

    .storefront-shell--v2 .sf-product-card__thumb {
        border: 0 !important;
        border-radius: 7px !important;
        background: #f7f8f7 !important;
    }

    .storefront-shell--v2 .sf-product-card__thumb img {
        padding: 10px !important;
    }

    .storefront-shell--v2 .sf-product-card h3 {
        margin: 0 !important;
        font-size: .82rem !important;
        line-height: 1.25 !important;
    }

    .storefront-shell--v2 .sf-product-card__subtitle {
        font-size: .69rem !important;
    }

    .storefront-shell--v2 .sf-product-card__tags,
    .storefront-shell--v2 .sf-product-card__topline,
    .storefront-shell--v2 .sf-product-card__brand {
        display: none !important;
    }

    .storefront-shell--v2 .sf-product-card__saving {
        margin-top: 0 !important;
        font-size: .64rem !important;
    }

    .storefront-shell--v2 .sf-product-card__footer,
    .storefront-shell--v2 .sf-product-card__footer form {
        position: static !important;
        inset: auto !important;
    }

    .storefront-shell--v2 .sf-product-card__price {
        display: grid !important;
        gap: 2px !important;
    }

    .storefront-shell--v2 .sf-product-card__price strong {
        font-size: .83rem !important;
    }

    .storefront-shell--v2 .sf-product-card__price small {
        font-size: .66rem !important;
    }

    .sf-app-tracking-summary,
    .sf-app-driver-card,
    .sf-app-otp-card {
        border-radius: 8px !important;
        box-shadow: none !important;
    }

    .sf-app-tracking-summary {
        padding: 16px;
    }

    .sf-app-tracking-summary__top {
        grid-template-columns: minmax(0, 1fr);
    }

    .sf-app-tracking-summary__top > .sf-status-pill {
        justify-self: start;
    }

    .sf-app-tracking-summary__top strong {
        font-size: 1.35rem;
    }

    .sf-app-driver-card,
    .sf-app-otp-card {
        grid-template-columns: 48px minmax(0, 1fr) auto;
        gap: 10px;
        padding: 14px;
    }

    .sf-app-driver-card > span,
    .sf-app-otp-card > span {
        width: 48px;
        height: 48px;
    }

    .sf-app-otp-card code {
        font-size: 1.1rem;
    }

    body.sf-mobile-order-page .sf-order-app-actions,
    body.sf-mobile-order-page .sf-app-otp-card--order {
        margin-right: 16px;
        margin-left: 16px;
    }

    body.sf-mobile-order-page .sf-order-app-actions {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    }

    body.sf-mobile-order-page .sf-order-app-actions a {
        padding: 0 10px;
        font-size: .82rem;
    }
}

@media (max-width: 370px) {
    .storefront-shell--v2 .sf-home-product-grid,
    .storefront-shell--v2 .sf-home-product-grid.is-scroller {
        grid-auto-columns: 154px !important;
    }

    .storefront-shell--v2 .sf-product-card__footer {
        grid-template-columns: minmax(0, 1fr) 70px !important;
        gap: 5px !important;
    }

    .storefront-shell--v2 .sf-product-card__footer form,
    .storefront-shell--v2 .sf-product-card__action,
    .storefront-shell--v2 .sf-product-card__stepper {
        width: 70px !important;
        min-width: 70px !important;
    }

    .storefront-shell--v2 .sf-product-card__stepper {
        grid-template-columns: 23px 22px 23px !important;
    }
}

@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-product-card,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
    }

    body.storefront-shell--v2 .sf-product-card__thumb,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__thumb {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
    }

    body.storefront-shell--v2 .sf-product-card__footer form,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__footer form {
        position: static !important;
        inset: auto !important;
        z-index: auto !important;
        display: block !important;
        width: 78px !important;
        margin: 0 !important;
    }

    body.storefront-shell--v2 .sf-product-card__footer > .sf-product-card__action,
    body.storefront-shell--v2 .sf-product-card > .sf-product-card__action,
    body.storefront-shell--v2 .sf-product-card__action,
    body.storefront-shell--v2 .sf-product-card__stepper {
        position: static !important;
        inset: auto !important;
        z-index: auto !important;
        width: 78px !important;
        min-width: 78px !important;
        height: 40px !important;
        min-height: 40px !important;
        margin: 0 !important;
    }

    body.storefront-shell--v2 .sf-product-card__action {
        display: grid !important;
    }

    body.storefront-shell--v2 .sf-product-card__stepper {
        display: grid !important;
    }
}

/* Screenshot fixes: app service tiles, compact sections, and fully in-flow cards. */
@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-header,
    body.storefront-shell--v2 .sf-header__inner,
    body.storefront-shell--v2 .sf-app-chrome,
    body.storefront-shell--v2 .sf-mobile-header {
        width: 100% !important;
        max-width: 100vw !important;
        height: calc(258px + env(safe-area-inset-top, 0px)) !important;
        min-height: calc(258px + env(safe-area-inset-top, 0px)) !important;
        max-height: calc(258px + env(safe-area-inset-top, 0px)) !important;
        background: #fff !important;
        overflow: hidden !important;
    }

    body.storefront-shell--v2 .sf-mobile-header__actions {
        position: absolute !important;
        top: calc(7px + env(safe-area-inset-top, 0px)) !important;
        right: 14px !important;
        left: auto !important;
        z-index: 40 !important;
        display: flex !important;
        gap: 8px !important;
    }

    body.storefront-shell--v2 .sf-mobile-action-btn {
        display: grid !important;
    }

    body.storefront-shell--v2 .sf-mobile-action-btn svg {
        display: block !important;
        width: 20px !important;
        height: 20px !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector {
        top: calc(151px + env(safe-area-inset-top, 0px)) !important;
        right: 0 !important;
        left: 0 !important;
        width: 100% !important;
        max-width: 100vw !important;
        box-sizing: border-box !important;
        display: grid !important;
        height: 100px !important;
        min-height: 100px !important;
        grid-auto-flow: column !important;
        grid-auto-columns: minmax(92px, 110px) !important;
        grid-template-columns: none !important;
        gap: 12px !important;
        align-items: center !important;
        padding: 7px 14px !important;
        border: 0 !important;
        background: #fff !important;
        overflow-x: auto !important;
        scroll-snap-type: x proximity !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a {
        display: grid !important;
        width: 100% !important;
        min-width: 0 !important;
        height: 86px !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: 32px auto !important;
        place-items: center !important;
        align-content: center !important;
        gap: 7px !important;
        padding: 0 5px !important;
        border: 1px solid #e8e4ef !important;
        border-radius: 22px !important;
        background: #fff !important;
        color: #171717 !important;
        box-shadow: 0 5px 14px rgba(0, 0, 0, .04) !important;
        font-size: 12px !important;
        font-weight: 800 !important;
        scroll-snap-align: start !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a.is-active {
        border-color: transparent !important;
        background: linear-gradient(135deg, #7c3aed, #4f46e5) !important;
        color: #fff !important;
        box-shadow: 0 5px 14px rgba(109, 74, 255, .24) !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector img,
    body.storefront-shell--v2 .sf-header-service-selector .sf-service-tab-icon {
        display: grid !important;
        width: 30px !important;
        height: 30px !important;
        place-items: center !important;
        padding: 0 !important;
        background: transparent !important;
        color: #6d4aff !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector .sf-service-tab-icon svg {
        display: block !important;
        width: 30px !important;
        height: 30px !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a.is-active img,
    body.storefront-shell--v2 .sf-header-service-selector a.is-active .sf-service-tab-icon {
        color: #fff !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector a span:last-child {
        display: block !important;
        max-width: 100% !important;
        overflow: hidden !important;
        color: inherit !important;
        font-size: 12px !important;
        line-height: 1.1 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.storefront-shell--v2 .sf-page-shell--home,
    body.storefront-shell--v2 .sf-page-shell--home > .sf-container,
    body.storefront-shell--v2 .sf-v3-home-feed {
        min-height: 0 !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
        row-gap: 8px !important;
    }

    body.storefront-shell--v2 .sf-front-section,
    body.storefront-shell--v2 .sf-dynamic-section,
    body.storefront-shell--v2 .sf-v3-section {
        min-height: 0 !important;
        margin: 0 !important;
        padding: 18px 14px !important;
    }

    body.storefront-shell--v2 .sf-v3-section--category_grid,
    body.storefront-shell--v2 .sf-v3-section--subcategory_chips {
        min-height: 0 !important;
        padding-top: 16px !important;
        padding-bottom: 16px !important;
    }

    body.storefront-shell--v2 .sf-v3-section--category_grid .sf-home-category-grid,
    body.storefront-shell--v2 .sf-v3-section--subcategory_chips .sf-home-category-grid,
    body.storefront-shell--v2 .sf-home-category-grid {
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile {
        min-height: 92px !important;
        max-height: 104px !important;
    }

    body.storefront-shell--v2 .sf-product-card,
    body.storefront-shell--v2 .sf-v3-section .sf-product-card,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card {
        position: relative !important;
        display: grid !important;
        height: auto !important;
        min-height: 0 !important;
        align-self: start !important;
        align-content: start !important;
        overflow: hidden !important;
    }

    body.storefront-shell--v2 .sf-home-product-grid.is-scroller .sf-product-card,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-product-card {
        min-height: 276px !important;
    }

    body.storefront-shell--v2 .sf-product-card__thumb {
        order: 1 !important;
    }

    body.storefront-shell--v2 .sf-product-card__topline {
        order: 2 !important;
    }

    body.storefront-shell--v2 .sf-product-card__brand {
        order: 3 !important;
    }

    body.storefront-shell--v2 .sf-product-card > a:not(.sf-product-card__thumb) {
        position: static !important;
        order: 4 !important;
    }

    body.storefront-shell--v2 .sf-product-card h3 {
        position: static !important;
        inset: auto !important;
        margin: 0 !important;
    }

    body.storefront-shell--v2 .sf-product-card__subtitle {
        position: static !important;
        inset: auto !important;
        order: 5 !important;
    }

    body.storefront-shell--v2 .sf-product-card__tags {
        order: 6 !important;
    }

    body.storefront-shell--v2 .sf-product-card__footer {
        position: static !important;
        inset: auto !important;
        order: 7 !important;
        display: grid !important;
        width: 100% !important;
        margin-top: 6px !important;
    }

    body.storefront-shell--v2 .sf-product-card__price,
    body.storefront-shell--v2 .sf-product-card__price strong,
    body.storefront-shell--v2 .sf-product-card__price small {
        position: static !important;
        inset: auto !important;
        transform: none !important;
    }

    body.storefront-shell--v2 .sf-product-card__saving {
        position: static !important;
        inset: auto !important;
        order: 8 !important;
        margin: 4px 0 0 !important;
        transform: none !important;
    }
}

/* Final storefront product-card recreation: match the customer app card density. */
@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-v3-home-feed,
    body.storefront-shell--v2 .sf-page-shell--home > .sf-container {
        gap: 6px !important;
        row-gap: 6px !important;
    }

    body.storefront-shell--v2 .sf-front-section,
    body.storefront-shell--v2 .sf-dynamic-section,
    body.storefront-shell--v2 .sf-v3-section {
        padding: 14px 14px 10px !important;
    }

    body.storefront-shell--v2 .sf-front-section__head,
    body.storefront-shell--v2 .sf-v3-section__head {
        margin-bottom: 10px !important;
    }

    body.storefront-shell--v2 .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.is-scroller,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid {
        grid-auto-columns: 156px !important;
        gap: 10px !important;
        padding: 0 0 8px !important;
    }

    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_grid"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.sf-catalog-grid,
    body.storefront-shell--v2 .sf-catalog-grid,
    body.storefront-shell--v2 .sf-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px 10px !important;
    }

    body.storefront-shell--v2 .sf-product-card,
    body.storefront-shell--v2 .sf-v3-section .sf-product-card,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card {
        container-type: inline-size !important;
        display: grid !important;
        grid-template-rows: auto auto auto auto !important;
        gap: 7px !important;
        min-height: 0 !important;
        height: auto !important;
        padding: 0 !important;
        overflow: visible !important;
        border: 0 !important;
        border-radius: 10px !important;
        background: #fff !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-home-product-grid.is-scroller .sf-product-card,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-product-card {
        min-height: 0 !important;
    }

    body.storefront-shell--v2 .sf-product-card__thumb,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__thumb {
        position: relative !important;
        order: 1 !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        overflow: hidden !important;
        border: 1px solid #e9e9e9 !important;
        border-radius: 8px !important;
        background: #f8f8f8 !important;
    }

    body.storefront-shell--v2 .sf-product-card__thumb img,
    body.storefront-shell--v2 .sf-product-card__placeholder {
        width: 100% !important;
        height: 100% !important;
        padding: 8px 8px 42px !important;
        object-fit: contain !important;
    }

    body.storefront-shell--v2 .sf-product-card__variant-strip {
        position: absolute !important;
        right: 78px !important;
        bottom: 0 !important;
        left: 0 !important;
        z-index: 2 !important;
        display: flex !important;
        height: 36px !important;
        align-items: center !important;
        padding: 0 8px !important;
        border-top: 1px solid #e9e9e9 !important;
        background: #fff !important;
        color: #171717 !important;
        font-size: 10.5px !important;
        font-weight: 800 !important;
        line-height: 1.1 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.storefront-shell--v2 .sf-product-card__topline,
    body.storefront-shell--v2 .sf-product-card__brand,
    body.storefront-shell--v2 .sf-product-card__tags,
    body.storefront-shell--v2 .sf-product-card__rating,
    body.storefront-shell--v2 .sf-product-card__subtitle {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-product-card > a:not(.sf-product-card__thumb) {
        order: 2 !important;
        min-width: 0 !important;
        padding: 0 2px !important;
    }

    body.storefront-shell--v2 .sf-product-card h3 {
        display: -webkit-box !important;
        min-height: 2.36em !important;
        max-height: 2.36em !important;
        margin: 0 !important;
        overflow: hidden !important;
        color: #171717 !important;
        font-size: .84rem !important;
        font-weight: 800 !important;
        line-height: 1.18 !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
    }

    body.storefront-shell--v2 .sf-product-card__footer {
        order: 3 !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 0 !important;
        align-items: start !important;
        gap: 0 !important;
        width: 100% !important;
        min-height: 22px !important;
        margin: 0 !important;
        padding: 0 2px !important;
    }

    body.storefront-shell--v2 .sf-product-card__price {
        display: flex !important;
        min-width: 0 !important;
        align-items: baseline !important;
        gap: 5px !important;
    }

    body.storefront-shell--v2 .sf-product-card__price strong {
        min-height: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        color: #171717 !important;
        font-size: 16px !important;
        font-weight: 900 !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    body.storefront-shell--v2 .sf-product-card__price small {
        color: #8a8f98 !important;
        font-size: 11px !important;
        line-height: 1 !important;
        text-decoration: line-through !important;
        white-space: nowrap !important;
    }

    body.storefront-shell--v2 .sf-product-card__footer form,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__footer form,
    body.storefront-shell--v2 .sf-product-card__footer > .sf-product-card__action {
        position: absolute !important;
        top: calc(100cqw - 48px) !important;
        right: 0 !important;
        z-index: 4 !important;
        display: block !important;
        width: 78px !important;
        min-width: 78px !important;
        margin: 0 !important;
    }

    body.storefront-shell--v2 .sf-product-card__action,
    body.storefront-shell--v2 .sf-product-card__stepper {
        position: static !important;
        display: grid !important;
        width: 78px !important;
        min-width: 78px !important;
        height: 48px !important;
        min-height: 48px !important;
        place-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1.2px solid #1faf38 !important;
        border-radius: 9px !important;
        background: #fff !important;
        color: #159332 !important;
        box-shadow: none !important;
        font-size: 12px !important;
        font-weight: 900 !important;
        line-height: 1 !important;
        text-transform: uppercase !important;
    }

    body.storefront-shell--v2 .sf-product-card__action {
        grid-template-columns: 1fr !important;
        gap: 1px !important;
    }

    body.storefront-shell--v2 .sf-product-card__action > span[aria-hidden="true"] {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-product-card__action-label {
        display: inline !important;
    }

    body.storefront-shell--v2 .sf-product-card__stepper {
        grid-template-columns: 25px 28px 25px !important;
    }

    body.storefront-shell--v2 .sf-product-card__saving {
        order: 4 !important;
        margin: -2px 2px 0 !important;
        color: #15803d !important;
        font-size: 11px !important;
        font-weight: 800 !important;
        line-height: 1.15 !important;
    }
}

@media (max-width: 370px) {
    body.storefront-shell--v2 .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.is-scroller,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid {
        grid-auto-columns: 148px !important;
    }

    body.storefront-shell--v2 .sf-product-card__variant-strip {
        right: 70px !important;
    }

    body.storefront-shell--v2 .sf-product-card__footer form,
    body.storefront-shell--v2 .sf-product-card__footer > .sf-product-card__action,
    body.storefront-shell--v2 .sf-product-card__action,
    body.storefront-shell--v2 .sf-product-card__stepper {
        width: 70px !important;
        min-width: 70px !important;
    }

    body.storefront-shell--v2 .sf-product-card__stepper {
        grid-template-columns: 23px 24px 23px !important;
    }
}

/* Final frontend-section spacing lock: banners, categories, and product grids. */
@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-page-shell--home,
    body.storefront-shell--v2 .sf-page-shell--home > .sf-container,
    body.storefront-shell--v2 .sf-v3-home-feed {
        display: grid !important;
        gap: 0 !important;
        row-gap: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #fff !important;
    }

    body.storefront-shell--v2 .sf-front-section,
    body.storefront-shell--v2 .sf-dynamic-section,
    body.storefront-shell--v2 .sf-v3-section {
        min-height: 0 !important;
        margin: 0 !important;
        padding: 12px 14px 10px !important;
        overflow: hidden !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: #fff !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-front-section + .sf-front-section,
    body.storefront-shell--v2 .sf-v3-section + .sf-v3-section {
        border-top: 1px solid #f4f5f7 !important;
    }

    body.storefront-shell--v2 .sf-front-section__head,
    body.storefront-shell--v2 .sf-v3-section__head {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: start !important;
        gap: 8px !important;
        min-height: 0 !important;
        margin: 0 0 9px !important;
    }

    body.storefront-shell--v2 .sf-front-section__head h2,
    body.storefront-shell--v2 .sf-v3-section__head h2 {
        margin: 0 !important;
        font-size: 1rem !important;
        line-height: 1.14 !important;
    }

    body.storefront-shell--v2 .sf-front-section__head p,
    body.storefront-shell--v2 .sf-v3-section__head p {
        margin: 3px 0 0 !important;
        font-size: .72rem !important;
        line-height: 1.22 !important;
    }

    body.storefront-shell--v2 .sf-v3-section--banner,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="hero_banner"],
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="banner_strip"] {
        padding: 0 !important;
        overflow: hidden !important;
    }

    body.storefront-shell--v2 .sf-mini-banner-grid,
    body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner-grid {
        display: grid !important;
        gap: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.storefront-shell--v2 .sf-mini-banner,
    body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner {
        width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        aspect-ratio: 16 / 7 !important;
        margin: 0 !important;
        overflow: hidden !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="hero_banner"] .sf-mini-banner {
        aspect-ratio: 16 / 8 !important;
    }

    body.storefront-shell--v2 .sf-mini-banner img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    body.storefront-shell--v2 .sf-v3-section--category_grid,
    body.storefront-shell--v2 .sf-v3-section--subcategory_chips,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="category_grid"] {
        padding-top: 12px !important;
        padding-bottom: 10px !important;
    }

    body.storefront-shell--v2 .sf-home-category-grid,
    body.storefront-shell--v2 .sf-home-category-grid--dynamic,
    body.storefront-shell--v2 .sf-v3-section--category_grid .sf-home-category-grid,
    body.storefront-shell--v2 .sf-v3-section--subcategory_chips .sf-home-category-grid {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 12px 10px !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile,
    body.storefront-shell--v2 .sf-home-category-tile {
        display: grid !important;
        gap: 6px !important;
        min-width: 0 !important;
        min-height: 0 !important;
        max-height: none !important;
        align-content: start !important;
        justify-items: center !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    body.storefront-shell--v2 .sf-home-category-tile__top,
    body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile__top {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        max-height: 70px !important;
        overflow: hidden !important;
        border-radius: 10px !important;
        background: #f7f8fa !important;
    }

    body.storefront-shell--v2 .sf-home-category-tile img {
        width: 100% !important;
        height: 100% !important;
        object-fit: contain !important;
        padding: 6px !important;
    }

    body.storefront-shell--v2 .sf-home-category-tile > span {
        display: -webkit-box !important;
        max-width: 100% !important;
        min-height: 2.25em !important;
        overflow: hidden !important;
        color: #171717 !important;
        font-size: .72rem !important;
        font-weight: 800 !important;
        line-height: 1.12 !important;
        text-align: center !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
    }

    body.storefront-shell--v2 .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.is-scroller,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid {
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: minmax(148px, 42vw) !important;
        grid-template-columns: none !important;
        align-items: start !important;
        gap: 10px !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 0 8px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scrollbar-width: none !important;
    }

    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_grid"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--product_grid .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.sf-catalog-grid,
    body.storefront-shell--v2 .sf-catalog-grid,
    body.storefront-shell--v2 .sf-product-grid {
        grid-auto-flow: row !important;
        grid-auto-columns: auto !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        align-items: start !important;
        gap: 14px 10px !important;
        overflow: visible !important;
        padding-bottom: 0 !important;
    }

    body.storefront-shell--v2 .sf-product-card,
    body.storefront-shell--v2 .sf-v3-section .sf-product-card,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card {
        position: relative !important;
        isolation: isolate !important;
        display: grid !important;
        grid-template-rows: auto auto auto auto !important;
        gap: 6px !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        min-height: 0 !important;
        height: auto !important;
        align-self: start !important;
        align-content: start !important;
        padding: 0 !important;
        overflow: hidden !important;
        border: 0 !important;
        background: #fff !important;
        box-shadow: none !important;
    }

    body.storefront-shell--v2 .sf-product-card__thumb,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__thumb {
        position: relative !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        min-height: 0 !important;
        overflow: hidden !important;
    }

    body.storefront-shell--v2 .sf-product-card__footer form,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__footer form,
    body.storefront-shell--v2 .sf-product-card__footer > .sf-product-card__action {
        top: calc(100cqw - 48px) !important;
        right: 0 !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
    }
}

@media (max-width: 370px) {
    body.storefront-shell--v2 .sf-home-category-grid,
    body.storefront-shell--v2 .sf-home-category-grid--dynamic {
        gap: 10px 8px !important;
    }

    body.storefront-shell--v2 .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.is-scroller,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid {
        grid-auto-columns: minmax(140px, 44vw) !important;
        gap: 9px !important;
    }
}

/* Cart button visibility lock. Keep after section spacing rules. */
@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.is-scroller,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_grid"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--product_grid .sf-home-product-grid,
    body.storefront-shell--v2 .sf-catalog-grid,
    body.storefront-shell--v2 .sf-product-grid {
        overflow-y: visible !important;
    }

    body.storefront-shell--v2 .sf-product-card,
    body.storefront-shell--v2 .sf-v3-section .sf-product-card,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card {
        --sf-product-media-size: clamp(138px, 42vw, 176px);
        position: relative !important;
        overflow: visible !important;
        padding-bottom: 2px !important;
    }

    body.storefront-shell--v2 .sf-product-card__thumb,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__thumb {
        height: var(--sf-product-media-size) !important;
        min-height: var(--sf-product-media-size) !important;
        aspect-ratio: auto !important;
        overflow: hidden !important;
    }

    body.storefront-shell--v2 .sf-product-card__footer {
        position: static !important;
        overflow: visible !important;
    }

    body.storefront-shell--v2 .sf-product-card__footer form,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__footer form,
    body.storefront-shell--v2 .sf-product-card__footer > .sf-product-card__action {
        position: absolute !important;
        top: calc(var(--sf-product-media-size) - 48px) !important;
        right: 0 !important;
        bottom: auto !important;
        left: auto !important;
        z-index: 50 !important;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    body.storefront-shell--v2 .sf-product-card__action,
    body.storefront-shell--v2 .sf-product-card__stepper {
        display: grid !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
}

@media (max-width: 370px) {
    body.storefront-shell--v2 .sf-product-card,
    body.storefront-shell--v2 .sf-v3-section .sf-product-card,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card {
        --sf-product-media-size: clamp(132px, 44vw, 160px);
    }
}

/* Product rail overlap fix for Top Picks, Super savers, and similar sections. */
@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.is-scroller,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid {
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: 156px !important;
        grid-template-columns: none !important;
        align-items: start !important;
        gap: 14px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        padding: 0 6px 10px !important;
        scroll-padding-inline: 6px !important;
        scrollbar-width: none !important;
    }

    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_grid"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--product_grid .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.sf-catalog-grid,
    body.storefront-shell--v2 .sf-catalog-grid,
    body.storefront-shell--v2 .sf-product-grid {
        grid-auto-flow: row !important;
        grid-auto-columns: auto !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 16px 12px !important;
        overflow: visible !important;
        padding-inline: 0 !important;
    }

    body.storefront-shell--v2 .sf-home-product-grid.is-scroller .sf-product-card,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-product-card,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-product-card {
        width: 156px !important;
        min-width: 156px !important;
        max-width: 156px !important;
    }

    body.storefront-shell--v2 .sf-product-card,
    body.storefront-shell--v2 .sf-v3-section .sf-product-card,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card {
        --sf-product-media-size: 156px;
        box-sizing: border-box !important;
        isolation: isolate !important;
        overflow: hidden !important;
        contain: layout paint !important;
    }

    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_grid"] .sf-product-card,
    body.storefront-shell--v2 .sf-v3-section--product_grid .sf-product-card {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        --sf-product-media-size: clamp(138px, 43vw, 176px);
    }

    body.storefront-shell--v2 .sf-product-card__thumb,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__thumb {
        height: var(--sf-product-media-size) !important;
        min-height: var(--sf-product-media-size) !important;
        max-height: var(--sf-product-media-size) !important;
    }

    body.storefront-shell--v2 .sf-product-card__footer form,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__footer form,
    body.storefront-shell--v2 .sf-product-card__footer > .sf-product-card__action {
        top: calc(var(--sf-product-media-size) - 48px) !important;
        right: 0 !important;
        z-index: 8 !important;
    }
}

@media (max-width: 370px) {
    body.storefront-shell--v2 .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.is-scroller,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid {
        grid-auto-columns: 148px !important;
        gap: 12px !important;
    }

    body.storefront-shell--v2 .sf-home-product-grid.is-scroller .sf-product-card,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-product-card,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-product-card {
        width: 148px !important;
        min-width: 148px !important;
        max-width: 148px !important;
        --sf-product-media-size: 148px;
    }
}

/* Category chip spacing fix: compact app-style row, no wide stretching. */
@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-home-category-grid,
    body.storefront-shell--v2 .sf-home-category-grid--dynamic,
    body.storefront-shell--v2 .sf-v3-section--category_grid .sf-home-category-grid,
    body.storefront-shell--v2 .sf-v3-section--subcategory_chips .sf-home-category-grid,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="category_grid"] .sf-home-category-grid {
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: 86px !important;
        grid-template-columns: none !important;
        justify-content: start !important;
        align-items: start !important;
        gap: 10px !important;
        width: 100% !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 6px 10px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-padding-inline: 6px !important;
        scrollbar-width: none !important;
    }

    body.storefront-shell--v2 .sf-home-category-tile,
    body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile {
        width: 86px !important;
        min-width: 86px !important;
        max-width: 86px !important;
    }

    body.storefront-shell--v2 .sf-home-category-tile__top,
    body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile__top {
        width: 86px !important;
        height: 86px !important;
        max-height: 86px !important;
    }
}

@media (max-width: 370px) {
    body.storefront-shell--v2 .sf-home-category-grid,
    body.storefront-shell--v2 .sf-home-category-grid--dynamic,
    body.storefront-shell--v2 .sf-v3-section--category_grid .sf-home-category-grid,
    body.storefront-shell--v2 .sf-v3-section--subcategory_chips .sf-home-category-grid,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="category_grid"] .sf-home-category-grid {
        grid-auto-columns: 80px !important;
        gap: 9px !important;
    }

    body.storefront-shell--v2 .sf-home-category-tile,
    body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile {
        width: 80px !important;
        min-width: 80px !important;
        max-width: 80px !important;
    }

    body.storefront-shell--v2 .sf-home-category-tile__top,
    body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile__top {
        width: 80px !important;
        height: 80px !important;
        max-height: 80px !important;
    }
}

/* Reset legacy first-category span that creates a blank slot after the first chip. */
@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-home-category-grid,
    body.storefront-shell--v2 .sf-home-category-grid--dynamic,
    body.storefront-shell--v2 .sf-v3-section--category_grid .sf-home-category-grid,
    body.storefront-shell--v2 .sf-v3-section--subcategory_chips .sf-home-category-grid,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="category_grid"] .sf-home-category-grid {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        align-items: flex-start !important;
        column-gap: 10px !important;
        row-gap: 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }

    body.storefront-shell--v2 .sf-home-category-tile,
    body.storefront-shell--v2 .sf-home-category-tile:first-child,
    body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile,
    body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile:first-child {
        grid-column: auto !important;
        flex: 0 0 86px !important;
        width: 86px !important;
        min-width: 86px !important;
        max-width: 86px !important;
        margin: 0 !important;
    }
}

@media (max-width: 370px) {
    body.storefront-shell--v2 .sf-home-category-tile,
    body.storefront-shell--v2 .sf-home-category-tile:first-child,
    body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile,
    body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile:first-child {
        flex-basis: 80px !important;
        width: 80px !important;
        min-width: 80px !important;
        max-width: 80px !important;
    }
}

/* Category media cleanup: no fallback letter chip, image fits the full box. */
@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-home-category-tile__top,
    body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile__top {
        display: block !important;
        overflow: hidden !important;
        background: #f7f8fa !important;
    }

    body.storefront-shell--v2 .sf-home-category-tile img,
    body.storefront-shell--v2 .sf-v3-section .sf-home-category-tile img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        padding: 0 !important;
        object-fit: cover !important;
        object-position: center !important;
    }

    body.storefront-shell--v2 .sf-home-category-tile__fallback {
        display: none !important;
    }
}

/* Product card image carousel: zero inner padding and full-box cover fit. */
body.storefront-shell--v2 .sf-product-card__thumb {
    position: relative !important;
    overflow: hidden !important;
}

body.storefront-shell--v2 .sf-product-card__image-track {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    display: block !important;
    overflow: hidden !important;
}

body.storefront-shell--v2 .sf-product-card__image-slide,
body.storefront-shell--v2 .sf-product-card__thumb > img {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    opacity: 0 !important;
    transition: opacity .28s ease !important;
}

body.storefront-shell--v2 .sf-product-card__image-slide.is-active,
body.storefront-shell--v2 .sf-product-card__thumb > img {
    opacity: 1 !important;
}

body.storefront-shell--v2 .sf-product-card__placeholder {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
}

body.storefront-shell--v2 .sf-product-card__image-dots {
    position: absolute !important;
    left: 8px !important;
    bottom: 42px !important;
    z-index: 5 !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    pointer-events: none !important;
}

body.storefront-shell--v2 .sf-product-card__image-dots i {
    display: block !important;
    width: 5px !important;
    height: 5px !important;
    border-radius: 999px !important;
    background: #d8dee8 !important;
    transition: width .2s ease, background-color .2s ease !important;
}

body.storefront-shell--v2 .sf-product-card__image-dots i.is-active {
    width: 8px !important;
    background: #374151 !important;
}

body.storefront-shell--v2 .sf-product-card__discount-flag,
body.storefront-shell--v2 .sf-product-card__rating-badge,
body.storefront-shell--v2 .sf-product-card__variant-strip {
    z-index: 6 !important;
}

/* Final product density: show 3 product cards per row on storefront mobile. */
@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.is-scroller,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid {
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: calc((100% - 20px) / 3) !important;
        grid-template-columns: none !important;
        gap: 10px !important;
        align-items: start !important;
        padding: 0 4px 10px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-padding-inline: 4px !important;
        scrollbar-width: none !important;
    }

    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_grid"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--product_grid .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.sf-catalog-grid,
    body.storefront-shell--v2 .sf-catalog-grid,
    body.storefront-shell--v2 .sf-product-grid {
        display: grid !important;
        grid-auto-flow: row !important;
        grid-auto-columns: auto !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 14px 10px !important;
        align-items: start !important;
        padding-inline: 0 !important;
        overflow: visible !important;
    }

    body.storefront-shell--v2 .sf-home-product-grid .sf-product-card,
    body.storefront-shell--v2 .sf-home-product-grid.is-scroller .sf-product-card,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-product-card,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-product-card,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_grid"] .sf-product-card,
    body.storefront-shell--v2 .sf-v3-section--product_grid .sf-product-card,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card,
    body.storefront-shell--v2 .sf-product-grid .sf-product-card {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        --sf-product-media-size: clamp(104px, 29vw, 136px);
    }

    body.storefront-shell--v2 .sf-product-card__thumb,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__thumb {
        height: var(--sf-product-media-size) !important;
        min-height: var(--sf-product-media-size) !important;
        max-height: var(--sf-product-media-size) !important;
    }

    body.storefront-shell--v2 .sf-product-card__variant-strip {
        right: 64px !important;
        height: 32px !important;
        padding-inline: 7px !important;
        font-size: 9.5px !important;
    }

    body.storefront-shell--v2 .sf-product-card__footer form,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__footer form,
    body.storefront-shell--v2 .sf-product-card__footer > .sf-product-card__action {
        top: calc(var(--sf-product-media-size) - 42px) !important;
        width: 64px !important;
        min-width: 64px !important;
    }

    body.storefront-shell--v2 .sf-product-card__action,
    body.storefront-shell--v2 .sf-product-card__stepper {
        width: 64px !important;
        min-width: 64px !important;
        height: 42px !important;
        min-height: 42px !important;
        border-radius: 8px !important;
        font-size: 11px !important;
    }

    body.storefront-shell--v2 .sf-product-card__stepper {
        grid-template-columns: 20px 24px 20px !important;
    }

    body.storefront-shell--v2 .sf-product-card h3 {
        font-size: .74rem !important;
        line-height: 1.14 !important;
    }

    body.storefront-shell--v2 .sf-product-card__price strong {
        font-size: 13px !important;
    }

    body.storefront-shell--v2 .sf-product-card__price small,
    body.storefront-shell--v2 .sf-product-card__saving {
        font-size: 9.5px !important;
    }
}

@media (max-width: 370px) {
    body.storefront-shell--v2 .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.is-scroller,
    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid {
        grid-auto-columns: calc((100% - 16px) / 3) !important;
        gap: 8px !important;
    }

    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_grid"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--product_grid .sf-home-product-grid,
    body.storefront-shell--v2 .sf-home-product-grid.sf-catalog-grid,
    body.storefront-shell--v2 .sf-catalog-grid,
    body.storefront-shell--v2 .sf-product-grid {
        gap: 12px 8px !important;
    }

    body.storefront-shell--v2 .sf-home-product-grid .sf-product-card,
    body.storefront-shell--v2 .sf-catalog-grid .sf-product-card,
    body.storefront-shell--v2 .sf-product-grid .sf-product-card {
        --sf-product-media-size: clamp(96px, 29vw, 118px);
    }
}

/* Search suggestions must float above service/category tabs. */
@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-header,
    body.storefront-shell--v2 .sf-header__inner,
    body.storefront-shell--v2 .sf-app-chrome,
    body.storefront-shell--v2 .sf-mobile-header {
        overflow: visible !important;
    }

    body.storefront-shell--v2 .sf-searchbar,
    body.storefront-shell--v2 .sf-searchbar--mobile,
    body.storefront-shell--v2 .sf-desktop-search {
        z-index: 4000 !important;
        overflow: visible !important;
    }

    body.storefront-shell--v2 .sf-searchbar--mobile > div[id$="Suggestions"],
    body.storefront-shell--v2 .sf-searchbar .sf-search-suggestions,
    body.storefront-shell--v2 .sf-desktop-search > div[id$="Suggestions"],
    body.storefront-shell--v2 .sf-search-suggestions {
        z-index: 5000 !important;
        overflow: hidden !important;
    }

    body.storefront-shell--v2 .sf-header-service-selector,
    body.storefront-shell--v2 .sf-tab-rail,
    body.storefront-shell--v2 .sf-tab-rail--categories {
        z-index: 80 !important;
    }
}

/* Final search/catalog image fit: no padded contain thumbnails in search results. */
body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__thumb,
body.storefront-shell--v2 .sf-search-suggestion__media,
body.storefront-shell--v2 .sf-search-suggestions__media {
    overflow: hidden !important;
}

body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__thumb img,
body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__image-slide,
body.storefront-shell--v2 .sf-search-suggestion__media img,
body.storefront-shell--v2 .sf-search-suggestions__media img {
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
}

/* Final product card cart controls: compact add button and +/- stepper. */
body.storefront-shell--v2 .sf-product-card__footer form,
body.storefront-shell--v2 .sf-product-card__footer > .sf-product-card__action {
    width: auto !important;
    min-width: 0 !important;
}

body.storefront-shell--v2 .sf-product-card__action {
    display: inline-flex !important;
    width: auto !important;
    min-width: 34px !important;
    max-width: 42px !important;
    height: 28px !important;
    min-height: 28px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    padding: 0 7px !important;
    overflow: hidden !important;
    border-radius: 7px !important;
    font-size: 14px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

body.storefront-shell--v2 .sf-product-card__action > span[aria-hidden="true"] {
    display: inline !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

body.storefront-shell--v2 .sf-product-card__action-label {
    display: none !important;
}

body.storefront-shell--v2 .sf-product-card__stepper {
    display: grid !important;
    width: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
    height: 28px !important;
    min-height: 28px !important;
    grid-template-columns: 20px minmax(0, 1fr) 20px !important;
    align-items: center !important;
    justify-items: center !important;
    gap: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 7px !important;
    font-size: 12px !important;
    line-height: 1 !important;
}

body.storefront-shell--v2 .sf-product-card__stepper-btn {
    display: grid !important;
    width: 20px !important;
    min-width: 20px !important;
    height: 28px !important;
    min-height: 28px !important;
    place-items: center !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: inherit !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

body.storefront-shell--v2 .sf-product-card__stepper strong {
    display: grid !important;
    min-width: 0 !important;
    place-items: center !important;
    padding: 0 !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-product-card__footer form,
    body.storefront-shell--v2 .sf-product-card__footer > .sf-product-card__action {
        top: calc(var(--sf-product-media-size, 108px) - 34px) !important;
        right: 5px !important;
    }
}

/* Final storefront product card alignment: loaded last so desktop cards do not float or collapse. */
body.storefront-shell--v2 .sf-home-product-grid .sf-product-card,
body.storefront-shell--v2 .sf-catalog-grid .sf-product-card,
body.storefront-shell--v2 .sf-store-product-list .sf-product-card {
    display: flex !important;
    min-width: 0 !important;
    min-height: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
}

body.storefront-shell--v2 .sf-product-card__thumb {
    float: none !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    flex: 0 0 auto !important;
}

body.storefront-shell--v2 .sf-product-card__image-track,
body.storefront-shell--v2 .sf-product-card__image-slide,
body.storefront-shell--v2 .sf-product-card__thumb > img,
body.storefront-shell--v2 .sf-product-card__placeholder {
    width: 100% !important;
    height: 100% !important;
}

body.storefront-shell--v2 .sf-product-card__image-slide,
body.storefront-shell--v2 .sf-product-card__thumb > img {
    object-fit: cover !important;
}

body.storefront-shell--v2 .sf-product-card__subtitle {
    flex: 1 1 auto !important;
}

body.storefront-shell--v2 .sf-product-card__footer {
    margin-top: auto !important;
    align-items: end !important;
}

/* True final storefront spacing pass: desktop rails, responsive banners, and app-style store info. */
body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid,
body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: clamp(174px, 13.5vw, 218px) !important;
    grid-template-columns: none !important;
    gap: 22px !important;
    align-items: stretch !important;
    padding: 4px 2px 18px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: thin !important;
}

body.storefront-shell--v2 .sf-mini-banner-grid,
body.storefront-shell--v2 .sf-mini-banner-grid--dynamic,
body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner-grid {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: calc((100% - 18px) / 2) !important;
    grid-template-columns: none !important;
    gap: 18px !important;
    align-items: stretch !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: thin !important;
}

body.storefront-shell--v2 .sf-mini-banner-grid:has(> .sf-mini-banner:only-child),
body.storefront-shell--v2 .sf-mini-banner-grid--dynamic:has(> .sf-mini-banner:only-child) {
    grid-auto-columns: min(100%, 720px) !important;
    justify-content: center !important;
}

body.storefront-shell--v2 .sf-mini-banner,
body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner {
    width: 100% !important;
    min-width: 0 !important;
    aspect-ratio: 16 / 6.2 !important;
    overflow: hidden !important;
    scroll-snap-align: start !important;
}

body.storefront-shell--v2 .sf-mini-banner img,
body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}

body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info article {
    min-width: 0 !important;
}

body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info strong,
body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info span {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-mini-banner-grid,
    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic,
    body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner-grid {
        grid-auto-columns: 100% !important;
        gap: 0 !important;
        padding: 0 !important;
        scrollbar-width: none !important;
    }

    body.storefront-shell--v2 .sf-mini-banner,
    body.storefront-shell--v2 .sf-v3-section--banner .sf-mini-banner {
        aspect-ratio: 16 / 7.5 !important;
        border-radius: 0 !important;
    }

    body.storefront-shell--v2 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid,
    body.storefront-shell--v2 .sf-v3-section--product_rail .sf-home-product-grid {
        grid-auto-columns: calc((100% - 20px) / 3) !important;
        gap: 10px !important;
        padding: 0 4px 10px !important;
        scrollbar-width: none !important;
    }

    body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 8px !important;
        padding: 8px 0 !important;
        overflow: visible !important;
    }

    body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info article {
        display: grid !important;
        min-height: 70px !important;
        align-content: center !important;
        gap: 4px !important;
        padding: 8px 6px !important;
        border-radius: 12px !important;
    }

    body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info strong {
        font-size: .78rem !important;
        line-height: 1.1 !important;
    }

    body.storefront-shell--v2 .sf-store-info-strip.sf-app-store__info span {
        font-size: .58rem !important;
        line-height: 1.12 !important;
    }
}

/* Final shared app/web controls: keep product cards and prompts stable after mobile overrides. */
body.storefront-shell--v2 .sf-product-card {
    min-width: 0 !important;
    border-radius: 8px !important;
}

body.storefront-shell--v2 .sf-product-card__footer form,
body.storefront-shell--v2 .sf-product-card__footer > .sf-product-card__action {
    width: auto !important;
    min-width: 74px !important;
}

body.storefront-shell--v2 .sf-product-card__action,
body.storefront-shell--v2 .sf-product-card__stepper {
    width: auto !important;
    min-width: 74px !important;
    height: 36px !important;
    min-height: 36px !important;
    border-radius: 8px !important;
    gap: 6px !important;
    font-size: .82rem !important;
    line-height: 1 !important;
}

body.storefront-shell--v2 .sf-product-card__action-label {
    display: inline !important;
    font-size: .78rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

body.storefront-shell--v2 .sf-product-card__action-plus {
    display: inline-grid !important;
    place-items: center !important;
    width: 18px !important;
    height: 18px !important;
    border-radius: 999px !important;
    background: rgba(233, 30, 99, .1) !important;
    line-height: 1 !important;
}

/* Product actions belong beside the price on every viewport. */
body.storefront-shell--v2 .sf-product-card__footer {
    display: flex !important;
    align-items: end !important;
    justify-content: space-between !important;
    gap: 8px !important;
}

body.storefront-shell--v2 .sf-product-card__footer form,
body.storefront-shell--v2 .sf-catalog-grid .sf-product-card__footer form,
body.storefront-shell--v2 .sf-product-card__footer > .sf-product-card__action {
    position: static !important;
    inset: auto !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
}

.sf-section-lottie {
    display: block;
    width: min(100%, 720px);
    height: clamp(120px, 22vw, 280px);
    margin-inline: auto;
    opacity: var(--lottie-opacity, 1);
}

.sf-dynamic-section:has(> .sf-section-lottie--background) {
    position: relative;
    isolation: isolate;
}

.sf-section-lottie--background {
    position: absolute;
    inset: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.sf-payment-card.is-disabled {
    opacity: .48;
    cursor: not-allowed;
}

.sf-order-filters {
    display: flex;
    gap: 8px;
    margin: 0 0 16px;
    overflow-x: auto;
}

.sf-order-filters button {
    flex: 0 0 auto;
    padding: 9px 14px;
    border: 1px solid #ededed;
    border-radius: 8px;
    background: #fff;
    color: #6b7280;
    font-size: .78rem;
    font-weight: 800;
    cursor: pointer;
}

.sf-order-filters button.is-active {
    border-color: #111827;
    background: #111827;
    color: #fff;
}

.sf-order-preview-row {
    display: grid;
    grid-template-columns: minmax(100px, 140px) 1fr auto;
    align-items: center;
    gap: 12px;
    padding: 12px 0;
}

.sf-order-preview-images {
    display: flex;
    min-height: 42px;
}

.sf-order-preview-images span {
    display: grid;
    width: 42px;
    height: 42px;
    margin-right: -12px;
    place-items: center;
    overflow: hidden;
    border: 2px solid #fff;
    border-radius: 8px;
    background: #f8fafc;
}

.sf-order-preview-images img { width: 100%; height: 100%; object-fit: cover; }
.sf-account-feature { max-width: 1100px; }
.sf-feature-detail-card { max-width: 720px; }
.sf-wishlist-item { display: grid; gap: 8px; }

@media (max-width: 640px) {
    .sf-order-preview-row { grid-template-columns: 112px 1fr auto; gap: 8px; }
    .sf-order-metric-strip { display: none !important; }
}

.sf-fulfillment-toggle {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.sf-fulfillment-toggle label {
    display: flex;
    gap: 10px;
    align-items: center;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 12px;
    cursor: pointer;
}

.sf-fulfillment-toggle input {
    accent-color: #2daa37;
}

.sf-fulfillment-toggle strong,
.sf-fulfillment-toggle small {
    display: block;
}

.sf-fulfillment-toggle small,
.sf-pickup-store-list span {
    color: #6b7280;
    font-size: .82rem;
}

.sf-pickup-store-list {
    display: grid;
    gap: 8px;
    margin-top: 12px;
}

.sf-pickup-store-list div {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #f8fafc;
}

.sf-pwa-install {
    position: fixed;
    right: 18px;
    bottom: 88px;
    z-index: 80;
    display: flex;
    align-items: center;
    gap: 12px;
    max-width: min(420px, calc(100vw - 28px));
    padding: 14px;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 20px 50px rgba(15, 23, 42, .16);
}

.sf-pwa-install[hidden] {
    display: none;
}

.sf-pwa-install strong,
.sf-pwa-install span {
    display: block;
}

.sf-pwa-install span {
    color: #6b7280;
    font-size: .86rem;
}

.sf-pwa-install button {
    border: 0;
    border-radius: 8px;
    padding: 10px 12px;
    background: #2daa37;
    color: #fff;
    font-weight: 800;
    cursor: pointer;
}

.sf-pwa-install__ghost {
    background: #f3f4f6 !important;
    color: #374151 !important;
}

@media (max-width: 640px) {
    .sf-fulfillment-toggle {
        grid-template-columns: 1fr;
    }

    .sf-pwa-install {
        left: 14px;
        right: 14px;
        bottom: 76px;
    }
}

/* Admin-managed web home layout variants, shared with the mobile app setting. */
body.storefront-home-layout--v1 .sf-home-shell--v1 .sf-dynamic-home-stack,
body.storefront-home-layout--v1 .sf-home-shell--v1 {
    gap: 22px !important;
}

body.storefront-home-layout--v1 .sf-home-shell--v1 .sf-front-section {
    scroll-margin-top: 112px !important;
}

body.storefront-home-layout--v2 .sf-home-shell--v2 {
    padding-top: 18px !important;
}

body.storefront-home-layout--v2 .sf-home-shell--v2 .sf-dynamic-home-stack {
    gap: 26px !important;
}

body.storefront-home-layout--v2 .sf-home-shell--v2 .sf-front-section {
    border-radius: 8px !important;
}

body.storefront-home-layout--v2 .sf-home-shell--v2 .sf-dynamic-section[data-section-type="hero_banner"] .sf-mini-banner,
body.storefront-home-layout--v2 .sf-home-shell--v2 .sf-dynamic-section[data-section-type="banner"] .sf-mini-banner {
    min-height: clamp(220px, 30vw, 360px) !important;
}

body.storefront-home-layout--v3 .sf-home-shell--v3 {
    display: grid !important;
    gap: 18px !important;
    padding-top: 14px !important;
}

body.storefront-home-layout--v3 .sf-home-shell--v3 .sf-dynamic-home-stack {
    gap: 18px !important;
}

body.storefront-home-layout--v3 .sf-home-shell--v3 .sf-front-section__head {
    align-items: end !important;
    margin-bottom: 12px !important;
}

body.storefront-home-layout--v3 .sf-home-shell--v3 .sf-dynamic-section[data-section-type="category_grid"] .sf-home-category-grid {
    grid-template-columns: repeat(auto-fill, minmax(112px, 1fr)) !important;
}

body.storefront-home-layout--v3 .sf-home-shell--v3 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid,
body.storefront-home-layout--v3 .sf-home-shell--v3 .sf-dynamic-section[data-section-type="store_scroller"] .sf-home-store-grid {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-template-columns: none !important;
    overflow-x: auto !important;
    scroll-snap-type: x proximity !important;
}

body.storefront-home-layout--v3 .sf-home-shell--v3 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid {
    grid-auto-columns: clamp(154px, 18vw, 210px) !important;
}

body.storefront-home-layout--v3 .sf-home-shell--v3 .sf-dynamic-section[data-section-type="store_scroller"] .sf-home-store-grid {
    grid-auto-columns: clamp(220px, 24vw, 310px) !important;
}

@media (max-width: 900px) {
    body.storefront-home-layout--v1 .sf-home-shell--v1,
    body.storefront-home-layout--v2 .sf-home-shell--v2,
    body.storefront-home-layout--v3 .sf-home-shell--v3 {
        padding-top: 8px !important;
    }

    body.storefront-home-layout--v2 .sf-home-shell--v2 .sf-dynamic-section[data-section-type="hero_banner"] .sf-mini-banner,
    body.storefront-home-layout--v2 .sf-home-shell--v2 .sf-dynamic-section[data-section-type="banner"] .sf-mini-banner {
        min-height: 0 !important;
    }

    body.storefront-home-layout--v3 .sf-home-shell--v3 .sf-front-section__head {
        align-items: start !important;
    }

    body.storefront-home-layout--v3 .sf-home-shell--v3 .sf-dynamic-section[data-section-type="category_grid"] .sf-home-category-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }

    body.storefront-home-layout--v3 .sf-home-shell--v3 .sf-dynamic-section[data-section-type="product_scroller"] .sf-home-product-grid {
        grid-auto-columns: calc((100% - 20px) / 3) !important;
    }

    body.storefront-home-layout--v3 .sf-home-shell--v3 .sf-dynamic-section[data-section-type="store_scroller"] .sf-home-store-grid {
        grid-auto-columns: minmax(240px, 78vw) !important;
    }
}

/* Shared edge-to-edge banner geometry for image and JSON media. */
body.storefront-shell--v2 .sf-dynamic-section[data-layout-variant="banner"] {
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 8px !important;
}

body.storefront-shell--v2 .sf-dynamic-section[data-layout-variant="banner"] .sf-mini-banner-grid {
    display: grid !important;
    grid-auto-columns: 100% !important;
    grid-template-columns: none !important;
    gap: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: inherit !important;
}

body.storefront-shell--v2 .sf-dynamic-section[data-layout-variant="banner"] .sf-mini-banner {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 100% !important;
    aspect-ratio: 16 / 6.2 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 8px !important;
}

body.storefront-shell--v2 .sf-dynamic-section[data-layout-variant="banner"] .sf-mini-banner > img,
body.storefront-shell--v2 .sf-dynamic-section[data-layout-variant="banner"] .sf-banner-lottie {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    opacity: var(--lottie-opacity, 1);
}

body.storefront-shell--v2 .sf-dynamic-section[data-layout-variant="banner"] .sf-mini-banner > div {
    position: absolute !important;
    inset: auto 0 0 !important;
    z-index: 2 !important;
}

@media (max-width: 900px) {
    body.storefront-shell--v2 .sf-dynamic-section[data-layout-variant="banner"] .sf-mini-banner {
        aspect-ratio: 16 / 7.5 !important;
    }
}

/* Keep copied customer SVGs and the cart shell authoritative after legacy overrides. */
.sf-desktop-link > img,
.sf-desktop-cart > img,
.sf-desktop-icon > img,
.sf-bottom-nav > a > img,
.sf-bottom-nav > button > img {
    display: block !important;
    flex: 0 0 auto !important;
    object-fit: contain !important;
}

.sf-desktop-link > img,
.sf-desktop-cart > img,
.sf-desktop-icon > img { width: 22px !important; height: 22px !important; }
.sf-bottom-nav > a > img,
.sf-bottom-nav > button > img { width: 24px !important; height: 24px !important; }

.sf-reference-cart svg,
.sf-cart-offers-modal svg {
    width: 22px;
    height: 22px;
    flex: 0 0 auto;
}

.sf-reference-cart__footer svg,
.sf-reference-stepper svg {
    color: currentColor;
}

@media (max-width: 900px) {
    body.sf-reference-cart-page .sf-header,
    body.sf-reference-cart-page .sf-top-strip,
    body.sf-reference-cart-page .sf-zepto-delivery-dock,
    body.sf-reference-cart-page .sf-bottom-nav {
        display: none !important;
    }
}

/* Last-mile overrides for cart offer sheet and larger service tabs. */
.sf-cart-offers-link {
    width: 100% !important;
    border: 1px solid #eef0f4 !important;
    text-align: left !important;
    cursor: pointer !important;
}

.sf-cart-offers-modal[hidden] { display: none !important; }
.sf-cart-offers-modal { position: fixed !important; inset: 0 !important; z-index: 6100 !important; display: grid !important; place-items: end !important; }
.sf-cart-offers-modal__scrim { position: absolute !important; inset: 0 !important; border: 0 !important; background: rgba(17, 24, 39, .62) !important; }
.sf-cart-offers-modal__panel { position: relative !important; z-index: 1 !important; display: grid !important; width: min(100%, 486px) !important; max-height: 86dvh !important; grid-template-rows: auto minmax(0, 1fr) !important; overflow: hidden !important; border-radius: 8px 0 0 8px !important; background: #f4f6fc !important; box-shadow: -18px 0 44px rgba(15, 23, 42, .24) !important; }
.sf-cart-offers-modal__panel header { display: grid !important; grid-template-columns: 44px minmax(0, 1fr) !important; gap: 10px !important; align-items: center !important; padding: 18px 16px !important; background: #fff !important; }
.sf-cart-offers-modal__panel header button { display: grid !important; width: 40px !important; height: 40px !important; place-items: center !important; border: 0 !important; background: transparent !important; }
.sf-cart-offers-modal__panel header img { width: 22px !important; height: 22px !important; }
.sf-cart-offers-modal__panel h2, .sf-cart-offers-modal__panel p { margin: 0 !important; }
.sf-cart-offers-modal__panel h2 { font-size: 1.08rem !important; font-weight: 900 !important; }
.sf-cart-offers-modal__panel header p { color: #667085 !important; font-size: .78rem !important; }
.sf-cart-offers-modal__list { display: grid !important; align-content: start !important; gap: 12px !important; padding: 14px !important; overflow-y: auto !important; }
.sf-cart-offer-row { display: grid !important; grid-template-columns: 44px minmax(0, 1fr) auto !important; gap: 12px !important; align-items: center !important; padding: 14px !important; border: 1px solid #eef0f4 !important; border-radius: 8px !important; background: #fff !important; }
.sf-cart-offer-row > span { display: grid !important; width: 44px !important; height: 44px !important; place-items: center !important; border-radius: 8px !important; background: #eaf8ed !important; }
.sf-cart-offer-row > span img { width: 24px !important; height: 24px !important; }
.sf-cart-offer-row div { display: grid !important; min-width: 0 !important; gap: 3px !important; }
.sf-cart-offer-row strong { font-size: .9rem !important; font-weight: 900 !important; }
.sf-cart-offer-row p, .sf-cart-offer-row small { overflow: hidden !important; color: #667085 !important; font-size: .76rem !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
.sf-cart-offer-row button { min-height: 38px !important; padding: 0 12px !important; border: 1px dashed #078c23 !important; border-radius: 8px !important; background: #f0fff4 !important; color: #078c23 !important; font-size: .78rem !important; font-weight: 900 !important; cursor: pointer !important; }
.sf-cart-offers-empty { display: grid !important; justify-items: center !important; gap: 8px !important; padding: 42px 18px !important; border-radius: 8px !important; background: #fff !important; color: #667085 !important; text-align: center !important; }
.sf-cart-offers-empty img { width: 54px !important; height: 54px !important; }
.sf-cart-offers-empty strong { color: #101828 !important; font-size: 1rem !important; }

.sf-desktop-service-tabs { display: flex !important; min-width: 0 !important; align-items: center !important; gap: 10px !important; overflow-x: auto !important; padding: 4px 0 !important; scrollbar-width: none !important; }
.storefront-shell--v2 .sf-desktop-header__top { grid-template-columns: 180px 240px minmax(420px, max-content) minmax(320px, 1fr) auto !important; }
.sf-desktop-service-tabs a { display: grid !important; min-width: 108px !important; min-height: 74px !important; grid-template-rows: 32px auto !important; place-items: center !important; gap: 6px !important; padding: 9px 12px !important; border: 1px solid #e6e8ee !important; border-radius: 8px !important; background: #fff !important; color: #202124 !important; font-size: .8rem !important; font-weight: 900 !important; line-height: 1.05 !important; text-align: center !important; box-shadow: 0 6px 18px rgba(15, 23, 42, .05) !important; }
.sf-desktop-service-tabs a.is-active { border-color: #078c23 !important; background: #f0fff4 !important; color: #078c23 !important; }
.sf-desktop-service-tabs img { width: 32px !important; height: 32px !important; object-fit: contain !important; }
.sf-desktop-service-tabs span { display: block !important; max-width: 92px !important; overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; }

@media (max-width: 900px) {
    .sf-cart-offers-modal { place-items: end stretch !important; }
    .sf-cart-offers-modal__panel { width: 100% !important; max-height: 82dvh !important; border-radius: 18px 18px 0 0 !important; box-shadow: 0 -18px 44px rgba(15, 23, 42, .2) !important; }
    body.storefront-shell--v2 .sf-header-service-selector { height: 112px !important; min-height: 112px !important; grid-auto-columns: minmax(108px, 124px) !important; gap: 10px !important; padding: 8px 14px !important; }
    body.storefront-shell--v2 .sf-header-service-selector a { height: 94px !important; min-width: 108px !important; grid-template-rows: 36px auto !important; gap: 7px !important; padding: 8px !important; border: 1px solid #e6e8ee !important; border-radius: 8px !important; background: #fff !important; color: #202124 !important; font-size: 13px !important; box-shadow: 0 6px 18px rgba(15, 23, 42, .05) !important; }
    body.storefront-shell--v2 .sf-header-service-selector a.is-active { border-color: #078c23 !important; background: #f0fff4 !important; color: #078c23 !important; box-shadow: 0 6px 18px rgba(7, 140, 35, .12) !important; }
    body.storefront-shell--v2 .sf-header-service-selector img,
    body.storefront-shell--v2 .sf-header-service-selector .sf-service-tab-icon { width: 36px !important; height: 36px !important; }
    body.storefront-shell--v2 .sf-header-service-selector span,
    body.storefront-shell--v2 .sf-header-service-selector a span:last-child { max-width: 104px !important; font-size: 13px !important; line-height: 1.12 !important; white-space: normal !important; }
}

/* Product card media and compact cart action: image fills the media box, no inner padding. */
body.storefront-shell--v2 .sf-product-card__thumb,
body.storefront-shell--v2 .sf-product-card__image-track,
body.storefront-shell--v2 .sf-product-card__image-slide {
    padding: 0 !important;
}

body.storefront-shell--v2 .sf-product-card__image-slide,
body.storefront-shell--v2 .sf-product-card__thumb > img {
    object-fit: cover !important;
}

body.storefront-shell--v2 .sf-product-card__action {
    width: 40px !important;
    min-width: 40px !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 !important;
    border-radius: 8px !important;
}

body.storefront-shell--v2 .sf-product-card__action-plus {
    display: block !important;
    font-size: 22px !important;
    line-height: 1 !important;
}

/* Blinkit/Zepto-style responsive banner system. */
body.storefront-shell--v2 .sf-v3-section--banner {
    padding-right: max(14px, calc((100% - 1200px) / 2)) !important;
    padding-left: max(14px, calc((100% - 1200px) / 2)) !important;
}

body.storefront-shell--v2 .sf-mini-banner-grid--dynamic {
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-single {
    display: flex !important;
    justify-content: center !important;
    overflow: visible !important;
}

body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-single .sf-mini-banner {
    width: 100% !important;
    max-width: 1200px !important;
    aspect-ratio: 3.75 / 1 !important;
}

body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-double {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
    overflow: visible !important;
}

body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-double .sf-mini-banner,
body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-carousel .sf-mini-banner {
    aspect-ratio: 580 / 320 !important;
}

body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-carousel {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: calc((100% - 20px) / 2) !important;
    gap: 20px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: smooth !important;
    scrollbar-width: none !important;
}

body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-carousel::-webkit-scrollbar {
    display: none !important;
}

body.storefront-shell--v2 .sf-mini-banner-grid--dynamic .sf-mini-banner {
    min-width: 0 !important;
    border-radius: 16px !important;
    scroll-snap-align: start !important;
}

body.storefront-shell--v2 .sf-mini-banner-grid--dynamic .sf-mini-banner img,
body.storefront-shell--v2 .sf-mini-banner-grid--dynamic .sf-banner-lottie {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

@media (min-width: 768px) and (max-width: 1199px) {
    body.storefront-shell--v2 .sf-v3-section--banner {
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic,
    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-single,
    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-double,
    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-carousel {
        display: grid !important;
        max-width: 900px !important;
        grid-auto-flow: column !important;
        grid-auto-columns: 100% !important;
        grid-template-columns: none !important;
        gap: 16px !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        scrollbar-width: none !important;
    }

    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic .sf-mini-banner,
    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-single .sf-mini-banner,
    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-double .sf-mini-banner,
    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-carousel .sf-mini-banner {
        max-width: none !important;
        aspect-ratio: 900 / 260 !important;
        border-radius: 14px !important;
    }
}

@media (max-width: 767px) {
    body.storefront-shell--v2 .sf-v3-section--banner {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic,
    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-single,
    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-double,
    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-carousel {
        display: grid !important;
        max-width: none !important;
        grid-auto-flow: column !important;
        grid-auto-columns: 100% !important;
        grid-template-columns: none !important;
        gap: 0 !important;
        padding: 0 !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        scrollbar-width: none !important;
    }

    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic .sf-mini-banner,
    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-single .sf-mini-banner,
    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-double .sf-mini-banner,
    body.storefront-shell--v2 .sf-mini-banner-grid--dynamic.is-carousel .sf-mini-banner {
        max-width: none !important;
        aspect-ratio: 2 / 1 !important;
        border-radius: 12px !important;
    }
}

/* Absolute final overrides for latest storefront completion pass. */
body.storefront-shell--v2 .sf-product-card__action {
    min-width: 58px !important;
    max-width: 72px !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 12px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 900 !important;
}

body.storefront-shell--v2 .sf-product-card__action-plus { display: none !important; }
body.storefront-shell--v2 .sf-product-card__action-label { display: inline !important; }

body.storefront-shell--v2 .sf-product-card,
body.storefront-shell--v2 .sf-product-card__thumb { overflow: hidden !important; }

body.storefront-shell--v2 .sf-product-card__image-track,
body.storefront-shell--v2 .sf-product-card__image-slide,
body.storefront-shell--v2 .sf-product-card__thumb > img {
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
}

.storefront-shell--v2 .sf-desktop-header__top,
.sf-desktop-header__top {
    grid-template-columns: minmax(190px, 230px) minmax(320px, max-content) minmax(280px, 1fr) auto !important;
    grid-template-areas: "brand services search actions" !important;
    gap: 14px !important;
}

.storefront-shell--v2 .sf-desktop-actions,
.sf-desktop-actions {
    flex-wrap: nowrap !important;
    justify-content: flex-end !important;
}

body.storefront-shell--v2 .sf-desktop-location--under-logo {
    width: min(100%, 230px) !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#desktopCartBadge {
    position: absolute !important;
    top: -7px !important;
    right: -7px !important;
    display: grid !important;
    min-width: 22px !important;
    height: 22px !important;
    place-items: center !important;
    border: 2px solid #fff !important;
    border-radius: 999px !important;
    background: #078c23 !important;
    color: #fff !important;
    font-size: 11px !important;
}

body.storefront-shell--v2 .sf-location-modal__map,
body.storefront-shell--v2 .sf-location-modal__map-canvas,
body.sf-mobile-product-page .sf-bottom-nav,
body.storefront-shell--v2 .sf-tab-rail--categories {
    display: none !important;
}

body.sf-reference-cart-page,
body.sf-reference-cart-page .sf-main,
body.sf-reference-cart-page .sf-container,
body.sf-reference-cart-page .sf-cart-stage {
    height: 100dvh !important;
    overflow: hidden !important;
}

body.sf-reference-cart-page .sf-reference-cart__scroll {
    min-height: 0 !important;
    overflow-y: auto !important;
}

@media (max-width: 900px) {
    body.storefront-shell--v2:not(.sf-reference-cart-page) .sf-main > .sf-container {
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    body.storefront-shell--v2 .sf-footer {
        display: block !important;
        padding: 28px 12px 96px !important;
        background: #101828 !important;
        color: #fff !important;
    }

    body.storefront-shell--v2 .sf-footer__grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
}

/* Premium hyperlocal banner section: Blinkit/Zepto style, count-aware, CLS-safe. */
body.storefront-shell--v2 .sf-v3-section--banner {
    max-width: 1280px !important;
    margin: 24px auto !important;
    padding: 0 24px !important;
    background: transparent !important;
}

body.storefront-shell--v2 .sf-premium-banner-shell {
    position: relative !important;
    width: 100% !important;
}

body.storefront-shell--v2 .sf-premium-banner-grid {
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    gap: 20px !important;
}

body.storefront-shell--v2 .sf-premium-banner-grid.is-single {
    display: flex !important;
    justify-content: center !important;
    overflow: visible !important;
}

body.storefront-shell--v2 .sf-premium-banner-grid.is-double {
    display: grid !important;
    max-width: 1200px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    overflow: visible !important;
}

body.storefront-shell--v2 .sf-premium-banner-grid.is-carousel {
    display: grid !important;
    max-width: 1200px !important;
    grid-auto-flow: column !important;
    grid-auto-columns: calc((100% - 20px) / 2) !important;
    grid-template-columns: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-behavior: smooth !important;
    scroll-padding-inline: 0 !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: none !important;
}

body.storefront-shell--v2 .sf-premium-banner-grid.is-carousel::-webkit-scrollbar {
    display: none !important;
}

body.storefront-shell--v2 .sf-premium-banner-card,
body.storefront-shell--v2 .sf-premium-banner-grid.is-single .sf-premium-banner-card,
body.storefront-shell--v2 .sf-premium-banner-grid.is-double .sf-premium-banner-card,
body.storefront-shell--v2 .sf-premium-banner-grid.is-carousel .sf-premium-banner-card {
    position: relative !important;
    display: block !important;
    min-width: 0 !important;
    height: 320px !important;
    max-width: none !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 12px 32px rgba(15, 23, 42, .08) !important;
    scroll-snap-align: start !important;
    transform: translateZ(0) !important;
    transition: transform 300ms ease, box-shadow 300ms ease !important;
}

body.storefront-shell--v2 .sf-premium-banner-grid.is-single .sf-premium-banner-card {
    width: 100% !important;
    max-width: 1200px !important;
}

body.storefront-shell--v2 .sf-premium-banner-card picture,
body.storefront-shell--v2 .sf-premium-banner-card img,
body.storefront-shell--v2 .sf-premium-banner-card .sf-banner-lottie {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

body.storefront-shell--v2 .sf-premium-banner-card img,
body.storefront-shell--v2 .sf-premium-banner-card .sf-banner-lottie {
    object-fit: cover !important;
    object-position: center !important;
}

body.storefront-shell--v2 .sf-premium-banner-card > div {
    position: absolute !important;
    inset: auto 24px 24px 24px !important;
    max-width: min(520px, calc(100% - 48px)) !important;
    color: #fff !important;
    text-shadow: 0 2px 12px rgba(15, 23, 42, .32) !important;
}

body.storefront-shell--v2 .sf-premium-banner-card strong {
    display: block !important;
    font-size: clamp(22px, 2.4vw, 38px) !important;
    font-weight: 900 !important;
    line-height: 1.04 !important;
}

body.storefront-shell--v2 .sf-premium-banner-card span {
    display: block !important;
    margin-top: 8px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
}

@media (hover: hover) and (min-width: 1200px) {
    body.storefront-shell--v2 .sf-premium-banner-card:hover {
        cursor: pointer !important;
        transform: scale(1.02) translateZ(0) !important;
        box-shadow: 0 18px 44px rgba(15, 23, 42, .13) !important;
    }
}

body.storefront-shell--v2 .sf-premium-banner-nav {
    position: absolute !important;
    top: 50% !important;
    z-index: 3 !important;
    display: grid !important;
    width: 42px !important;
    height: 42px !important;
    place-items: center !important;
    border: 1px solid rgba(15, 23, 42, .08) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .94) !important;
    color: #101828 !important;
    box-shadow: 0 10px 28px rgba(15, 23, 42, .16) !important;
    transform: translateY(-50%) !important;
    transition: transform 200ms ease, box-shadow 200ms ease !important;
}

body.storefront-shell--v2 .sf-premium-banner-nav:hover {
    transform: translateY(-50%) scale(1.05) !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .2) !important;
}

body.storefront-shell--v2 .sf-premium-banner-nav svg {
    width: 22px !important;
    height: 22px !important;
}

body.storefront-shell--v2 .sf-premium-banner-nav--prev {
    left: 2px !important;
}

body.storefront-shell--v2 .sf-premium-banner-nav--next {
    right: 2px !important;
}

body.storefront-shell--v2 .sf-premium-banner-dots {
    display: flex !important;
    justify-content: center !important;
    gap: 8px !important;
    padding-top: 14px !important;
}

body.storefront-shell--v2 .sf-premium-banner-dots button {
    width: 7px !important;
    height: 7px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #d0d5dd !important;
    transition: width 220ms ease, background 220ms ease !important;
}

body.storefront-shell--v2 .sf-premium-banner-dots button.is-active {
    width: 22px !important;
    background: #078c23 !important;
}

@media (min-width: 768px) and (max-width: 1199px) {
    body.storefront-shell--v2 .sf-v3-section--banner {
        max-width: 948px !important;
        padding: 0 24px !important;
    }

    body.storefront-shell--v2 .sf-premium-banner-grid,
    body.storefront-shell--v2 .sf-premium-banner-grid.is-single,
    body.storefront-shell--v2 .sf-premium-banner-grid.is-double,
    body.storefront-shell--v2 .sf-premium-banner-grid.is-carousel {
        display: grid !important;
        max-width: 900px !important;
        grid-auto-flow: column !important;
        grid-auto-columns: 100% !important;
        grid-template-columns: none !important;
        gap: 16px !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        scrollbar-width: none !important;
    }

    body.storefront-shell--v2 .sf-premium-banner-card,
    body.storefront-shell--v2 .sf-premium-banner-grid.is-single .sf-premium-banner-card,
    body.storefront-shell--v2 .sf-premium-banner-grid.is-double .sf-premium-banner-card,
    body.storefront-shell--v2 .sf-premium-banner-grid.is-carousel .sf-premium-banner-card {
        width: 100% !important;
        height: 260px !important;
        border-radius: 14px !important;
    }
}

@media (max-width: 767px) {
    body.storefront-shell--v2 .sf-v3-section--banner {
        width: 100% !important;
        margin: 16px auto !important;
        padding: 0 12px !important;
    }

    body.storefront-shell--v2 .sf-premium-banner-grid,
    body.storefront-shell--v2 .sf-premium-banner-grid.is-single,
    body.storefront-shell--v2 .sf-premium-banner-grid.is-double,
    body.storefront-shell--v2 .sf-premium-banner-grid.is-carousel {
        display: grid !important;
        max-width: none !important;
        grid-auto-flow: column !important;
        grid-auto-columns: 100% !important;
        grid-template-columns: none !important;
        gap: 12px !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        scrollbar-width: none !important;
    }

    body.storefront-shell--v2 .sf-premium-banner-card,
    body.storefront-shell--v2 .sf-premium-banner-grid.is-single .sf-premium-banner-card,
    body.storefront-shell--v2 .sf-premium-banner-grid.is-double .sf-premium-banner-card,
    body.storefront-shell--v2 .sf-premium-banner-grid.is-carousel .sf-premium-banner-card {
        width: 100% !important;
        height: clamp(156px, 46vw, 180px) !important;
        border-radius: 12px !important;
        box-shadow: 0 8px 22px rgba(15, 23, 42, .07) !important;
    }

    body.storefront-shell--v2 .sf-premium-banner-card > div {
        inset: auto 16px 16px 16px !important;
        max-width: calc(100% - 32px) !important;
    }

    body.storefront-shell--v2 .sf-premium-banner-card strong {
        font-size: 20px !important;
    }

    body.storefront-shell--v2 .sf-premium-banner-card span {
        font-size: 12px !important;
    }

    body.storefront-shell--v2 .sf-premium-banner-nav {
        display: none !important;
    }

    body.storefront-shell--v2 .sf-premium-banner-dots {
        padding-top: 10px !important;
    }
}

/* Mobile inner pages keep only the compact header. Home-only search/service strip is not rendered there. */
@media (max-width: 900px) {
    body.storefront-shell--v2.sf-storefront-inner-page .sf-mobile-header {
        height: calc(96px + env(safe-area-inset-top, 0px)) !important;
        min-height: calc(96px + env(safe-area-inset-top, 0px)) !important;
    }

    body.storefront-shell--v2.sf-storefront-inner-page .sf-searchbar--mobile,
    body.storefront-shell--v2.sf-storefront-inner-page .sf-header-service-selector,
    body.storefront-shell--v2.sf-storefront-inner-page .sf-zepto-search-promo {
        display: none !important;
    }
}

/* Keep banner Lottie animations visible when an image fallback is also present. */
body.storefront-shell--v2 .sf-premium-banner-card.has-lottie {
    isolation: isolate !important;
}

body.storefront-shell--v2 .sf-premium-banner-card picture,
body.storefront-shell--v2 .sf-premium-banner-card > img,
body.storefront-shell--v2 .sf-premium-banner-card .sf-banner-lottie {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.storefront-shell--v2 .sf-premium-banner-card picture {
    z-index: 0 !important;
}

body.storefront-shell--v2 .sf-premium-banner-card picture img,
body.storefront-shell--v2 .sf-premium-banner-card > img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}

body.storefront-shell--v2 .sf-premium-banner-card .sf-banner-lottie {
    z-index: 1 !important;
    display: block !important;
    overflow: hidden !important;
    object-fit: cover !important;
    object-position: center !important;
    opacity: var(--lottie-opacity, 1) !important;
    pointer-events: none !important;
}

body.storefront-shell--v2 .sf-premium-banner-card .sf-banner-lottie svg,
body.storefront-shell--v2 .sf-premium-banner-card .sf-banner-lottie canvas {
    width: 100% !important;
    height: 100% !important;
}

body.storefront-shell--v2 .sf-premium-banner-card > div {
    z-index: 2 !important;
}
