@import url('https://fonts.googleapis.com/css2?family=Roboto+Flex:opsz,wght@8..144,100..1000&display=swap');

:root {
    --site-font: "Roboto Flex", serif;
    --remixicon: "remixicon", serif;
    --gen-cart-light-blue: #82CCFA;
    --gen-cart-blue: #0495F1;
    --gen-cart-blue-rgba: rgba(4,149,241,0.16);
    --gen-cart-dark-blue: #023960;
    --gen-cart-black: #151F27;
    --gen-cart-gray: #2E3A44;
    --gen-cart-light-gray: #A3A3A3;
    --gen-cart-light-gray-v2: #E4E4E4;
    --gen-cart-light-gray-v3: #F0F0F0;
    --gen-cart-light-gray-v4: #F7F7F7;
    --gen-cart-light-gray-v5: #FCFCFC;
    --gen-cart-red: #E45A60;
    --gen-cart-dark-red: #dc3545;
    --gen-cart-green: #3AA76D;
    --gen-cart-dark-green: #198754;
    --gen-cart-yellow: #F4A261;
    --gen-cart-menu-height: 132px;
    --gen-semibold-transform: 1;
    --gen-bold-transform: 1.02;
}

body {
    font-family: var(--site-font, sans-serif);
    font-optical-sizing: auto;
    font-weight: 300;
    color: var(--gen-cart-black);
    height: 100vh;
    overflow-x: hidden;
    font-size: 0.95rem;
    background-color: #F8F8F8;
    /* line-height: 1.4; */
    position: relative;
}

body.scroll-off {
    overflow: hidden;
}

*:focus { box-shadow: none !important; }

h1,h2,h3,h4,h5,h6 { font-weight: 400; font-style: normal; }

.font-light {
    font-family: var(--site-font, sans-serif);
    font-weight: 200 !important;
}

.font-regular {
    font-family: var(--site-font, sans-serif);
    font-weight: 300 !important;
}

.font-semibold, .custom-form-label {
    font-family: var(--site-font, sans-serif);
    font-weight: 500 !important;
    transform: scaleY(var(--gen-semibold-transform));
}

.font-bold, b, strong, .site-heading {
    font-family: var(--site-font, sans-serif);
    font-weight: 700 !important;
    transform: scaleY(var(--gen-bold-transform));
}

.site-heading-icon-text { position: relative; display: inline-block; }

.site-heading-icon-text::after {
    content: "";
    display: inline-block;
    /* background-color: #198754; */
    width: 14px;
    height: 10px;
    background-image: url(../../images/assets/top-icon.svg);
    background-repeat: no-repeat;
    background-size: 100% auto;
    line-height: 0;
    position: absolute;
    top: 0;
    opacity: 0.2;
}

.font-ex-sm { font-size: 0.65em; }
.font-sm { font-size: 0.8em; }
.custom-form-label { font-size: 0.9em; margin-bottom: 0.5em; }
.font-rg { font-size: 1em; }
.font-md { font-size: 1.6em; }
.font-md-2 { font-size: 1.8em; }
.font-lg { font-size: 2.4em; }
.font-xl { font-size: 2.8em; }
.font-xl, .font-lg, .font-md-2, .font-md, .font-rg { line-height: 1.3; }
.lead { font-size: 1.2em; line-height: 1.4; font-weight: 400; }

.lh-0 { line-height: 0 !important; }
.lh-1 { line-height: 1 !important; }
.lh-2 { line-height: 1.2 !important; }
.lh-3 { line-height: 1.3 !important; }
.lh-4 { line-height: 1.4 !important; }
.lh-5 { line-height: 1.5 !important; }

.c-padding  { padding: 2.4em; }
.cy-padding, .cyt-padding { padding-top: 4.8em }
.cy-padding, .cyb-padding { padding-bottom: 4.8em }

.site-light-blue { color: var(--gen-cart-light-blue) !important; }
.site-blue { color: var(--gen-cart-blue) !important; }
.site-dark-blue { color: var(--gen-cart-dark-blue) !important; }
.site-black { color: var(--gen-cart-black) !important; }
.site-gray { color: var(--gen-cart-gray) !important; }
.site-light-gray { color: var(--gen-cart-light-gray) !important; }
.site-light-gray-v2 { color: var(--gen-cart-light-gray-v2) !important; }
.site-light-gray-v3 { color: var(--gen-cart-light-gray-v3) !important; }
.site-light-gray-v4 { color: var(--gen-cart-light-gray-v4) !important; }
.site-light-gray-v5 { color: var(--gen-cart-light-gray-v5) !important; }
.site-red { color: var(--gen-cart-red) !important; }
.site-green { color: var(--gen-cart-green) !important; }
.site-yellow { color: var(--gen-cart-yellow) !important; }

.bg-site-light-blue { background-color: var(--gen-cart-light-blue) !important; }
.bg-site-blue { background-color: var(--gen-cart-blue) !important; }
.bg-site-dark-blue { background-color: var(--gen-cart-dark-blue) !important; }
.bg-site-black { background-color: var(--gen-cart-black) !important; }
.bg-site-gray { background-color: var(--gen-cart-gray) !important; }
.bg-site-light-gray { background-color: var(--gen-cart-light-gray) !important; }
.bg-site-light-gray-v2 { background-color: var(--gen-cart-light-gray-v2) !important; }
.bg-site-light-gray-v3 { background-color: var(--gen-cart-light-gray-v3) !important; }
.bg-site-light-gray-v4 { background-color: var(--gen-cart-light-gray-v4) !important; }
.bg-site-light-gray-v5 { background-color: var(--gen-cart-light-gray-v5) !important; }
.bg-site-red { background-color: var(--gen-cart-red) !important; }
.bg-site-green { background-color: var(--gen-cart-green) !important; }
.bg-site-yellow { background-color: var(--gen-cart-yellow) !important; }

