﻿.whatsapp {
    position: fixed;
    left: 20px;
    bottom: 20px;
    display: flex;
    align-items: center;
    background-color: #f1f1f1;
    padding: 10px;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    z-index: 1000; /* Add this line to keep it on top */
}

.whatsapp-icon {
    width: 40px;
    height: 40px;
    margin-right: 10px;
}

.help-text {
    font-size: 14px;
    color: #333;
    line-height: 1.5;
}

.help-text-urdu {
    font-size: 12px;
    color: #333;
    direction: rtl;
    font-family: 'Noto Nastaliq Urdu', serif;
}

.whatsapp-link {
    display: flex;
    align-items: center;
    text-decoration: none;
}

span .urdu {
    font-size: 30px !important; /* Use !important as a last resort */
    color: red !important; /* Use !important as a last resort */
    direction: rtl;
    font-family: 'Noori Nastaliq', 'Noto Nastaliq Urdu', serif;
}
.overlayFix2 {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.6);
    z-index: 9;
}

.ldrpup0 {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    height: 100%;
}

    .ldrpup0 h2 span {
        width: 100%;
        display: block;
    }

/* arabic */
@font-face {
    font-family: 'Noto Nastaliq Urdu';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qt_-PK-V2t_8.woff2) format('woff2');
    unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
/* latin-ext */
@font-face {
    font-family: 'Noto Nastaliq Urdu';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qt_-PKSV2t_8.woff2) format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: 'Noto Nastaliq Urdu';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qt_-PKqV2g.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
.subLinks {
    display: flex;
    flex-wrap: wrap; /* Allows items to wrap to the next line */
    list-style-type: none; /* Removes default bullet points */
    padding: 0;
    margin: 0;
}
.urdu {
    direction: rtl !important; /* Set text direction to right-to-left for 'urdu' class */
    font-family: 'Noto Nastaliq Urdu', sans-serif !important; /* Use Noori Urdu font for 'urdu' class */
    text-align: right !important; /* Center-align text */
}
    .subLinks.urdu {
        direction: rtl !important; /* Set text direction to right-to-left for 'urdu' class */
        font-family: 'Noto Nastaliq Urdu', sans-serif !important; /* Use Noori Urdu font for 'urdu' class */
        text-align: right !important; /* Center-align text */
    }
    .subLinks li {
        flex: 1 1 25%; /* Takes up one-quarter of the width, wrapping after 4 items */
        box-sizing: border-box;
        padding: 5px; /* Optional: add padding for spacing */
    }

        .subLinks li a {
            display: block; /* Make the link fill the li */
            text-align: left; /* Center-align text */
            text-decoration: none; /* Remove underline from links */
        }

/* Tighter spacing between product cards */
.grid-products .item {
    margin-bottom: 12px;
}

.grid-products .row {
    margin-left: -5px;
    margin-right: -5px;
}

.grid-products .row > .item[class*="col-"],
.grid-products .row > [class*="col-"].item {
    padding-left: 5px;
    padding-right: 5px;
}

.grid-products .slick-slider .item {
    padding-left: 5px;
    padding-right: 5px;
}

/* Unified product card images — complete image visible, portrait-friendly box */
.grid-products .item .product-image.product-card-image {
    width: 100%;
    max-width: none;
    aspect-ratio: 3 / 4;
    height: auto;
    overflow: hidden;
    position: relative;
    background: #fff;
    border-radius: 8px;
    border: 1px solid #e8e8e8;
    margin: 0 0 8px 0;
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.06);
}

.productSlider .item {
    text-align: left;
}

.productSlider .item .product-image.product-card-image {
    width: 100%;
    max-width: none;
}

.grid-products .item .product-image.product-card-image > a {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    white-space: normal;
}

.grid-products .item .product-image.product-card-image img.primary,
.grid-products .item .product-image.product-card-image img.hover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center center;
    display: block;
    margin: 0;
    transition: opacity 0.35s ease, visibility 0.35s ease;
}

.grid-products .item .product-image.product-card-image img.hover {
    opacity: 0;
    visibility: hidden;
    transform: none;
}

.grid-products .item .product-image.product-card-image:hover img.primary {
    opacity: 0;
}

.grid-products .item .product-image.product-card-image:hover img.hover:not(.variantImg) {
    opacity: 1;
    visibility: visible;
}

/* Fallback when aspect-ratio is not supported */
@supports not (aspect-ratio: 3 / 4) {
    .grid-products .item .product-image.product-card-image {
        height: 200px;
    }
}

@media only screen and (min-width: 768px) {
    @supports not (aspect-ratio: 3 / 4) {
        .grid-products .item .product-image.product-card-image {
            height: 220px;
        }
    }
}

