/* @font-face {
    font-family: "DarkmodeBold";
    src: url("/font/DarkmodeOff-Bd.woff2") format("woff2"),
        url("/font/DarkmodeOff-Bd.woff") format("woff");
}
@font-face {
    font-family: "DarkmodeMedium";
    src: url("/font/DarkmodeOff-Md.woff2") format("woff2"),
        url("/font/DarkmodeOff-Md.woff") format("woff");
}
@font-face {
    font-family: "DarkmodeRegular";
    src: url("/font/DarkmodeOff-Rg.woff2") format("woff2"),
        url("/font/DarkmodeOff-Rg.woff") format("woff");
} */

html, body.storefront-public {
    height: 100%;
    margin: 0;
    overflow-x: hidden;
}
body.storefront-public {
    /* font-family: "DarkmodeRegular", "Roboto", Arial, Helvetica, sans-serif; */
    font-family: "Roboto", Arial, Helvetica, sans-serif;
}
.storefront-public .edit-section-wrap,
.storefront-public .edit-section-wrap *,
.storefront-public .checkout-wrap,
.storefront-public .checkout-wrap * {
    box-sizing: border-box;
}
.storefront-public .edit-section-wrap .custom_primary_btn_1,
.storefront-public .checkout-wrap .custom_primary_btn_1 {
    border-radius: 4px;
    padding: 12px 16px;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    color: #FFFFFF;
    background-color: var(--sf-accent);
    border: none;
    cursor: pointer;
}
.storefront-public .edit-section-wrap .custom_primary_btn_3,
.storefront-public .checkout-wrap .custom_primary_btn_3 {
    border-radius: 4px;
    padding: 4px 12px;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: #FFFFFF;
    background-color: #FF5E00;
    border: none;
    cursor: pointer;
}

.storefront-public #page-content-wrapper,
.storefront-public #mainContent,
.storefront-public .storefront-main-wrap,
.storefront-public .edit-section-wrap,
.storefront-public .edit-section-wrap .sec-content,
.storefront-public .edit-section-wrap .sec-body-tabs-wrap,
.storefront-public .edit-section-wrap .sec-body-tabs-wrap-inner {
    width: 100%;
    max-width: 100%;
    min-height: 100vh;
    padding: 0;
}

.storefront-public .edit-section-wrap .sec-body-tabs.product-tab .pdp-content {
    padding-block: 32px 40px;
}
.edit-section-wrap .sec-body-tabs .main-product-content-wrap .featured-img-card .img-wrap{
    background-size: contain;
}
.storefront-public .edit-section-wrap .sec-body-tabs:not(.cart-tab) > div {
    max-width: 1509px;
    padding-inline: 40px;
}
.storefront-public .storefront-main-wrap .coll-banner-hero.image-banner-showing, 
.storefront-public .storefront-main-wrap .coll-banner-hero.suggested-banner-showing{
    height: 421px !important;
}
.storefront-public .edit-section-wrap .sec-body-tabs:not(.cart-tab) {
    min-height: 100vh;
    max-width: 100%;
    border: none;
    border-radius: 0;
    padding: 0px 0px 0;
    align-items: center;
}
.edit-section-wrap .sec-body-tabs .products-card-list .product-item{
    max-width: unset !important;
    width: calc((100% - 15%  - var(--gap) * 3) / 4 );
    aspect-ratio: 2/2.5;
    min-height: unset;
}
.storefront-public .edit-section-wrap .sec-body-tabs.product-tab {
    padding: 0px 0px 32px;
}
.storefront-public .edit-section-wrap .sec-body-tabs.product-tab .coll-header {
    max-width: none;
    padding-inline: 40px;
    padding-block: 12px;
}