.bg-blue-gradient { background-image: linear-gradient(to left bottom, #abdcff, #89ccff, #67baff, #42a9ff, #0396ff); }
.bg-orange-gradient { background-image: linear-gradient(to left bottom, #feb692, #faa07e, #f5896d, #f0705f, #ea5455); }
.bg-purple-gradient { background-image: linear-gradient(to left bottom, #e2b0ff, #d296f4, #c17ce9, #b061de, #9f44d3); }
.bg-green-gradient { background-image: linear-gradient(to left bottom, #90f7ec, #7cece0, #67e1d4, #4fd7c8, #32ccbc); }
.bg-pink-gradient { background-image: linear-gradient(to left bottom, #f6ceec, #f2ade4, #ec8bdc, #e367d4, #d939cd); }
.bg-red-gradient { background-image: linear-gradient(to left bottom, #ff9a9e, #ff8b94, #ff758f, #ff5e8a, #ff4485); }
.bg-teal-gradient { background-image: linear-gradient(to left bottom, #a0f1ea, #7ee4df, #5dd7d3, #3ccac7, #1bbebc); }
.bg-yellow-gradient { background-image: linear-gradient(to left bottom, #fdfb92, #fce470, #fccc4f, #fcb42d, #fca903); }
.bg-indigo-gradient { background-image: linear-gradient(to left bottom, #c3cfe2, #aab8e1, #8fa0e0, #7287de, #5365dc); }
.bg-dark-gradient { background-image: linear-gradient(to left bottom, #3e3e3e, #2e2e2e, #1e1e1e, #101010, #000000); }

.bg-sunset-gradient { background-image: linear-gradient(to left bottom, #ff9a8b, #ff6a88, #ff99ac, #fcb69f, #f6d365); }
.bg-forest-gradient { background-image: linear-gradient(to left bottom, #dce35b, #45b649, #3ca55c, #2b8740, #1e6f2d); }
.bg-sky-gradient { background-image: linear-gradient(to left bottom, #a1c4fd, #c2e9fb, #d3f4ff, #e6faff, #f7fcff); }
.bg-fire-gradient { background-image: linear-gradient(to left bottom, #f12711, #f56021, #fc8a3f, #fdbb59, #ffe259); }
.bg-ice-gradient { background-image: linear-gradient(to left bottom, #83a4d4, #b6fbff, #c6fced, #d9fff8, #eefbfb); }
.bg-mint-gradient { background-image: linear-gradient(to left bottom, #a8edea, #fed6e3, #e0c3fc, #8ec5fc, #89f7fe); }
.bg-rose-gradient { background-image: linear-gradient(to left bottom, #ffdde1, #ee9ca7, #ffb6b9, #fcd5ce, #fae1dd); }
.bg-night-gradient { background-image: linear-gradient(to left bottom, #434343, #2c3e50, #1f1f1f, #0f2027, #000000); }
.bg-coral-gradient { background-image: linear-gradient(to left bottom, #ff7e5f, #feb47b, #fca67e, #f8756c, #f953c6); }
.bg-ocean-gradient { background-image: linear-gradient(to left bottom, #00c9ff, #92fe9d, #6efacc, #48c6ef, #00b3ff); }
.bg-peach-gradient { background-image: linear-gradient(to left bottom, #ffe0c3, #fac8b0, #f9a799, #f98866, #ff6f61); }
.bg-violet-gradient { background-image: linear-gradient(to left bottom, #d4fc79, #96e6a1, #a18cd1, #fbc2eb, #fad0c4); }
.bg-ruby-gradient { background-image: linear-gradient(to left bottom, #dd5e89, #f7bb97, #ff9a8b, #e96443, #904e95); }
.bg-aqua-gradient { background-image: linear-gradient(to left bottom, #00d2ff, #3a7bd5, #5edfff, #6bc1ff, #89f7fe); }
.bg-brown-gradient { background-image: linear-gradient(to left bottom, #d7ccc8, #bcaaa4, #a1887f, #8d6e63, #795548); }

.img-full-width { width: 100%; height: auto; }
.img-180px { height: 180px; width: auto; border-radius: 180px; }
.text-decoration-none { text-decoration: none; }
.text-decoration-underline { display: inline-block; text-decoration: none !important; margin-right: 0.4rem; }
.text-decoration-underline:hover { text-decoration: underline !important; }

.custom-container, .custom-container-x { padding-right: 1.5em; padding-left: 1.5em; }
.custom-container, .custom-container-y { padding-top: 1.6em; padding-bottom: 3em; }
.static-container { 
    background-color: #fff;
    padding: 1.5em;
}

.custom-container-panel { 
    padding: 1.6em 0.8em 3em 0.8em;
}

td.td-custom-padding { padding: 10px 8px 6px 8px; }

.truncate-container { 
    max-width: 100%; 
    overflow: hidden; 
    white-space: nowrap;
}

.card-shadow { box-shadow: 0 30px 70px #010f1c1a; }

.custom-alert {
    display: inline-block;
    font-size: 0.75em; line-height: 1;
    border-radius: 2px !important;
    padding: 4px 6px;
    margin: 0 4px 4px 0;
}

.row-flex {
    display: flex;
    flex-wrap: wrap;
}

.row-flex .content { height: 100%; }

.form-control { border-radius: 2px; min-height: 40px; padding: 0.4em 0.75em 0.3em 0.75em !important; font-size: .95em; }
.form-control:not(textarea) { min-width: 140px; }
/* .form-check-input { margin-top: 1.5px !important; } */
.form-control-file { padding-top: 0.40rem !important; }

.form-check-input[type=checkbox] { border-radius: 0; }
.form-check-input { margin-top: 1px; }

.form-check-input { 
    transition: all .2s ease;
}

.form-check-input:checked { 
    background-color: var(--gen-cart-blue);
    border-color: var(--gen-cart-blue);
}

.filter-checkbox-label { 
    cursor: pointer; 
    line-height: 1.3;
    margin-bottom: 0.24em;
    font-size: 0.9em;
}

.filter-checkbox-label input:checked ~ span {
    color: var(--gen-cart-blue);
    cursor: pointer;
}

.form-control::placeholder {
    color: var(--gen-cart-light-gray);
 }

.success-alert { border-radius: 0; }
.success-alert img { mix-blend-mode: multiply; }

.custom-container { 
    padding: 1.6em 1.5em 3em 1.5em;
}

/* btn css */
.site-btn {
    /* display: inline-flex;
    align-items: center;
    justify-content: center; */
    display: inline-block;
    padding: 8px 12px 6px 12px;
    min-height: 40px;
    font-size: 1em;
    line-height: 1.3;
    border-radius: 2px;
    /* border: 1px solid #000; */
    cursor: pointer;
    white-space: normal;
    position: relative;
    transition: all 0.3s ease-in-out;
    margin-bottom: 0.3rem;
    margin-right: 0.3rem;
    word-break: break-word;
    font-weight: 500;
}

a.site-btn { padding: 10px 12px 6px 12px; }
.site-btn.icn-bf, .alert-grid.icn-bf { padding-left: 36px; text-align: left; }
.site-btn.icn-bf.no-text { padding-left: 26px; }

.site-btn.icn-af, .alert-grid.icn-af { padding-right: 36px; text-align: right; }
.site-btn.icn-af.no-text { padding-right: 26px; }

.site-btn.icn-bf i, 
.site-btn.icn-af i,
.alert-grid.icn-bf i, 
.alert-grid.icn-af i {
    position: absolute;
}

.site-btn.icn-bf i { left: 9px; top: 12px; }
.site-btn.icn-bf.no-text i { left: 8.5px; top: 12px; }
.site-btn.icn-af i { right: 9px; top: 12px; }
.site-btn.icn-af.no-text i { right: 8.5px; top: 12px; }

/* .site-btn.icn-grid.icn-bf::before { left: 19px !important; top: 17px !important; }
.site-btn.icn-grid.icn-af::after { right: 19px !important; top: 17px !important; } */

.alert-grid.icn-bf i { left: 9px; top: 12px; }
.alert-grid.icn-af i { right: 9px; top: 12px; }

.alert-grid { padding: .5em .75rem .4em .75em; border-radius: 2px; min-height: 40px; }

.site-blue-btn,
.site-blue-btn:active,
.site-blue-btn:visited,
.site-blue-btn:focus {
    background-color: var(--gen-cart-blue) !important;
    border-color: var(--gen-cart-blue) !important;
    color: #fff !important;
    box-shadow: none !important;
}

.site-blue-btn:hover, .site-blue-btn:active {
    background-color: var(--gen-cart-dark-blue) !important;
    border-color: var(--gen-cart-dark-blue) !important;
    color: #fff !important;
}

.site-btn.btn-danger {
    background-color: var(--gen-cart-red) !important;
    border-color: var(--gen-cart-red) !important;
    color: #fff;
}

.site-btn.btn-danger:hover, .site-btn.btn-danger:active {
    background-color: var(--gen-cart-dark-red) !important;
    border-color: var(--gen-cart-dark-red) !important;
}

.site-btn.btn-success {
    background-color: var(--gen-cart-green) !important;
    border-color: var(--gen-cart-green) !important;
    color: #fff;
}

.site-btn.btn-success:hover, .site-btn.btn-success:active {
    background-color: var(--gen-cart-dark-green) !important;
    border-color: var(--gen-cart-dark-green) !important;
}

/* outlined button css */
.site-blue-outline-btn {
    background-color: transparent !important;
    border: 1px solid var(--gen-cart-blue) !important;
    color: var(--gen-cart-blue) !important;
}

.site-btn.site-blue-outline-btn:hover, .site-btn.site-blue-outline-btn:active {
    background-color: var(--gen-cart-blue) !important;
    color: #fff !important;
}

.site-btn.btn-outline-danger:hover, .site-btn.btn-outline-danger:active {
    background-color: var(--gen-cart-green) !important;
    color: #fff !important;
}

.site-blue-outline-btn:hover, .site-blue-outline-btn:active {
    background-color: var(--gen-cart-red) !important;
    color: #fff !important;
}

.site-btn.btn-outline-danger:hover, .site-btn.btn-outline-danger:active {
    background-color: var(--gen-cart-red) !important;
    color: #fff !important;
}

.site-blue-outline-btn:hover, .site-blue-outline-btn:active {
    background-color: var(--gen-cart-green) !important;
    color: #fff !important;
}

/* custom-list */
.custom-check-list-ul, .custom-list-ul {
    margin: 0;
    padding: 0 0 0 18px;
}

.custom-list-ul li { margin-bottom: 0.4em; }

.custom-check-list-ul li {
    list-style: none;
    position: relative;
    padding-left: 0.8rem;
    margin-bottom: 0.4rem;
}

.custom-check-list-ul li:before {
    content: "\eb82";
    display: inline-block;
    width: 20px;
    height: 20px;
    /* background-color: #015088; */
    position: absolute;
    left: -1rem;
    top: 0.5px;
    font-family: var(--remixicon);
    font-size: 1.5em;
    color: var(--gen-cart-blue);
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* custom checkbox */
.checkout-custom-label {
    display: flex;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    margin-bottom: 0.8em;
}

.checkout-custom-label input {
    position: absolute;
    left: -9999px;
}

.checkout-custom-label input:checked + span {
    background-color: var(--gen-cart-blue);
    color: #fff;
}

.checkout-custom-label input:checked + span:before {
    box-shadow: inset 0 0 0 0.4375em #005d86;
}

.checkout-custom-label > span {
    position: relative;
    padding: 0.9em 1em 0.9em 3.5em;
    /* border-radius: 99em; */
    transition: 0.25s ease;
    width: 100%;
    display: block;
    border: 1px solid var(--gen-cart-light-gray-v4);
    min-height: 48px;
    font-weight: 400;
    transform: scaleY(var(--gen-semibold-transform));
}

.checkout-custom-label > span:hover {
    background-color: var(--gen-cart-light-gray-v4);
}

.checkout-custom-label > span:before {
    display: block;
    flex-shrink: 0;
    content: "";
    background-color: #fff;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    transition: 0.25s ease;
    box-shadow: inset 0 0 0 0.125em #005d86;
    position: absolute;
    left: 13px;
    top: 50%;
    transform: translateY(-50%);
}

.checkout-custom-label.checkout-custom-v2 > span:before {
    top: 14px;
    transform: none;
}

.checkout-amount { 
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-right: 10px;
    margin: 0;    
}

.checkout-amount span { white-space: nowrap; }

/* header info css */
#headerInfo {
    height: 36px;
    background-color: var(--gen-cart-blue);
    padding-top: 6px;
}

#headerInfo .container {
    position: relative;
}

#headerInfo a {
    color: #fff;
    text-decoration: none;
    font-size: 0.9rem;
    position: relative;
}

#headerInfo a:nth-child(2) {
    position: absolute;
    right: .75em;
}

#headerInfo a:nth-child(2) { padding: 1px 0 0 26px; }
#headerInfo a:nth-child(2) span { text-decoration: underline; }

#headerInfo a:nth-child(2) i {
    font-size: 1.4em;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
}

/* header menu css */
#header {
    background-color: #fff;
    width: 100%;
    height: 86px;
    border-bottom: 1px solid var(--gen-cart-light-gray-v3);
}

#header #navLogo {
    display: inline-block;
    width: 180px;
    height: 86px;
    background-image: url(../../images/logo.svg);
    background-repeat: no-repeat;
    background-size: auto 60px;
    background-position: 0px 12px;
    /* background-color: #38CB89; */
}

#header.header-sticky {
    position: fixed;
    top: 0;
    left: 0;
    margin: auto;    
    width: 100%;
    box-shadow: 0 0 60px 0 rgba(0, 0, 0, 0.07);
    z-index: 100;
    animation: fadeInDown 300ms ease-in-out;
}

#headerShortMenu { 
    padding: 0; 
    margin: 0; 
    float: right;
    margin-top: 22px;
}

#headerShortMenu li {
    list-style: none;
    display: inline-block;
    margin-right: 6px;
    background-color: var(--gen-cart-light-gray-v5);
    border-radius: 50%;
    display: inline-block;
    width: 40px;
    height: 40px;
}

#headerShortMenu li:last-child { margin-right: 0; }

#headerShortMenu li a, 
#headerShortMenu li:nth-child(1) span,
#headerShortMenu li:nth-child(2) span {
    display: block;
    width: 100%;
    height: 100%;
    /* background-color: #38CB89; */
    text-decoration: none;
    color: var(--gen-cart-black);
    position: relative;
    cursor: pointer;
    float: left;
}

#headerShortMenu li:nth-child(2):has(span) { background-color: var(--gen-cart-green); }
#headerShortMenu li:nth-child(2) span i { color: #fff; }

#headerShortMenu li i {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
    font-size: 1.6em;
}

#headerShortMenu li:nth-child(3) a span {
    display: block;
    width: 18px;
    padding: 2px 0 0px 0;
    border-radius: 14px;
    font-size: 0.6em;
    line-height: 1.2;
    background-color: #ee4380;
    text-align: center;
    color: #fff;
    position: absolute;
    right: 5px;
    top: 5px;
    overflow: hidden;
    /* border: 2px solid #fff; */
    outline: 2px solid #fff;
}

@keyframes fadeInDown {
    0% {
        opacity: 0;
        transform: translateY(-20px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

#appDownloadDropdownContainer { 
    position: relative;
    float: right;
    margin-right: 20px;
}

#appDownloadBtn {
    display: inline-block;
    height: 40px;
    line-height: 40px;
    border-radius: 40px;
    margin-top: 22px;
    background-color: var(--gen-cart-green);
    padding: 0em 2.4em 0em 1.2em;
    color: #fff;
    position: relative;
    cursor: pointer;
    z-index: 10;
    font-weight: 700;
    transition: all .2s ease-in;
}

#appDownloadBtn:hover { background-color: var(--gen-cart-blue); }

#appDownloadBtn i { 
    position: absolute;
    right: 12px;
    top: 2px;
    font-size: 1.1em;
}

#appDownloadContainer {
    margin: 0;
    padding: 0;
    position: absolute;
    left: 0px;
    top: 0px;
    display: block;
    opacity: 0;
    transform: translateY(24px);
    transition: all 0.3s ease-in-out;
    visibility: hidden;
    z-index: 9;
    border-radius: 4px;
    overflow: hidden;
    width: 160px;
    border: 1px solid var(--gen-cart-light-gray);
}

#appDownloadContainer.active { 
    opacity: 1;
    transform: translateY(66px);
    visibility: visible;
}

#appDownloadContainer li {
    list-style: none;
    display: block;
    height: 44px;
    border-bottom: 1px solid var(--gen-cart-light-gray);
}

#appDownloadContainer li a {
    display: block;
    height: 100%;
    width: 162px;
    background-color: #000;
    background-image: url(../../images/assets/google-playstore.svg);
    background-repeat: no-repeat;
    background-size: auto 28px;
    background-position: center center;
}

#appDownloadContainer li:nth-child(2) { border-bottom: 0 none; }
#appDownloadContainer li:nth-child(2) a { 
    background-image: url(../../images/assets/app-store.svg);
    background-size: auto 29px;

}

/* customer login menu */
#customerDropdownContainer {
    width: 240px;
    background-color: #fff;
    position: absolute;
    top: 86px;
    right: .5rem;
    padding: 12px;
    z-index: 10;
    border: 1px solid var(--gen-cart-light-gray-v3);
    border-top: 0 none;
    opacity: 0;
    transform: translateY(-12px);
    transition: all 0.3s ease-in-out;
    visibility: hidden;
}

#customerDropdownContainer.active { 
    opacity: 1;
    transform: translateY(0px);
    visibility: visible;
}

#customerDropdownContainer .profile-update-link {
    display: block;
    text-decoration: none;
    color: var(--gen-cart-black);
}

#customerDropdownContainer .profile-update-link span { display: block; }

#customerDropdownMenu { 
    margin: 10px 0 0 0; 
    padding: 10px 0 0 0; 
    border-top: 1px solid var(--gen-cart-light-gray-v3);
}

#customerDropdownMenu li {
    list-style: none;
    display: block;
}

#customerDropdownMenu li a {
    display: block;
    text-decoration: none;
    padding: 8px 8px 8px 34px;
    color: var(--gen-cart-black);
    font-weight: 500;
    transform: scaleY(var(--gen-semibold-transform));
    position: relative;
    transition: all .2s ease;
}

#customerDropdownMenu li a i {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    border-radius: 24px;
    background-color: var(--gen-cart-light-gray-v3);
    color: var(--gen-cart-black);
    position: absolute;
    left: 0;
    top: 7px;
    font-size: 1rem;
    font-weight: initial;
    text-align: center;
    line-height: 1.5;
}

#customerDropdownMenu li a:hover { color: var(--gen-cart-blue); }

/* search container */
#searchContainer { 
    display: block;
    width: 100%;
    /* min-height: 400px; */
    /* background-color: #00aaff; */
    position: fixed;
    top: 0px;
    left: 0;
    z-index: 999;
    background: #fff;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
    padding: 3em 1em;
    border-bottom: 1px solid var(--gen-cart-light-gray-v3);
    box-shadow: 0 8px 6px -6px rgba(0, 0, 0, 0.05);
}

#searchContainerClose, .product-filter-panel #closeFilterPanel, #customerPanelCloseSidebar { 
    display: inline-block;
    height: 24px;
    width: 24px;
    border-radius: 24px;
    color: var(--gen-cart-red);
    position: absolute;
    right: 12px;
    top: 12px;
    cursor: pointer;
    font-size: 1.6em;
    line-height: 24px;
    z-index: 1;
}

#searchContainer.active { 
    opacity: 1;
    visibility: visible;
}

/* auto complete css */
#custom_search_container {
    background: #fff;
    width: 100%;
    border-radius: 5px;
    position: relative;
}

#custom_search_container input,
#custom_search_container_index input {
    display: block;
    width: 100%;
    height: 48px;
    outline: none;
    border: none;
    padding: 8px 12px 8px 48px;
    border-radius: 3px;
    border: 1px solid var(--gen-cart-light-gray-v2);
    font-weight: 400;
    position: relative;
    background: #fff;
}

#custom_search_container .search-icon, 
#custom_search_container_index .search-icon {
    display: inline-block;
    height: 24px;
    width: 24px;
    position: absolute;
    left: 12px;
    top: 12px;
    color: var(--gen-cart-blue);
    /* background-color: #00aaff; */
    font-size: 24px;
    line-height: 1.1;
}

#custom_search_container_result, 
#custom_search_container_result_index,
.custom_autocomplete_container_result {
    padding: 0;
    opacity: 0;
    pointer-events: none;
    max-height: 240px;
    overflow-y: auto;
    border: 1px solid var(--gen-cart-light-gray-v2);
    position: absolute;
    left: 0;
    top: 47px;
    background-color: #fff;
    width: 100%;
    z-index: 1;
}

.custom_autocomplete_container_result { top: 40px; }

#custom_search_container_result.active, 
#custom_search_container_result_index.active,
.custom_autocomplete_container_result.active {
    padding: 10px 8px;
    opacity: 1;
    pointer-events: auto;
}

#custom_search_container_result ul, 
#custom_search_container_result_index ul,
.custom_autocomplete_container_result ul { padding-left: 0; margin-bottom: 0; }

#custom_search_container_result li, 
#custom_search_container_result_index li,
.custom_autocomplete_container_result li {
    list-style: none;
    padding: 12px 12px 10px 12px;
    display: none;
    width: 100%;
    cursor: default;
    cursor: pointer;
    font-weight: 400;
    transition: all .2s ease;
}

#custom_search_container_result li a, 
#custom_search_container_result_index li a { 
    display: block;
    text-decoration: none;
    color: var(--gen-cart-black);
}

#custom_search_container_result li.product-wrapper,
#custom_search_container_result_index li.product-wrapper { 
    padding: 12px 90px 10px 12px; 
    position: relative; 
}

#custom_search_container_result li, 
#custom_search_container_result_index li, 
.custom_autocomplete_container_result li { 
    display: block; 
    border-bottom: 1px solid var(--gen-cart-light-gray-v3); 
}

#custom_search_container_result li:last-child, 
#custom_search_container_result_index li:last-child,
.custom_autocomplete_container_result li:last-child { border-bottom: 0 none; }

#custom_search_container_result li:hover, 
#custom_search_container_result_index li:hover,
.custom_autocomplete_container_result li:hover { background: var(--gen-cart-blue-rgba); }

#custom_search_container_result li p,
#custom_search_container_result_index li p { margin: 4px 0 1px 0; font-size: 0.75em; }

#custom_search_container_result .other-price,
#custom_search_container_result .our-price,
#custom_search_container_result_index .other-price,
#custom_search_container_result_index .our-price {
    display: inline-block;
    padding: 2px 4px 1px 4px;
    border-radius: 2px;
}

#custom_search_container_result .our-price,
#custom_search_container_result_index .our-price {
    background-color: var(--gen-cart-green);
    color: #fff;
}

#custom_search_container_result .other-price,
#custom_search_container_result_index .other-price {
    margin: 0 2px 4px 0;
    background-color: var(--gen-cart-light-gray-v3);
    color: var(--gen-cart-gray);
}

#custom_search_container_result .search-product-enquiry, 
#custom_search_container_result .search-product-add-to-cart,
#custom_search_container_result_index .search-product-enquiry, 
#custom_search_container_result_index .search-product-add-to-cart {
    display: inline-block;
    height: 32px;
    width: 32px;
    font-size: 24px;
    line-height: 1.4;
    text-align: center;
    border-radius: 2px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
    /* background-color: var(--gen-cart-light-gray); */
}

#custom_search_container_result .search-product-enquiry, 
#custom_search_container_result_index .search-product-enquiry {
    right: 50px;
    color: var(--gen-cart-blue);
    /* background-color: var(--gen-cart-light-blue); */
}

#custom_search_container_result .search-product-add-to-cart, 
#custom_search_container_result_index .search-product-add-to-cart {
    color: var(--gen-cart-green);
}

/* footer */
#footer {
    border-top: 4px solid var(--gen-cart-light-blue);
    background-image: url(../../images/assets/footer-bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

.footer-links { margin: 0; padding: 0; }

.footer-links li {
    list-style: none;
    display: block;
    margin-bottom: 0.6rem;
}

.footer-links li a {
    display: block;
    text-decoration: none;
    color: #fff;
    font-size: 0.9rem;
    font-weight: 500;
    transform: scaleY(var(--gen-semibold-transform));
    padding-left: 14px;
    position: relative;
    transition: all .2s ease;
}

.footer-links li a:hover { text-decoration: underline; }

.footer-links li a::after { 
    content: "";
    background-color: #fff;
    border-radius: 50%;    
    height: 4px;
    width: 4px;
    left: 0;
    position: absolute;
    top: 8px;
}

.social-media-container, .product-social-media-container { margin: 0; padding: 0; }
.social-media-container li, .product-social-media-container li { list-style: none; display: inline-block; }

.social-media-container li a, .product-social-media-container li a { 
    display: block;
    height: 40px;
    width: 40px;
    background-color: #fff;
    text-decoration: none;
    color: #fff;
    text-align: center;
    border-radius: 2px;
    transition: all .2s ease;
}

.social-media-container li a {
    background-image: url(../../images/assets/social-media-icons.svg);
    background-repeat: no-repeat;
    background-size: auto 48px;
    background-position: -4.2px -4px;
    box-shadow: 0 2px 2px rgba(0,0,0,0.15);
}

.product-social-media-container li a { 
    color: var(--gen-cart-light-gray); 
    border: 1px solid var(--gen-cart-light-gray-v3);
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-social-media-container li a i { font-size: 1.3em; }

.social-media-container li a:hover, .product-social-media-container li a:hover {
    box-shadow: none;
    background-color: var(--gen-cart-light-gray-v4);
    color: var(--gen-cart-blue);
}

.social-media-container li:nth-child(2) a { background-position: -48.5px -4px; }
.social-media-container li:nth-child(3) a { background-position: -92.8px -4px; }
.social-media-container li:nth-child(4) a { background-position: -137.4px -4px; }
.social-media-container li:nth-child(5) a { background-position: -181.2px -4px; }

#footerPaymentGateway { margin: 0; padding: 0; float: right; }

#footerPaymentGateway li {
    display: inline-block;
    float: left;
    margin: 0 4px 4px 0;
    width: 56px;
    height: 30px;
    background-image: url(../../images/payment-gateway.jpg);
    background-repeat: no-repeat;
    border-radius: 2px;
    background-size: auto 40px;
    background-position: -0px -5.6px;
    box-shadow: 0 2px 2px rgba(0,0,0,0.15);
}

#footerPaymentGateway li:nth-child(2) { background-position: -56px -5.6px; }
#footerPaymentGateway li:nth-child(3) { background-position: -109px -5.6px; }
#footerPaymentGateway li:nth-child(4) { background-position: -161px -5.6px; width: 60px; }
#footerPaymentGateway li:nth-child(5) { background-position: -224.5px -5.6px; }
#footerPaymentGateway li:nth-child(6) { background-position: -285px -5.6px; width: 60px; }
#footerPaymentGateway li:nth-child(7) { background-position: -345px -5.6px; }

/* homepage short categories */
#homeShortCategory .short-category-container {
    text-decoration: none;
    color: var(--gen-cart-black-v2);
}

#homeShortCategory .content {
    text-align: center;
    padding: 1.6rem;
    /* padding: 4rem; */
    position: relative;
    border-radius: 8px;
}

#homeShortCategory .content img {
    height: 140px;
    width: auto;
    border-radius: 140px;
    box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.02);
}

/* category grid */
.categories-grid { 
    padding: 1em; 
    text-decoration: none;
    color: var(--gen-cart-black);
    transition: all .2s ease-in;
}

.categories-grid:hover { color: var(--gen-cart-blue); }
.categories-grid:hover .category-img { margin-bottom: 4px; }

.categories-grid .category-img {
    width: 100%;
    height: auto;
    border-radius: 50%;
    transition: all .2s ease-in;
    outline: 4px solid rgba(60, 148, 209, 0.1);
}

.categories-grid .category-title {
    text-align: center;
    margin-top: 1rem;
}

/* home slider */
#homeSlider { position: relative; }

#homeSlider .item { 
    display: block; 
    text-decoration: none;
}

#homeSlider .owl-dots {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
}

#homeSlider .owl-dots span {
    margin: 4px 4px;
    background-color: #fff;
}

#homeSlider .owl-dot.active span { background-color: var(--gen-cart-black); }

/* product grid */
.product-card { position: relative; padding-bottom: 96px; }
.product-overlay { position: relative; overflow: hidden; }

.product-price-container {
    display: block;
    width: 100%;
    position: absolute;
    bottom: 0;
}

.product-img-container {
    position: relative;
    display: inline-block;
    vertical-align: top;
    background: var(--gen-cart-light-gray-v4);
    border-radius: 10px;
    padding: 10px;
    width: 100%;
    text-align: center;
    margin-bottom: 10px;
    overflow: hidden;
    border: 1px solid var(--gen-cart-light-gray-v3);
}

.product-card .image-container, .cart-table-responsive .image-container {
    width: 100%;
    height: 240px;
    overflow: hidden;
    position: relative;
}

.product-card .product-add-cart-container { 
    display: inline-block;
    float: left;
    /* border: 1px solid #000; */
}

.product-card div .product-add-cart-container:nth-of-type(1) { margin-right: 0.8em; }

.product-card .bestseller {
    color: #00aaff;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 10px;
    background-color: #fff;
    display: inline-block;
    padding: 6px 6px 6px 6px;
    line-height: 1;
    border-radius: 4px;
    position: absolute;
    left: 10px;
    top: 10px;
    overflow: hidden;
    pointer-events: none;
}

.product-card .bestseller::before, .product-card .product-badge.shine::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(
        120deg,
        rgba(255,255,255, 0) 30%,
        rgba(255,255,255, .8),
        rgba(255,255,255, 0) 70%
    );
    top: 0;
    left: -10px;
    animation: bestseller-shine 2s infinite linear;
}

@keyframes bestseller-shine {
    0% { left: -40px }
    20% { left: 40% }
    100% { left: 100% }
}

.product-card .product-badge, 
.product-card .product-rx-badge, 
.product-details-td .product-rx-badge {
    position: absolute;
    display: inline-block;
    height: 24px;
    border-radius: 4px;
    top: 10px;
    left: 10px;
    background-color: var(--gen-cart-dark-red);
    color: #fff;
    padding: 6px 6px 6px 6px;
    font-size: 12px;
    line-height: 1;
    pointer-events: none;
}

.product-card .product-badge.top-padding { top: 44px; }

.product-card .product-rx-badge,
.product-details-td .product-rx-badge {
    border-radius: 3px;
    top: auto;
    bottom: 20px;
    width: 20px;
    background-color: var(--gen-cart-green);
    background-image: url(../../images/assets/prescription-rx.svg);
    background-repeat: no-repeat;
    background-size: auto 18px;
    background-position: center center;
}

.product-details-td .product-rx-badge {
    height: 16px; width: 14px !important;
    border-radius: 2px;
    background-size: auto 12px;
    bottom: 6px;
    left: 6px;
}

.product-card .favorite-product {
    display: inline-block;
    height: 24px;
    width: 24px;
    /* background-color: #fff; */
    position: absolute;
    top: 8px;
    right: 8px;
    text-align: center;
    cursor: pointer;
    padding-top: 2px;
}

.product-card .favorite-product:hover i,
.product-card .favorite-product.active {
    color: var(--gen-cart-dark-red);
}

.product-card .favorite-product i {
    color: var(--gen-cart-light-gray-v2);
    transition: all .2s ease-in;
    font-size: 1.4em;
    line-height: 1;
}

.cart-table-responsive { width: 100%; }

.cart-table-responsive .product-details-td .cart-item-remove {
    display: inline-block;
    width: 18px;
    height: 18px;
    border-radius: 18px;
    color: var(--gen-cart-red);
    background-color: #fff;
    position: absolute;
    left: 0px;
    top: 12px;
    z-index: 9;
    cursor: pointer;
    line-height: 1;
    font-size: 18px;
}

.cart-table-responsive tr .product-details-td { border-bottom: 0; }

.cart-table-responsive tr .product-details-td:first-child {
    width: 100px;
    height: 100px;
    position: relative;
    vertical-align: top;
    padding-top: 1.3em;
}

.cart-table-responsive .image-container { 
    background: var(--gen-cart-light-gray-v4);
    display: block;
    width: 100px;
    height: 100px;
    /* border: 1px solid #000; */
}

.cart-table-responsive tr .product-details-td { padding: 16px 10px 16px 10px; }

.cart-table-responsive tr .product-details-td:nth-child(2) {
    max-width: 240px;
}

.cart-table-responsive tr:not(:last-child) { border-bottom: 1px solid var(--gen-cart-light-gray-v2); }

.product-card .product-category, .cart-table-responsive .product-category {
    display: block;
    margin-top: 0.2em;
    font-size: 0.75em;
    /* font-weight: 600; */
    color: var(--gen-cart-gray);
}

.product-card .product-title, .cart-table-responsive .product-title {
    display: block;
    text-decoration: none;
    color: var(--gen-cart-black);
    font-family: var(--site-font, sans-serif);
    font-weight: 600;
    line-height: 20px;
    margin-bottom: 0.3em;
    transition: all .2s ease;
    font-size: 0.9em;
}

.product-card .product-title:hover, 
.cart-table-responsive .product-title:hover {
    color: var(--gen-cart-blue);
}

.product-card .product-price, .cart-table-responsive .product-price {
    font-family: var(--site-font, sans-serif);
    font-weight: 700;
    color: var(--gen-cart-blue);
    font-size: 1.1em;
    margin-bottom: .8em;
}

.product-card .product-price { margin-bottom: .4em; }

.cart-table-responsive .product-price { margin-bottom: 0; font-size: 0.96em; }

.product-card .product-strike, .cart-table-responsive .product-strike { 
    display: inline-block;
    color: var(--gen-cart-dark-red);
    font-size: 0.75em;
    font-weight: 500;
    transform: scaleY(var(--gen-semibold-transform));
    margin-left: 0.5em;
}

.product-card .image-container img, 
.cart-table-responsive .image-container img {
    width: auto;
    height: 100%;
    object-fit: contain;
    display: block;
    mix-blend-mode: multiply;
    -webkit-transition: transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: 0.3s ease;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.product-card .image-container:hover img,
.cart-table-responsive .image-container:hover img {
    -webkit-transform: translate(-50%, -50%) scale(1.05);
    transform: translate(-50%, -50%) scale(1.05);
}

.cart-table-responsive tr .product-details-td:nth-child(3) {
    max-width: 120px;
}

/* cart qty */
.cart-table-qty { 
    display: inline-block;
    background-color: var(--gen-cart-light-gray-v4);
    border-radius: 4px;
    overflow: hidden;
    border: 1px solid var(--gen-cart-light-gray-v3);
}

.cart-table-qty button, .cart-table-qty input {
    display: inline-block;
    float: left;
    position: relative;
    background-color: #fff;
}

.cart-table-qty button { 
    width: 32px;
    height: 40px;
    border: 0;
    outline: 0;
    position: relative;
    background-color: transparent;
}

.cart-table-qty button:nth-child(1):before, 
.cart-table-qty button:nth-child(3):before {
    content: "-";
    font-size: 1rem;
    display: inline-block;
    width: 20px;
    height: 24px;
    font-size: 1.2rem;
    line-height: 1.2;
    color: var(--gen-cart-gray);
    float: left;
    text-align: center;
    /* background-color: #000; */
    transition: all .2s ease;
}

.cart-table-qty button:nth-child(1) { border-right: 1px solid var(--gen-cart-light-gray-v3); }
.cart-table-qty button:nth-child(3) { border-left: 1px solid var(--gen-cart-light-gray-v3); }

.cart-table-qty button:nth-child(3):before { content: "+"; }
.cart-table-qty button:nth-child(1):hover::before,
.cart-table-qty button:nth-child(3):hover::before { color: var(--gen-cart-black); }

.cart-table-qty input {
    text-align: center;
    border-radius: 0;
    border: 0 none;
    width: 40px;
    max-width: 80px; 
    height: 40px;
    overflow: hidden;
    white-space: nowrap;
    background-color: #fff;
}

/* responsive table */
.res-table-class {
    border: 1px solid #ccc;
    border-collapse: collapse;
    margin: 0;
    padding: 0;
    width: 100%;
    table-layout: fixed;
}

.res-table-class tr {
    background-color: #fff;
    border: 1px solid #ddd;
    padding: 0.35em;
}

.res-table-class td,
.res-table-class th {
    padding: 0.625em;
}

.res-table-class th { font-size: 0.9em; font-weight: 600; }

/* rating */
.rating-container { margin: 0; padding: 0; }

.rating-container li { 
    display: inline-block;
    /* background-color: var(--gen-cart-light-blue); */
    width: 14px;
    height: 14px;
    margin-right: 3px;
    background-image: url(../../images/icons/star.png);
    background-repeat: no-repeat;
    background-size: auto 14px;
    background-position: -14px 0;
    float: left;
}

.rating-container li.active { background-position: 0 0; }
.rating-container li i { line-height: 0; }

.rating-container li:not(.text-class):nth-child(6), .rating-container li.text-class { 
    width: 36px;
    margin: 0 0 0 4px; 
    background-image: none;
    font-size: 0.75em;
    line-height: 1.4;
    color: var(--gen-cart-gray);
}

.rating-container li.text-class {
    width: auto;
    margin-left: 4px; 
    color: var(--gen-cart-blue);
    /* text-decoration: underline; */
    cursor: pointer;
}

/* product filter */
.product-padding-right { padding-right: 68px; }
.product-filter { margin: 0; padding: 0; }

.product-filter li {
    display: inline-block;
    font-weight: 600;
    margin: 0 0.8em 0.4em 0;
    cursor: pointer;
    transition: all .2s ease-in;
    position: relative;
    color: var(--gen-cart-gray);
}

.product-filter li:last-child { margin-right: 0; }

.product-filter li::before {
    content: "";
    display: block;
    width: 0;
    height: 2px;
    background-color: var(--gen-cart-blue);
    position: absolute;
    left: 50%;
    bottom: -2px;
    transition: all .1s ease-in;
}

.product-filter li:hover { color: var(--gen-cart-blue); }
.product-filter li:hover::before { width: 100%; left: 0; }

/* owl-nav */
.owl-btn-wrap { display: block; }

.owl-btn-wrap .prev-btn,
.owl-btn-wrap .next-btn {
    display: inline-block;
    background-color: var(--gen-cart-light-gray-v2);
    font-size: 0.8em;
    padding: 4px 6px;
    border-radius: 2px;
    outline: 0;
    border: 0;
    line-height: 1;
    transition: all .1s ease-in;
    color: var(--gen-cart-gray);
}

.owl-btn-wrap .prev-btn:hover,
.owl-btn-wrap .next-btn:hover {
    color: #fff;
    background-color: var(--gen-cart-green);
}

.owl-btn-wrap .prev-btn.disabled,
.owl-btn-wrap .next-btn.disabled { opacity: 0.6; }

/* homepage app download design */

/* app download link */
#downloadAppContainer .scan {
    display: inline-block;
    width: 100px;
    height: 100px;
    margin: 0 25px 0 -5px;
    float: left;
}

#downloadAppContainer .or-box {
    display: inline-block;
    float: left;
    text-align: center;
    margin: 10px 10px 0 0;
    height: 80px;
    width: 2px;
    background-color: var(--gen-cart-light-gray-v2);
    position: relative;
}

#downloadAppContainer .or-box::before, #downloadAppContainer .or-box::after {
    content: "";
    display: inline-block;
    height: 32px;
    width: 24px;
    background-color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

#downloadAppContainer .or-box::after { 
    content: "OR"; 
    font-size: 0.8rem;
    /* font-family: var(--obds-font, "DM Sans SemiBold", sans-serif);  */
    font-weight: 600; 
    line-height: 2.6;
}

#downloadAppContainer .app-box {
    display: inline-block;
    margin: 5px 0 0 22px;
}

#downloadAppContainer .app-box a {
    border-radius: 4px;
    background-color: #161819;
    padding: 10px 14px 7px 14px;
    cursor: pointer;
    margin: 0 0 6px 0;
    display: block;
    height: 40px;
}

/* whatsapp and scrolltotop */
#scrolltotop,
#whatsAppFix {
    bottom: 1.5em;
    position: fixed;
    height: 40px;
    width: 40px;
    border-radius: 40px;
    cursor: pointer;
    text-decoration: none;
    text-align: center;
}

#whatsAppFix {
    background-color: var(--gen-cart-blue);
    left: 1.5em;
    z-index: 998;
    overflow: hidden;
    color: #fff;
}

