/*
@File: Namid Template Styles

* This file contains the styling for the actual template, this
is the file you need to edit to change the look of the
template.

This files table contents are outlined below>>>>>

********************************************
*******************************************/
/* -----------------------------------------
    Google Font
----------------------------------------- */
@import url("https://fonts.googleapis.com/css2?family=Jost:wght@400;500;600;700&family=Montserrat:wght@400;500;600&family=Marcellus&family=Mulish:wght@400;500;600&family=Josefin+Sans:wght@400;500;600;700&family=Nunito:wght@500;600;700;800&family=Fredoka:wght@400;500;600&display=swap");
@import url(header-1.css);
@import url(inner-pages.css);

:root {
    --font-family-base: "Jost", sans-serif;
    --font-family-body: "Montserrat", sans-serif;
    --font-family-fontawesome: "Font Awesome 5 Pro";
    --font-size: 16px;
    --font-sm: 14px;
    --font-xsm: 12px;
    --font-lg: 18px;
    --font-normal: 400;
    --font-medium: 500;
    --font-semi-bold: 600;
    --font-bold: 700;
    --color-primary: #0a472e;
    --color-primary-rgb: 10, 71, 46;
    --color-blue: #3880ff;
    --color-blue-rgb: 56, 128, 255;
    --color-cyan: #67bcee;
    --color-cyan-rgb: 103, 188, 238;
    --color-red: #e74623;
    --color-pink: #ff3f5c;
    --color-pink-rgb: 255, 63, 92;
    --color-red-rgb: 231, 70, 35;
    --color-orange: #f59758;
    --color-orange-rgb: 245, 151, 88;
    --color-yellow: #fdc040;
    --color-yellow-rgb: 253, 192, 64;
    --color-green: #3bb77e;
    --color-green-rgb: 59, 183, 126;
    --color-teal: #2fd075;
    --color-white: #ffffff;
    --color-white-rgb: 255, 255, 255;
    --color-dark: #1e1d23;
    --color-dark-rgb: 30, 29, 35;
    --color-gray-1: #8d8d8d;
    --color-gray-2: #676767;
    --color-light: #f4f5f8;
    --color-light-1: #f3f6f5;
    --color-light-2: #fcfffe;
    --color-light-3: #f2f2f2;
    --color-light-4: #f8f8f8;
    --border: #cedad5;
    --border-2: #eaeaea;
}

/* -----------------------------------------
    Typography CSS
----------------------------------------- */
body {
    font-family: var(--font-family-body), var(--font-family-base);
    font-size: var(--font-size);
    color: var(--color-gray-1);
    overflow-x: hidden;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: var(--font-family-base);
    color: var(--color-dark);
    line-height: 1.4;
}

h1 {
    font-weight: var(--font-bold);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: var(--font-semi-bold);
}

h1,
.h1 {
    font-size: 64px;
}

h2 {
    font-size: 48px;
}


h3,
.h3 {
    font-size: 24px;
}

h4 {
    font-size: 20px;
}

h5 {
    font-size: 16px;
}

h6 {
    font-size: 14px;
}

ul {
    -webkit-padding-start: 0;
    padding-inline-start: 0;
    margin-bottom: 0;
}

li {
    display: inline-block;
    line-height: 1;
}

.text,
p {
    line-height: 1.5;
    color: var(--color-gray-1);
    font-family: var(--font-family-base);
}

.text-xsm {
    font-size: var(--font-xsm) !important;
}

.text-sm {
    font-size: var(--font-sm) !important;
}

.text-lg {
    font-weight: var(--font-medium);
    font-size: var(--font-lg);
}

a {
    color: var(--color-dark);
    font-weight: var(--font-medium);
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    text-decoration: none;
}

a:hover {
    color: var(--color-primary);
    text-decoration: none;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
}

a:focus {
    outline: none;
}

.margin-left--10px {
    margin-left: -10px;
}

:is(.lc-1, .lc-2, .lc-3, .lc-4) {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.lc-1 {
    -webkit-line-clamp: 1 !important;
    line-clamp: 1 !important;
}

.lc-2 {
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
}

.lc-3 {
    -webkit-line-clamp: 3 !important;
    line-clamp: 3 !important;
}

.lc-4 {
    -webkit-line-clamp: 4 !important;
    line-clamp: 4 !important;
}

.fw-semibold {
    font-weight: 600;
}

.fw-medium {
    font-weight: 500;
}

/* -----------------------------------------
    Reset CSS
----------------------------------------- */
:focus {
    outline: none;
}

img {
    max-width: 100%;
}

.form-control:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
}

figure,
blockquote {
    margin-bottom: 0;
}

table,
th,
td {
    vertical-align: middle;
}

.bg-light-1 {
    background-color: var(--color-light-1);
}

/* margin CSS*/
.mb-10 {
    margin-bottom: 10px !important;
}

.mb-15 {
    margin-bottom: 15px !important;
}

.mb-20 {
    margin-bottom: 20px !important;
}

.mb-30 {
    margin-bottom: 30px !important;
}

.mb-40 {
    margin-bottom: 40px !important;
}

.mt-10 {
    margin-top: 10px !important;
}

.mt-15 {
    margin-top: 15px !important;
}

.mt-20 {
    margin-top: 20px !important;
}

.mt-30 {
    margin-top: 30px !important;
}

.mt-40 {
    margin-top: 40px !important;
}

.mt-70 {
    margin-top: 70px !important;
}

.mt-n-30 {
    margin-top: -30px;
}

/* Padding CSS*/
.p-10 {
    padding: 10px 10px;
}

.p-20 {
    padding: 20px !important;
}

.pt-10 {
    padding-top: 10px !important;
}

.pt-20 {
    padding-top: 20px !important;
}

.pt-30 {
    padding-top: 30px !important;
}

.pt-40 {
    padding-top: 40px !important;
}

.pb-40 {
    padding-bottom: 40px;
}

.ptb-40 {
    padding-top: 40px;
    padding-bottom: 40px;
}

.pt-60 {
    padding-top: 60px !important;
}

.pb-10 {
    padding-bottom: 10px !important;
}

.pb-20 {
    padding-bottom: 20px !important;
}

.pb-30 {
    padding-bottom: 30px !important;
}

.pb-40 {
    padding-bottom: 40px !important;
}

.pb-60 {
    padding-bottom: 60px !important;
}

.pt-100 {
    padding-top: 100px !important;
}

.ptb-100 {
    padding-top: 100px !important;
    padding-bottom: 100px !important;
}

.pt-200 {
    padding-top: 200px !important;
}

.pt-70 {
    padding-top: 70px !important;
}

.ptb-70 {
    padding-top: 70px !important;
    padding-bottom: 70px !important;
}

.pb-100 {
    padding-bottom: 100px !important;
}

.pb-70 {
    padding-bottom: 70px !important;
}

.gap-10 {
    gap: 10px;
}

.fs-18 {
    font-size: 18px;
}

.mt-n3 {
    margin-top: -3px;
}

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

    h1,
    .h1 {
        font-size: 48px;
    }

    h2 {
        font-size: 38px;
    }
}

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

    h1,
    .h1 {
        font-size: 44px;
    }

    h2 {
        font-size: 38px;
    }

    .pb-100 {
        padding-bottom: 50px !important;
    }

    .pt-100 {
        padding-top: 50px !important;
    }

    .ptb-100 {
        padding-top: 50px !important;
        padding-bottom: 50px !important;
    }

    .pb-70 {
        padding-bottom: 40px !important;
    }

    .pt-70 {
        padding-top: 40px !important;
    }

    /* .products.pb-100 {
        padding-bottom: 0px !important;
    } */

    .video-banner {
        padding-bottom: 100px !important;
    }

    .newsletter .image-inner.rounded-pill {
        border-radius: 32px !important;
    }

    .quick-view-modal .modal-dialog {
        margin-top: 80px;
    }
}

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

    .pb-100 {
        padding-bottom: 40px !important;
    }

    .pt-100 {
        padding-top: 40px !important;
    }

    .ptb-100 {
        padding-top: 40px !important;
        padding-bottom: 40px !important;
    }

    .pb-70 {
        padding-bottom: 30px !important;
    }

    .newsletter-form {
        width: 100% !important;
    }

    .newsletter-form .btn {
        font-size: 12px;
        padding: 15px 20px;
    }

    .video-banner .video-btn-area {
        padding-top: 120px;
    }

    .overflow-x-scroll-mobile {
        overflow-x: scroll;
    }

}

@media only screen and (max-width: 575.99px) {
    h2 {
        font-size: 32px;
    }

    h3,
    .h3 {
        font-size: 20px;
    }
}

@media only screen and (max-width: 480.99px) {
    .pb-70 {
        padding-bottom: 20px !important;
    }

    .pt-70 {
        padding-bottom: 20px !important;
    }
}

/* Border */
.border,
.border-top,
.border-bottom,
.border-end,
.border-start {
    border-color: var(--border) !important;
}

/* Border Radius */
.radius-0 {
    border-radius: 0 !important;
}

.radius-sm {
    border-radius: 5px !important;
}

.radius-md {
    border-radius: 10px !important;
}

.radius-lg {
    border-radius: 15px !important;
}

.radius-xl {
    border-radius: 20px !important;
}

@media (min-width: 1440px) {
    .container {
        max-width: 1400px;
    }
}

.sf-arrows .sf-with-ul {
    padding: 0;
}

/* Tooltip CSS */
.tooltip .tooltip-inner {
    background-color: var(--color-primary);
}

.tooltip.bs-tooltip-top .tooltip-arrow::before {
    border-top-color: var(--color-primary);
}

.tooltip.bs-tooltip-end .tooltip-arrow::before {
    border-right-color: var(--color-primary);
}

.tooltip.bs-tooltip-bottom .tooltip-arrow::before {
    border-bottom-color: var(--color-primary);
}

.tooltip.bs-tooltip-start .tooltip-arrow::before {
    border-left-color: var(--color-primary);
}

.label-discount-percentage .tooltip.bs-tooltip-top .tooltip-arrow::before {
    border-top-color: var(--color-primary);
}

.label-discount-percentage .tooltip.bs-tooltip-end .tooltip-arrow::before {
    border-right-color: var(--color-primary);
}

.label-discount-percentage .tooltip.bs-tooltip-bottom .tooltip-arrow::before {
    border-bottom-color: var(--color-primary);
}

.label-discount-percentage .tooltip.bs-tooltip-start .tooltip-arrow::before {
    border-left-color: var(--color-primary);
}

/* request loader css start */
.request-loader {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: #0000007a;
    z-index: 10000;
    display: none;
}

.request-loader img {
    position: fixed;
    display: none;
    width: 80px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.request-loader.show {
    display: block;
}

.request-loader.show img {
    display: block;
}

/* request loader css end */

.no-animation {
    -webkit-transform: none;
    transform: none;
    -webkit-animation: none;
    animation: none;
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--color-dark);
    opacity: 0.3;
    z-index: -1;
}

.badge {
    padding: 8px 16px;
    font-size: var(--font-xsm);
}

.badge.bg-success {
    color: var(--color-green);
    background: rgba(var(--color-green-rgb), 0.2) !important;
}

.badge.bg-info {
    color: var(--color-blue);
    background: rgba(var(--color-blue-rgb), 0.2) !important;
}

.badge.bg-danger {
    color: var(--color-red);
    background: rgba(var(--color-red-rgb), 0.2) !important;
}

.badge.bg-warning {
    color: var(--color-yellow);
    background: rgba(var(--color-yellow), 0.2) !important;
}

@media (min-width: 1199.95px) {
    .col-xxl-1-5 {
        width: 20%;
    }
}

.shape img {
    position: absolute;
    z-index: -1;
}

/* -----------------------------------------
	Color CSS
----------------------------------------- */
.theme-color-2 {
    --color-primary: #ff6f00 !important;
    --color-primary-rgb: 255, 111, 0 !important;
}

.theme-color-3 {
    --color-primary: #906a3b !important;
    --color-primary-rgb: 144, 106, 59 !important;
}

.theme-color-4 {
    --color-primary: #ff3f5c !important;
    --color-primary-rgb: 255, 63, 92 !important;
}

.theme-color-5 {
    --color-primary: #f52a85 !important;
    --color-primary-rgb: 245, 42, 133 !important;
}

.color-primary {
    color: var(--color-primary) !important;
}

.color-dark {
    color: var(--color-dark) !important;
}

.color-medium {
    color: var(--color-gray-1) !important;
}

.bg-primary-light {
    background-color: rgba(var(--color-primary-rgb), 0.11) !important;
}

/* -----------------------------------------
  	Animation CSS
----------------------------------------- */
.fade {
    -webkit-transition: opacity 0.2s ease-out;
    transition: opacity 0.2s ease-out;
}