.storefront-public .edit-section-wrap .cart-overlay {
    position: fixed;
    z-index: 40;
    justify-content: flex-end;
    background: #00000047;
    cursor: pointer;
    transform: translateX(0);
    transition: all 0.3s;
    display: none;
    opacity: 0;
    pointer-events: none;
    overflow: hidden;
    transition: all 0.3s ease;
}
.storefront-public .edit-section-wrap .cart-overlay.active {
    opacity: 1;
    pointer-events: auto;
    backdrop-filter: blur(8px);
    background:rgba(0, 0, 0, 0.30);
}
.storefront-public .edit-section-wrap .sec-body-tabs.cart-tab {
    width: 448px;
    max-width: 100%;
    height: 100%;
    padding: 0;
    border-radius: 0;
    border-width: 0 0 0 1px;
    cursor: initial;
}
.storefront-public .edit-section-wrap .sec-body-tabs .cart-draw-wrap {
    height: 100%;
}
.storefront-public .edit-section-wrap .sec-body-tabs .cart-body {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.storefront-public .edit-section-wrap .sec-body-tabs .cart-footer {
    margin-top: auto;
    padding-bottom: 13px;
}

.storefront-public .coll-header .btn,
.storefront-public .coll-header .menu-icon,
.storefront-public .coll-header .logo,
.storefront-public .icon-btn,
.storefront-public .cart-close-icon,
.storefront-public .product-item {
    cursor: pointer;
}

.storefront-public .coll-header .logo-menu-wrap {
    width: min(240px, 40%);
}
.storefront-public .coll-header .logo-menu-wrap .logo {
    width: auto;
    flex: 1;
    height: 28px;
    aspect-ratio: auto;
    background-repeat: no-repeat;
    background-position: left center;
    background-size: contain;
}

.storefront-public .products-card-list .product-item {
    max-width: none;
    width: calc((100% - var(--gap) * 3) / 4);
    min-height: 360px;
}
.storefront-public .products-card-list .product-info .pd-title,
.storefront-public .products-card-list .product-info .pd-price {
    font-size: 14px;
    line-height: 20px;
}
.edit-section-wrap .icon-btn, .edit-section-wrap .sec-body-tabs .coll-header .btn {
    padding: 15px;
}
.edit-section-wrap .sec-body-tabs .products-card-list .pd-img-el {
    background-size: contain !important;
}

.storefront-public .pdp-content {
    max-width: 1100px;
}
.edit-section-wrap .pdp-content .product-dets .dets-shape .shape-curve {
    transform: translateY(-49%) scale(1.05);
}
.edit-section-wrap .pdp-content .product-dets .dets-shape.head-shape .shape-curve .stroke-hide-2 {
    transform: translate(1.5px, -1px);
}

@media (max-width: 768px) {
    .storefront-public .storefront-main-wrap .coll-banner-hero.image-banner-showing, 
    .storefront-public .storefront-main-wrap .coll-banner-hero.suggested-banner-showing {
        height: 255px !important;
    }
    .storefront-public .edit-section-wrap .sec-body-tabs:not(.cart-tab) {
        padding: 0px 16px 0;
    }
    .storefront-public .edit-section-wrap .sec-body-tabs .products-card-list .product-item {
        max-width: unset !important;
        width: calc((100% - var(--gap) * 1) / 2);
        aspect-ratio: 2 / 3;
        min-height: 310px;
    }
    .storefront-public .edit-section-wrap .sec-body-tabs.cart-tab {
        width: 100%;
        max-width: 100%;
    }
    .edit-section-wrap .sec-body-tabs-wrap .main-product-content-wrap .product-images-wrap {
        min-height: 465px;
    }
    .storefront-public .edit-section-wrap .sec-body-tabs:not(.cart-tab) > div.coll-header {
        padding-inline: 12px !important;
    }
}

/* live checkout: same structure/gaps as /storefront/checkout (storefront-checkout.css).
   this layout does not load Tabler/Roboto body rules, so only the missing reboot lives here. */
.storefront-public .checkout-wrap {
    min-height: 100vh;
    width: 100%;
    max-width: 1060px;
    margin-inline: auto;
    justify-content: center;
    font-family: "Roboto", Arial, Helvetica, sans-serif;
    font-size: 14px;
    line-height: 20px;
    color: #1c1d22;
    background: #fff;
}
.storefront-public .checkout-wrap .field-heading {
    display: block;
    width: 100%;
}
.storefront-public .checkout-wrap .field-icon {
    display: none;
}
.storefront-public .checkout-wrap input,
.storefront-public .checkout-wrap button,
.storefront-public .checkout-wrap select,
.storefront-public .checkout-wrap textarea {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    margin: 0;
}
.storefront-public .checkout-wrap button {
    cursor: pointer;
}