#whatsAppFix i { 
    font-size: 1.5em;
    line-height: 1.8;
}

#scrolltotop i { 
    color: var(--gen-cart-gray); 
    font-size: 1.3em;
    line-height: 2.1;
}

.pulse { animation: 2s infinite pulse-animation; }

#scrolltotop {
    display: inline-block;
    background-color: var(--gen-cart-light-gray-v3);
    /* background-color: #000; */
    bottom: 1.5em;
    right: 1.5em;
    position: fixed;
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s, visibility .5s;
}

#scrolltotop.show {
    opacity: 1;
    visibility: visible;
}

@keyframes pulse-animation {
    0% { box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.2); }
    100% { box-shadow: 0 0 0 20px transparent; }
}

/* bredcrumb navigation */
.breadcrumb-custom {
    margin: 0px 0 0 2px;
    padding: 0;
}
 
.breadcrumb-custom li {
    display: inline-block;
    margin: 0 0.2em 0 1.2em;
    position: relative;
}
 
.breadcrumb-custom li:first-child { margin-left: 0; }
 
.breadcrumb-custom li::after {
    content: '/';
    color: var(--gen-cart-light-gray);
    font-size: 0.9em;
    position: absolute;
    top: 2px;
    left: -10px;
}
 
.breadcrumb-custom li:first-child::after { display: none; }
 