@-webkit-keyframes loader {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes loader {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@-webkit-keyframes slideUp {
    0% {

        -webkit-transform: translateY(10%);
        transform: translateY(10%);
    }

    100% {

        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes slideUp {
    0% {

        -webkit-transform: translateY(10%);
        transform: translateY(10%);
    }

    100% {

        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes slideDown {
    from {
        opacity: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes slideDown {
    from {
        opacity: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes rotate {
    from {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }

    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes rotate {
    from {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }

    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@-webkit-keyframes moveAround {
    0% {
        -webkit-transform: translate(0px, 0px) rotate(0deg);
        transform: translate(0px, 0px) rotate(0deg);
    }

    20% {
        -webkit-transform: translate(73px, -1px) rotate(36deg);
        transform: translate(73px, -1px) rotate(36deg);
    }

    40% {
        -webkit-transform: translate(141px, 72px) rotate(72deg);
        transform: translate(141px, 72px) rotate(72deg);
    }

    60% {
        -webkit-transform: translate(83px, 122px) rotate(108deg);
        transform: translate(83px, 122px) rotate(108deg);
    }

    80% {
        -webkit-transform: translate(-40px, 72px) rotate(144deg);
        transform: translate(-40px, 72px) rotate(144deg);
    }

    100% {
        -webkit-transform: translate(0px, 0px) rotate(0deg);
        transform: translate(0px, 0px) rotate(0deg);
    }
}

@keyframes moveAround {
    0% {
        -webkit-transform: translate(0px, 0px) rotate(0deg);
        transform: translate(0px, 0px) rotate(0deg);
    }

    20% {
        -webkit-transform: translate(73px, -1px) rotate(36deg);
        transform: translate(73px, -1px) rotate(36deg);
    }

    40% {
        -webkit-transform: translate(141px, 72px) rotate(72deg);
        transform: translate(141px, 72px) rotate(72deg);
    }

    60% {
        -webkit-transform: translate(83px, 122px) rotate(108deg);
        transform: translate(83px, 122px) rotate(108deg);
    }

    80% {
        -webkit-transform: translate(-40px, 72px) rotate(144deg);
        transform: translate(-40px, 72px) rotate(144deg);
    }

    100% {
        -webkit-transform: translate(0px, 0px) rotate(0deg);
        transform: translate(0px, 0px) rotate(0deg);
    }
}

@-webkit-keyframes moveUpDown {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    50% {
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes moveUpDown {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    50% {
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes moveLeftRight {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    50% {
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes moveLeftRight {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    50% {
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes ripple {
    0% {
        opacity: 1;
        -webkit-transform: scale3d(0, 0, 0);
        transform: scale3d(0, 0, 0);
    }

    100% {
        opacity: 0.55;
        -webkit-transform: scale3d(1.9, 1.9, 1.9);
        transform: scale3d(1.9, 1.9, 1.9);
    }
}

@keyframes ripple {
    0% {
        opacity: 1;
        -webkit-transform: scale3d(0, 0, 0);
        transform: scale3d(0, 0, 0);
    }

    100% {
        opacity: 0.55;
        -webkit-transform: scale3d(1.9, 1.9, 1.9);
        transform: scale3d(1.9, 1.9, 1.9);
    }
}

@-webkit-keyframes borderAnimation {
    from {
        background-position: 0 0, -22px 0, 100% -22px, 0 100%;
    }

    to {
        background-position: 0 -22px, 0 0, 100% 0, -22px 100%;
    }
}

@keyframes borderAnimation {
    from {
        background-position: 0 0, -22px 0, 100% -22px, 0 100%;
    }

    to {
        background-position: 0 -22px, 0 0, 100% 0, -22px 100%;
    }
}

/* -----------------------------------------
    Button CSS
----------------------------------------- */
button,
.btn {
    cursor: pointer;
    border: none;
    background: inherit;
}

button:focus,
button:active,
.btn:focus,
.btn:active {
    outline: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

button:hover,
.btn:hover {
    outline: none;
}

.btn {
    position: relative;
    overflow: hidden;
    font-size: 16px;
    font-weight: 700;
    text-transform: capitalize;
    border-radius: 0;
    letter-spacing: 0.05em;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

.btn .icon {
    display: inline-block;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align: center;
    border-radius: 50%;
    font-size: 12px;
    color: var(--color-primary);
    background: var(--color-white);
    -webkit-margin-start: 5px;
    margin-inline-start: 5px;
}

.btn .icon i {
    margin: 0;
}

.icon-start i {
    -webkit-margin-end: 5px;
    margin-inline-end: 5px;
}

.icon-end i {
    -webkit-margin-start: 5px;
    margin-inline-start: 5px;
}

.btn-lg {
    padding: 15px 28px;
}

.btn-md {
    padding: 10px 20px;
    font-size: var(--font-sm);
}

.btn-sm {
    padding: 6px 14px;
    font-size: var(--font-xsm);
}

.btn-primary:active,
.btn-check:focus+.btn-primary,
.btn-primary:focus {
    color: var(--color-white);
    ;
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    box-shadow: none;
}

.btn-primary:active:focus {
    box-shadow: none;
}

.btn-primary {
    border-width: 0;
    background-color: var(--color-primary);
    -webkit-transition: background 0.3s ease-out;
    transition: background 0.3s ease-out;
    z-index: 1;
}



.btn-primary::before,
.btn-primary::after {
    position: absolute;
    content: "";
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: var(--color-white);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
    z-index: -1;
}

.btn-primary::after {
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}

.btn-primary:hover {
    color: var(--color-white);
    border-color: var(--color-primary);
    background-color: var(--color-primary);
}

.btn-primary:hover::before,
.btn-primary:hover::after {
    opacity: 0.12;
    left: 0;
    visibility: visible;
}

.btn-primary.shadow {
    -webkit-box-shadow: 0px 8px 30px rgba(var(--color-primary-rgb), 0.3) !important;
    box-shadow: 0px 8px 30px rgba(var(--color-primary-rgb), 0.3) !important;
}

.btn-danger {
    border-width: 1px solid var(--color-red);
    background-color: var(--color-red);
    -webkit-transition: background 0.3s ease-out;
    transition: background 0.3s ease-out;
}

.btn-danger:hover {
    border-color: var(--color-red);
    background-color: var(--color-red);
}

.btn-outline {
    border: 1px solid var(--color-primary);
    color: var(--color-primary);
}

.btn-outline:hover {
    color: var(--color-primary);
}

.btn-outline .icon {
    color: var(--color-white);
    background: var(--color-primary);
}

.btn-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    line-height: 35px;
    text-align: center;
    border-radius: 5px;
    font-size: 16px;
}

.btn-icon.active i {
    /* background-color: var(--color-primary); */
    font-weight: 600;
}

.btn-icon:hover {
    color: var(--color-white);
    background-color: var(--color-primary);
}

.btn-remove {
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: var(--color-light);
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-remove:hover {
    background: var(--color-red);
}

.btn-text {
    padding: 0;
    text-decoration: underline;
}

:is(.disabled, .slick-disabled) {
    opacity: 0.8;
    cursor: not-allowed !important;
    pointer-events: initial !important;
}

.video-btn {
    position: relative;
    overflow: visible;
    width: 45px;
    height: 45px;
    padding: 0;
    font-size: 14px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 50%;
    color: var(--color-white);
    background: var(--color-primary);
}

.video-btn:hover {
    color: var(--color-primary);
}

.video-btn::after,
.video-btn::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-animation: ripple 4s ease-out infinite;
    animation: ripple 4s ease-out infinite;
    border: 1px solid var(--color-white);
    border-radius: 50%;
    z-index: -2;
}

.video-btn::before {
    -webkit-animation-delay: 2s;
    animation-delay: 2s;
}

.video-btn.p-absolute {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 1;
}

/* -----------------------------------------
Lazyload CSS
----------------------------------------- */
.lazy-container {
    position: relative;
    overflow: hidden;
    display: table;
    table-layout: fixed;
    width: 100%;
    background-color: var(--color-light);
    z-index: 1;
}

.lazy-container::after {
    position: absolute;
    content: "\f03e";
    font-family: "Font Awesome 5 Pro";
    top: 50%;
    left: 50%;
    font-size: 30px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    color: var(--color-gray-1);
    z-index: -1;
}

.lazy-container img {
    position: absolute;
    top: 0;
    left: 0;
    width: auto;
    height: auto;
    max-width: 100%;
    opacity: 0.04;
    -webkit-filter: blur(2px);
    filter: blur(2px);
    -webkit-transition: all 0.4s linear;
    transition: all 0.4s linear;
}

.lazy-container img.lazyloaded {
    -webkit-filter: blur(0);
    filter: blur(0);
    opacity: 1;
}

.ratio {
    position: relative;
    overflow: hidden;
    display: table;
    table-layout: fixed;
    width: 100%;
}

.ratio::before {
    content: "";
    display: block;
    padding-bottom: 56.25%;
}

.ratio.ratio-1-1::before {
    padding-bottom: 100%;
}

.product-inline .ratio.ratio-1-1::before {
    padding-bottom: 100%;
}

.ratio.ratio-1-2::before {
    padding-bottom: 119.2%;
}

.ratio.ratio-2-3::before {
    padding-bottom: 66.66%;
}

.ratio.ratio-16-9::before {
    padding-bottom: 56.25%;
}

.ratio.ratio-16-11::before {
    padding-bottom: 68.75%;
}

.ratio.ratio-21-9::before {
    padding-bottom: 42.85%;
}

.ratio.ratio-21-10::before {
    padding-bottom: 48%;
}

.ratio.ratio-5-3::before {
    padding-bottom: 60%;
}

.ratio.ratio-5-4::before {
    padding-bottom: 80%;
}

.ratio.ratio-4-3::before {
    padding-bottom: 75%;
}

.blur-up {
    -webkit-filter: blur(5px);
    filter: blur(5px);
    -webkit-transition: -webkit-filter 300ms;
    transition: -webkit-filter 300ms;
    transition: filter 300ms;
    transition: filter 300ms, -webkit-filter 300ms;
}

.lazyloaded.blur-up {
    -webkit-filter: blur(0);
    filter: blur(0);
}

/* -----------------------------------------
    Modal CSS
----------------------------------------- */
/* .custom-modal .modal-dialog {
    max-width: 1000px !important;
    overflow: hidden;
    margin: auto;
} */

.custom-modal .modal-dialog .modal-content {
    padding: 30px;
    border: 0;
}

.custom-modal .modal-dialog .modal-body {
    padding: 0;
}

.custom-modal .modal-dialog .btn-close {
    position: absolute;
    right: 20px;
    top: 20px;
    z-index: 2;
}

.custom-modal .modal-dialog .close_modal_btn {
    position: absolute;
    right: 10px;
    top: 9px;
    z-index: 2;
    font-size: 20px;
    border: 1px solid var(--color-red);
    height: 33px;
    width: 32px;
    background: var(--color-red);
    color: var(--color-white);
    transition: all 0.3s ease;
    line-height: 30px;
    border-radius: 3px;
}

.custom-modal .modal-dialog .close_modal_btn:hover {
    background: transparent;
    color: var(--color-red);
}

.quick-view-modal-close {
    border: 1px solid var(--color-primary);
    color: var(--color-white);
    height: 34px;
    width: 34px;
    background: var(--color-primary);
    margin-left: auto;
    line-height: 34px;
    font-size: 20px;
}

.quick-view-modal .modal-dialog .modal-content {
    padding: 40px 40px 25px;
    overflow: hidden;
}

.quick-view-modal .product-title {
    font-size: 32px;
}

.quick-view-modal img {
    background: var(--color-light) !important;
}

.quick-view-modal .product-single-default .product-single-details .product-input .input-group {
    width: 170px;
}

.quick-view-modal .product-single-default .product-single-details .product-input .input-text {
    -webkit-margin-end: 5px;
    margin-inline-end: 5px;
}

.quick-view-modal .slider-thumbnails.slick-initialized.slick-slider.slick-vertical {
    z-index: 1080;
}

.slider-thumbnails.slick-initialized.slick-slider.slick-vertical {
    z-index: 1070;
}

.zoomContainer {
    z-index: 1060;
}

.zoomWindow {
    z-index: 9;
    overflow: hidden;
    border-radius: 20px;
    background-color: var(--color-light);
}

.single-product .zoomContainer {
    z-index: 99;
}

.single-product .zoomWindow {
    z-index: 99;
}

.quick-view-modal.show~.zoomContainer {
    z-index: 1100;
}

/* -----------------------------------------
    Nice Select CSS
----------------------------------------- */
.nice-select {
    border-color: transparent;
    display: inline-block;
    float: none;
    height: 60px;
    line-height: 60px;
}

.nice-select:after {
    right: 10px;
}

.nice-select .list {
    height: 160px;
    overflow-y: scroll;
}

.nice-select .list::-webkit-scrollbar {
    width: 5px;
}

.nice-select .list::-webkit-scrollbar-track {
    background-color: var(--color-light);
}

.nice-select .list::-webkit-scrollbar-thumb {
    border-radius: 30px;
    background: rgba(var(--color-dark-rgb), 0.2);
}

.nice-select.open:after {
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

.nice-select.open .list {
    opacity: 1;
    pointer-events: auto;
    -webkit-transform: scale(1) translateY(0);
    transform: scale(1) translateY(0);
}

.nice-select .option {
    display: block;
}

/* -----------------------------------------
    Slick Slider CSS
----------------------------------------- */
.slider-arrow .slider-btn {
    color: var(--color-white);
    background-color: var(--color-primary);
}

.slider-arrow.style-2 .slider-btn {
    border-radius: 50%;
    color: var(--color-primary);
    background: var(--color-white);
}

.slider-arrow.absolute-btn .slider-btn {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    margin: 0;
    border-radius: 50%;
}

.slider-arrow.absolute-btn .slider-prev {
    left: 0;
}

.slider-arrow.absolute-btn .slider-next {
    right: 0;
}

.slider-btn {
    display: inline-block;
    padding: 0;
    cursor: pointer;
    color: var(--color-primary);
    font-size: 24px;
}

.product-list-slider-arrows .slider-btn {
    border: 1px solid var(--color-primary);
    transition: all 0.3s ease;
}

.slider-btn:last-child {
    -webkit-margin-start: 10px;
    margin-inline-start: 10px;
}

.slider-arrow-inline .slider-btn:last-child {
    -webkit-margin-start: 5px;
    margin-inline-start: 5px;
}

.slider-arrow-inline.style-2 .slider-btn {
    border: 1px solid var(--color-primary);
    border-radius: 50%;
}

.slick-slider {
    margin: 0 calc(-0.5 * 1.5rem);
}

.slick-slide {
    margin-right: calc(0.5 * 1.5rem);
    margin-left: calc(0.5 * 1.5rem);
}

.slick-dots li {
    width: 10px;
    height: 10px;
    background: #e7e7e7;
    border-radius: 50%;
}

.slick-dots li button::before {
    content: "";
}

.slick-dots li.slick-active {
    background: var(--color-primary);
}

.slick-dotted.slick-slider {
    margin-bottom: 20px;
}

/* -----------------------------------------
    Nav Tabs CSS
----------------------------------------- */
.tabs-navigation .nav {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    border: none;
}

.tabs-navigation .nav .nav-link {
    color: var(--color-primary);
    font-weight: var(--font-medium);
    border: 1px solid var(--color-primary);
    padding: 10px 20px;
    margin: 5px 10px;
    cursor: pointer;
}

.tabs-navigation .nav .nav-item:is(.active) .nav-link {
    color: var(--color-white);
    background: var(--color-primary);
    background: transparent;
}

.tabs-navigation .target {
    position: absolute;
    background: var(--color-primary);
    z-index: -1;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.tabs-navigation-scroll {
    width: 100%;
    overflow-x: auto;
    padding-bottom: 6px;
    scrollbar-width: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--color-light);
}

.tabs-navigation-scroll .nav {
    flex-wrap: nowrap;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.tabs-navigation-scroll .nav .nav-link {
    white-space: nowrap;
}

.tabs-navigation-scroll .nav .nav-link:hover,
.tabs-navigation-scroll .nav .nav-link.active {
    background: var(--color-primary);
    color: var(--color-white);
}

/* WebKit browsers (Chrome, Safari, Edge) */
.tabs-navigation-scroll::-webkit-scrollbar {
    width: auto;
    height: 4px;
    border-radius: 20px;
}

/* Remove scrollbar buttons */
.tabs-navigation-scroll::-webkit-scrollbar-button {
    display: none;
}

/* Track */
.tabs-navigation-scroll::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 20px;
    border-radius: 20px;
}

/* Handle */
.tabs-navigation-scroll::-webkit-scrollbar-thumb {
    -webkit-border-radius: 20px;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.3);
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5);
}

/* Handle on hover */
.tabs-navigation-scroll::-webkit-scrollbar-thumb:hover {
    background: var(--color-primary);
}

/* Handle when the window is inactive */
.tabs-navigation-scroll::-webkit-scrollbar-thumb:window-inactive {
    background: rgba(255, 255, 255, 0.3);
}

/* -----------------------------------------
    Title CSS
----------------------------------------- */
.section-title .text {
    max-width: 540px;
}

.section-title.title-inline {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
}

.section-title.title-inline .nav-tabs .nav-item .nav-link {
    margin: 0 15px 10px 0;
}

.section-title.title-inline .nav-tabs .nav-item:last-child .nav-link {
    -webkit-margin-end: 0;
    margin-inline-end: 0;
}

.section-title.title-center {
    text-align: center;
}

.section-title.title-center .title {
    max-width: 600px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

.section-title.title-bottom-line {
    position: relative;
    padding-bottom: 15px;
    border-bottom: 2px solid var(--border);
}

.section-title.title-bottom-line::before {
    position: absolute;
    content: "";
    bottom: -2px;
    left: 0;
    width: 40%;
    height: 2px;
    background-color: var(--color-primary);
}

.section-title.title-floating {
    position: absolute;
    top: -38px;
    left: 0;
    right: 0;
    z-index: 1;
    padding: 10px 20px 0;
    margin-inline: 30px;
}

.section-title .line::before,
.content .line::before {
    position: absolute;
    content: "";
    top: 50%;
    right: 0;
    width: 10px;
    height: 10px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    border-radius: 50%;
    background: inherit;

}

.line {
    position: relative;
    display: block;
    height: 2px;
    width: 80px;
    background: var(--color-primary);
}

.left_right_slide_anim.line::before,
.left_right_slide_anim.line::before {
    animation: left_right_slide_anim 2.5s linear infinite alternate none;
    right: unset;
}


@keyframes left_right_slide_anim {
    0% {
        left: -5px;
    }

    100% {
        left: calc(100% - 5px);
    }
}

.line-2 {
    height: 3px;
    background: var(--color-yellow);
    -webkit-box-shadow: 0px 3px 4px rgba(234, 171, 10, 0.31);
    box-shadow: 0px 3px 4px rgba(234, 171, 10, 0.31);
    border-radius: 3.8531px;
    -webkit-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
}

.line-2::before {
    content: none !important;
}

.title .line {
    display: inline-block;
    top: -7px;
}

.sub-title {
    display: inline-block;
    margin-bottom: 10px;
}

:is(.title-md, .section-title .title-sm) {
    font-size: 32px;
}

/* -----------------------------------------
    Form CSS
----------------------------------------- */
.form-control {
    border: 1px solid var(--border);
    border-radius: 5px;
    height: 60px;
    line-height: 60px;
    padding: 0 0 0 18px;
    font-size: 14px;
    background: transparent;
}

.form-control:focus {
    background: transparent;
}

textarea.form-control {
    min-height: 200px;
}

textarea#comment {
    padding: 20px;
    line-height: 2;
}

.custom-radio .form-radio-label {
    position: relative;
    cursor: pointer;
    position: relative;
    cursor: pointer;
    padding: 0;
    vertical-align: middle;
    -webkit-padding-start: 20px;
    padding-inline-start: 20px;
}

.custom-radio .form-radio-label::before {
    position: absolute;
    content: "";
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    height: 14px;
    width: 14px;
    border: 1px solid var(--color-primary);
    border-radius: 50%;
}

.custom-radio input[type="radio"]:checked+.form-radio-label::after {
    opacity: 1;
    transform: scale(1) translateY(-50%);
    top: 50%;
}

.custom-radio input[type="radio"]+.form-radio-label::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 2px;
    opacity: 0;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: var(--color-primary);
    transform: scale(0) translateY(-50%);
    transition: all 0.3s ease;
}

.custom-radio .input-radio {
    display: none;
}

.custom-checkbox .form-check-label {
    position: relative;
    cursor: pointer;
    position: relative;
    cursor: pointer;
    padding: 0;
    vertical-align: middle;
    -webkit-padding-start: 22px;
    padding-inline-start: 22px;
}

.custom-checkbox .form-check-label::before {
    position: absolute;
    content: "";
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    height: 17px;
    width: 17px;
    border: 2px solid var(--border);
    border-radius: 2px;
}

.custom-checkbox input[type="checkbox"]:checked+.form-check-label::after {
    opacity: 1;
}

.custom-checkbox input[type="checkbox"]+.form-check-label::after {
    content: "";
    width: 11px;
    position: absolute;
    top: 50%;
    left: 3px;
    opacity: 0;
    height: 6px;
    border-left: 2px solid var(--color-white);
    border-bottom: 2px solid var(--color-white);
    -webkit-transform: translateY(-65%) rotate(-45deg);
    transform: translateY(-65%) rotate(-45deg);
}

.custom-checkbox .input-checkbox {
    display: none;
}

input[type="checkbox"]:checked+.form-check-label::before,
input[type="radio"]:checked+.form-check-label::before {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

input[type="checkbox"]:checked+.form-check-label::after,
input[type="radio"]:checked+.form-check-label::after {
    opacity: 1;
}

.form-group {
    position: relative;
}

.form-inline .input-group {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    padding: 3px;
    background-color: rgba(255, 255, 255, 0.259);
}

.form-inline .input-group .form-control {
    height: auto;
    line-height: 1;
    border: none;
    padding: 15px 25px;
    background-color: transparent;
}

.show-password-field {
    position: absolute;
    right: 16px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    cursor: pointer;
}

.show-password-field .show-icon {
    font-family: var(--font-family-fontawesome);
    font-style: normal;
}

.show-password-field .show-icon::before {
    content: "\f06e";
}

.show-password-field .show-icon.show::before {
    content: "\f070";
}

/* -----------------------------------------
  	Go top CSS
----------------------------------------- */
.go-top {
    position: fixed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    bottom: 3%;
    right: 0;
    width: 45px;
    height: 45px;
    opacity: 0;
    cursor: pointer;
    text-decoration: none;
    color: var(--color-light);
    font-size: 28px;
    border-radius: 5px 0 0 5px;
    background-color: var(--color-primary);
    background-image: var(--gradient-bg);
    -webkit-transition: 0.4s;
    transition: 0.4s;
    -webkit-transform: translateX(15%);
    transform: translateX(15%);
    z-index: 100;
}

.go-top.active {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
}

.go-top:hover {
    -webkit-transform: translateY(-3px);
    transform: translateY(-3px);
}

/* -----------------------------------------
    Mobile Menu CSS
----------------------------------------- */
.mobile-navbar {
    -webkit-box-shadow: 0px -8px 30px rgba(24, 24, 24, 0.1);
    box-shadow: 0px -8px 30px rgba(24, 24, 24, 0.1);
}

.mobile-navbar .mobile-navbar-inner {
    height: 56px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.mobile-navbar .mobile-menu-toggler {
    border-width: 0;
    background-color: transparent;
}

.mobile-navbar .mobile-menu-toggler span {
    width: 30px;
    height: 3px;
    border-radius: 30px;
    background-color: var(--color-dark);
    display: block;
    margin: 5px auto;
    position: relative;
    -webkit-transition: all 0.3s ease-out 0s;
    transition: all 0.3s ease-out 0s;
}

.mobile-navbar .mobile-menu-toggler.active span:nth-child(1) {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 8px;
}

.mobile-navbar .mobile-menu-toggler.active span:nth-child(2) {
    -webkit-transform: scale(0);
    transform: scale(0);
}

.mobile-navbar .mobile-menu-toggler.active span:nth-child(3) {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    top: -8px;
}

.mobile-bottom-toolbar {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    background: var(--color-white);
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    backdrop-filter: saturate(180%) blur(20px);
    -webkit-box-shadow: 0px -8px 60px rgba(24, 24, 24, 0.1);
    box-shadow: 0px -8px 60px rgba(24, 24, 24, 0.1);
}

.mobile-bottom-toolbar .toolbar-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    height: 56px;
    max-width: 540px;
    margin: auto;
}

.mobile-bottom-toolbar .toolbar-nav a {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    color: var(--color-gray-1);
    font-size: var(--font-sm);
}

.mobile-bottom-toolbar .toolbar-nav a:hover {
    color: var(--color-primary);
}

.mobile-bottom-toolbar .toolbar-nav a i {
    font-size: 20px;
    margin-bottom: 5px;
}

.mobile-bottom-toolbar .toolbar-nav a.active {
    color: var(--color-primary);
}

.mobile-bottom-toolbar .badge {
    position: absolute;
    top: 0;
    right: 0;
    width: 16px;
    height: 16px;
    line-height: 16px;
    padding: 0;
    text-align: center;
    border-radius: 50%;
    font-size: var(--font-xsm);
    font-weight: var(--font-medium);
    font-family: var(--font-family-base);
    color: var(--color-white);
    background-color: var(--color-primary);
}

.mobile-menu-overlay {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    z-index: 1000;
}

.menu-active .mobile-menu-overlay {
    opacity: 1;
    visibility: visible;
}

.menu-active .mobile-menu {
    visibility: visible;
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

.mobile-menu {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    max-width: 300px;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
    background-color: var(--color-white);
    visibility: hidden;
    z-index: 1001;
    overflow-y: auto;
}

.mobile-menu-top {
    padding: 20px 20px;
    font-size: 18px;
    color: #222;
    font-weight: 700;
    text-transform: uppercase;
    border-bottom: 1px solid #efefef;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    justify-content: space-between;
}

.mobile-menu-top .mobile-menu-close {
    color: var(--color-primary);
    font-size: 22px;
    border: 1px solid var(--color-primary);
    height: 35px;
    width: 35px;
    line-height: 35px;
    border-radius: 50%;
    text-align: center;
    transition: all 0.3s ease;
}

.mobile-menu-top .mobile-menu-close:hover {
    background: var(--color-primary);
    color: var(--color-white);
}

.mobile-menu .header-search-form {
    width: calc(100% - 32px);
    min-width: auto;
    margin: 20px auto;
    border-radius: 5px;
    border-color: var(--border);
}

.mobile-menu .header-search-form .select-custom {
    display: none;
}

.mobile-menu .header-search-form .search-input {
    -webkit-box-flex: 1;
    -ms-flex: auto;
    flex: auto;
}

.mobile-menu .header-search-form .search-input input {
    padding: 10px 15px;
}

.mobile-menu .header-search-form .btn {
    right: 10px;
}

.mobile-menu ul li {
    display: block;
}

.mobile-menu ul li a {
    padding: 10px 16px !important;
}

.mobile-menu .has-submenu:not(.open) .submenu,
.mobile-menu .has-submenu:not(.open) .mega-menu {
    display: none !important;
}

.mobile-menu .submenu,
.mobile-menu .mega-menu {
    position: inherit !important;
}

/* -----------------------------------------
    Banner CSS
----------------------------------------- */
.banner-sm {
    position: relative;
    overflow: hidden;
}

.banner-sm .banner-content {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    max-width: 60%;
    padding: 0 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.banner-sm .banner-content h3,
.banner-sm .banner-content .h3,
.banner-sm .banner-content h2,
.banner-sm .banner-content .h2 {
    margin-bottom: 30px;
}

.banner-sm .banner-content h2 {
    font-weight: var(--font-medium);
}

.banner-sm.banner-vertical.ratio::before {
    padding-bottom: 143%;
}

.banner-sm.banner-vertical.content-top .banner-content {
    max-width: 100%;
    justify-content: center;
}

.banner-sm.content-top .banner-content {
    text-align: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 30px 20px;
    left: 0;
    right: 0;
}

.banner-sm.content-center .banner-content {
    max-width: 100%;
    text-align: center;
    padding: 30px 10px;
}

.banner-sm .sub-title {
    font-size: var(--font-sm);
    color: var(--color-dark);
    font-weight: var(--font-medium);
}

.banner-sm .line {
    display: inline-block;
    position: relative;
    height: 2px;
    width: 80px;
    background: var(--color-dark);
}

.banner-sm .line::before {
    position: absolute;
    content: "";
    top: 50%;
    right: 0;
    width: 15px;
    height: 15px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    border-radius: 50%;
    background: inherit;
}

.banner-sm .inner-border {
    position: absolute;
    top: 15px;
    left: 15px;
    width: calc(100% - 30px);
    height: calc(100% - 30px);
    border: 1px solid var(--color-white);
}

.banner-collection .banner-sm .banner-content h3 {
    margin-bottom: 20px;
}

.video-banner {
    position: relative;
    overflow: hidden;
}

.video-banner .banner-inner {
    position: relative;
}

.video-banner .banner-inner .mt-negative {
    margin-top: -145px;
}

@media only screen and (max-width: 991px) {
    .video-banner .banner-inner .mt-negative {
        margin-top: -45px;
    }

    .go-top {
        bottom: 12%;
        width: 36px;
        height: 36px;
        font-size: 22px;
    }

    .floating-wpp:hover {
        bottom: 67px;
    }

    .floating-wpp {
        bottom: 65px;
    }

    .floating-wpp .floating-wpp-button {
        height: 40px !important;
        width: 40px !important;
    }

    .banner-sm .banner-content {
        max-width: 90%;
    }
}

@media only screen and (max-width: 480px) {
    .video-banner .banner-inner .mt-negative {
        margin-top: -25px;
    }
}

.video-banner .banner-inner .bg-overlay {
    position: absolute;
    bottom: 30px;
    left: 0;
    right: 0;
    height: calc(100% / 2 * 1.4);
    background: rgba(var(--color-primary-rgb), 0.13);
}

.video-banner .lazy-container {
    padding-bottom: 39%;
}

.video-banner.video-banner-2 .bg-overlay {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}

.video-banner.video-banner-2 .bg-overlay::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: -webkit-gradient(linear,
            left top,
            right top,
            from(rgba(0, 0, 0, 0.8)),
            color-stop(13.14%, rgba(0, 0, 0, 0.792)),
            to(rgba(41, 41, 41, 0.16)));
    background: linear-gradient(90deg,
            rgba(0, 0, 0, 0.8) 0%,
            rgba(0, 0, 0, 0.792) 13.14%,
            rgba(41, 41, 41, 0.16) 100%);
}

.video-banner .video-btn {
    width: 60px;
    height: 60px;
    color: var(--color-primary);
    background: var(--color-white);
}

.video-banner .video-btn-2 {
    width: 40px;
    height: 40px;
    color: var(--color-white);
    background: var(--color-primary);
}

.video-banner .video-btn-2::after,
.video-banner .video-btn-2::before {
    border-color: var(--color-primary);
}

.video-banner .border-dashed {
    position: absolute;
    top: 0;
    left: -3px;
    bottom: 0;
    width: calc(100% + 6px);
    z-index: -1;
    background-image: repeating-linear-gradient(0deg,
            var(--color-primary),
            var(--color-primary) 12px,
            transparent 12px,
            transparent 22px,
            var(--color-primary) 22px),
        repeating-linear-gradient(90deg,
            var(--color-primary),
            var(--color-primary) 12px,
            transparent 12px,
            transparent 22px,
            var(--color-primary) 22px),
        repeating-linear-gradient(180deg,
            var(--color-primary),
            var(--color-primary) 12px,
            transparent 12px,
            transparent 22px,
            var(--color-primary) 22px),
        repeating-linear-gradient(270deg,
            var(--color-primary),
            var(--color-primary) 12px,
            transparent 12px,
            transparent 22px,
            var(--color-primary) 22px);
    background-size: 2px 100%, 100% 2px, 2px 100%, 100% 2px;
    background-position: 0 0, 0 0, 100% 0, 0 100%;
    background-repeat: no-repeat;
    -webkit-animation: borderAnimation 3s infinite linear;
    animation: borderAnimation 3s infinite linear;
}

/* -----------------------------------------
    Home Slider CSS
----------------------------------------- */
.home-slider .title-sm {
    font-size: 28px;
}

@media only screen and (max-width: 575px) {
    .home-slider .title-sm {
        font-size: 18px;
    }
}

.home-slider .title span {
    position: relative;
    text-decoration: underline;
    -webkit-text-decoration-color: var(--color-primary);
    text-decoration-color: var(--color-primary);
}

.home-slider .sub-title {
    display: inline-block;
    color: var(--color-dark);
    font-weight: var(--font-semi-bold);
    margin-bottom: 10px;
}

.home-slider .animated-slider {
    position: relative;
}

.home-slider .slider-content {
    max-width: 640px;
}

.home-slider .sub-title {
    margin-bottom: 10px;
}

.home-slider .title {
    margin-bottom: 30px;
    font-size: clamp(2rem, 0.6667rem + 2.7778vw, 4rem);
}

.home-slider .text-lg {
    max-width: 500px;
    margin-bottom: 40px;
    font-size: var(--font-lg);
}

.home-slider .slider-item.ratio::before {
    padding-bottom: 61.6%;
}

@media only screen and (max-width: 992px) {
    .home-slider .slider-item.ratio::before {
        padding-bottom: 82.6%;
    }
}

@media only screen and (max-width: 575px) {
    .home-slider .slider-item.ratio::before {
        padding-bottom: 100%;
    }
}

@media only screen and (max-width: 450px) {
    .home-slider .slider-item.ratio::before {
        padding-bottom: 130%;
    }
}

.home-slider .bg-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.home-slider .product-thumb {
    position: absolute;
    bottom: 0;
    left: calc(100% / 3 * 0.95);
    width: 460px;
}

.home-slider .product-thumb .slick-dots li {
    background: rgba(var(--color-dark-rgb), 0.13);
}

.home-slider .product-thumb .slick-dots li.slick-active {
    background: rgba(var(--color-dark-rgb), 0.7);
}

.home-slider .product-thumb .product-default-3 {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

.home-slider .product-thumb .product-default-3 .line {
    width: 40px;
    height: 2px;
}

.home-slider .product-thumb .product-default-3 .product-img::before {
    content: none;
}

.home-slider .video-btn {
    color: var(--color-primary);
    background: var(--color-white);
}

/* -----------------------------------------
    Category CSS
----------------------------------------- */
.category {
    position: relative;
}

.category .category-item {
    cursor: pointer;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

.category .category-item .line {
    margin-inline: auto;
    width: 40px;
    height: 2px;
    background: var(--color-yellow);
    -webkit-box-shadow: 0px 3px 4px rgba(234, 171, 10, 0.31);
    box-shadow: 0px 3px 4px rgba(234, 171, 10, 0.31);
}

.category .category-img {
    position: relative;
}

.category .category-title a {
    font-size: 20px;
    font-weight: inherit;
    color: inherit;
}

.category .shape img.shape-1 {
    top: 5%;
    left: 0%;
    -webkit-animation: moveLeftRight 8s linear infinite;
    animation: moveLeftRight 8s linear infinite;
}

.category .shape img.shape-2 {
    top: 15%;
    left: 30%;
    -webkit-animation: moveUpDown 5s linear infinite;
    animation: moveUpDown 5s linear infinite;
}

.category .shape img.shape-3 {
    top: 20%;
    right: 25%;
    -webkit-animation: rotate 12s linear infinite;
    animation: rotate 12s linear infinite;
}

.category .shape img.shape-4 {
    top: 12%;
    right: 0;
    -webkit-animation: moveLeftRight 5s linear infinite;
    animation: moveLeftRight 5s linear infinite;
}

.category-inline {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-width: 0;
    padding: 0;
}

.category-inline .category-img {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 25%;
}

.category-inline .category-title {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.category-inline .category-list li {
    position: relative;
    display: list-item;
    -webkit-padding-start: 20px;
    padding-inline-start: 20px;
}

.category-inline .category-list li:not(:last-child) {
    margin-bottom: 10px;
}

.category-inline .category-list li::before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin-block: auto;
    content: "";
    width: 10px;
    height: 10px;
    border-radius: 50%;
    opacity: 0.5;
    background: var(--color-primary);
}

.category-inline .category-details {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 75%;
    padding: 0;
    -webkit-padding-start: 16px;
    padding-inline-start: 16px;
}

/* -----------------------------------------
	Newsletter CSS
----------------------------------------- */
.newsletter {
    position: relative;
}

.newsletter .image-inner {
    padding-left: 40px;
    padding-right: 40px;
    border-radius: 30px 30px 0 0;
    padding-top: 40px;
    padding-bottom: 40px;
}

.newsletter-style-2 .image-inner {
    padding-left: 40px;
    padding-right: 40px;
    border-radius: 0 0 0 0;
    padding-top: 0;
    padding-bottom: 0;
}

.newsletter .bg-overlay {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}

.newsletter .bg-overlay::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--color-light-1);
    opacity: 0.95;
}

.newsletter .content {
    max-width: 480px;
}

@media only screen and (max-width: 991px) {
    .newsletter-style-2 .content {
        padding-bottom: 0px;
    }
}

.newsletter .content .text {
    max-width: 400px;
}

.newsletter .image img {
    display: block;
    -webkit-margin-start: auto;
    margin-inline-start: auto;
}

.newsletter .newsletter-form .input-group {
    background-color: var(--color-white);
}

.newsletter .newsletter-form .input-group ::-webkit-input-placeholder {
    color: #8c929d;
}

.newsletter .newsletter-form .input-group :-ms-input-placeholder {
    color: #8c929d;
}

.newsletter .newsletter-form .input-group ::-ms-input-placeholder {
    color: #8c929d;
}

.newsletter .newsletter-form .input-group ::placeholder {
    color: #8c929d;
}

.newsletter .newsletter-form .input-group .form-control {
    background-color: transparent;
    padding: 20px;
    border-radius: 5px;
    color: #8c929d;
}

.newsletter .absolute-img {
    position: absolute;
    top: -30px;
}

/* -----------------------------------------
    Product CSS
----------------------------------------- */
.products {
    position: relative;
}

@media only screen and (max-width: 991px) {
    .products .shape {
        display: none;
    }
}

.products .shape img.shape-1 {
    top: 0%;
    left: 0%;
    -webkit-animation: moveLeftRight 8s linear infinite;
    animation: moveLeftRight 8s linear infinite;
}

.products .shape img.shape-2 {
    top: 10%;
    left: 30%;
    -webkit-animation: moveUpDown 14s linear infinite;
    animation: moveUpDown 14s linear infinite;
}

.products .shape img.shape-3 {
    top: 40%;
    right: 0%;
    -webkit-animation: moveUpDown 12s linear infinite;
    animation: moveUpDown 12s linear infinite;
}

.product-default {
    position: relative;
    overflow: hidden;
    background-color: var(--color-white);
    border: 1px solid var(--border-2);
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    padding-bottom: 20px;
}

.product-default .product-details {
    padding: 0 20px;
}

.product-grid-card .product-default .product-details {
    margin-bottom: 14px;
}

.product-default .product-img {
    padding: 20px 20px 0;
    position: relative;
    overflow: hidden;
    margin-bottom: 20px;
}

/* .product-default .product-img .ratio.ratio-1-1::before{
    padding-bottom: 83%;
} */

.product-default .product-img img {
    max-width: 100%;
    -webkit-transition: all 0.4s cubic-bezier(0, 0, 0.05, 1);
    transition: all 0.4s cubic-bezier(0, 0, 0.05, 1);
    height: 100%;
    width: 100%;

}

.product-grid-card .product-grid-card-image img {
    max-width: 100%;
    height: 100%;
    width: 100%;
}

.product-default .product-img .hover-img {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.4s opacity, 0.4s visibility,
        -webkit-transform 1.5s cubic-bezier(0, 0, 0.2, 1);
    transition: 0.4s opacity, 0.4s visibility,
        -webkit-transform 1.5s cubic-bezier(0, 0, 0.2, 1);
    transition: 0.4s opacity, 0.4s visibility,
        transform 1.5s cubic-bezier(0, 0, 0.2, 1);
    transition: 0.4s opacity, 0.4s visibility,
        transform 1.5s cubic-bezier(0, 0, 0.2, 1),
        -webkit-transform 1.5s cubic-bezier(0, 0, 0.2, 1);
}

.product-default .label {
    position: absolute;
    top: 0;
    left: 0;
    padding: 8px 18px;
    color: var(--color-white);
    border-radius: 20px 0px 20px 20px;
    left: 0;
    border-radius: 17px 0px 20px 0px;
    z-index: 1;
    font-size: 14px;
}

.product-default .label-discount-percentage i {
    margin-right: 3px;
    font-size: 14px;
}

.product-default .label-discount-percentage {
    position: absolute;
    top: 10px;
    right: 0px;
    display: inline-block;
    background: var(--color-primary);
    color: var(--color-white);
    font-size: 13px;
    font-weight: 500;
    text-align: center;
    vertical-align: middle;
    z-index: 1;
    padding: 5px 10px;
    border-radius: 30px 0 0 30px;
}

.details-label-discount-percentage {
    display: inline-block;
    background: var(--color-primary);
    color: var(--color-white);
    font-size: 13px;
    font-weight: 500;
    text-align: center;
    vertical-align: middle;
    z-index: 1;
    padding: 5px 10px;
    border-radius: 30px 0 0 30px;
}

/* .product-default .label-discount-percentage:before,
.product-default .label-discount-percentage:after {
    content: "";
    position: absolute;
    background: inherit;
    height: inherit;
    width: inherit;
    top: 0;
    left: 0;
    z-index: -1;
    transform: rotate(30deg);
}
.product-default .label-discount-percentage:after {
    transform: rotate(60deg);
} */

.product-default.product_first_item.product-default-2 .label-discount-percentage {
    top: 17%;
}

/* @keyframes beat {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(1.1);
    }
} */

.product-default .label-orange {
    background-color: var(--color-orange);
}

.product-default .label-pink {
    background-color: var(--color-pink);
}

.product-default .label-green {
    background-color: var(--color-green);
}

.product-default .label-cyan {
    background-color: var(--color-cyan);
}

.product-default .label-blue {
    background-color: var(--color-blue);
}

.product-default .label-red {
    background-color: var(--color-red);
}

.product-default .label-yellow {
    background-color: var(--color-yellow);
}

.product-default .label.label-2,
.product-default .label.label-3 {
    top: 25px;
    padding: 3px 15px;
    border-radius: 0 30px 30px 0;
}

.product-default .label.label-3 {
    -webkit-transform: rotateZ(90deg);
    transform: rotateZ(90deg);
    top: 20px;
}

.color_red {
    color: var(--color-red) !important;
}

.product-default .product-category {
    font-weight: var(--font-medium);
    color: var(--color-gray-1);
}


/* ===================================
======== product-list-slider =========
======================================*/

.product-list-slider .product-default .product-img .ratio.ratio-1-1::before {
    padding-bottom: 100%;
}

.product-list-slider .product-default .product-img {
    height: auto;
}

.product-default:hover .product-title {
    color: var(--color-primary);
}

.product-default .product-title a {
    font-weight: inherit;
    color: inherit;
}

.product-default .ratings-total {
    font-weight: var(--font-medium);
}

.product-default .product-price {
    margin: 10px 0 15px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    line-height: 1;
    font-size: 1rem;
}

.product-default .product-price span {
    display: inline-block;
    font-weight: var(--font-medium);
    font-family: var(--font-family-base);
    font-size: 18px;
}

.product-default .product-price .new-price {
    display: inline-block;
    color: var(--color-primary);
    font-weight: 600;
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
    font-size: 20px;
}

.line_through {
    text-decoration: line-through;
}

.product-default .product-countdown {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: center;
    margin-bottom: 10px;
}

.product-default-2 .product-countdown,
.product-default-3 .product-countdown,
.product-default-4 .product-countdown {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: left;
    margin-bottom: 10px;
}

.product-single-details .product-countdown {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: left;
    margin-bottom: 15px;
}

.product-single-details .product-countdown .count,
.product-default .product-countdown .count {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 40px;
    height: 40px;
    line-height: 1;
    text-align: center;
    background-color: var(--color-light-1);
    color: var(--color-dark);
    font-weight: var(--font-medium);
    font-size: 10px;
}

.product-default .product-countdown span:first-child {
    font-size: var(--font-xsm);
    margin-bottom: 5px;
}

.product-single-details .product-countdown .count:not(:last-child),
.product-default .product-countdown .count:not(:last-child) {
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}

.product-single-details .product-countdown .count-value,
.product-default .product-countdown .count-value {
    font-size: var(--font-xsm);
    margin-bottom: 5px;
}

.product-single-details .product-countdown .count-period,
.product-default .product-countdown .count-period {
    color: var(--color-primary);
}

.product-default .btn-icon-group {
    z-index: 3;
}

.product-default .btn-icon-group .hover-show {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
}

.product-default .btn-icon-group .btn-icon {
    color: var(--color-primary);
    background-color: var(--color-light-1);
    margin-bottom: 10px;
}

/* .product-default .btn-icon-group .btn-icon.active {
    background-color: var(--color-primary);
    color: var(--color-white);
} */

.product-default:hover .btn-center-position {
    visibility: visible;
    opacity: 1;
    top: 50%;
    transform: translate(-50%, -50%);
}

.btn-center-position {
    position: absolute;
    left: 50%;
    top: 55%;
    transform: translate(-50%, -45%);
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    visibility: hidden;
    opacity: 0;
    transition: all 0.4s ease;
}


.product-default .btn-icon-group .btn-icon:hover {
    color: var(--color-white) !important;
    background-color: var(--color-primary) !important;
}

.product-default .btn-icon-group.btn-absolute {
    position: absolute;
    right: 20px;
    bottom: 25px;
}

.product-default .btn-icon-group.btn-absolute .hover-show {
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
}

.product-default .btn-icon-group.btn-absolute .hover-show:nth-child(1) {
    -webkit-transition-delay: 0.2s;
    transition-delay: 0.2s;
}

.product-default .btn-icon-group.btn-inline .btn-icon {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin: 0 3px;
    z-index: 2;
}

.product-default .btn-icon-group.btn-inline .hover-show {
    z-index: 1;
}

.product-default .btn-icon-group.btn-inline .hover-show:first-child {
    -webkit-transform: translateX(50px);
    transform: translateX(50px);
}

.product-default .btn-icon-group.btn-inline .hover-show:last-child {
    -webkit-transform: translateX(-50px);
    transform: translateX(-50px);
}

.product-default .line {
    margin-inline: auto;
    width: 50px;
    height: 4px;
    background: var(--color-yellow);
    -webkit-box-shadow: 0px 3px 4px rgba(234, 171, 10, 0.31);
    box-shadow: 0px 3px 4px rgba(234, 171, 10, 0.31);
    border-radius: 3.5px;
}

.product-default:hover {
    border-color: transparent;
    -webkit-box-shadow: 0px 5px 40px rgba(49, 49, 49, 0.1);
    box-shadow: 0px 5px 40px rgba(49, 49, 49, 0.1);
    border-bottom-color: var(--color-primary);
}

/* .product-default:hover .btn-icon:not(.hover-show) {
    color: var(--color-white);
    background-color: var(--color-primary);
} */

.product-default:hover .btn-icon-group .hover-show {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translate(0);
    transform: translate(0);
}

.product-default:hover .btn-icon-group.btn-inline .hover-show {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translate(0);
    transform: translate(0);
}

.product-default:hover .product-img img {
    -webkit-transform: scale3d(1.05, 1.05, 1.05) translateZ(0);
    transform: scale3d(1.05, 1.05, 1.05) translateZ(0);
}

.product-default:hover .product-img .default-img {
    opacity: 0;
    visibility: hidden;
}

.product-default:hover .product-img .hover-img {
    opacity: 1;
    visibility: visible;
}

.product-default:hover .btn-wishlist i {
    font-weight: bold;
}

.product-default-2 .btn-icon-group,
.product-default-4 .btn-icon-group {
    position: relative;
}

.product-default-2 .btn-icon-group .btn-icon,
.product-default-4 .btn-icon-group .btn-icon {
    color: var(--color-primary);
    border: 1px solid var(--color-primary);
    background: transparent;
}

.product-default-2 .btn-icon-group .hover-hide,
.product-default-4 .btn-icon-group .hover-hide {
    -webkit-transform: none;
    transform: none;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

.product-default-2 .btn-icon-group .hover-show,
.product-default-4 .btn-icon-group .hover-show {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

.product-default-2:hover .btn-icon-group .hover-show .btn-icon,
.product-default-4:hover .btn-icon-group .hover-show .btn-icon {
    color: var(--color-primary);
    background: transparent;
    -webkit-transform: none;
    transform: none;
}

.product-default-2:hover .btn-icon-group .hover-hide,
.product-default-4:hover .btn-icon-group .hover-hide {
    opacity: 0;
    visibility: hidden;
    background: transparent !important;
    -webkit-transform: translateX(50%);
    transform: translateX(50%);
}

.product-default-4 {
    padding: 25px;
    border: 0;
    background: var(--color-white);
    z-index: 1;
}

.product-default-4::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--color-primary);
    -webkit-mask-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='15' ry='15' stroke='%23333' stroke-width='3' stroke-dasharray='6%2c 10' stroke-dashoffset='0' stroke-linecap='square'/%3e%3c/svg%3e");
    mask-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='15' ry='15' stroke='%23333' stroke-width='3' stroke-dasharray='6%2c 10' stroke-dashoffset='0' stroke-linecap='square'/%3e%3c/svg%3e");
    z-index: -1;
}

.product-default-4::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(var(--color-primary-rgb), 0.11);
    z-index: -2;
}

.product-default-4 .product-img {
    padding: 20px;
}

.product-default-4 .product-details {
    padding: 0;
}

.product-default-4 .btn-icon {
    background: transparent !important;
}

.product-default-4 .product-img {
    overflow: hidden;
    background: var(--color-white);
}

.product-default-4 .product-title {
    -webkit-line-clamp: 2;
    margin-top: 5px;
    margin-bottom: 15px;
}

.product-default-4 .product-price {
    margin-top: 15px;
}

.product-default-4 .product-countdown .count {
    width: 45px;
    height: 45px;
    background: var(--color-primary);
}

.product-default-4 .product-countdown .count span {
    color: var(--color-white);
}

.product-default-4.color-1 {
    border-color: #3f5dff;
}

.product-default-4.color-1::after {
    background: #CD49CD;
}

.product-default-4.color-1::before {
    background: #FFF6FF;
}

.product-default-4.color-1 .category-icon {
    border-color: #3f5dff;
}

.product-default-4.color-2 {
    border-color: #cd49cd;
}

.product-default-4.color-2::after {
    background: #cd49cd;
}

.product-default-4.color-2::before {
    background: rgba(205, 73, 205, 0.07);
}

.product-default-4.color-2 .category-icon {
    border-color: #cd49cd;
}

.product-default-4.color-3 {
    border-color: #95ce58;
}

.product-default-4.color-3::after {
    background: #95ce58;
}

.product-default-4.color-3::before {
    background: rgba(149, 206, 88, 0.07);
}

.product-default-4.color-3 .category-icon {
    border-color: #95ce58;
}

.product-default-4.color-4 {
    border-color: #cd8b52;
}

.product-default-4.color-4::after {
    background: #cd8b52;
}

.product-default-4.color-4::before {
    background: rgba(205, 139, 82, 0.07);
}

.product-default-4.color-4 .category-icon {
    border-color: #cd8b52;
}

.product-default-4.color-5 {
    border-color: #269eda;
}

.product-default-4.color-5::after {
    background: #269eda;
}

.product-default-4.color-5::before {
    background: rgba(38, 158, 218, 0.07);
}

.product-default-4.color-5 .category-icon {
    border-color: #269eda;
}

.product-default-4.color-6 {
    border-color: #f0d969;
}

.product-default-4.color-6::after {
    background: #f0d969;
}

.product-default-4.color-6::before {
    background: rgba(240, 217, 105, 0.07);
}

.product-default-4.color-6 .category-icon {
    border-color: #f0d969;
}

.product-default-4.color-7 {
    border-color: #ed798e;
}

.product-default-4.color-7::after {
    background: #ed798e;
}

.product-default-4.color-7::before {
    background: rgba(237, 121, 142, 0.07);
}

.product-default-4.color-7 .category-icon {
    border-color: #ed798e;
}

.product-default-4.color-8 {
    border-color: #b3cde3;
}

.product-default-4.color-8::after {
    background: #b3cde3;
}

.product-default-4.color-8::before {
    background: rgba(179, 205, 227, 0.07);
}

.product-default-4.color-8 .category-icon {
    border-color: #b3cde3;
}

.product-ratings i {
    color: var(--color-yellow);
}

.product-center {
    text-align: center;
}

.product-center .product-price {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.product-inline {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-color: transparent;
    padding: 0;
}

.product-inline .product-img {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 30%;
    padding: 0;
    border: 1px solid var(--border);
    overflow: hidden;
}

.product-inline .product-title {
    font-size: 18px;
    margin-bottom: 2px;
}

.product-inline .product-details {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 70%;
    padding: 0;
    -webkit-padding-start: 16px;
    padding-inline-start: 16px;
}

.product-inline .product-price {
    margin-bottom: 0;
}

.product-inline-2 .product-img {
    width: 40%;
}

.product-inline-3 .product-img {
    width: 34%;
}

.product-inline-2 .product-title {
    -webkit-line-clamp: 2;
}

.product-inline-2 .product-details {
    width: 60%;
}

.slick-slide .product-default .product-img {
    margin-bottom: 0;
}

@media only screen and (max-width: 767.99px) {
    /* .product-inline {
        flex-direction: column;
        gap: 20px;
    }

    .slick-slide .product-default.product-inline {
        flex-direction: row;
        gap: 20px;
    } */

    .product-inline-2 .product-details {
        width: 100%;
        padding-inline-start: 0px;
    }

    .product-inline .product-img {
        margin-right: auto;
    }

    .product-inline-2 .product-img {
        width: 100%;
    }
}

.product-inline:hover {
    -webkit-box-shadow: none;
    box-shadow: none;
    border-color: transparent;
}

.product-inline:hover .product-img img {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
}

.product-column .product-img img {
    background-color: var(--color-light-1);
}

.product-column .product-list-group {
    -webkit-padding-start: 16px;
    padding-inline-start: 16px;
}

.product-column .product-list-group li {
    display: list-item;
}

.product-column .product-list-group li:not(:last-child) {
    margin-bottom: 10px;
}

.product-column .product-action .product-price {
    margin-top: 0;
    margin-bottom: 5px;
}

.product-column .product-action .product-price .new-price {
    margin-left: auto;
    margin-right: auto;
}

.product-column .btn-icon-group div .btn {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin: 0;
}

.product-column:hover {
    border-color: transparent;
}

.product-single-default .product-single-gallery {
    position: relative;
    margin-bottom: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: start;
    gap: 20px;
}

.product-single-default .slider-thumbnails2,
.product-single-default .slider-thumbnails {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 17%;
}

.product-single-default .slider-thumbnails2 .thumbnail-img,
.product-single-default .slider-thumbnails .thumbnail-img {
    cursor: pointer;
    max-width: 100%;
    border: 1px solid var(--border);
}

/* .product-single-single-item{
    height: 540px;
    overflow: hidden;
} */

.product-single-default .slider-thumbnails2 .lazy-container,
.product-single-default .slider-thumbnails .lazy-container {
    margin-bottom: 15px;
}

.zoomWindowContainer {
    overflow: hidden !important;
}

.product-single-default .slider-thumbnails2 .slider-btn,
.product-single-default .slider-thumbnails .slider-btn {
    position: absolute;
    border-radius: 50%;
    left: 0;
    right: 0;
    width: 25px;
    height: 25px;
    line-height: 25px;
    margin-left: auto;
    margin-right: auto;
    color: var(--color-primary);
    border: 2px solid var(--color-primary);
    z-index: 1;
    font-size: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff;
    font-weight: 700;
    transition: all 0.3s ease;
}

.product-single-default .slider-thumbnails2 .slider-btn:hover,
.product-single-default .slider-thumbnails .slider-btn:hover {
    color: var(--color-white);
    border: 2px solid var(--color-primary);
    background: var(--color-primary);
}

.product-single-default .slider-thumbnails2 .slider-btn.slider-prev,
.product-single-default .slider-thumbnails .slider-btn.slider-prev {
    top: -15px;
    -webkit-transform: rotateZ(90deg);
    transform: rotateZ(90deg);
}

.product-single-default .slider-thumbnails2 .slider-btn.slider-next,
.product-single-default .slider-thumbnails .slider-btn.slider-next {
    bottom: -5px;
    -webkit-transform: rotateZ(-90deg);
    transform: rotateZ(-90deg);
}

.product-single-default .slider-thumbnails2 .slick-current,
.product-single-default .slider-thumbnails .slick-current {
    border: 1px solid var(--color-primary);
}

.product-single-default .product-single-slider {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 83%;
    overflow: hidden;
}

.product-single-default .product-single-slider img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.product-single-default .product-single-slider2,
.product-single-default .product-single-slider2 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 83%;
    overflow: hidden;
}

.product-single-default .product-single-slider2 .product-single-single-item img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}



.product-single-default .product-single-slider2 figure,
.product-single-default .product-single-slider figure {
    border: 1px solid var(--border);
}

.product-single-default .product-full-screen {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
}

.product-single-default .product-single-details {
    margin-bottom: 30px;
}

.product-single-default .product-single-details .product-title {
    margin-bottom: 10px;
    font-size: 32px;
}

.product-single-default .product-single-details .product-ratings i {
    color: var(--color-yellow);
}

.product-single-default .product-single-details .ratings-total {
    font-weight: var(--font-medium);
}

.product-single-default .product-single-details .product-price {
    margin-bottom: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    gap: 12px;
    font-size: 24px;
}

.product-single-default .product-single-details .product-price span {
    display: inline-block;
    font-weight: var(--font-medium);
    font-family: var(--font-family-base);
}

.product-single-default .product-single-details .product-price .new-price-currency {
    color: var(--color-primary);
}

.product-single-default .product-single-details .product-price .new-price {
    display: inline-block;
    color: var(--color-primary);
}

.product-single-default .product-single-details .product-price .old-price {
    text-decoration: line-through;
}

.product-single-default .product-single-details .product-price .discountoff {
    color: #fb8c00;
    font-size: 22px;
    font-weight: 600;
}

.product-single-default .product-single-details .product-text .text-collapse {
    opacity: 0.2;
    display: none;
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
    -webkit-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
}

.product-single-default .product-single-details .product-countdown .count {
    width: 60px;
    height: 45px;
    line-height: 1;
    text-align: center;
    background-color: var(--color-light-1);
    color: var(--color-dark);
    font-weight: var(--font-medium);
    font-size: 14px;
}

.product-single-default .product-single-details .product-countdown .count span:first-child {
    margin-bottom: 3px;
}

.product-single-default .product-single-details .product-text .text-collapse.show {
    display: block;
    opacity: 1;
    -webkit-transform: none;
    transform: none;
}

.product-single-default .product-single-details .product-action .product-list-group {
    display: inline-flex;
    column-gap: 26px;
    row-gap: 20px;
    flex-wrap: wrap;
}


.list-item-title {
    min-width: 56px;
}

.product-single-default .product-single-details .product-action .product-list-group .list-item .variantUL {
    display: grid;
    align-items: center;
    column-gap: 30px;
    grid-template-columns: repeat(1, 1fr);
    row-gap: 4px;
    transform: translateY(3px);
}

.product-single-default .product-single-details .product-action .product-list-group .list-item .variantUL li span {
    line-height: 1.4;
}

.product-single-default .product-single-details .product-countdown .details-label-discount-percentage {
    border-radius: 0;
    padding: 0;
    background: var(--color-primary);
    position: relative;
    z-index: 1;
    transform: rotate(-20deg);
    --size: 42px;
    height: var(--size);
    width: var(--size);
    line-height: var(--size);
    margin-inline-start: 15px;
    animation: beat 1s ease infinite alternate;
    top: -8px;
}

.product-single-default .product-single-details .product-countdown .details-label-discount-percentage .percentage-text {
    position: absolute;
    width: 60px;
    height: 60px;
    left: -10px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    top: -7px;
}

.product-single-default .product-single-details .product-countdown .details-label-discount-percentage .percentage-text svg {
    height: 35px;
    width: 35px;
}

.product-single-default .product-single-details .product-countdown .details-label-discount-percentage .percentage-text span {
    line-height: 1;
}

.product-single-default .product-single-details .product-countdown .details-label-discount-percentage:before,
.product-single-default .product-single-details .product-countdown .details-label-discount-percentage:after {
    content: "";
    position: absolute;
    background: inherit;
    height: inherit;
    width: inherit;
    top: 0;
    left: 0;
    z-index: -1;
    transform: rotate(30deg);
}

.product-single-default .product-single-details .product-countdown .details-label-discount-percentage:after {
    transform: rotate(60deg);
}

@keyframes beat {
    from {
        transform: rotate(-20deg) scale(1);
    }

    to {
        transform: rotate(-20deg) scale(1.1);
    }
}



.product-single-default .product-single-details .btn-icon-group .btn.btn-icon {
    color: var(--color-primary);
    background: var(--color-light);
    margin: 0 3px;
    display: inline-flex;
    margin: 0 3px;
    z-index: 2;
}

.product-single-default .product-single-details .btn-icon-group .btn.btn-icon:hover {
    color: var(--color-white);
    background: var(--color-primary);
}





/*===============  .quick-view-modal =========*/
.quick-view-modal .product-single-default .product-single-details .product-action .product-list-group .list-item .variantUL {
    /* grid-template-columns: repeat(2, 1fr); */
}

.quick-view-modal .product-single-default .product-single-details .product-action .product-list-group .list-item {
    display: flex;
    flex-direction: column;
    row-gap: 4px;
}

.quick-view-modal .list-item-title {
    width: max-content;
}

.product-single-default .product-single-details .product-input {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    margin-bottom: 20px;
}

.product-single-default .product-single-details .product-input .input-group {
    padding: 5px 14px;
    border: 1px solid var(--color-primary);
    border-radius: 10px;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 200px;
    min-width: 120px;
    height: 52px;
}

.product-single-default .product-single-details .product-input .input-group:last-child {
    -webkit-margin-start: 20px;
    margin-inline-start: 20px;
}

.product-single-default .product-single-details .product-input .input-text {
    color: var(--color-dark);
    font-weight: var(--font-medium);
    -webkit-margin-end: 16px;
    margin-inline-end: 16px;
}

.product-single-default .product-single-details .product-input .nice-select {
    height: auto;
    line-height: 1;
}

.product-single-default .product-single-details .product-input .nice-select .list {
    left: unset;
    right: -16px;
}

.product-single-default .product-single-details .product-input .product-single-qty .form-control {
    border: none;
    height: auto;
    padding: 0;
    text-align: center;
}

.product-single-default .product-single-details .product-input .product-single-qty .form-control:focus {
    border: none;
    -webkit-box-shadow: 0;
    box-shadow: 0;
}

.product-single-default .product-single-details .product-input .product-single-qty .input-group-btn-vertical {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.product-single-default .product-single-details .product-input .product-single-qty .btn {
    position: unset;
    padding: 4px 8px;
    background-color: var(--color-light);
}


.product-sort-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: space-between;
    justify-content: space-between;
    /* border: 1px solid; */
}

.product-single-default .product-single-details .product-title span.label.label-2 {
    padding: 3px 15px 1px 15px;
    font-size: 14px;
    color: #FFF;
    /* background: var(--color-primary); */
    display: inline-block;
    position: relative;
    top: -15px;

}



@media only screen and (max-width: 992.99px) {
    .product-sort-area {
        flex-direction: column;
        row-gap: 14px;
    }

    .product-sort-list {
        order: -1;
        justify-content: space-between;
        width: 100%;
    }

    .product-sort-area .view-and-filter {
        justify-content: space-between;
        width: 100%;
    }
}

.product-sort-area .view-and-filter {
    display: flex;
    gap: 10px;
}

.product-sort-area .product-sort-list {
    display: flex;
    gap: 20px;
    padding: 0;
}

.product-sort-area .product-sort-list .serch-product {
    min-width: 240px;
    width: 100%;
}

@media only screen and (min-width: 575px) {
    .product-single-default .product-single-slider2 .slick-dots {
        display: none !important;
    }

    .quick-view-modal .product-single-default .product-single-slider .slick-dots {
        display: none !important;
    }
}

@media only screen and (max-width: 575px) {
    .product-sort-area .product-sort-list .serch-product {
        min-width: 100%;
        width: 100%;
    }

    .quick-view-modal .product-single-default .product-single-details .product-action .product-list-group .list-item .variantUL {
        grid-template-columns: repeat(1, 1fr);
    }

    /* modal product slider */
    .quick-view-modal .product-single-default .slider-thumbnails {
        display: none;
    }

    .quick-view-modal .product-single-default .product-single-slider {
        width: 100%;
        padding-bottom: 35px;
        margin-bottom: 0;
    }

    .quick-view-modal .product-single-default .product-single-slider .slick-dots {
        bottom: 0;
        display: block !important;
    }

    /* product single */
    .product-single-default .slider-thumbnails2 {
        display: none;
    }

    .product-single-default .product-single-slider2 {
        width: 100%;
        padding-bottom: 35px;
        margin-bottom: 0;
    }

    .product-single-default .product-single-slider2 .slick-dots {
        bottom: 0;
        display: block !important;
    }

    .product-single-default .product-single-details .product-action .product-list-group .list-item .variantUL {
        grid-template-columns: repeat(1, 1fr);
    }
}

.product-sort-area .item .btn-icon:hover {
    color: var(--color-white);
}

.product-sort-area .item .btn-icon {
    border: 1px solid var(--color-primary);
    color: var(--color-primary);
}

a.btn-icon.view-type.active {
    background: var(--color-primary);
    color: var(--color-white);
}

.product-sort-area .product-sort-list .nice-select {
    border: 1px solid var(--border);
    -webkit-padding-end: 36px;
    padding-inline-end: 36px;
}

.product-sort-area .product-sort-list .nice-select::after {
    right: 18px;
}

.product-sort-area .product-sort-list .nice-select .list {
    width: 100%;
}

.product-sort-area .product-sort-list .btn-icon {
    width: auto;
    height: auto;
    background: transparent;
    color: var(--color-gray-1);
}

.product-sort-area .product-sort-list .btn-icon.active,
.product-sort-area .product-sort-list .btn-icon:hover {
    color: var(--color-primary);
}

.product-single-tab .nav {
    border: none;
}

.product-single-tab .nav .nav-item:not(:last-child) {
    -webkit-margin-end: 20px;
    margin-inline-end: 20px;
    -webkit-padding-end: 20px;
    padding-inline-end: 20px;
    border-right: 2px solid var(--border);
}

.product-single-tab .nav .nav-link {
    color: var(--color-gray-1);
    font-weight: var(--font-medium);
    padding: 0;
    cursor: pointer;
    border: none;
    font-size: 22px;
    font-weight: 600;
}

.product-single-tab .nav .nav-link:hover,
.product-single-tab .nav .nav-link.active {
    color: var(--color-primary) !important;
}

.product-single-tab .tab-content {
    margin-top: 30px;
    padding: 30px 30px 0;
    border: 1px solid var(--border);
}

.product-single-tab .image {
    overflow: hidden;
}

.product-single-tab .content .text {
    margin-top: 20px;
    margin-bottom: 30px;
}

.product-single-tab .content .list-group {
    -webkit-padding-start: 16px;
    padding-inline-start: 16px;
}

.product-single-tab .content .list-group li {
    display: list-item;
}

.product-single-tab .content .list-group li:not(:last-child) {
    margin-bottom: 10px;
}

.product-single-tab .content .list-group li::marker {
    color: var(--color-primary);
}

.product-single-tab .table td,
.product-single-tab .table th {
    font-weight: var(--font-medium);
    font-size: var(--font-sm);
    padding: 10px 20px;
    vertical-align: middle;
    border: 1px solid var(--border);
}

.product-single-tab .table th {
    color: var(--color-dark);
}

.product-single-tab .table td {
    color: var(--color-gray-1);
}

.product-single-tab .table tr:nth-child(odd) {
    background-color: var(--color-light);
}

.product-single-tab .comment-list .comment .comment-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
}

.product-single-tab .comment-list .comment .comment-body .ratings {
    position: absolute;
    top: 0;
    right: 0;
}

.product-single-tab .comment-list .comment .comment-body .ratings i {
    color: var(--color-yellow);
}

.product-single-tab .comment-list .comment .comment-body .author {
    -webkit-padding-end: 16px;
    padding-inline-end: 16px;
    max-width: 80px;
    min-width: 50px;
}

.product-single-tab .comment-list .comment .comment-body .author img {
    border-radius: 15px;
}

.product-single-tab .comment-list .comment .comment-body p {
    margin-bottom: 0;
}

.new-product {
    position: relative;
    overflow: hidden;
}

.new-product.bg-color {
    background: var(--color-light-3);
}

.new-product .product-slider {
    position: relative;
}

.new-product .product-slider::after {
    position: absolute;
    content: "";
    right: -30%;
    top: 50%;
    width: calc(100% / 2 * 1.5);
    height: calc(100% / 2 * 2.2);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    margin-top: -15px;
    background: rgba(var(--color-primary-rgb), 0.13);
    z-index: -1;
}

.new-product .product-slider::before {
    position: absolute;
    content: "";
    right: 0;
    top: 50%;
    width: calc(100% / 2 * 1.15);
    height: calc(100% / 2 * 2.5);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    margin-top: -15px;
    border: 10px solid var(--color-primary);
    z-index: -2;
}

.new-product .product-slider .slick-dots {
    text-align: inherit;
    -webkit-margin-start: calc(0.5 * 1.5rem - 5px);
    margin-inline-start: calc(0.5 * 1.5rem - 5px);
}

.product-showcase .product-default {
    border-radius: 100px;
    background: linear-gradient(135deg, #ffe985 0%, #fa742b 100%);
}

.product-showcase .product-default .product-img {
    padding-top: 40px;
    padding-bottom: 40px;
}

.product-showcase .product-default .line {
    background: var(--color-white);
    -webkit-box-shadow: 0px 3px 4px rgba(54, 54, 54, 0.2);
    box-shadow: 0px 3px 4px rgba(54, 54, 54, 0.2);
}

.product-showcase>div:nth-child(1) .product-default {
    background: linear-gradient(135deg, #ffe985 0%, #fa742b 100%);
}

.product-showcase>div:nth-child(2) .product-default {
    background: linear-gradient(135deg, #ce9ffc 0%, #7367f0 100%);
}

.product-showcase>div:nth-child(3) .product-default {
    background: linear-gradient(135deg, #f97794 0%, #623aa2 100%);
}

.product-with-border .product-inner {
    padding: 50px 20px 10px;
    border: 2px solid var(--color-primary);
}

@media (max-width: 991.98px) {
    .product-with-border .product-inner {
        padding: 80px 20px 30px;
    }
}

/* -----------------------------------------
    Content CSS
----------------------------------------- */
.content-area .radius-big {
    border-radius: 250px;
}

/* -----------------------------------------
    Featured CSS
----------------------------------------- */
.featured .featured-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.featured .featured-item .icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100px;
    height: 100px;
    font-size: 40px;
    z-index: 1;
    color: var(--color-dark);
}

.featured .featured-item .icon::after {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    mask: url(../../images/grocery/category/bg-img.svg) no-repeat center/contain;
    -webkit-mask: url(../../images/grocery/category/bg-img.svg) no-repeat center/contain;
    z-index: -1;
}

.featured .featured-item .icon.color-1::after {
    color: #ffffff;
    background-color: var(--color-primary);
    background: var(--feature-bg-color);
}

.featured .featured-item .icon.color-2::after {
    color: #b2edcf;
    background-color: #b2edcf;
}

.featured .featured-item .icon.color-3::after {
    color: #f0dec1;
    background-color: #f0dec1;
}

.featured .featured-item .icon.color-4::after {
    color: #9bccf5;
    background-color: #9bccf5;
}

.featured .featured-item .icon.color-5::after {
    color: #d5c5eb;
    background-color: #d5c5eb;
}

.featured .featured-item .icon.color-6::after {
    color: #f1cad8;
    background-color: #f1cad8;
}

.featured .featured-item .content {
    -webkit-padding-start: 15px;
    padding-inline-start: 15px;
}

.featured .featured-item p {
    margin-bottom: 0;
}

.featured.featured-2 .featured-item .icon {
    font-size: 50px;
    width: auto;
    height: auto;
}

@media only screen and (max-width: 991px) {
    .featured .featured-item {
        justify-content: start;
    }
}

/* -----------------------------------------
	Footer CSS
----------------------------------------- */
.footer-area {
    position: relative;
    overflow: hidden;
}

.footer-area.radius {
    border-radius: 30px 30px 0 0;
}

.footer-area .bg-overlay {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}

.footer-area .bg-overlay::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--color-light-1);
    opacity: 0.9;
}

.footer-fashion .bg-overlay::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--color-light-1);
    opacity: 0.3 !important;
}

.footer-area .footer-widget {
    margin-bottom: 30px;
}

.footer-area .footer-widget ul {
    padding: 0;
    margin: 0;
    list-style-type: none;
}

.footer-area .footer-widget ul li {
    display: block;
}

.footer-area .footer-widget .navbar-brand {
    padding: 0;
}

.footer-area .footer-widget h3 {
    text-transform: capitalize;
    margin-bottom: 25px;
}

.footer-area .footer-widget .navbar-brand {
    margin-bottom: 20px;
}

.footer-area .footer-widget p {
    color: var(--color-gray-2);
}

.footer-area .footer-widget .social-link {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.footer-area .footer-widget .social-link a {
    display: inline-block;

    color: var(--color-white) !important;
    height: 35px;
    width: 35px;
    text-align: center;
    line-height: 35px;
    background: var(--color-primary);
    border-radius: 50%;
    font-size: 14px;
    position: relative;
    z-index: 1;
    border: 1px solid var(--color-primary);
}

.footer-area .footer-widget .social-link a::after {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    background: var(--color-white);
    height: 100%;
    width: 100%;
    border-radius: 50%;
    transform: scale(0);
    transition: all 0.3s ease;
    z-index: -1;
}

.footer-area .footer-widget .social-link a:hover::after {
    transform: scale(1);
}

.footer-area .footer-widget .social-link a:hover {
    color: var(--color-primary) !important;
}

.footer-area .footer-widget .social-link a:last-child {
    margin: 0;
}

.footer-area .footer-widget .footer-links li {
    position: relative;
    margin-bottom: 20px;
    line-height: 1;
    color: var(--color-gray-2);
    display: flex;
    gap: 7px;
}

@media screen and (max-width: 575px) {
    .footer-area .footer-widget .footer-links li {
        margin-bottom: 12px;
    }

}

.footer-area .footer-widget .footer-links li a {
    color: var(--color-gray-2);
}

.footer-area .footer-widget .footer-links li a:hover {
    color: var(--color-primary);
}

.footer-area .footer-widget .footer-links li:last-child {
    margin-bottom: 0;
}

.footer-area .copy-right-area {
    text-align: center;
    padding: 12px 0;
}

.copy-right-content p {
    margin-bottom: 0;
}

.footer-area .border-top-medium {
    border-top: 1px solid var(--color-gray-1);
}

.footer-widget .form-inline .input-group {
    background: rgb(255 255 255);
    box-shadow: 0px 8px 30px rgba(24, 24, 24, 0.1);
}

.footer_description {
    max-height: 160px;
    overflow: hidden;
    transition: max-height 0.3s ease;
    margin-bottom: 0;
}

.footer-widget .show-more-footer {
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

.footer-widget-number,
.footer-widget-address,
.footer-widget-email {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.footer-area .footer-widget .footer-links .footer-widget-address li {
    margin-bottom: 0;
}

/*# sourceMappingURL=style.css.map */
.rate {
    background-image: url(../../images/rate-star.png);
    background-position: 0 -13px;
    background-repeat: repeat-x;
    height: 13px;
    transition: all 0.5s ease-out 0s;
    -webkit-transition: all 0.5s ease-out 0s;
    width: 95px;
    margin-bottom: 2px;
}

.rating {
    background-image: url(../../images/rate-star.png);
    background-position: 0 0;
    background-repeat: repeat-x;
    height: 13px;
}

.review-content ul.review-value {
    display: inline-block;
    position: relative;
    cursor: pointer;
    padding-inline-end: 10px;
}

.review-content ul.review-value:not(:first-child) {
    margin-inline-start: 5px;
}

.review-content ul.review-value:last-child::after {
    content: none;
}

.review-content ul.review-value li {
    display: inline-block;
}

.review-content ul.review-value::after {
    position: absolute;
    content: "";
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    height: 70%;
    width: 1px;
    background: #819cb0;
}

ul.review-value:hover {
    color: red;
}

.single-review .review-thumb {
    height: 90px;
    padding: 1px;
    border: 1px solid #ddd;
    width: 90px;
}

.single-review .review-thumb img {
    height: 100%;
    width: 100%;
}

.accordion-button:focus {
    box-shadow: none;
}

.max_height_100 {
    min-height: 100px !important;
}

.review-color {
    color: #f4d632;
}

.sidebar-widget-area #categories .list-group .list-dropdown .menu-collapse li a {
    cursor: pointer;
}

.electronic-bottom-header-bg {
    background-color: rgb(var(--color-primary-rgb), 0.08);
}

/*---------------------------
** Cookie alert css
---------------------------*/

.cookie-consent {
    position: fixed;
    background-color: #262938;
    bottom: 0px;
    width: 100%;
    padding: 15px 0px;
    z-index: 10000000000;
    color: #fff;
}

.cookie-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

button.cookie-consent__agree {
    padding: 5px 16px;
    border: none;
    background-color: #25d06f;
    color: #fff;
    cursor: pointer;
    border-radius: 3px;
    font-size: 14px;
}

span.cookie-consent__message {
    background-color: transparent !important;
    color: #fff;
    font-size: 14px;
}

@media only screen and (max-width: 991px) {
    .cookie-container {
        display: block;
        text-align: center;
    }

    button.cookie-consent__agree {
        margin-top: 15px;
    }

    span.cookie-consent__message {
        line-height: 20px;
        display: block;
    }

    .sidebar-widget-area {
        margin-bottom: 10px;
    }

    .review-content ul.review-value:not(:first-child) {
        margin-inline-start: 5px;
    }

    .review-content ul.review-value li a {
        font-size: 12px;
    }
}

.contact-area .card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 20px;
    border-radius: 15px;
    border: 1px solid var(--border-2);
    -webkit-box-shadow: 0px 10px 40px 0px rgba(78, 76, 76, 0.1);
    box-shadow: 0px 10px 40px 0px rgba(78, 76, 76, 0.1);
}

.contact-area .card .icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 52px;
    flex: 0 0 44px;
    border-radius: 8px;
    font-size: 18px;
    background-color: var(--color-white);
    border: 1px solid var(--border-2);
    transition: all 0.3s ease-in-out;
}

.contact-area .card:hover .icon {
    background-color: var(--color-primary);
    color: var(--color-white);
}

.contact-area .card .card-text {
    -webkit-padding-start: 12px;
    padding-inline-start: 12px;
    margin-bottom: 0;
}

.contact-area .card .card-text a {
    display: block;
    width: 100%;
    overflow-wrap: break-word;
    white-space: normal;
    /* max-width: 220px; */
}

@media screen and (min-width: 768px) and (max-width: 992px) {
    .contact-area .card .card-text a {
        max-width: 100%;
    }

    .product-default .product-details.skeleton_details {
        padding: 0px;
    }
}

@media screen and (max-width: 767px) {
    .contact-area .card .card-text a {
        max-width: 100%;
    }

    .product-default .product-details.skeleton_details {
        padding: 0px;
    }
}

.card .card-text {
    color: var(--text-medium);
}

.height-50 {
    height: 50px;
}

.payment-success-page-area {
    padding-top: 100px;
    padding-bottom: 100px;
}

.table-image {
    max-width: 100px;
}

.variation-table-order {
    font-size: 14px;
}

.empty-icon {
    color: var(--color-primary);
    font-size: 66px;
    margin-bottom: 20px;
}

/* Skeleton Loader Styles */
.skeleton {
    position: relative;
    background: #e0e0e0;
    overflow: hidden;
    border-radius: 4px;
}

.skeleton::after {
    display: block;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    transform: translateX(-100%);
    background: linear-gradient(90deg,
            transparent,
            rgba(255, 255, 255, 0.4),
            transparent);
    animation: skeleton-loading 1.5s infinite;
}

@keyframes skeleton-loading {
    100% {
        transform: translateX(100%);
    }
}

figure.product-img.skeleton.skeleton-img {
    min-height: 180px;
}

figure.product-img.skeleton.skeleton-big-img {
    min-height: 260px;
}

.product-list-card .skeleton-add-to-cart {
    min-width: 100px;
}

.product-list-card .product-title.skeleton {
    line-height: 1.5;
    min-height: 24px;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    background: #e0e0e0;
    border-radius: 4px;
    width: 70%;
}

/* Skeleton for the product image */
.skeleton-img {
    height: 200px;
}

/* Skeleton for product details section */
.skeleton-category,
.skeleton-title,
.skeleton-text {
    height: 20px;
    background: #e0e0e0;
    border-radius: 4px;
    margin-bottom: 10px;
}

.skeleton-category {
    width: 40%;
}

.skeleton-title {
    width: 100%;
}

.skeleton-button {
    width: 200px;
}

.skeleton-text {
    width: 100%;
    height: 40px;
}

/* Skeleton for product price */
.skeleton-price {
    height: 20px;
    width: 30%;
    background: #e0e0e0;
    border-radius: 4px;
    margin-bottom: 10px;
}

/* Skeleton for product ratings */
.skeleton-ratings {
    height: 14px;
    width: 60%;
    background: #e0e0e0;
    border-radius: 4px;
    margin-bottom: 10px;
}

.skeleton-ratings-total {
    height: 20px;
    width: 20%;
    background: #e0e0e0;
    border-radius: 4px;
    margin-left: 10px;
}

/* Skeleton for buttons */
.skeleton-btn-icon {
    height: 30px;
    width: 30px;
    background: #e0e0e0;
    border-radius: 5px;
    margin: 4px;
}

.product-skeleton .product-details {
    text-align: center !important;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.skeleton-label {
    height: 30px;
    width: 80px;
    background: #e0e0e0;
    border-radius: 4px;
    margin: 10px;
}

.preloader.hidden {
    visibility: hidden;
    opacity: 0;
}

.preloader {
    height: 100%;
    width: 100%;
    position: fixed;
    overflow: visible;
    z-index: 99999;
    top: 0;
    left: 0;
    transition: opacity 0.5s ease, visibility 0.5s ease;
    background: var(--bs-body-bg);
}

.preloader .preloader-wrapper {
    width: 100px;
    height: 100px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.preloader .preloader-wrapper img {
    width: 100%;
    height: auto;
}

/* ==== Modal Quantity ===== */

#variationModal .modal-content {
    border-radius: 0;
    padding: 13px 15px 19px;
}

#variationModal .modal-header small {
    color: var(--color-primary);
}

.form-check-input:focus {
    outline: 0 !important;
    box-shadow: none !important;
}

.variants-details span {
    color: var(--color-primary);
}

.form-check-input:checked {
    background-color: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
}

.modal-quantity {
    display: flex;
    align-items: center;
}

.modal-quantity .variants_price {
    color: var(--color-primary);
    font-size: 14px;
    cursor: pointer;
}

.modal-quantity span {
    color: var(--color-primary);
}

.variation-modal .modal-header {
    padding-inline-end: 30px;
}

.variatmodal-close {
    position: absolute;
    right: 10px;
    top: 27px;
    z-index: 2;
    font-size: 20px;
    border: 1px solid var(--color-red);
    height: 33px;
    max-width: 33px;
    width: 100%;
    background: var(--color-red);
    color: var(--color-white);
    transition: all 0.3s ease;
    line-height: 30px;
    border-radius: 3px;
}

.variatmodal-close:hover {
    background: transparent;
    color: var(--color-red);
}

.modal-quantity input.form-control:focus {
    outline: none;
    outline-width: 0;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
}

.modal-quantity .form-control {
    padding: 0;
}

.modal-quantity input {
    border: none;
    text-align: center;
}

.modal-quantity input[type="number"]::-webkit-outer-spin-button,
.modal-quantity input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.modal-quantity input[type="number"] {
    -moz-appearance: textfield;
}

.gsi-material-button {
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    -webkit-appearance: none;
    background-color: WHITE;
    background-image: none;
    border: 1px solid #747775;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #1f1f1f;
    cursor: pointer;
    font-family: "Roboto", arial, sans-serif;
    font-size: 14px;
    height: 40px;
    letter-spacing: 0.25px;
    outline: none;
    overflow: hidden;
    padding: 0 12px;
    position: relative;
    text-align: center;
    -webkit-transition: background-color 0.218s, border-color 0.218s,
        box-shadow 0.218s;
    transition: background-color 0.218s, border-color 0.218s, box-shadow 0.218s;
    vertical-align: middle;
    white-space: nowrap;
    width: auto;
    max-width: 400px;
    min-width: min-content;
}

.gsi-material-button .gsi-material-button-icon {
    height: 20px;
    margin-right: 12px;
    min-width: 20px;
    width: 20px;
}

.gsi-material-button .gsi-material-button-content-wrapper {
    -webkit-align-items: center;
    align-items: center;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    height: 100%;
    justify-content: space-between;
    position: relative;
    width: 100%;
}

.gsi-material-button .gsi-material-button-contents {
    -webkit-flex-grow: 1;
    flex-grow: 1;
    font-family: "Roboto", arial, sans-serif;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: top;
}

.gsi-material-button .gsi-material-button-state {
    -webkit-transition: opacity 0.218s;
    transition: opacity 0.218s;
    bottom: 0;
    left: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.gsi-material-button:disabled {
    cursor: default;
    background-color: #ffffff61;
    border-color: #1f1f1f1f;
}

.gsi-material-button:disabled .gsi-material-button-contents {
    opacity: 38%;
}

.gsi-material-button:disabled .gsi-material-button-icon {
    opacity: 38%;
}

.gsi-material-button:not(:disabled):active .gsi-material-button-state,
.gsi-material-button:not(:disabled):focus .gsi-material-button-state {
    background-color: #303030;
    opacity: 12%;
}

.gsi-material-button:not(:disabled):hover {
    -webkit-box-shadow: 0 1px 2px 0 rgba(60, 64, 67, 0.3),
        0 1px 3px 1px rgba(60, 64, 67, 0.15);
    box-shadow: 0 1px 2px 0 rgba(60, 64, 67, 0.3),
        0 1px 3px 1px rgba(60, 64, 67, 0.15);
}

.gsi-material-button:not(:disabled):hover .gsi-material-button-state {
    background-color: #303030;
    opacity: 8%;
}

#ratings .form-check-label i {
    color: orange;
}

.product-sort-area .form-control,
.product-sort-area .nice-select {
    height: 40px;
    line-height: 40px;
}

.product-sort-area .nice-select {
    width: 180px;
}

/* quick-view-modal */

.product-single-default .product-input,
.quick-view-modal .product-input {
    width: 100%;
    gap: 20px;
}

.product-single-default .product-single-qty.input-group,
.quick-view-modal .product-single-qty.input-group {
    width: 50% !important;
    height: 50px !important;
    border: 1px solid var(--color-primary) !important;
    max-width: 50% !important;
    min-width: 50% !important;
}

.product-single-default .item_quantity {
    width: 20%;
    position: relative;
}

.quick-view-modal .item_quantity {
    width: 30%;
}

@media screen and (max-width: 992px) {
    .product-single-default .item_quantity {
        width: 50%;
    }

    .btn-lg {
        padding: 10px 15px;
        font-size: 12px;
    }
}

.product-single-default .price-group-btn {
    width: max-content;
    height: 40px;
    overflow: hidden;
    border: 1px solid var(--border-2);
    border-radius: 7px;
}

.product-single-default .price-group-btn .input-group-text {
    background-color: transparent;
    border: none;
    border-right: 1px solid var(--border-2);
    border-radius: 0;
    line-height: 40px;
    height: 40px;
}

.product-single-default .price-group-btn .final-price {
    height: 40px;
    line-height: 40px;
    border: 1px solid transparent;
    border-radius: 7px;
    width: 150px;
}

.product-single-default .price-group-btn .final-price[readonly] {
    background-color: transparent;
}

.quick-view-modal .final-price {
    border: 1px solid transparent;
    border-radius: 10px;
    width: auto;
    height: 50px;
    line-height: 50px;
}

.product-single-default .quantity-input {
    width: 180px;
    border: 1px solid #ededed;
    border-radius: 0;
    overflow: hidden;
}

.product-single-default .quantity-input {
    width: 180px;
    border: 1px solid #ededed;
    border-radius: 0;
    overflow: hidden;
}

.product-single-default .quantity-input input {
    width: 60px;
    height: 33px;
    border: 1px solid #dddddd;
    padding: 0 10px;
    text-align: center;
    margin: 0 0;
    color: #838b97;
    border-left: 0;
    border-right: 0;
}

.product-single-default .quantity-input .quantity-btn {
    width: 60px;
    height: 33px;
    padding: 0 5px;
    background-color: var(--color-light);
    font-size: 18px;
    color: var(--color-dark);
    border: 1px solid var(--color-light);
    cursor: pointer;
    line-height: 33px;
    text-align: center;
    transition: 0.3s;
}

.product-single-default .quantity-input .quantity-btn:hover {
    background: var(--color-primary);
    color: var(--color-white);
    border: 1px solid var(--color-primary);
}

.product-single-default input[type="number"]::-webkit-outer-spin-button,
.product-single-default input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.product-single-default input[type="number"] {
    -moz-appearance: textfield;
}

/* Firefox */
.quantity_field[type="number"] {
    -moz-appearance: textfield;
}

.product-single-default .product-single-details .product-action .btn-primary {
    padding: 10px 40px;
    min-width: 180px;
    font-size: 16px;
    font-weight: 400;
    transition: all 0.3s ease;
}

.product-single-default .product-single-details .product-action .btn-primary i {
    margin-right: 7px;
}

.product-single-default .product-single-details .product-action .btn-primary:hover {
    letter-spacing: 2px;
}

.newsletter .input-group {
    z-index: 1;
}

.widget-offcanvas .offcanvas-body {
    overflow-y: visible;
}

@media (min-width: 992.99px) {
    .widget-offcanvas.offcanvas-start {
        width: auto;
        border-right: none;
        transform: inherit;
        --bs-offcanvas-height: auto;
        --bs-offcanvas-border-width: 0;
        transition: transform 0.3s ease-in-out;
    }

    .widget-offcanvas .offcanvas-header {
        display: none;
    }

    .product_filter_btn {
        display: none;
    }
}

@media (max-width: 992.99px) {
    .widget-offcanvas.offcanvas-start {
        transform: translateX(-100%);
        position: fixed;
        z-index: 1044;
        border-right: none;
        width: 350px;
        transition: transform 0.3s ease-in-out;
        background: var(--color-light-2);
        height: 100vh;
        overflow-y: scroll;
    }

    .widget-offcanvas .offcanvas-header {
        padding: 20px 16px 0px 16px;
    }

    .widget-offcanvas.offcanvas-start.show {
        transform: translateX(0%);
        background: var(--color-light-2);
    }

    /************************************************
    Widget Widget-Categories responsive design
    ************************************************/
    .sidebar-widget-area .widget.widget-categories .list-dropdown .menu-collapse {
        position: inherit;
        left: 0;
        top: 0;
        box-shadow: none;
        border: none;
        background: transparent;
        visibility: visible;
        opacity: 1;
        padding: 10px 20px 0 20px;
    }

    .menu-collapse {
        display: none;
        /* Initially hidden */
        padding-left: 20px;
        /* Optional padding for submenu */
        transition: inherit !important;
    }
}

@media (max-width: 757px) {
    .widget-offcanvas.offcanvas-start {
        width: 300px;
    }
}

.widget-offcanvas-close {
    font-size: 20px;
    border: 1px solid var(--color-primary);
    color: var(--color-primary);
    height: 30px;
    width: 30px;
    background: var(--color-primary);
    color: var(--color-white);
    transition: all 0.3s ease;
    line-height: 27px;
    border-radius: 4px;
}

/**************************/
/***** sidebar css ********/
/*************************/
.blog-sidebar-wrapper {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.blog-border {
    border: 1px solid var(--border-color);
}

.blog-box {
    padding: 30px;
    box-shadow: 0px 0px 29px 0px rgba(102, 102, 102, 0.1);
    border-radius: 7px;
}

.blog-box .title {
    display: flex;
    align-items: center;
    gap: 14px;
    border-bottom: 1px solid var(--color-primary);
    padding-bottom: 10px;
    margin-bottom: 10px;
}

.blog-box .blog-cat-list ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.blog-box .blog-cat-list ul li {
    display: block;
}

.blog-box .blog-cat-list ul li a {
    position: relative;
    padding: 10px 0;
    border-bottom: 1px solid var(--border);
    display: flex;
    align-items: center;
    font-size: 16px;
}

.blog-box .blog-cat-list ul li:last-child a {
    border-bottom: none;
    padding-bottom: 0;
}

.blog-box .blog-cat-list ul li:last-child a::after {
    display: none;
}

.blog-box .blog-cat-list ul li a i {
    color: var(--color-primary);
    -webkit-margin-end: 7px;
    margin-inline-end: 7px;
}

.blog-box .blog-cat-list ul li a span {
    display: inline-block;
    margin-left: auto;
}

.blog-box .blog-cat-list ul li a:hover::after {
    width: 100%;
}

.blog-box .blog-cat-list ul li a::after {
    content: "";
    position: absolute;
    top: auto;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--color-primary);
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
    height: 1px;
    width: 0%;
}

.blog-sidebar .article {
    padding: 30px;
    box-shadow: 0px 0px 29px 0px rgba(102, 102, 102, 0.1);
    border-radius: 7px;
}

.article .title {
    border-bottom: 1px solid var(--color-primary);
    padding-bottom: 10px;
    margin-bottom: 20px;
}

.blog-sidebar .article-item-wrapper {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.blog-sidebar .article-item {
    display: flex;
    align-items: center;
    flex-direction: row;
    align-items: center;
}

.blog-sidebar .article-item .image {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
    overflow: hidden;
    border-radius: 5px;
}

.blog-sidebar .article-item .image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.blog-sidebar .article-item .content {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
    -webkit-padding-start: 10px;
    padding-inline-start: 10px;
}

.article-item:hover .article-item-title a {
    background-size: 100% 1px;
    color: var(--color-primary);
}

.article-item-title a {
    background: linear-gradient(to right, var(--color-primary) 0%, var(--color-primary) 100%);
    background-position-x: 0%;
    background-position-y: 0%;
    background-size: auto;
    background-size: 0px 1px;
    background-repeat: no-repeat;
    background-position: left 100%;
    transition: all 0.5s ease;
}

.blog-sidebar .article-item .content .time {
    color: #717584;
    font-size: 13px;
}

/***=========================
=======Stop Sidebar==========
=========================****/

.breadcrumb-item {
    font-size: 18px;
    font-weight: 500;
}

.breadcrumb-item.active {
    color: var(--color-primary);
}

/* product-list-card Start */
.product-list-card {
    display: grid;
    grid-template-columns: 200px 1fr 0.3fr;
    padding-bottom: 0;
    align-items: center;
    padding-right: 20px;
}

.product-list-card .product-img {
    padding: 10px;
    margin-bottom: 0;
    height: auto;
}

.product-list-card .label-discount-percentage {
    position: absolute;
    top: 10px;
    left: 0px;
    right: unset;
    display: inline-block;
    background: var(--color-primary);
    color: var(--color-white);
    font-size: 13px;
    font-weight: 500;
    text-align: center;
    vertical-align: middle;
    padding: 4px 7px;
    border-radius: 0 30px 30px 0px;
    z-index: 2;
}

.product-list-card .product-price {
    padding: 0;
    width: max-content;
    display: flex;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    font-size: 14px;
}

.product-list-card .text {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    font-size: 14px;
}

.product-list-card .product-action {
    text-align: center;
    padding: 10px 0;
}

@media (max-width: 1199.99px) {

    /* .product-column .product-ratings,.ratings-total{
        margin-bottom: 10px !important;
    } */


    .btn-icon {
        width: 30px;
        height: 30px;
        line-height: 30px;
    }
}

@media (max-width: 992.99px) {
    .product-list-card {
        grid-template-columns: 160px 1fr 0.3fr;
    }
}

@media (max-width: 767.99px) {
    .product-list-card {
        grid-template-columns: 140px 1fr 0.3fr;
    }
}

@media (max-width: 480.99px) {
    .product-list-card {
        grid-gap: 10px;
        padding-left: 10px;
    }

    .product-list-card .product-details {
        grid-column: 1 / -1;
        order: 2;
        width: 100%;
    }
}

@media (max-width: 380px) {
    .product-list-card {
        grid-template-columns: 1fr;
    }

    .product-list-card.product-default .product-img {
        height: auto;
        padding: 0;
    }
}

/* ==== product-list-cardEnd =====*/

/* ========================================
========== product-grid-card Start ========
===========================================*/

.product-grid-card .btn-icon {
    height: 30px;
    width: 30px;
    line-height: 30px;
    font-size: 12px;
}

.product-grid-card.product-default .product-details {
    padding: 0 10px;
}

.product-grid-card.product-default .product-price {
    margin: 5px 0 20px 0;
}

.product-grid-card .product-img {
    padding: 0;
    padding-top: 20px;
}

.product-grid-card .product-img .ratio::before {
    content: "";
    display: block;
    width: 100%;
}

.product-grid-card.product-default .product-img .ratio.ratio-1-1::before {
    padding-bottom: 100%;
}

.product-grid-card-image {
    width: calc(100% - 40px);
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 14px;
}

@media screen and (min-device-width: 992px) and (max-device-width: 1199px) {}

@media (max-width: 992.99px) {}

@media (max-width: 768.99px) {
    .newsletter .title-md {
        font-size: 22px;
    }
}

@media (max-width: 575.99px) {
    .newsletter .title-md {
        font-size: 18px;
    }
}

@media (max-width: 480.99px) {}

/* product-grid-card End */

.opacity-0 {
    opacity: 0;
}

/* mobile menu social */
.social-link {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.social-link a {
    display: inline-block;
    color: var(--color-white) !important;
    height: 35px;
    width: 35px;
    line-height: 35px;
    text-align: center;
    background: var(--color-primary);
    border-radius: 50%;
    font-size: 14px;
    position: relative;
    z-index: 1;
    border: 1px solid var(--color-primary);
}

.social-link a::after {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    background: var(--color-white);
    height: 100%;
    width: 100%;
    border-radius: 50%;
    transform: scale(0);
    transition: all 0.3s ease;
    z-index: -1;
}

.social-link a:hover {
    color: var(--color-primary) !important;
}

.social-link a:hover::after {
    transform: scale(1);
}

.mobile-menu-social {
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    padding: 0 20px;
}

/* mobile menu social */

.about-content-desc {
    max-width: 478px;
}

.about-list-item-txt {
    max-width: 300px;
}

.about-list-item-area {
    display: flex;
    flex-direction: column;
    gap: 40px;
    margin-bottom: 50px;
}

.about-list-item {
    display: flex;
    gap: 20px;
}

.about-list-item .about-list-item-img {
    position: relative;
    width: 78px;
    height: 78px;
    z-index: 1;
    overflow: hidden;
}

.about-list-item .icon {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
    -webkit-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
    font-size: 30px;
    color: var(--color-dark);
}

.about-list-item-img:hover .icon {
    transform: translate(-50%, -50%) scale(1.3);
}

.about-list-item .about-list-item-img::after {
    position: absolute;
    content: "";
    top: 0;
    left: 50%;
    width: 100%;
    height: 100%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    mask: url(../../images/grocery/category/about-item-bg.svg) no-repeat center/contain;
    -webkit-mask: url(../../images/grocery/category/about-item-bg.svg) no-repeat center/contain;
    z-index: -1;
    background-color: var(--color-primary);
    background: var(--item-bg-color);
}

@media (max-width: 992px) {
    .about-content-desc {
        max-width: 100%;
    }

    .about-list-item-txt {
        max-width: 100%;
    }

    .about-list-item-area {
        margin-bottom: 30px;
    }

    .product-single .product-single-default .thumbnail-img.radius-md {
        border-radius: 4px !important;
    }
}

/* achievement */
.achievement-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 60px;
    column-gap: 40px;
    max-width: 530px;
    position: relative;
}

@media (max-width: 991.98px) {
    .achievement-grid {
        max-width: 450px;
        margin: auto;
    }
}

@media (max-width: 767.98px) {
    .achievement-grid {
        max-width: 450px;
        margin: auto;
    }
}

@media (max-width: 575.98px) {
    .achievement-grid .achievement-item-style-1 {
        padding: 15px;
    }
}

.achievement-grid::after {
    position: absolute;
    content: "";
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) rotate(90deg);
    background: linear-gradient(90deg,
            rgba(234, 234, 234, 0.13) 0%,
            rgba(0, 166, 247, 0.67) 48%,
            rgba(255, 255, 255, 0) 100%);
    width: 340px;
    height: 4px;
}

.achievement-grid::before {
    position: absolute;
    content: "";
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background: linear-gradient(90deg,
            rgba(234, 234, 234, 0.13) 0%,
            rgba(0, 166, 247, 0.67) 48%,
            rgba(0, 166, 247, 0) 100%);
    width: 340px;
    height: 4px;
}

.achievement-grid .achievement-item-style-1 {
    padding: 30px;
    z-index: 1;
    background: #f1f7ff;
    border-radius: 8px;
    text-align: center;
}

.achievement-grid .achievement-item-style-1:nth-child(2) {
    background: #fff9f1;
}

.achievement-grid .achievement-item-style-1:nth-child(3) {
    background: #f4f1ff;
}

.achievement-grid .achievement-item-style-1:nth-child(4) {
    background: #ecffff;
}

/***********************************/
/******** TESTIMONIAL CSS *********/
/***********************************/
.testimonial-slider.slick-slider {
    padding-bottom: 30px;
    margin-bottom: 0;
}

.testimonial-slide-item {
    background: var(--bs-white);
    border-radius: 20px;
}

.testimonial-slide-item .testimonial-slide-header {
    border-bottom: 2px dashed #eaeaea;
    padding: 0 30px 20px 30px;
}

.testimonial-slide-item .testimonial-author-info {
    display: flex;
    align-items: center;
    gap: 16px;
}

.testimonial-slide-item .testimonial-author-info .image {
    width: 48px;
    height: 68px;
    border-radius: 0px 0px 24px 24px;
    overflow: hidden;
}

.testimonial-slide-item .testimonial-author-info a {
    color: currentColor;
    text-decoration: none;
}

.testimonial-slide-item .testimonial-author-info .designation {
    color: #686868;
}

.testimonial-slide-item .testimonial-content {
    padding: 30px;
    position: relative;
    z-index: 1;
}

.testimonial-slide-item .testimonial-content .quote-icon {
    position: absolute;
    left: 35px;
    top: 22px;
    z-index: -1;
}

.testimonial-slide-item .rating-icons {
    color: #fdc040;
}



/* .menu-action-item-wrapper */

.menu-action-item-area {
    padding: 0 15px;
}

.menu-action-item-wrapper {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    padding: 0;
}

.menu-action-item-area .menu-action-item-wrapper .menu-action-item a {
    border-bottom: 1px solid var(--border-2);
    padding: 10px 0px !important;
    font-size: 14px;
    font-weight: 600;
    display: block;
}

.menu-action-item .icon .currency-symbol,
.menu-action-item .icon i {
    margin-right: 5px;
    height: 24px;
    width: 24px;
    display: inline-block;
    background: rgb(var(--color-primary-rgb), 1);
    text-align: center;
    line-height: 24px;
    border-radius: 50%;
    color: var(--color-white);
    font-size: 12px;
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    font-style: normal;
}

.menu-action-item .icon .currency-symbol {
    padding: 5px 9px;
}

.menu-action-item .plus-icon {
    float: right;
    transform: translateY(4px);
}

.menu-action-item-wrapper .setting-dropdown {
    display: none;
    height: auto;
    position: relative;
    margin-left: 20px;
}

.newsletter-form .custom-radious {
    border-radius: 0px 10px 10px 0px;
}

/* =================================
======= faq-area accordion css =====
===================================*/
.faq-area .accordion-item:first-of-type .accordion-button.collapsed {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.faq-area .accordion-item:last-of-type .accordion-button.collapsed {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.faq-area .accordion-button.collapsed {
    border-bottom: none;
    box-shadow: none;
}

.faq-area .accordion-button.collapsed {
    color: var(--color-dark);
}

.faq-area .accordion-button {
    color: var(--color-primary);
    background-color: var(--color-white);
    box-shadow: none;
    padding: 15px 20px 15px 20px;
    font-weight: 500;
}

.faq-area .accordion-item:last-of-type {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.faq-area .accordion-item:first-of-type {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.faq-area .accordion-item {
    margin-bottom: 10px;
    border: none;
    padding: 0;
    border-radius: 10px;
    background-color: var(--bg-white);
    box-shadow: 0px 5px 30px 0px rgba(78, 76, 76, 0.1);
}

.faq-area .accordion-item .accordion-body {
    padding: 0px 20px 10px 20px;
}

.faq-area .accordion-button::after {
    flex-shrink: 0;
    width: 1.1rem;
    height: 1.1rem;
    margin-left: auto;
    content: "\f078";
    font-weight: 300;
    font-family: "Font Awesome 5 Pro";
    background-image: none;
    background-size: 1.1rem;
    transition: transform 0.2s ease-in-out;
    font-size: 18px;
}

/* ==========================================
======= faq-area accordion css End ==========
===========================================*/

.login_or {
    position: relative;
}

.login_or::after {
    position: absolute;
    content: "";
    height: 2px;
    width: 45%;
    background: var(--border-2);
    right: 0;
    top: 10px;
}

.login_or::before {
    position: absolute;
    content: "";
    height: 2px;
    width: 45%;
    background: var(--border-2);
    left: 0;
    top: 10px;
}

.login_google {
    fill: #ffffff;
    display: block;
    padding: 12px;
    background: #f2f2f2;
}

.main-nav .menu-left .menu-item .btn {
    min-width: 257px;
}

.cookie-consent__message p {
    margin: unset;
    background-color: transparent !important;
    color: var(--color-white);
}

.mb-0-important {
    margin-bottom: 0 !important;
}

.font-10 {
    font-size: 10px;
}

.variation-modal .modal-quantity {
    width: 130px;
    height: 36px;
    border: 1px solid #ededed;
    border-radius: 0;
    overflow: hidden;
    display: flex;
    align-items: center;
}

.variation-modal .modal-quantity .quantity-btn {
    max-width: 40px;
    width: 100%;
    height: 36px;
    padding: 0 5px;
    background-color: var(--color-light);
    font-size: 16px;
    color: var(--color-primary);
    border: 1px solid var(--color-light);
    cursor: pointer;
    line-height: 36px;
    text-align: center;
    transition: 0.3s;
}

.variation-modal .modal-quantity .quantity-btn:hover {
    background: var(--color-primary);
    color: var(--color-white);
    border: 1px solid var(--color-primary);
}

.variation-modal-groupbtn {
    display: flex;
    align-items: center;
    column-gap: 20px;
    row-gap: 10px;
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
}

.variation-modal-groupbtn .btn {
    width: 35%;
    min-width: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}



.variants_price i {
    font-size: 14px;
    font-weight: 200;
    padding-right: 2px;
}

.details_view_variants_price i,
.quick_view_variants_price i,
.order_variants_price i,
.cart_variants_price i {
    font-size: 14px;
    font-weight: 200;
    margin-right: 2px;
}

.btn-icon-group-sm .btn-icon {
    width: 30px;
    height: 30px;
    line-height: 30px;
    border-radius: 5px;
    font-size: 14px;
}

.actual-content {
    opacity: 0;
    display: none;
    height: auto;
    transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}

.actual-content.visible {
    opacity: 1;
    display: block;
}

.lazy {
    opacity: 1;
    transition: opacity 0.3s ease-in-out;
}

.lazy.hide {
    opacity: 0;
    pointer-events: none;
    /* Prevent interactions while fading out */
    transition: opacity 0.3s ease-in-out;
}