@media only screen and (min-width: 1200px) {
    @supports not (aspect-ratio: 3 / 4) {
        .grid-products .item .product-image.product-card-image {
            height: 240px;
        }
    }
}

/* Cart delivery banner */
.cart-delivery-banner {
    background: linear-gradient(135deg, #f0f7ff 0%, #e8f4fd 100%);
    border-bottom: 1px solid #d0e3f7;
    padding: 12px 16px;
    margin-bottom: 10px;
}

.cart-delivery-banner.is-free {
    background: linear-gradient(135deg, #e8f8ef 0%, #d4f0df 100%);
    border-bottom-color: #b8e6c8;
}

.cart-delivery-banner__inner {
    display: flex;
    align-items: center;
    gap: 12px;
}

.cart-delivery-logo {
    flex-shrink: 0;
    width: 64px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: cartLogoRide 1.8s ease-in-out infinite;
}

.cart-delivery-banner.is-free .cart-delivery-logo {
    animation: cartLogoCelebrate 0.6s ease-in-out infinite alternate;
}

.cart-delivery-logo__img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    filter: drop-shadow(0 2px 4px rgba(68, 129, 230, 0.25));
}

.cart-delivery-banner.is-free .cart-delivery-logo__img {
    filter: drop-shadow(0 2px 6px rgba(39, 174, 96, 0.35));
}

.cart-delivery-info {
    flex: 1;
    min-width: 0;
}

.cart-delivery-charge-label {
    margin: 0 0 4px;
    font-size: 14px;
    font-weight: 600;
    color: #222;
}

.cart-delivery-charge-label strong {
    color: #4481e6;
}

.cart-delivery-banner.is-free .cart-delivery-charge-label strong {
    color: #27ae60;
}

.cart-delivery-message {
    margin: 0 0 8px;
    font-size: 12px;
    color: #555;
    line-height: 1.4;
}

.cart-delivery-banner.is-free .cart-delivery-message {
    color: #1e8449;
    font-weight: 600;
}

.cart-delivery-progress {
    height: 6px;
    background: #dce8f5;
    border-radius: 3px;
    overflow: hidden;
    margin-bottom: 4px;
}

.cart-delivery-progress__bar {
    height: 100%;
    width: 0%;
    background: linear-gradient(90deg, #4481e6, #6ca3ff);
    border-radius: 3px;
    transition: width 0.4s ease;
}

.cart-delivery-banner.is-free .cart-delivery-progress__bar {
    background: linear-gradient(90deg, #27ae60, #58d68d);
    width: 100% !important;
}

.cart-delivery-points {
    margin: 0;
    font-size: 11px;
    color: #777;
}

@keyframes cartLogoRide {
    0%, 100% { transform: translateX(0) translateY(0); }
    25% { transform: translateX(4px) translateY(-2px); }
    50% { transform: translateX(8px) translateY(0); }
    75% { transform: translateX(4px) translateY(-2px); }
}

@keyframes cartLogoCelebrate {
    0% { transform: scale(1) translateY(0); }
    100% { transform: scale(1.1) translateY(-4px); }
}

.grocery-section {
    padding-top: 20px;
}

.grocery-grid {
    margin: 0 -10px;
}

.grocery-grid > [class*="col-"] {
    padding: 10px;
}

.grocery-card {
    display: block;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 8px;
    overflow: hidden;
    text-align: center;
    text-decoration: none;
    color: inherit;
    height: 100%;
    transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.grocery-card:hover {
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.12);
    transform: translateY(-3px);
    color: inherit;
}

.grocery-card__image {
    height: 160px;
    overflow: hidden;
    background: #f4f4f4;
}

.grocery-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

.grocery-card:hover .grocery-card__image img {
    transform: scale(1.08);
}

.grocery-card__title {
    margin: 14px 0 4px;
    font-size: 16px;
    font-weight: 600;
}

.grocery-card__link {
    display: inline-block;
    margin-bottom: 16px;
    font-size: 13px;
    color: #df6404;
}

@media (max-width: 767px) {
    .grocery-card__image {
        height: 120px;
        font-size: 15px;
    }
}

.order-submit-loader {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.92);
}

.order-submit-loader__box {
    text-align: center;
}

.order-submit-loader__box img {
    max-width: 180px;
    height: auto;
    display: block;
    margin: 0 auto 16px;
}

.order-submit-loader__box p {
    margin: 0;
    font-size: 18px;
    color: #333;
    letter-spacing: 0.5px;
}

.select2-container .select2-selection--single {
    height: 44px;
    border: 1px solid #e8e8e8;
    border-radius: 4px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 42px;
    padding-left: 12px;
    color: #222;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 42px;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
    border: 1px solid #ccc;
    padding: 8px;
}

.checkout-page-title,
.page.section-header h1.checkout-page-title {
    text-transform: lowercase !important;
}