.breadcrumb-custom li, .breadcrumb-custom li a {
    display: inline-block;
    font-size: 0.85em;
    margin-bottom: -1em;
    text-decoration: none;
    color: var(--gen-cart-light-gray);
}

.breadcrumb-custom li a { font-size: 1em; }
 
/* .breadcrumb-custom-item a { color: #2196f3; } */
.breadcrumb-custom li a:hover { text-decoration: underline; }

/* products filter */
.product-filter-panel {
    width: 300px;
    transition: all 0.3s ease;
    background-color: #fff;
    position: relative;
    padding: 1.4em;
    flex-shrink: 0;
    align-self: flex-start;
}

.product-filter-panel #closeFilterPanel { display: none; }

.product-grid {
    margin-left: 1.4em;
    padding: 1.4em;
    background-color: #fff;
    /* float: left; */
}

.filter-content-wrapper {
    margin-bottom: 1.2em;
}

.filter-content {
    max-height: 300px;
    overflow-y: auto;
}

.filter-content::-webkit-scrollbar { width: 4px; }
.filter-content::-webkit-scrollbar-thumb { background-color: var(--gen-cart-light-gray); }
.filter-content::-webkit-scrollbar-track { background-color: var(--gen-cart-light-gray-v3); }

.filter-title {
    font-size: 1em;
    padding-bottom: 0.75em;
    border-bottom: 1px solid var(--gen-cart-light-gray-v3);
    margin-bottom: 1em;
    color: var(--gen-cart-green);
}

.toastify.toastify-icn { padding: 10px 12px 10px 36px; }

.toastify.toastify-icn::before {
    content: "\eb81";
    display: inline-block;
    height: 18px;
    width: 18px;
    /* background-color: #000; */
    position: absolute;
    left: 10px;
    top: 12px;
    font-family: var(--remixicon);
    font-size: 1.25em;
    color: #fff;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.toastify.icn-remove::before { content: "\ec1e"; }
.toastify.icn-edit::before { content: "\ec82"; }
.toastify.icn-error::before { content: "\eca1"; }

/* drop upload */
.drop-upload-container .drop-section {
    min-height: 240px;
    border: 1px dashed #A8B3E3;
    background-image: linear-gradient(180deg, white, #F1F6FF);
    margin: 24px 0px 36px 0px;
    border-radius: 10px;
    position: relative;
    text-align: center;
    padding: 1.4rem 1.4rem 2rem 1.4rem;
}

.drop-upload-container .drop-section .cloud-icon { margin-bottom: 0.6rem; }
.drop-upload-container .drop-section .cloud-icon img { height: 140px; width: auto; }
.drop-upload-container input { display: none; }

.drop-section div.col:last-child{
    font-size: 30px;
    font-weight: 700;
    color: #c0cae1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition-duration: 0.2s;
}

.drag-over-effect div.col:first-child{
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.drag-over-effect div.col:last-child{
    opacity: 1;
    visibility: visible;
}

.drop-list-section, .drop-list-submit-action {
    display: none;
    text-align: left;
    padding-bottom: 20px;
}

.drop-list-submit-action { display: block; }

.drop-upload-container .drop-list { 
    /* border: 1px solid #000;  */
    padding: 1em 3.5em 0.9em 4em;
    position: relative;
    border-radius: 4px;
    margin-bottom: 1em;
    border: 1px solid var(--gen-cart-light-gray-v2);
    transition: all .2s ease;
    cursor: pointer;
    min-height: 72px;
}

.drop-upload-container .drop-list:hover {
    box-shadow: #E3EAF9 0px 0px 4px 0px, #E3EAF9 0px 12px 16px 0px;
}

.drop-upload-container .drop-list .file-icon { 
    position: absolute;
    left: 0.6rem;
    top: 0.6rem;
}

.drop-upload-container .drop-list p { margin-bottom: 0; }

.drop-upload-container .drop-list .file-name { margin-bottom: 0.1rem; }

.drop-upload-container .drop-list .file-remove, 
.drop-upload-container .drop-list .file-abort { 
    display: inline-block;
    height: 20px;
    width: 20px;
    /* border-radius: 24px; */
    /* background-color: var(--gen-cart-red); */
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    border: 0;
    outline: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
}

.drop-upload-container .drop-list .file-remove i,
.drop-upload-container .drop-list .file-abort i {
    font-size: 1.5em;
    line-height: 0;
    color: var(--gen-cart-red);
}

.drop-upload-container .drop-list .file-progress {
    width: 100%;
    height: 4px;
    margin: 8px 0 8px 0;
    border-radius: 4px;
    background-color: #dee6fd;
}

.drop-upload-container .drop-list .file-progress span {
    display: block;
    width: 0%;
    height: 100%;
    border-radius: 4px;
    background-image: linear-gradient(120deg, #6b99fd, #9385ff);
    transition-duration: 0.4s;
}

/* product enquiry model and table */
/* product enquiry modal */
#productEnquiryModal .modal-content, #addMultiAddressModal .modal-content { border-radius: 0; }

#productEnquiryModal .modal-body {
    padding: 0; 
    height: 100vh;
    overflow-y: auto; 
    overflow-x: hidden;
}

#productEnquiryModal .btn-close, #addMultiAddressModal .btn-close { 
    position: absolute;
    right: 12px;
    top: 16px;
    /* background: rgba(255, 255, 255, .8); */
    background: none;
    border-radius: 100%;
    opacity: 1;
    display: inline-block;
    height: 20px;
    width: 20px;
    /* border: 1px solid #000; */
}

#productEnquiryModal .btn-close i, #addMultiAddressModal .btn-close i {
    display: inline-block;
    /* color: var(--gen-cart-red); */
    color: #fff;
    position: absolute;
    right: 2px;
    top: 14px;
    cursor: pointer;
    font-size: 1.5em;
    line-height: 0;
    z-index: 1;
}

#addMultiAddressModal .btn-close i { color: var(--gen-cart-red); }

/* product enquiry table */
#productEnquiryTable thead > tr > th,
#productEnquiryTable tbody > tr > td { padding: 10px; }

#productEnquiryTable thead > tr > th { 
    height: 80px; 
    background-color: var(--gen-cart-light-gray-v4); 
    color: var(--gen-cart-gray); 
}

#productEnquiryTable thead > tr > th:nth-child(1) { width: 60px; text-align: center; }

#productEnquiryTable thead > tr > th:nth-child(2), 
#productEnquiryTable tbody > tr > td:nth-child(2) { width: 160px; text-align: right; }

#productEnquiryTable thead > tr > th:nth-child(3),
#productEnquiryTable tbody > tr > td:nth-child(3) { 
    width: 100px; 
    text-align: center;  
    background: rgba(220, 53, 69, 0.02);
}

#productEnquiryTable thead > tr > th:nth-child(4), #productEnquiryTable tbody > tr > td:nth-child(4) { 
    width: 160px; 
    text-align: center; 
    /* border-left: 1px solid var(--gen-cart-gray-v2); 
    border-right: 1px solid var(--gen-cart-gray-v2); */
    background-color: var(--gen-cart-blue);
    color: #fff;
}

#productEnquiryTable thead > tr > th:nth-child(5),
#productEnquiryTable tbody > tr > td:nth-child(5) { 
    width: 100px; 
    text-align: center; 
    background: rgba(25, 135, 84, 0.02);
}

#productEnquiryTable thead > tr > th:nth-child(6) { width: 160px; }
#productEnquiryTable thead > tr > th:nth-child(7), 
#productEnquiryTable tbody > tr > td:nth-child(7) { width: 80px; text-align: center; }

#productEnquiryTable tbody > tr:last-child > td:nth-child(1),
#productEnquiryTable tbody > tr:last-child > td:nth-child(2),
#productEnquiryTable tbody > tr:last-child > td:nth-child(6),
#productEnquiryTable tbody > tr:last-child > td:nth-child(7)
{ background-color: var(--gen-cart-light-gray-v4); }

#productEnquiryTable thead > tr > th,
#productEnquiryTable tbody > tr > td {
    vertical-align: middle;
}

#productEnquiryTable .remove-product-enquiry-medicine {
    display: inline-block;
    width: 24px;
    height: 24px;
    /* background-color: #00aaff; */
    cursor: pointer;
}

#productEnquiryTable .remove-product-enquiry-medicine i {
    font-size: 1.4em;
    line-height: 1;
    color: var(--gen-cart-red);
}

/* customer dashboard 29.05.2025 */
.customer-panel-main-wrapper { display: flex; gap: 1rem; flex-wrap: nowrap; }

.customer-panel-sidebar {
    width: 300px;
    background: #fff;
    padding: 2em 1.2em 1.2em 1.2em;
    transition: all 0.3s ease;
    z-index: 10;
    flex-shrink: 0;
    align-self: flex-start;
}

.customer-panel-content { flex: 1; padding: 1em; min-height: 400px; }

.customer-panel-wrapper .menu-headline { 
    font-size: 14px;
    text-transform: uppercase;
    position: relative;
}

.customer-menu-container { display: block; }

.customer-menu-container ul { margin: 0; padding: 0; }

.customer-menu-container ul li {
    display: block;
    list-style: none;
    border-bottom: 1px solid var(--gen-cart-light-gray-v4);
}

.customer-menu-container ul li a {
    display: block;
    padding: 0.6em 0 0.5em 2.6em;
    text-decoration: none;
    color: var(--gen-cart-gray);
    font-weight: 500;
    transition: all .2s ease;
    position: relative;
}

.customer-menu-container ul li a .cust-menu-icon {
    display: inline-block;
    height: 18px;
    width: 18px;
    /* background-color: #00aaff; */
    position: absolute;
    left: 9px;
    top: 12px;
    font-size: 1.3em;
    display: flex;
    align-items: center;
    justify-content: center;
}

.customer-menu-container ul li a.active,
.customer-menu-container ul li a:hover { background-color: var(--gen-cart-blue-rgba); color: var(--gen-cart-black-v2); }
.customer-menu-container ul li:first-child { border-top: 1px solid var(--gen-cart-light-gray-v4); }

/* .customer-menu-container ul li:first-child a { padding-top: 0; } */
/* .customer-menu-container ul li:last-child { border-bottom: 0 none; } */
/* .customer-menu-container ul li:last-child a { padding-bottom: 0; } */

/* adjust icons */
.customer-menu-container ul li:nth-child(1) a .cust-menu-icon { top: 11px }
/* .customer-menu-container ul li:last-child a .cust-menu-icon {  } */

.customer-panel-content.bg-color-content {
    background-color: #fff;
    border: 1px solid var(--gen-cart-gray-v2);
}

.customer-panel-content.ecom-card-container { padding: 0; }

.customer-panel-content.ecom-card-container .ecom-card {
    border: 0 none !important;
    border-radius: 0 !important;
}

.customer-panel-content.ecom-card-container .ecom-card .card-header {
    text-transform: uppercase;
    background-color: var(--gen-cart-blue);
    border-radius: 0;
    font-weight: 600;
    color: #fff;
    padding: 12px 12px 10px 12px;
    border-bottom: 0;
    /* outline: 1px solid var(--gen-cart-blue); */
}

#cutomerPanelProfile img {
    display: inline-block;
    width: 120px;
    height: 120px;
    border-radius: 120px;
    border: 4px solid var(--gen-cart-light-gray-v4);
}

/* dashboard card */
.dashboard-card {
    background-color: #fff;
    overflow: hidden;
    position: relative;
    border-radius: 4px;
}

.dashboard-card::after {
    content: "";
    display: block;
    position: absolute;
    width: 300px;
    height: 300px;
    border-radius: 200px;
    top: 0;
    right: -150px;
    opacity: 0.05;
    background-color: #fff;
}

.dashboard-card .link-container { 
    display: block;
    padding: 1em; 
    text-decoration: none;
}

.dashboard-card .link-container .count {
    color: #fff;
    margin-bottom: 2px;
}

.dashboard-card .link-container .desc { margin-bottom: 0; color: #fff; }
.dashboard-card .link-container .view-link {  color: #fff; display: block; }

/* order timeline */
.timeline-container {
    /* width: 100%; */
    display: block;
    overflow-x: auto;
    padding: 2em 0 1em 0;
    margin-bottom: 1.4em;
}

.timeline { 
    margin: 0 auto; padding: 0; 
    display: flex;
    width: max-content;
}

.timeline li {
    width: 180px;
    padding: 30px 0 0 0;
    display: inline-block;
    position: relative;
    transition: all 200ms ease-in;
}

.timeline li:before {
    content: "";
    display: block;
    border-top: 2px solid var(--gen-cart-light-gray-v3);
    position: relative;
    top: -18px;
}

.timeline li .status { 
    padding: 0 8px 0 8px;
}

.timeline li .status:before, .timeline li .status:after {
    content: "";
    width: 24px;
    height: 24px;
    background-color: white;
    border-radius: 24px;
    border: 1px solid var(--gen-cart-light-gray-v3);
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    transition: all 200ms ease-in;
}

.timeline li .status.timeline-pulse:before { animation: 2s infinite pulse-animation; }

.timeline li .timestamp {
    font-size: 0.65em;
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: 124px;
    text-align: center;
    color: var(--gen-cart-gray);
}

.timeline li .status:after {
    width: 12px;
    height: 12px;
    background-color: var(--gen-cart-light-gray-v3);
    border-radius: 12px;
    top: 6px;
    border: 0 none;
}

.timeline li.timeline-completed .status:after { background-color: #fff; }

.timeline li .status-title {
    margin: 0;
    font-size: 0.8em;
    font-weight: 600;
    text-align: center;
    color: var(--gen-cart-gray);
}

.timeline li.timeline-completed:before {
    border-top: 2px solid var(--gen-cart-green);
    animation: fillBorder 1s ease-in forwards;
}

.timeline li.timeline-completed .status:before {
    background-color: var(--gen-cart-green);
    border: none;
    transition: all 200ms ease-in;
    animation: fillDot 1s ease-in forwards;
}

.timeline li.timeline-completed .status-title {
    color: var(--gen-cart-green);
}

/* password */
#passwordContainer { position: relative; }
#passwordContainer #password { padding-right: 40px !important; }
#passwordContainer .show-pass-text, 
#passwordContainer .hide-pass-text {
    height: 24px;
    width: 24px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 8px;
    color: #A3A3A3;
    cursor: pointer;
    transition: all 0.2s ease-in;
    visibility: hidden;
    opacity: 0;
    display: none;
    align-items: center;
    justify-content: center;
}

#passwordContainer .show-pass-text { color: #0d6efd; }
#passwordContainer .show-pass-text.active, 
#passwordContainer .hide-pass-text.active { 
    display: flex;
    visibility: visible;
    opacity: 1;
}

/* toggle paragraph */
.toggle-paragraph {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  position: relative;
}

.toggle-paragraph.expanded {
  overflow: visible;
}

.toggle-paragraph .toggle-text {
  color: var(--gen-cart-green);
  cursor: pointer;
  display: inline-block;
  margin-left: 5px;
  font-weight: 500;
}

/* product view */
.gmpl-product-view {
  width: 100%;
}

.gmpl-product-view .main-image-container {
  width: 100%;
  position: relative;
  padding-top: 100%;
  border: 1px solid var(--gen-cart-light-gray-v4);
  overflow: hidden;
}

.gmpl-product-view .main-image-container img {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gmpl-product-view .thumb-container {
  overflow-x: auto;
  width: 100%;
  margin-top: 16px;
}

.gmpl-product-view .thumbs { white-space: nowrap; }

.gmpl-product-view .thumb {
  display: inline-block;
  width: calc((100% - 3.8px * 6) / 5);
  margin-right: 2px;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border: 1px solid var(--gen-cart-light-gray-v4);
  cursor: pointer;
  vertical-align: top;
}

.gmpl-product-view .thumb:nth-child(5n) { margin-right: 0; }
.gmpl-product-view .thumb.active { border-color: var(--gen-cart-blue); }

.gmpl-product-view .loader-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 32px;
  height: 32px;
  transform: translate(-50%, -50%);
  z-index: 10;
}

.product-details-review-rating-container { width: 400px; }

.product-details-review-rating-count,
.product-details-review-rating-bar,
.product-details-review-rating-percent {
    display: inline-block;
}

.product-details-review-rating-item > span {
    color: var(--gen-cart-light-gray);
    font-size: 12px;
    margin-right: 10px;
    width: 32px !important;
}

.product-details-review-rating-percent span { font-size: 12px; }

.product-details-review-rating-bar {
    background-color: var(--gen-cart-light-gray-v3);
    height: 10px;
    margin-right: 12px;
    position: relative;
    width: 260px
}

.product-details-review-rating-bar-inner {
    background-color: var(--gen-cart-yellow);
    display: inline-block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0
}

@keyframes fillBorder {
    0% { border-color: var(--gen-cart-light-gray-v3); }
    100% { border-color: var(--gen-cart-green); }
}

@keyframes fillDot {
    0% { background-color: white; }
    100% { background-color: var(--gen-cart-green); }
}

@media screen and (max-width: 1199.98px) {
    .container { max-width: 96% !important; }
}

@media screen and (max-width: 992px) {

    #productEnquiryModal .modal-dialog { max-width: 90% !important; }

}

@media screen and (max-width: 768px) {
    .cy-padding, .cyt-padding { padding-top: 2.4rem; }
    .cy-padding, .cyb-padding { padding-bottom: 2.4rem; }
    .custom-container-panel.rm-mobile-padding { padding-top: 0.8em; }

    #footerPaymentGateway { float: left; }

    .product-filter-panel {
        position: fixed;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100vh;
        z-index: 1050;
        overflow-y: auto;
        box-shadow: 2px 0 5px rgba(0,0,0,0.3);
    }

    .product-filter-panel.active { left: 0; }
    .product-filter-panel #closeFilterPanel { display: inline-block; }
    .product-grid { margin: 1em 0 0 0; }

    .cart-table-responsive tr .product-details-td { 
        display: block;  
        width: 100% !important; 
        max-width: 100% !important;
        /* border: 1px solid #000; */
        clear: both;
    }

    .cart-table-responsive tr .product-details-td:nth-child(1) { height: 110px; }
    .cart-table-responsive tr .product-details-td:nth-child(2) { padding-bottom: 10px; }
    .cart-table-responsive tr .product-details-td:nth-child(3) { padding-top: 0; padding-bottom: 6px; }
    .cart-table-responsive tr .product-details-td:nth-child(4) { padding-top: 0; }

    .res-table-class {
        border: 0;
    }

    .res-table-class thead {
        border: none;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }

    .res-table-class tr {
        border-bottom: 3px solid #ddd;
        display: block;
        margin-bottom: 1em;
    }

    .res-table-class td {
        border-bottom: 1px solid #ddd;
        display: block;
        font-size: 0.8em;
        text-align: right !important;
    }

    .res-table-class td.res-table-class-d-none { display: none; }

    .res-table-class td::before {
        content: attr(data-label);
        float: left;
        font-weight: 700;
        /* font-size: 0.8em; */
        text-transform: uppercase;
    }
    
    .res-table-class td:last-child { border-bottom: 0; }

    .customer-panel-content { margin-top: 1em; }
    .customer-panel-main-wrapper { display: block; }

    .customer-panel-sidebar {
        position: fixed;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        background: white;
        padding: 2em 1em 2em 1em;
        transform: translateX(-100%);
        opacity: 0;
        visibility: hidden;
        transition: transform 0.3s ease, opacity 0.3s ease, visibility 0s linear 0.3s;
        z-index: 1050;
        overflow-y: auto;
    }

    .customer-panel-sidebar.active {
        transform: translateX(0);
        opacity: 1;
        visibility: visible;
        transition-delay: 0s;
    }

    .customer-panel-overlay {
        position: fixed;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        background: rgba(0,0,0,0.5);
        z-index: 1040;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease, visibility 0s linear 0.3s;
    }

    .customer-panel-overlay.show {
        opacity: 1;
        visibility: visible;
        transition-delay: 0s;
    }
}

@media screen and (max-width: 620px) {
    #appDownloadDropdownContainer { display: none; }
    #header { height: 72px; }
    #header #navLogo { 
        width: 148px;
        height: 72px; 
        background-size: auto 48px;
        background-position: 0 10px;
    }
    #headerShortMenu { margin-top: 15px; }
    #headerShortMenu li  { margin-right: 4px }

    .drop-upload-container .drop-section {
        margin: 24px 16px 16px 16px;
        padding: 1.4rem;
    }

    .drop-upload-container .drop-section .cloud-icon img { height: 100px; width: auto; }
    .drop-list-section, .drop-list-submit-action { margin: 0px 16px; }

    #customerDropdownContainer { top: 72px; }
}

@media screen and (max-width: 576px) {
    .font-md { font-size: 1.4em; }
    .font-md-2 { font-size: 1.6em; }
    .font-lg   { font-size: 2em; }
    .font-xl   { font-size: 2.4em; }
    .lead      { font-size: 1em; }

    .c-padding  { padding: 2.4em; }
    .cy-padding, .cyt-padding { padding-top: 2.4em }
    .cy-padding, .cyb-padding { padding-bottom: 2.4em }

    #productEnquiryModal .modal-dialog { max-width: none !important; }

    #headerInfo {
        height: auto;
        padding: 6px 0 10px 0;
    }

    #headerInfo { text-align: center; }
    
    #headerInfo a:nth-child(1) {
        display: block;
        text-align: center;
    }
    
    #headerInfo a:nth-child(2) {
        position: relative;
        right: 0;
        top: 2px;
    }

    #homeShortCategory .content img {
        height: auto;
        width: 100%;
    }
}

@media screen and (max-width: 480px) {

    #downloadAppContainer .or-box { height: 2px; width: 100%; }

    #downloadAppContainer .scan { 
        display: block; 
        float: initial;
        text-align: center;
        margin: 0;
        height: auto;
        width: 100%;
    }

    #downloadAppContainer .app-box {
        display: block;
        margin: 40px 0 0 0;
        text-align: center;
    }

    #downloadAppContainer .app-box a { 
        display: block;
        margin: 0 0 4px 0;
    }

}

@media screen and (max-width: 400px) {}

@media screen and (max-width: 360px) {
    #headerShortMenu li:nth-child(1) { display: none; }
}