:root {
    --input-placeholder-color: #222;
    --white-clr: #fff;
}

/* Grand Baazar motion system: subtle feedback across every storefront page. */
@keyframes grand-page-enter { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
@keyframes grand-fade-up { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
@keyframes grand-soft-pulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(29, 118, 234, .15); } 50% { box-shadow: 0 0 0 9px rgba(29, 118, 234, 0); } }
body > main, body > .page-wrapper, .home-animated-sections { animation: grand-page-enter .42s cubic-bezier(.22, .8, .28, 1) both; }
.card, .product-card, .shop-card, .category-menu, .modal-content { transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease; }
.product-card:hover, .shop-card:hover { transform: translateY(-4px); box-shadow: 0 14px 28px rgba(17, 59, 119, .13); }
.btn, .nav-link, .dropdown-item, .navbar-tool, .category-menu li > a { transition: transform .18s ease, background-color .18s ease, color .18s ease, box-shadow .18s ease; }
.btn:hover { transform: translateY(-1px); }
.btn:active { transform: translateY(0) scale(.98); }
.dropdown-menu.show, .modal.show .modal-dialog { animation: grand-fade-up .22s ease both; }
.navbar-tool-icon-box:hover { animation: grand-soft-pulse 1.4s ease-in-out infinite; }
img { transition: opacity .25s ease; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }

.rtl {
    direction: var(--web-direction);
}

.dropdown-item:hover,
.dropdown-item:focus {
    color: var(--web-primary);
}

.dropdown-item.active,
.dropdown-item:active {
    color: var(--web-secondary);
}

.navbar-light .navbar-tool-icon-box {
    color: var(--web-primary);
}

.search_button {
    background-color: var(--web-primary);
}

.navbar-stuck-menu {
    background-color: var(--web-primary);
}

.mega-nav .nav-item .nav-link {
    color: var(--web-primary) !important;
}

.owl-theme .owl-nav [class*="owl-"],
.checkbox-alphanumeric label:hover {
    border-color: var(--web-primary);
}

::-webkit-scrollbar-thumb:hover {
    background: var(--web-secondary) !important;
}

[type="radio"]:not(.show) {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

[type="radio"]:not(.show) + span:after {
    box-shadow: 0 0 0 0.1em var(--web-secondary);
}

[type="radio"]:not(.show):checked + span:after {
    background: var(--web-secondary);
    box-shadow: 0 0 0 0.1em var(--web-secondary);
}

.navbar-tool .navbar-tool-label {
    background-color: var(--web-secondary) !important;
}

.btn--primary {
    color: #fff;
    background-color: var(--web-primary) !important;
    border-color: var(--web-primary) !important;
}

.d--none {
    display: none;
}

.web-text-primary,
.text-primary {
    color: var(--web-primary) !important;
}

.btn--primary:hover {
    color: #fff;
    background-color: var(--web-primary) !important;
    border-color: var(--web-primary) !important;
}

.btn-secondary {
    background-color: var(--web-secondary) !important;
    border-color: var(--web-secondary) !important;
}

.btn-outline-accent:hover {
    color: #fff;
    background-color: var(--web-primary);
    border-color: var(--web-primary);
}

.btn-outline-accent {
    color: var(--web-primary);
    border-color: var(--web-primary);
}

.text-accent {
    color: var(--web-primary);
}

.text-base-2 {
    color: var(--web-secondary);
}
a:hover {
    color: var(--web-primary);
}

.text-primary,
.text-base,
.active-menu {
    color: var(--web-primary) !important;
}

.page-item.active > .page-link {
    box-shadow: 0 0.5rem 1.125rem -0.425rem var(--web-primary);
}

.page-item.active .page-link {
    background-color: var(--web-primary);
}

.btn-outline-accent:not(:disabled):not(.disabled):active,
.btn-outline-accent:not(:disabled):not(.disabled).active,
.show > .btn-outline-accent.dropdown-toggle {
    background-color: var(--web-secondary);
    border-color: var(--web-secondary);
}

.btn-outline-primary {
    color: var(--web-primary);
    border-color: var(--web-primary);
}

.btn-outline-primary:hover {
    background-color: var(--web-primary);
    border-color: var(--web-primary);
}

.btn-outline-primary:focus,
.btn-outline-primary.focus {
    box-shadow: 0 0 0 0 var(--web-primary);
}

.btn-outline-primary:not(:disabled):not(.disabled):active,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.show > .btn-outline-primary.dropdown-toggle {
    background-color: var(--web-primary);
    border-color: var(--web-primary);
}

.btn-outline-primary:not(:disabled):not(.disabled):active:focus,
.btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
    box-shadow: 0 0 0 0 var(--web-primary);
}

.for-discount-value {
    background: var(--web-primary);
}

span.badge-accent {
    color: var(--base);
    background-color: var(--web-primary-40);
}

span.badge-accent:hover {
    color: var(--base) !important;
}

.custom-light-primary-color {
    background-color: var(--web-primary-10);
}

.custom-light-primary-color-20 {
    background-color: var(--web-primary-20);
}

.password-toggle-btn
    .custom-control-input:checked
    ~ .password-toggle-indicator {
    color: var(--web-primary);
}

.for-count-value {
    color: var(--web-primary);
}

.web--bg-primary {
    background-color: var(--web-primary);
}

.web--bg-secondary {
    background-color: var(--web-secondary);
}

.count-value {
    color: var(--web-primary);
}

@media (min-width: 768px) {
    .navbar-stuck-menu {
        background-color: var(--web-primary);
    }
}

@media (max-width: 767px) {
    .search_button .input-group-text i {
        color: var(--web-primary) !important;
    }
    .search_button .input-group-text i.text-absolute-white{
        color: #ffffff !important;
    }

    .mega-nav1 {
        color: var(--web-primary) !important;
    }

    .mega-nav1 .nav-link {
        color: var(--web-primary) !important;
    }
}

@media (max-width: 471px) {
    .mega-nav1 {
        color: var(--web-primary) !important;
    }

    .mega-nav1 .nav-link {
        color: var(--web-primary) !important;
    }
}

.text-align-direction {
    text-align: var(--text-align-direction) !important;
}

.web-direction {
    direction: var(--web-direction) !important;
}

.social-media:hover {
    color: var(--web-secondary) !important;
}

.bg-white-overlay-50 {
    background: rgba(255, 255, 255, 0.05);
}

.min-width-160px {
    min-width: 160px !important;
}

.tracking-page .closet {
    float: var(--text-align-direction-alt);
}

.checkout-details-page .nav-tabs {
    border: none;
}

.checkout-details-page .nav-tabs .nav-item {
    width: 49%;
    text-align: center;
}

.checkout-details-page .nav-tabs .nav-link::before {
    height: 0;
}

.checkout-details-page .nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
    background: var(--web-primary);
    border-color: var(--web-primary);
}

.checkout-details-page .nav-tabs .nav-link {
    background: var(--web-secondary);
    border: 1px solid var(--web-secondary);
}

.bootstrap-select.dropdown.form-control button {
    border: 1px solid #e3e9ef !important;
}

.bootstrap-select.dropdown.form-control button:focus {
    outline: none !important;
    box-shadow: none;
}

@media (max-width: 600px) {
    .contact-us-page.sidebar_heading {
        background: var(--web-primary);
    }
}

.delete-account-dropdown-menu {
    width: 200px;
    min-width: 0 !important;
}

.checkout-steps.steps-light .step-item.active .step-count,
.checkout-steps.steps-light .step-item.active .step-progress {
    color: #ffffff;
    background-color: var(--web-primary);
}

.checkout-steps.steps-light .step-count,
.checkout-steps.steps-light .step-progress {
    color: #4f4f4f;
    background-color: rgba(225, 225, 225, 0.67);
}

.checkout-steps.steps-light .step-item.active.current {
    color: var(--web-primary) !important;
    pointer-events: none;
}

.checkout-steps.steps-light .step-item {
    color: #4f4f4f;
    font-size: 14px;
    font-weight: 400;
}
.customize-step{
    margin: 0 auto 20px;
    max-width: 600px;
}
.customize-step .step-item{
    width: 190px;
    text-align: center;
}
.customize-step .step-item .step-count{
    width: 30px;
    height: 30px;
    border: 2px solid var(--border1);
    background-color: var(--color-white);
}
.customize-step .step-item:not(:last-child)::before{
    position: absolute;
    content: "";
    top: 4px;
    inset-inline-start: 110px;
    width: 168px;
    height: 1px;
    border-top: 2px dashed var(--border1);

}
.customize-step .step-item.active::before{
    border-top: 2px solid var(--web-primary);
}
.customize-step .step-item .step-count i{
    opacity: 0;
}
.customize-step .step-item.active .step-count i{
    opacity: 1 !important;
}
.customize-step .step-item.active .step-count{
    background-color: var(--web-primary) !important;
}
.fw-medium{
    font-weight: 500 !important;
}
@media screen and (max-width: 767px) {
    .customize-step{
        max-width: 100%;
        display: flex;
        align-items: flex-start;
    }
    .customize-step .step-item{
        width: 100%;
        text-align: center;
    }
    .customize-step .step-item .step-count{
        width: 30px;
        height: 30px;
        border: 2px solid var(--border1);
        background-color: var(--color-white);
    }
    .customize-step .step-item:not(:last-child)::before{
        position: absolute;
        content: "";
        top: 4px;
        inset-inline-start: 110px;
        width: 100%;
        height: 1px;
        border-top: 2px dashed var(--border1);

    }
}
@media screen and (max-width: 575px) {
    .customize-step .step-item:not(:last-child)::before{
        position: absolute;
        content: "";
        top: 4px;
        inset-inline-start: 80px;
        width: 100%;
        height: 1px;
        border-top: 2px dashed var(--border1);
    }
}
@media screen and (max-width: 575px) {
    .customize-step .step-item:not(:last-child)::before{
        inset-inline-start: 60px;
        border-top: 2px dashed var(--border1);
    }
}

.list-group-flush .list-group-item li,
.list-group-flush .list-group-item li a {
    color: var(--web-primary);
}

.list-group-flush .list-group-item li,
.list-group-flush .list-group-item li a:hover {
    color: var(--web-secondary);
}

.order-summery-aside .cart_title {
    font-weight: 400 !important;
    font-size: 14px;
}

.order-summery-aside .cart_value {
    font-weight: 600 !important;
    font-size: 14px;
}

@media (max-width: 575px) {
    .order-summery-aside .cart_title,
    .order-summery-aside .cart_value {
        font-size: 14px;
    }
}

.order-summery-aside .__cart-total_sticky {
    position: sticky;
    top: 80px;
}

.order-details-nav.nav-menu > * {
    border: none;
    border-bottom: 2px solid transparent;
    background-color: transparent;
    padding: 0.5rem 0;
    color: #9b9b9b;
}

.order-details-nav.nav-menu > *.active {
    border-color: #1455ac;
    color: #1455ac;
    font-weight: 700;
}

.max-width-150px {
    max-width: 150px;
}

.max-width-200px {
    max-width: 200px;
}

.max-width-350px {
    max-width: 350px;
}
.max-width-500px {
    max-width: 500px;
}

.width-300px {
    width: 300px;
}

.height-100px {
    height: 100px;
}

.max-height-500px {
    max-height: 500px !important;
}

[dir="ltr"] .heading_search {
    padding: 10px 29px 10px 20px;
}

[dir="rtl"] .heading_search {
    padding: 10px 20px 10px 29px;
}

[dir="ltr"] .chat_ib {
    padding: 0 0 6px 15px;
}

[dir="rtl"] .chat_ib {
    padding: 0 15px 6px 0;
}

[dir="ltr"] .received_msg {
    padding: 0 0 0 10px;
}

[dir="rtl"] .received_msg {
    padding: 0 10px 0 0;
}

[dir="ltr"] .received_withdraw_msg p {
    padding: 4px 8px 3px 10px;
}

[dir="rtl"] .received_withdraw_msg p {
    padding: 4px 10px 3px 8px;
}

.msg_history {
    padding: 0 15px;
}

[dir="ltr"] .send_msg p {
    padding: 5px 10px 5px 12px;
}

[dir="rtl"] .send_msg p {
    padding: 5px 12px 5px 10px;
}

.p-12px {
    padding: 12px;
}

[dir="ltr"] .ps-12px {
    padding-left: 12px;
}

[dir="rtl"] .ps-12px {
    padding-right: 12px;
}

[dir="ltr"] .float-start {
    float: left;
}

[dir="rtl"] .float-start {
    float: right;
}

[dir="ltr"] .float-end {
    float: right;
}

[dir="rtl"] .float-end {
    float: left;
}

[dir="ltr"] .ms-auto {
    margin-left: auto;
}

[dir="rtl"] .ms-auto {
    margin-right: auto;
}

[dir="ltr"] .ms-2 {
    margin-left: 0.5rem !important;
}

[dir="rtl"] .ms-2 {
    margin-right: 0.5rem !important;
}

[dir="ltr"] .me-2 {
    margin-right: 0.5rem !important;
}

[dir="rtl"] .me-2 {
    margin-left: 0.5rem !important;
}

[dir="ltr"] .me-3 {
    margin-right: 1rem !important;
}

[dir="rtl"] .me-3 {
    margin-left: 1rem !important;
}

[dir="ltr"] .me-4 {
    margin-right: 1.5rem !important;
}

[dir="rtl"] .me-4 {
    margin-left: 1.5rem !important;
}

[dir="ltr"] .ps-0 {
    padding-left: 0 !important;
}

[dir="ltr"] .ps-1 {
    padding-left: 0.25rem !important;
}

[dir="ltr"] .ps-2 {
    padding-left: 0.5rem !important;
}

[dir="ltr"] .ps-3 {
    padding-left: 1rem !important;
}

[dir="ltr"] .ps-4 {
    padding-left: 1.5rem !important;
}

[dir="ltr"] .ps-5 {
    padding-left: 3rem !important;
}

[dir="rtl"] .ps-0 {
    padding-right: 0 !important;
}

[dir="rtl"] .ps-1 {
    padding-right: 0.25rem !important;
}

[dir="rtl"] .ps-2 {
    padding-right: 0.5rem !important;
}

[dir="rtl"] .ps-3 {
    padding-right: 1rem !important;
}

[dir="rtl"] .ps-4 {
    padding-right: 1.5rem !important;
}

[dir="rtl"] .ps-5 {
    padding-right: 3rem !important;
}

[dir="ltr"] .pe-0 {
    padding-right: 0 !important;
}

[dir="ltr"] .pe-1 {
    padding-right: 0.25rem !important;
}

[dir="ltr"] .pe-2 {
    padding-right: 0.5rem !important;
}

[dir="ltr"] .pe-3 {
    padding-right: 1rem !important;
}

[dir="ltr"] .pe-4 {
    padding-right: 1.5rem !important;
}

[dir="ltr"] .pe-5 {
    padding-right: 3rem !important;
}

[dir="rtl"] .pe-0 {
    padding-left: 0 !important;
}

[dir="rtl"] .pe-1 {
    padding-left: 0.25rem !important;
}

[dir="rtl"] .pe-2 {
    padding-left: 0.5rem !important;
}

[dir="rtl"] .pe-3 {
    padding-left: 1rem !important;
}

[dir="rtl"] .pe-4 {
    padding-left: 1.5rem !important;
}

[dir="rtl"] .pe-5 {
    padding-left: 3rem !important;
}

.category-list-in-header {
    padding: 10px;
    border: 1px solid #0000001f;
    width: 100%;
    cursor: pointer;
    background: white;
}

.min-width-600px {
    min-width: 600px;
}

.loading-parent {
    position: fixed;
    z-index: 9999;
    height: 100vh;
    top: 0;
    display: block;
    justify-content: center;
    align-items: center;
}

.loading-parent.d--none {
    display: none;
}

.loading-parent-first-div {
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
}

.grand-animated-loader-wrap {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    min-width: 150px;
    min-height: 150px;
    padding: 26px;
    border: 1px solid rgba(29, 127, 232, .12);
    border-radius: 24px;
    background: rgba(255, 255, 255, .82);
    box-shadow: 0 24px 70px rgba(18, 42, 88, .16);
    backdrop-filter: blur(12px);
}

.grand-animated-loader {
    position: relative;
    width: 92px;
    height: 92px;
    border-radius: 50%;
    background: radial-gradient(circle at center, #ffffff 0 44%, transparent 45%);
    box-shadow: 0 18px 45px rgba(29, 127, 232, .22), inset 0 0 0 1px rgba(29, 127, 232, .08);
}

.grand-animated-loader::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: conic-gradient(from 0deg, transparent 0 10%, #1d7fe8 30%, #f58214 58%, transparent 76% 100%);
    animation: grand-loader-spin 1s cubic-bezier(.45, .05, .25, 1) infinite;
    -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 9px), #000 calc(100% - 8px));
    mask: radial-gradient(farthest-side, transparent calc(100% - 9px), #000 calc(100% - 8px));
}

.grand-animated-loader::after {
    content: "GB";
    position: absolute;
    inset: 23px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: #12325e;
    font-size: 18px;
    font-weight: 800;
    letter-spacing: 0;
    background: linear-gradient(145deg, #ffffff, #f4f8ff);
    box-shadow: inset 0 0 0 1px rgba(29, 127, 232, .12), 0 10px 22px rgba(18, 42, 88, .08);
    animation: grand-loader-core 1.8s ease-in-out infinite;
}

.grand-animated-loader span {
    position: absolute;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #f58214;
    left: 50%;
    top: 50%;
    transform-origin: 0 0;
    box-shadow: 0 0 18px rgba(245, 130, 20, .42);
    animation: grand-loader-orbit 1.35s linear infinite, grand-loader-pulse 1.35s ease-in-out infinite;
}

.grand-animated-loader span:nth-child(1) {
    animation-delay: 0s;
}

.grand-animated-loader span:nth-child(2) {
    animation-delay: -.45s;
    background: #1d7fe8;
    box-shadow: 0 0 18px rgba(29, 127, 232, .42);
}

.grand-animated-loader span:nth-child(3) {
    animation-delay: -.9s;
}

.grand-animated-loader-wrap::after {
    content: "Loading";
    color: #53627a;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    animation: grand-loader-text 1.4s ease-in-out infinite;
}

@keyframes grand-loader-spin {
    to {
        transform: rotate(360deg);
    }
}

@keyframes grand-loader-pulse {
    0%, 100% {
        opacity: .55;
        scale: .78;
    }
    50% {
        opacity: 1;
        scale: 1.1;
    }
}

@keyframes grand-loader-orbit {
    from {
        transform: rotate(0deg) translate(46px) rotate(0deg);
    }
    to {
        transform: rotate(360deg) translate(46px) rotate(-360deg);
    }
}

@keyframes grand-loader-core {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(.94);
    }
}

@keyframes grand-loader-text {
    0%, 100% {
        opacity: .55;
    }
    50% {
        opacity: 1;
    }
}

.payment-loading-parent {
    position: fixed;
    z-index: 9999;
    left: 40%;
    top: 37%;
    width: 100%;
}

[dir="ltr"] .navbar form .search_button {
    border-radius: 0 7px 7px 0;
    left: unset;
    right: 0;
    top: 0;
}

[dir="rtl"] .navbar form .search_button {
    border-radius: 7px 0 0 7px;
    right: unset;
    left: 0;
    top: 0;
}

.header-subcategories-links {
    font-family: sans-serif !important;
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.5;
    margin-left: 50px;
}

.mt-minus-11px {
    margin-top: -11px;
}

[dir="ltr"] .dir-end-minus-7px {
    right: -7px;
}

[dir="rtl"] .dir-end-minus-7px {
    left: -7px;
}

.category-single-product-price {
    font-size: 12px !important;
    color: #9b9b9b !important;
}
.category-single-product-price.fs-14{
    font-size: 14px !important;
}

.modal-quick-view .modal-dialog {
    max-width: 850px !important;
}

.modal-quick-view .product-title2 {
    font-family: "Roboto", sans-serif !important;
    font-weight: 400 !important;
    font-size: 22px !important;
    color: #000000 !important;
    position: relative;
    display: inline-block;
    word-wrap: break-word;
    overflow: hidden;
    max-height: 1.2em;
    line-height: 1.2em;
}

.modal-quick-view .cz-product-gallery {
    display: block;
    max-height: 530px;
    overflow: hidden;
}

.modal-quick-view .cz-product-gallery .table-responsive {
    overflow: hidden;
    max-height: 80px;
}

.modal-quick-view .cz-preview {
    width: 100%;
    margin-top: 0;
    max-height: 100% !important;
}

.modal-quick-view .cz-preview-item > img {
    width: 100%;
}

.modal-quick-view .details {
    border: 1px solid #e2f0ff;
    border-radius: 3px;
    padding: 16px;
}

@media (max-width: 991px) {
    .modal-quick-view .details {
        border: none;
        border-radius: 0;
        padding: 0;
    }
}

img,
figure {
    max-width: 100%;
    vertical-align: middle;
}

.modal-quick-view .cz-thumblist-item {
    display: block;
    position: relative;
    width: 64px;
    height: 64px;
    margin: 0.625rem;
    transition: border-color 0.2s ease-in-out;
    border: 1px solid #e2f0ff;
    border-radius: 0.3125rem;
    text-decoration: none !important;
    overflow: hidden;
}

.modal-quick-view .for-hover-bg {
    font-size: 18px;
    height: 45px;
}

.modal-quick-view .cz-thumblist-item > img {
    display: block;
    width: 80%;
    transition: opacity 0.2s ease-in-out;
    max-height: 58px;
    opacity: 0.6;
}

@media (max-width: 767px) and (min-width: 576px) {
    .modal-quick-view .cz-preview-item > img {
        width: 100%;
    }
}

@media (max-width: 575px) {
    .modal-quick-view .cz-thumblist {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-pack: center;
        justify-content: center;
        padding-top: 1rem;
        padding-right: 22px;
        padding-bottom: 10px;
    }

    .modal-quick-view .cz-thumblist-item {
        margin: 0;
    }

    .modal-quick-view .cz-thumblist {
        padding-top: 8px !important;
    }

    .modal-quick-view .cz-preview-item > img {
        width: 100%;
    }
}

.product-details-seller-info {
    position: absolute;
    inset-inline-end: 24px;
    inset-block-start: -4px;
}

.image-default-bg-color {
    background-color: #1455ac10;
}

@media (min-width: 768px) {
    [dir="ltr"] .text-md-start {
        text-align: left !important;
    }
    [dir="rtl"] .text-md-start {
        text-align: right !important;
    }
}
.owl-theme .owl-nav *,
.owl-theme .owl-nav [class*="owl-"]:hover {
    background-color: var(--web-primary) !important;
}

.rating {
    cursor: pointer;
    --dir: right;
    --fill: #1455ac;
    --fillbg: rgba(100, 100, 100, 0.15);
    --star: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 17.25l-6.188 3.75 1.641-7.031-5.438-4.734 7.172-0.609 2.813-6.609 2.813 6.609 7.172 0.609-5.438 4.734 1.641 7.031z"/></svg>');
    --stars: 5;
    --starsize: 2.5rem;
    --symbol: var(--star);
    --value: 1;
    --w: calc(var(--stars) * var(--starsize));
    --x: calc(100% * (var(--value) / var(--stars)));
    block-size: var(--starsize);
    inline-size: var(--w);
    position: relative;
    touch-action: manipulation;
    -webkit-appearance: none;
}

[dir="rtl"] .rating {
    --dir: left;
}

.rating::-moz-range-track {
    background: linear-gradient(
        to var(--dir),
        var(--fill) 0 var(--x),
        var(--fillbg) 0 var(--x)
    );
    block-size: 100%;
    mask: repeat left center/var(--starsize) var(--symbol);
}

.rating::-webkit-slider-runnable-track {
    background: linear-gradient(
        to var(--dir),
        var(--fill) 0 var(--x),
        var(--fillbg) 0 var(--x)
    );
    block-size: 100%;
    mask: repeat left center/var(--starsize) var(--symbol);
    -webkit-mask: repeat left center/var(--starsize) var(--symbol);
}

.rating::-moz-range-thumb {
    height: var(--starsize);
    opacity: 0;
    width: var(--starsize);
}

.rating::-webkit-slider-thumb {
    height: var(--starsize);
    opacity: 0;
    width: var(--starsize);
    -webkit-appearance: none;
}

.rating,
.rating-label {
    display: block;
    font-family: ui-sans-serif, system-ui, sans-serif;
}

.rating-label {
    margin-block-end: 1rem;
}

.rating--nojs::-moz-range-track {
    background: var(--fillbg);
}

.rating--nojs::-moz-range-progress {
    background: var(--fill);
    block-size: 100%;
    mask: repeat left center/var(--starsize) var(--star);
}

.rating--nojs::-webkit-slider-runnable-track {
    background: var(--fillbg);
}

.rating--nojs::-webkit-slider-thumb {
    background-color: var(--fill);
    box-shadow: calc(0rem - var(--w)) 0 0 var(--w) var(--fill);
    opacity: 1;
    width: 1px;
}

[dir="rtl"] .rating--nojs::-webkit-slider-thumb {
    box-shadow: var(--w) 0 0 var(--w) var(--fill);
}

.top-1 {
    top: 0.5rem;
}

.left-1 {
    left: 0.5rem;
}

#dataTable_wrapper > .row:nth-child(1) {
    display: flex;
}
#dataTable_wrapper > .row:nth-child(1) #dataTable_length {
    display: none;
}
[dir="rtl"] div.dataTables_wrapper div.dataTables_filter {
    text-align: left !important;
    padding-inline-end: 0 !important;
}
[dir="rtl"]
    div.table-responsive
    > div.dataTables_wrapper
    > div.row
    > div[class^="col-"]:last-child {
    padding-left: 0;
}

[dir="rtl"] .cz-image-zoom {
    direction: rtl;
}

[dir="rtl"] .cz-image-zoom-pane {
    direction: ltr;
}

.social-share-popup {
    padding: 25px;
    width: 100%;
}

.social-share-popup :is(header, .icons, .field) {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.social-share-popup header {
    padding-bottom: 15px;
    border-bottom: 1px solid #ebedf9;
}
.social-share-popup header span {
    font-size: 21px;
    font-weight: 600;
}
.social-share-popup header .close,
.icons a {
    display: flex;
    align-items: center;
    border-radius: 50%;
    justify-content: center;
    transition: all 0.3s ease-in-out;
}
.social-share-popup header .close {
    color: #878787;
    font-size: 17px;
    background: #f2f3fb;
    height: 33px;
    width: 33px;
    cursor: pointer;
}
.social-share-popup header .close:hover {
    background: #ebedf9;
}
.social-share-popup .content {
    margin: 20px 0;
}
.social-share-popup .icons {
    display: flex;
    justify-content: center;
    margin: 15px 0 20px 0;
    gap: 1.5rem;
    list-style: none;
}
.social-share-popup .content p {
    font-size: 16px;
}
.social-share-popup .content .icons li a {
    height: 50px;
    width: 50px;
    font-size: 20px;
    text-decoration: none;
    border: 1px solid transparent;
}
.social-share-popup .icons li a i {
    transition: transform 0.3s ease-in-out;
}
.social-share-popup .icons li:nth-child(1) a {
    color: #1877f2;
    border-color: #b7d4fb;
}
.social-share-popup .icons li:nth-child(1):hover a {
    background: #1877f2;
}
.social-share-popup .icons li:nth-child(2) a {
    color: #46c1f6;
    border-color: #b6e7fc;
}
.social-share-popup .icons li:nth-child(2):hover a {
    background: #46c1f6;
}
.social-share-popup .icons li:nth-child(3) a {
    color: #e1306c;
    border-color: #f5bccf;
}
.social-share-popup .icons li:nth-child(3):hover a {
    background: #e1306c;
}
.social-share-popup .icons li:nth-child(4) a {
    color: #25d366;
    border-color: #bef4d2;
}
.social-share-popup .icons li:nth-child(4):hover a {
    background: #25d366;
}
.social-share-popup .icons li:nth-child(5) a {
    color: #0088cc;
    border-color: #b3e6ff;
}
.social-share-popup .icons li:nth-child(5):hover a {
    background: #0088cc;
}
.social-share-popup .icons li:hover a {
    color: #fff;
    border-color: transparent;
}
.social-share-popup .icons li:hover a i {
    transform: scale(1.2);
}
.social-share-popup .content .field {
    margin: 12px 0 -5px 0;
    height: 45px;
    border-radius: 4px;
    padding: 0 5px;
    border: 1px solid #e1e1e1;
}
.social-share-popup .field.active {
    border-color: #7d2ae8;
}
.social-share-popup .field i {
    width: 50px;
    font-size: 18px;
    text-align: center;
}
.social-share-popup .field.active i {
    color: #7d2ae8;
}
.social-share-popup .field input {
    width: 100%;
    height: 100%;
    border: none;
    outline: none;
    font-size: 15px;
}
.social-share-popup .field button {
    color: #fff;
    padding: 5px 18px;
    background: var(--base);
    border: 0;
    border-radius: 5px;
}

.user-profile-container {
    background: rgba(252, 252, 252, 1);
    direction: var(--web-direction);
}

.line-height-16 {
    line-height: 16px;
}

.customer-profile-wishlist .price-range,
.customer-profile-wishlist .price-range .fs-16 {
    font-size: 13px;
}

.customer-profile-wishlist .price-range del {
    font-size: 14px;
}
.customer-profile-wishlist .price-range .discounted-unit-price {
    font-size: 15px;
}

.customer-profile-orders .status-badge {
    height: 25px;
    padding: 3px 9px 3px 9px;
    border-radius: 5px;
}

.text-secondary-50 {
    color: rgba(155, 155, 155, 1);
}

.border-lighter {
    border: 1px solid rgba(20, 85, 172, 0.05);
}

.user-profile-aside .aside-link {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
}

.user-profile-aside .active-menu .aside-link {
    font-weight: 600;
}

.shadow-border {
    border: 2px solid rgba(155, 155, 155, 0.05) !important;
}

.details-text-justify h1,
.details-text-justify h2,
.details-text-justify h3,
.details-text-justify h4,
.details-text-justify h5,
.details-text-justify h6 {
    text-align: start;
}

.max-height-100px {
    max-height: 100px;
    overflow: hidden;
}

.min-height-auto {
    min-height: auto !important;
}
.min-height-100px {
    min-height: 100px;
}
.max-height-200px {
    max-height: 200px;
    overflow: hidden;
}
.tio-star.text-star,
.tio-star.text-warning {
    color: rgba(255, 125, 30, 1) !important;
}

.map-area-alert-border {
    border: 2px solid transparent;
}

.map-area-alert-danger {
    border: 2px solid red;
    border-radius: 5px;
    overflow: hidden;
}

.location-search-input-field {
    top: 10px !important;
    outline: none;
    border: 1px solid #b1b1b1;
    padding: 5px 10px;
    left: 250px !important;
    height: 40px;
    font-size: 14px;
}

@media (max-width: 767px) {
    .gmnoprint.gm-style-mtc-bbw {
        display: none;
    }
    .location-search-input-field {
        left: 10px !important;
    }
}
.text-force-underline {
    text-decoration: underline !important;
}

.temporarily-closed-sticky-alert {
    position: absolute;
    top: 60px;
    width: 100%;
    padding: 15px;
}

.temporarily-closed-sticky-alert div.alert-box {
    background-color: rgba(254, 247, 209, 1);
    font-size: 12px;
    letter-spacing: 0.03125rem;
    font-weight: 500;
    padding: 20px;
    display: flex;
    gap: 1rem;
    justify-content: center;
    align-items: center;
}

.temporarily-closed-sticky-alert div.alert-box img {
    width: 25px;
}

.temporarily-closed-sticky-alert div button {
    background-color: transparent;
    border: 0;
    font-size: 14px;
    min-width: 20px;
}

.light-placeholder::-webkit-input-placeholder {
    color: var(--input-placeholder-color) !important;
    opacity: 0.3 !important;
}

.light-placeholder::-moz-placeholder {
    color: var(--input-placeholder-color) !important;
    opacity: 0.3 !important;
}

.light-placeholder:-ms-input-placeholder {
    color: var(--input-placeholder-color) !important;
    opacity: 0.3 !important;
}

.light-placeholder::-ms-input-placeholder {
    color: var(--input-placeholder-color) !important;
    opacity: 0.3 !important;
}

.light-placeholder::placeholder {
    color: var(--input-placeholder-color) !important;
    opacity: 0.3 !important;
}

@media (max-width: 575px) {
    .mobile-fs-12 {
        font-size: 12px !important;
    }
}

.search-result-product-button {
    width: 100%;
    display: grid;
    grid-template-columns: 1rem 1fr 2rem;
    gap: 0.5rem;
}

.search-bar-input {
    padding-right: 5rem !important;
}

@media (max-width: 767px) {
    .search-bar-input {
        padding-right: 1rem !important;
    }
}

#lightbox {
    display: flex;
    flex-direction: column-reverse;
}

.direction-ltr {
    direction: ltr !important;
}

.custom-cart-opacity-50 {
    opacity: 50%;
}

[dir="rtl"] .__chat-seller .aSend {
    transform: rotate(180deg);
}

.search-card.mobile-search-card {
    top: calc(100% - 1px);
    left: 0;
    position: absolute;
    background: white;
    z-index: 999;
    width: 100%;
    display: none;
}

[dir="rtl"] .category-wise-product-slider .owl-nav,
[dir="rtl"] .new-arrivals-product .owl-nav {
    display: flex !important;
}

.img-avatar-parent-element {
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 77px;
}

.img-avatar-parent-element img {
    object-fit: cover;
    height: 100%;
    width: auto;
}
.owl-nav.disabled {
    display: none !important;
}

.alert--message-2 {
    border-left: 3px solid var(--base);
    border-radius: 6px;
    position: fixed;
    right: 20px;
    top: 80px;
    z-index: 9999;
    background: #fff;
    width: 80vw;
    display: flex;
    max-width: 330px;
    align-items: center;
    gap: 12px;
    padding: 16px;
    font-size: 12px;
    transition: all ease 0.5s;
    box-shadow: 0 0 2rem rgba(0, 0, 0, 0.075);
}

.alert--message-2 h6 {
    font-size: 14px;
}

.alert--message-2:not(.active) {
    transform: translateX(calc(100% + 40px));
}
.alert--container {
    position: fixed;
    right: 20px;
    top: 80px;
    z-index: 9999;
    width: 80vw;
    max-width: 330px;
}
.alert--container:not(.active) {
    opacity: 0;
    visibility: hidden;
}
.alert--container .alert {
    position: unset !important;
    top: unset !important;
    left: unset !important;
    right: unset !important;
    margin-bottom: 10px;
    width: 100% !important;
}

.alert--container .alert:not(.active) {
    display: none;
}
.w--0 {
    width: 0;
    flex-grow: 1;
}

.shop-head-check[type="checkbox"],
.shop-item-check[type="checkbox"] {
    cursor: pointer;
}

[dir="rtl"] .checkbox-color input {
    right: -9999px;
    left: auto;
    position: absolute;
}
[dir="rtl"] .checkbox-alphanumeric input {
    right: -9999px;
    left: auto;
    position: absolute;
}

.color-bs-primary-force,
.color-bs-primary-force:focus {
    color: var(--web-primary) !important;
}

.absolute-ltr {
    direction: ltr !important;
}

[dir="rtl"] input[type="tel" i] {
    direction: rtl;
}

body {
    word-break: break-word;
}

.rich-editor-html-content table {
    color: var(--title-color);
    max-width: 100% !important;
}

.rich-editor-html-content table > :not(caption) > * {
    border-width: var(--bs-border-width) 0;
}

.rich-editor-html-content table > :not(caption) > * > * {
    border-width: 0 var(--bs-border-width);
}

.rich-editor-html-content table {
    --bs-table-color: var(--bs-body-color);
    --bs-table-bg: transparent;
    --bs-table-border-color: var(--bs-border-color);
    --bs-table-accent-bg: transparent;
    --bs-table-striped-color: var(--bs-body-color);
    --bs-table-striped-bg: rgba(0, 0, 0, 0.05);
    --bs-table-active-color: var(--bs-body-color);
    --bs-table-active-bg: rgba(0, 0, 0, 0.1);
    --bs-table-hover-color: var(--bs-body-color);
    --bs-table-hover-bg: rgba(0, 0, 0, 0.075);
    width: 100%;
    margin-bottom: 1rem;
    color: var(--bs-table-color);
    vertical-align: top;
    border-color: var(--bs-table-border-color);
}

.rich-editor-html-content table > :not(caption) > * > * {
    padding: 0.5rem 0.5rem;
    background-color: var(--bs-table-bg);
    border-bottom-width: var(--bs-border-width);
    box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);
}

.rich-editor-html-content table > tbody {
    vertical-align: inherit;
}

.rich-editor-html-content table > thead {
    vertical-align: bottom;
}

.rich-editor-html-content table {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.rich-editor-html-content li[data-list="bullet"] {
    list-style-type: disc !important;
}

.rich-editor-html-content li[data-list="unchecked"] {
    list-style-type: square !important;
}

.rich-editor-html-content p:has(img) {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 0;
}
.rich-editor-html-content img,
.rich-editor-html-content iframe.ql-video {
    width: 100%;
    max-width: 350px;
    aspect-ratio: 2 / 1;
    object-fit: cover;
    border-radius: 5px;
    border: 1px solid var(--bs-border-color, #EFF1F4);;
    margin-inline-end: 1rem;
    margin-bottom: 0.5rem;
}

@media (max-width: 575px) {
    .rich-editor-html-content table {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .rich-editor-html-content img,
    .rich-editor-html-content iframe.ql-video{
        max-width: 100%;
    }
}

@media (max-width: 767px) {
    .rich-editor-html-content table {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 991px) {
    .rich-editor-html-content table {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 1199px) {
    .rich-editor-html-content table {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 1399px) {
    .rich-editor-html-content table {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

.rich-editor-html-content table {
    table-layout: auto;
    width: 100%;
    border: 1px solid #e3e9ef;
}

.rich-editor-html-content table th, .rich-editor-html-content table td {
    border: 1px solid #e3e9ef;
}

.rich-editor-html-content table tbody tr td:first-child,
.rich-editor-html-content table tbody tr td:first-child strong {
    width: 1%;
    white-space: nowrap;
}

.embed-responsive {
    overflow: hidden;
}
.embed-responsive-16by9 {
    aspect-ratio: 16/9;
}

.embed-responsive-item {
    width: 100%;
}

.product-preview-modal-text {
    position: absolute;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    z-index: 99;
    height: 76px;
    cursor: pointer;
    background: linear-gradient(
        180deg,
        rgba(255, 255, 255, 0) 0%,
        rgba(255, 255, 255, 0.5) 38%,
        rgba(255, 255, 255, 0.8) 69%,
        rgba(255, 255, 255, 0.9) 100%
    );
}

.product-preview-modal-text:hover span {
    transition: 0.5s ease-in-out all;
}

.product-preview-modal-text:hover span {
    scale: 1.05;
    font-weight: 700;
}

.digital-product-authors {
    display: flex;
    flex-wrap: wrap;
}

.digital-product-authors .digital-product-author-title {
    font-size: 14px;
    font-weight: 500;
    line-height: 18px;
    color: #828697;
    padding-inline-end: 10px;
}

.digital-product-authors .item-list a {
    font-size: 14px;
    font-weight: 600;
    line-height: 18px;
    text-align: center;
    color: #1e1e1e !important;
    position: relative;
    padding-inline-end: 10px;
    margin-inline-end: 5px;
}

.digital-product-authors .item-list a:after {
    content: "";
    width: 0;
    display: flex;
    height: 14px;
    border: 1px solid #b0c7e5;
    font-weight: 400 !important;
    position: absolute;
    bottom: 0;
    right: 0;
}

.digital-product-authors .item-list a:last-child:after {
    content: unset;
}

.product-categories-list {
    overflow: hidden scroll;
    max-height: 18rem;
}

.category-card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 18px;
}

.category-card-item {
    display: flex;
    min-height: 190px;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 16px 14px 18px;
    border: 1px solid rgba(20, 85, 172, 0.1);
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 12px 28px rgba(20, 85, 172, 0.06);
    color: var(--title-clr);
    text-align: center;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.category-card-item:hover,
.category-card-item:focus {
    color: var(--title-clr);
    border-color: rgba(20, 85, 172, 0.24);
    box-shadow: 0 18px 38px rgba(20, 85, 172, 0.12);
    transform: translateY(-4px);
}

.category-card-image {
    position: relative;
    display: flex;
    width: min(118px, 100%);
    aspect-ratio: 1;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 18px;
    background: linear-gradient(135deg, #f7fbff 0%, #eef6ff 100%);
    box-shadow: inset 0 0 0 1px rgba(20, 85, 172, 0.08);
}

.category-card-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.28s ease;
}

.category-card-item:hover .category-card-image img,
.category-card-item:focus .category-card-image img {
    transform: scale(1.06);
}

.category-card-title {
    display: -webkit-box;
    width: 100%;
    min-height: 40px;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    color: var(--title-clr);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
}

.home-category-section-card {
    overflow: hidden;
}

.home-category-section-card .card-body {
    padding: 24px 26px 30px;
}

.home-category-section-header {
    padding-inline: 0;
}

.home-categories-slider {
    position: relative;
    padding-inline: 46px;
    padding-block: 6px 2px;
}

.home-categories-slider .owl-stage {
    display: flex;
    align-items: stretch;
}

.home-categories-slider .owl-item {
    display: flex;
    justify-content: center;
}

.home-category-slide {
    width: 100%;
    min-height: 158px;
    justify-content: center;
    padding: 10px 8px 8px;
    border-radius: 12px;
    color: var(--title-clr);
    transition: transform 0.22s ease, background-color 0.22s ease, box-shadow 0.22s ease;
}

.home-category-slide:hover,
.home-category-slide:focus {
    color: var(--title-clr);
    background: #f7fbff;
    box-shadow: 0 12px 24px rgba(20, 85, 172, 0.08);
    transform: translateY(-3px);
}

.home-categories-slider .__img {
    width: 118px;
    height: 118px;
    border-radius: 50%;
    box-shadow: 0 10px 22px rgba(20, 85, 172, 0.12);
}

.home-categories-slider .owl-nav {
    position: absolute;
    top: 50%;
    inset-inline: 0;
    height: 0;
    margin: 0;
    pointer-events: none;
    transform: translateY(-50%);
}

.home-categories-slider .owl-nav button.owl-prev,
.home-categories-slider .owl-nav button.owl-next {
    position: absolute;
    top: 0;
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(20, 85, 172, 0.16) !important;
    border-radius: 50%;
    background: #ffffff !important;
    color: var(--web-primary) !important;
    box-shadow: 0 12px 24px rgba(20, 85, 172, 0.14);
    pointer-events: auto;
    transform: translateY(-50%);
}

.home-categories-slider .owl-nav button.owl-prev i,
.home-categories-slider .owl-nav button.owl-next i {
    display: none;
}

.home-categories-slider .owl-nav button.owl-prev::before,
.home-categories-slider .owl-nav button.owl-next::before {
    content: "";
    width: 9px;
    height: 9px;
    border-top: 2px solid currentColor;
    border-inline-start: 2px solid currentColor;
}

.home-categories-slider .owl-nav button.owl-prev::before {
    transform: rotate(-45deg);
    margin-inline-start: 3px;
}

.home-categories-slider .owl-nav button.owl-next::before {
    transform: rotate(135deg);
    margin-inline-end: 3px;
}

.home-categories-slider .owl-nav button.owl-prev:hover,
.home-categories-slider .owl-nav button.owl-next:hover {
    background: var(--web-primary) !important;
    color: #ffffff !important;
}

.home-categories-slider .owl-nav button.owl-prev {
    inset-inline-start: 0;
}

.home-categories-slider .owl-nav button.owl-next {
    inset-inline-end: 0;
}

.home-category-ad-section {
    margin-top: -4px;
}

.home-category-ad-slot {
    position: relative;
    min-height: 96px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid rgba(20, 85, 172, 0.08);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(20, 85, 172, 0.08), rgba(255, 133, 0, 0.08)),
        #ffffff;
    box-shadow: 0 12px 30px rgba(20, 85, 172, 0.06);
}

.home-category-ad-slot::before,
.home-category-ad-slot::after {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    background: rgba(20, 85, 172, 0.06);
}

.home-category-ad-slot::before {
    inset-inline-start: -70px;
    top: -96px;
}

.home-category-ad-slot::after {
    inset-inline-end: -76px;
    bottom: -112px;
    background: rgba(255, 133, 0, 0.08);
}

.home-category-ad-slot__label {
    position: absolute;
    top: 10px;
    inset-inline-start: 14px;
    color: #7f8fa6;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.home-category-ad-slot__content {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #334257;
    font-weight: 700;
}

.home-category-ad-slot__brand {
    color: var(--web-primary);
    font-size: 20px;
}

.home-category-ad-slot__text {
    padding: 6px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.76);
    color: #697386;
    font-size: 13px;
}

@media (max-width: 575px) {
    .home-category-ad-slot {
        min-height: 74px;
        border-radius: 0;
    }

    .home-category-ad-slot__brand {
        font-size: 17px;
    }
}

@media (min-width: 768px) {
    .category-card-grid {
        grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
        gap: 22px;
    }

    .category-card-item {
        min-height: 210px;
        padding: 18px 16px 20px;
    }

    .category-card-image {
        width: 132px;
    }
}

.social-media-login-btn {
    background-color: #0000000a;
    width: 100%;
    gap: 0.85rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    padding: 12px 15px 12px 15px;
}

.social-media-login-btn img {
    height: 30px;
    width: auto;
}

.social-media-login-btn .text {
    font-weight: 600;
    color: #334257;
}

.social-media-user-modal .image-box {
    display: flex;
    justify-content: center;
    margin-bottom: 1.5rem;
}
.social-media-user-modal .image-box img {
    --size: 80px;
    width: var(--size);
    height: var(--size);
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 100%;
    box-shadow: 0 2px 15px 0.1em #00000029;
}

.inset-inline-end-10px {
    inset-inline-end: 10px;
}

.grecaptcha-badge {
    display: none !important;
}
.request-restock-btn {
    position: relative;
    filter: brightness(1) !important;
    -webkit-filter: brightness(1) !important;
}
.request-restock-btn::before {
    position: absolute;
    content: "";
    inset: 0;
    background: var(--web-primary);
    opacity: 0.07;
    border-radius: inherit;
}

.input-required-icon {
    color: #d80000;
    vertical-align: middle;
    margin: 0;
    padding: 0;
}

.d--flex {
    display: flex;
}

@media (min-width: 576px) {
    .d--sm-flex {
        display: -ms-flexbox;
        display: flex;
    }

    .d--sm-block {
        display: block;
    }
}

.product-restock-request-section {
    display: flex;
    justify-content: center;
    gap: 1rem;
}

.custom-disabled {
    opacity: 0.65;
    box-shadow: none;
}

.clearance-sale-title-bg {
    background-size: contain;
    background-repeat: no-repeat;
    min-height: 83px;
    width: 220px;
    position: relative;
}

.clearance-sale-title-bg .title {
    position: absolute;
    bottom: 0.5rem;
    color: #fff;
    left: 20px;
    font-size: 18px;
    font-weight: 800;
    line-height: 21px;
}

.clearance-sale-title-bg .sub-title {
    position: absolute;
    bottom: 2.3rem;
    color: #1455ac;
    font-size: 12px;
    font-weight: 800;
    line-height: 19px;
    left: 1.25rem;
    text-align: center;
    width: 100px;
}

[dir="rtl"] .clearance-sale-title-bg {
    transform: scaleX(-1);
}

[dir="rtl"] .clearance-sale-title-bg .title,
[dir="rtl"] .clearance-sale-title-bg .sub-title {
    transform: scaleX(-1);
}

.fs-12 .discounted-unit-price,
.fs-12 .product-total-unit-price {
    font-size: 0.75rem !important;
}

.bg--light {
    background-color: #f8f8fa;
}
[theme="dark"].bg--light {
    background-color: #18181a;
}

.z-index-1 {
    z-index: -1;
}

.quantity-box-120 {
    width: 120px;
    min-width: 110px;
}

.clearance-sale-slider.owl-carousel .owl-stage {
    display: flex;
    height: 100%;
}
.clearance-sale-slider.owl-carousel.owl-drag .owl-item {
    display: grid;
    align-items: stretch;
}

.bg-count-light {
    background: rgba(236, 241, 246, 0.5);
}

.bg-count-light:focus,
.bg-count-light:hover {
    filter: none !important;
}

.max-height-420px {
    max-height: 420px;
}

.mt-80 {
    margin-top: 80px;
}

.mb-80 {
    margin-bottom: 80px;
}
.mb-50 {
    margin-bottom: 50px;
}

.mb-60 {
    margin-bottom: 60px;
}

.download-user-app {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 30px;
    border-radius: 10px;
    position: relative;
    overflow: hidden;
}

.download-user-app .download-user-main {
    position: relative;
    z-index: 2;
}
.download-user-app::after {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(var(--primary-clr-rgb), 80%);
    z-index: 1;
}

.pe-5rem {
    padding-inline-end: 5rem;
}

@media (min-width: 992px) {
    .sticky-top-wrapper {
        position: sticky;
        top: 130px;
    }

    .sticky-top-wrapper.sticky-top-blog-details {
        top: 130px;
        margin-top: 150px;
    }
}

.aspect-2 {
    aspect-ratio: 2/1;
    object-fit: cover;
}

.border-top-before-after {
    position: relative;
}
.border-top-before-after::before,
.border-top-before-after::after {
    content: "";
    position: absolute;
    inset-inline-start: 0;
    inset-block-start: 0;
    border-top: 1px solid #d9d9d9;
    width: calc(50% - 140px);
    z-index: -1;
}
.border-top-before-after::after {
    inset-inline-start: unset;
    inset-inline-end: 0;
}

.blog-card {
    box-shadow: 0px 0px 6px 0px rgba(51, 66, 87, 0.07);
    border-radius: 15px;
}

.blog-card_image img {
    border-radius: 15px 15px 0 0;
}

.blog-card_footer {
    position: absolute;
    width: 100%;
    inset-inline-start: 0;
    padding-inline: 1rem;
    inset-block-end: 1rem;
}

.rounded-30 {
    border-radius: 30px;
}

.border-inline-end {
    border-inline-end: 1px solid rgba(38, 45, 52, 0.7);
}

@media (max-width: 575px) {
    .border-inline-end.pe-3 {
        border-inline-end: 0;
        padding-inline-end: 0;
    }
}

.ml-5 {
    margin-inline-start: 3rem !important;
}
@media (min-width: 991px) {
    .ml-lg-0 {
        margin-inline-start: 0 !important;
    }
}
.h-80px {
    height: 80px !important;
}

.article-nav-wrapper {
}
.article-nav-wrapper ul li {
    list-style: none;
}

.article-nav-wrapper ul li:not(:last-child) {
    margin-bottom: 20px;
}

.article-nav-wrapper ul li.active a {
    font-weight: 600;
    color: var(--base);
    border-bottom: 1px solid var(--base);
    padding: 0 0.5rem;
    margin-inline-start: 1rem;
    transition: all 0.3s ease-in-out;
}

.article-nav-wrapper_collapse {
    background-color: #fff;
    filter: drop-shadow(0px 10px 20px rgba(0, 0, 0, 0.1));
    width: 36px;
    height: 36px;
    transition: background 0.3s ease-in-out;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    display: none;
    position: fixed;
    inset-block-start: 190px;
    inset-inline-start: 1rem;
    z-index: 99;
}
.article-nav-wrapper_collapse:hover {
    border: 1px solid rgba(0, 0, 0, 0.1);
    background: #f6f6f6;
}
.article-nav-wrapper_collapse i {
    font-size: 1rem;
    line-height: 1;
    transition: all 0.3s ease-in-out;
}

@media (max-width: 991px) {
    .article-nav-wrapper_collapse {
        display: flex;
    }
    .article-nav-wrapper {
        position: fixed;
        width: 100%;
        inset-inline-start: 0;
        inset-block-start: 170px;
        z-index: 9;
    }
    .article-nav-wrapper ul {
        overflow-y: auto;
        max-height: 260px;
    }
}

.recent-post:not(:last-child) {
    margin-bottom: 20px;
}

.blog-top-nav {
    overflow-x: auto;
    white-space: nowrap;
    padding-inline-start: 0;
    padding-inline-end: 60px;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.blog-top-nav::-webkit-scrollbar {
    display: none;
}

.blog-top-nav li {
    list-style: none;
}
.blog-top-nav li.active a {
    color: #fff;
    background-color: var(--base);
}
.blog-top-nav li.active a span {
    opacity: 1 !important;
}

.blog-top-nav_next-btn,
.blog-top-nav_prev-btn {
    --justify-content: start;
    position: absolute;
    inset-block-start: 0;
    inset-inline-end: 0;
    width: 50px;
    height: 42px;
    padding: 0;
    display: none;
    justify-content: var(--justify-content);
    align-items: center;
    color: #fff;
    background-color: #f7f8fa;
    z-index: 100;
}

.blog-top-nav_next-btn {
    --justify-content: end;
    padding-inline-start: 0.75rem;
}

.blog-top-nav_prev-btn {
    --justify-content: start;
}

.blog-top-nav_next-btn button,
.blog-top-nav_prev-btn button {
    width: 39px;
    height: 39px;
    aspect-ratio: 1;
    background-color: var(--base);
    max-width: 39px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.blog-top-nav_prev-btn {
    inset-inline-end: unset;
    inset-inline-start: 0;
}

.blog-top-nav_next-btn:hover,
.blog-top-nav_prev-btn:hover,
.blog-top-nav_next-btn:focus,
.blog-top-nav_prev-btn:focus,
.blog-top-nav_next-btn:active,
.blog-top-nav_prev-btn:active {
    color: #fff !important;
    background-color: #f7f8fa !important;
    border: none !important;
}

.blog-top-nav_next-btn button:hover,
.blog-top-nav_prev-btn button:hover,
.blog-top-nav_next-btn button:focus,
.blog-top-nav_prev-btn button:focus,
.blog-top-nav_next-btn button:active,
.blog-top-nav_prev-btn button:active {
    color: #fff !important;
    background-color: var(--base) !important;
    border: none !important;
}

.h-45px {
    height: 45px !important;
}

.blog-banner-search {
    margin-top: -40px;
    width: 70%;
}
@media (max-width: 575px) {
    .blog-banner-search {
        width: 90%;
        margin-top: 0;
    }
}

.text--primary {
    color: var(--base) !important;
}

.blog-banner-container {
    position: relative;
    overflow: hidden;
}
.blog-banner-svg {
    max-width: unset !important;
}

@media (min-width: 1400px) {
    .blog-banner-svg {
        width: 100%;
        height: auto;
    }
}

.blog-banner-content {
    position: absolute;
    inset-inline-start: 50%;
    inset-block-start: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}

/* Transaction filter */
.transaction-filter_dropdown {
    min-width: 360px !important;
    transform: translate(0px, 45px) !important;
    right: 0 !important;
    left: auto !important;
}

[dir="rtl"] .transaction-filter_dropdown {
    right: auto !important;
    left: 0 !important;
}

@media (max-width: 575px) {
    .transaction-filter_dropdown {
        min-width: 100% !important;
    }
}

.max-h-290px {
    max-height: 290px;
}

.daterangepicker.show-calendar .drp-buttons {
    display: flex !important;
    align-items: center !important;
    justify-content: end !important;
}

.icon-absolute-on-right {
    position: absolute;
    font-size: 20px;
    opacity: 0.6;
    inset-inline-end: 15px;
    inset-block-start: 50%;
    transform: translateY(-50%);
    pointer-events: none;
}

.fs-20 {
    font-size: 20px !important;
}

#transactionFilterBtn .count {
    position: absolute;
    inset-inline-end: -4px;
    inset-block-start: -4px;
    width: 1rem;
    height: 1rem;
    font-size: 0.675rem;
    line-height: 1rem;
    border-radius: 50%;
    text-align: center;
    color: #fff;
}

.earn-checkbox {
    accent-color: var(--web-primary);
    width: auto;
}

#filterCloseBtn {
    width: 24px;
    height: 24px;
    background-color: #d9d9d9;
}

.gap-10 {
    gap: 10px !important;
}
.gap-30 {
    gap: 30px !important;
}


.letter-spacing-0 {
    letter-spacing: 0;
}

@media (max-width: 575px) {
    .fs-20-mobile {
        font-size: 1.25rem !important;
    }
    .fs-16-mobile {
        font-size: 1rem !important;
    }
    .fs-14-mobile {
        font-size: 0.875rem !important;
    }
    .fs-12-mobile {
        font-size: 0.75rem !important;
    }
}

/* Product page price range */
#price_range_slider {
    width: calc(100% - 16px);
    height: 3px;
    /* background: rgba(var(--primary-clr-rgb), 0.38); */
    position: relative;
}
[dir="rtl"] #price_range_slider {
    right: 16px;
}

#price_range_slider::after {
    content: "";
    inset-inline-start: 0;
    width: calc(100% + 15px);
    height: 100%;
    background: rgba(var(--primary-clr-rgb), 0.38);
    position: absolute;
}
[dir="rtl"] #price_range_slider::after {
    right: -15px;
}

#price_range_slider .slider-thumb {
    width: 1rem;
    height: 1rem;
    background: var(--base);
    border-radius: 50%;
    position: absolute;
    top: -5px;
    cursor: pointer;
}

#price_range_slider .slider-range {
    height: 3px;
    background: var(--base);
    position: absolute;
    top: 0;
}

.bg-black-09 {
    background-color: rgba(0, 0, 0, 0.09);
}

.form-control--sm {
    block-size: 1.875rem;
    font-size: 0.75rem;
}

.w-fit-content {
    width: fit-content !important;
}

.gap-12px {
    gap: 0.75rem !important;
}

.mb-12px {
    margin-bottom: 0.75rem !important;
}

.form-loading-button {
    transition: 1s ease-in-out all;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.form-loading-button .spinner-grow-sm,
.form-loading-button .loading {
    display: none;
}

.form-loading-button.active-loading .default {
    display: none;
}

.form-loading-button.active-loading .spinner-grow-sm,
.form-loading-button.active-loading .loading {
    display: block;
}

.form-loading-button.bg-primary {
    color: var(--primary-light);
}

.form-loading-button.bg-primary .spinner-grow {
    background-color: var(--web-primary);
}

.cursor-default {
    cursor: default !important;
}

.chatting-search-border {
    border: 2px solid #d3e8ff4d;
    border-radius: 5px;
}

.__color-9B9B9B {
    color: #9b9b9b;
}

.blog-single-card-item {
    cursor: pointer;
}

.business-pages-banner-section {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    --opacity: 0.5;
    --bg-color: 0, 0, 0;
    position: relative;
    z-index: 1;
    padding: 3rem;
    overflow: hidden;
    border-radius: 10px;
}

.business-pages-banner-section h1 {
    color: #ffffff;
    font-size: 1.75rem;
}

.business-pages-banner-section:after {
    inline-size: 100%;
    block-size: 100%;
    inset-inline-start: 0;
    inset-block-start: 0;
    position: absolute;
    z-index: -1;
    content: "";
    background-color: rgba(var(--bg-color), var(--opacity));
}

@media (max-width: 479px) {
    .business-pages-banner-section h1 {
        font-size: 1.5rem;
    }
}

.column-gap-5 {
    column-gap: 2rem !important;
}

.cz-countdown-value.fs-8{
    font-size: 0.5rem !important;
}

.h-40px{
    height: 40px !important;
}

.fs-15{
    font-size: 15px !important;
}
.product-card-shadow{
    box-shadow: 0 0 1.636px 0 rgba(145, 158, 171, 0.20), 0 8.179px 16.359px -2.454px rgba(145, 158, 171, 0.05) !important;
}

.border-black-50{
    border-color: rgba(0, 0, 0, 0.05) !important;
}

.product-with-bg .product-single-hover{
    background-color: #ffffff;
    padding: 0.5rem;
    border-radius: 5px;
    box-shadow: 0 0 1.636px 0 rgba(145, 158, 171, 0.20), 0 8.179px 16.359px -2.454px rgba(145, 158, 171, 0.05);
}

.product-with-bg img.border.border-black-50{
    border: none !important;
}

.search-rounded-10{
    --radius: 10px;
    border-radius: var(--radius);
}

.search-rounded-10 .search-page-button-input{
    border-radius: var(--radius);
}

.search-rounded-10 .search-page-button{
    border-radius: 0 var(--radius) var(--radius) 0;
}

[dir="rtl"] .search-rounded-10 .search-page-button {
    border-radius: var(--radius) 0 0 var(--radius);
}

.owl-theme .owl-nav .owl-prev,
.owl-theme .owl-nav .owl-next{
    --size: 40px;
    width: var(--size);
    height: var(--size);
    display: flex;
    justify-content: center;
    align-items: center;
}

.owl-theme .owl-nav .owl-prev i,
.owl-theme .owl-nav .owl-next i{
    font-size: 0.875rem !important;
    font-weight: 700;
    line-height: 1;
}

@media (max-width: 767px) {
    .owl-theme .owl-nav .owl-prev,
    .owl-theme .owl-nav .owl-next{
        --size: 30px;
    }

    .owl-theme .owl-nav .owl-prev i,
    .owl-theme .owl-nav .owl-next i{
        font-size: 0.75rem !important;
    }
}
@media (max-width: 539px) {

    #featured_products_list.owl-theme .owl-nav .owl-prev{
        transform: translateX(-30px);
    }
    #featured_products_list.owl-theme .owl-nav .owl-next {
        transform: translateX(30px);
    }
}

@media (max-width: 360px) {
        #featured_products_list {
        max-width: 200px;
    }
}

.__cart-total .order-summery-footer-image{
    width: 20px;
    height: 20px;
    margin: 0;
}

.shop-feature-faster{
    background-color: var(--light-box);
    padding: 12px 20px !important;
    gap: 10px;
}

.shop-feature-faster .inners{
    gap: 10px;
    font-size: 13px !important;
}

.select-wrap select{
    font-size: 14px;
}
.light-box{
    background-color: var(--light-box) !important;
}
.p-20{
    padding: 20px;
}
.min-height-74{
    min-height: 74px;
}
.w-24{
    width: 24px;
    min-width: 24px;
}
.offline_payment_button:hover,
.offline_payment_button.active{
    background-color: var(--web-primary) !important;
    color: var(--white-clr) !important;
    filter: brightness(1) !important;
}

.max-w-100px{
    max-width: 100px;
}
.p-xxl-4px{
    @media screen and (min-width: 1399px) {
        padding: 4px;
    }
}

.lh-19px{
    line-height: 19px;
}

.flash-deal-shadow{
    box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.06) !important;
}
.h-24px{
    height: 24px;
}
.w-20px{
    width: 20px;
}
.h-20px{
    height: 20px;
}

.p-details-description p span{
    display: block;
    line-height: 24px;
}
.p-details-description h3 ul{
    padding-inline-start: 0;
}
.max-h-35vh {
    max-height: 35vh !important;
}

/* Grand Baazar visual motion system: GPU-friendly transforms only, with an
 * explicit reduced-motion fallback for a polished experience on every device. */
@keyframes grand-rise-in {
    from { opacity: 0; transform: translate3d(0, 18px, 0); }
    to { opacity: 1; transform: translate3d(0, 0, 0); }
}

@keyframes grand-scale-in {
    from { opacity: 0; transform: scale(.975); }
    to { opacity: 1; transform: scale(1); }
}

@keyframes grand-gentle-float {
    0%, 100% { transform: translate3d(0, 0, 0); }
    50% { transform: translate3d(0, -4px, 0); }
}

.grand-motion-ready .grand-motion-item {
    opacity: 0;
    transform: translate3d(0, 18px, 0);
}

.grand-motion-ready .grand-motion-item.grand-motion-visible {
    animation: grand-rise-in .46s cubic-bezier(.22, .8, .28, 1) both;
}

.product-card,
.__brand-item,
.shop-card,
.category-card,
.card,
.navbar-tool-icon-box,
.grand-category-strip__item,
.dropdown-menu,
.modal-content,
.toast {
    will-change: transform;
}

.dropdown-menu.show,
.toast.show,
.modal.show .modal-dialog {
    animation: grand-scale-in .22s cubic-bezier(.22, .8, .28, 1) both;
}

@media (hover: hover) {
    .product-card:hover,
    .__brand-item:hover,
    .shop-card:hover,
    .category-card:hover {
        transform: translate3d(0, -5px, 0);
        box-shadow: 0 16px 34px rgba(16, 48, 89, .12);
    }

    .grand-category-strip__item:hover {
        transform: translate3d(0, -3px, 0);
    }

    .navbar-tool-icon-box:hover {
        transform: translate3d(0, -2px, 0) scale(1.03);
    }

    .footer_banner_img:hover {
        animation: grand-gentle-float 1.8s ease-in-out infinite;
    }
}

@media (max-width: 767px) {
    .grand-motion-ready .grand-motion-item.grand-motion-visible {
        animation-duration: .32s;
    }
}

/* Reliability highlights and footer actions: visual depth without changing
 * their carousel/grid behaviour or adding any additional JavaScript. */
.grand-reliability-section {
    overflow: hidden;
    border: 1px solid rgba(35, 128, 235, .10);
    box-shadow: 0 14px 34px rgba(38, 91, 150, .07);
}

.grand-reliability-section .owl-stage {
    display: flex;
    align-items: stretch;
}

.grand-reliability-item {
    height: 100%;
    animation: grand-rise-in .48s cubic-bezier(.22, .8, .28, 1) both;
}

.grand-reliability-item:nth-child(2) { animation-delay: .06s; }
.grand-reliability-item:nth-child(3) { animation-delay: .12s; }
.grand-reliability-item:nth-child(4) { animation-delay: .18s; }

.grand-reliability-section .shipping-method-system {
    position: relative;
    height: 100%;
    padding: 12px 10px 8px;
    border-radius: 16px;
    transition: transform .24s ease, background-color .24s ease, box-shadow .24s ease;
}

.grand-reliability-section .shopping-method-icon {
    border: 1px solid rgba(37, 127, 233, .14);
    box-shadow: 0 9px 22px rgba(22, 80, 145, .08);
    transition: transform .3s cubic-bezier(.22, .8, .28, 1), box-shadow .3s ease;
}

.grand-reliability-section .shipping-method-system p {
    color: #263649;
    letter-spacing: -.01em;
    transition: color .22s ease;
}

.grand-footer-actions > [class*='col-'] {
    animation: grand-rise-in .46s cubic-bezier(.22, .8, .28, 1) both;
}

.grand-footer-actions > [class*='col-']:nth-child(2) { animation-delay: .08s; }
.grand-footer-actions > [class*='col-']:nth-child(3) { animation-delay: .16s; }
.grand-footer-actions > [class*='col-']:nth-child(4) { animation-delay: .24s; }

.grand-footer-actions .footer-slide-item {
    height: 100%;
    border: 1px solid rgba(28, 80, 142, .11);
    border-radius: 14px;
    box-shadow: 0 8px 22px rgba(27, 72, 122, .05);
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

.grand-footer-actions .footer-slide-item .svg {
    transition: transform .3s cubic-bezier(.22, .8, .28, 1), filter .3s ease;
}

@media (hover: hover) {
    .grand-reliability-section .shipping-method-system:hover {
        background: rgba(255, 255, 255, .68);
        transform: translate3d(0, -5px, 0);
        box-shadow: 0 14px 26px rgba(30, 91, 156, .10);
    }

    .grand-reliability-section .shipping-method-system:hover .shopping-method-icon {
        transform: translate3d(0, -3px, 0) scale(1.045);
        box-shadow: 0 14px 26px rgba(30, 91, 156, .15);
    }

    .grand-reliability-section .shipping-method-system:hover p { color: var(--web-primary); }

    .grand-footer-actions .footer-slide-item:hover {
        border-color: rgba(31, 120, 234, .32);
        box-shadow: 0 16px 30px rgba(27, 72, 122, .12);
        transform: translate3d(0, -6px, 0);
    }

    .grand-footer-actions .footer-slide-item:hover .svg {
        filter: drop-shadow(0 6px 8px rgba(31, 120, 234, .20));
        transform: scale(1.12) rotate(-4deg);
    }
}

/* Modern footer treatment: stronger hierarchy, calm depth and purposeful
 * interaction feedback while retaining the configured brand colours/content. */
.grand-site-footer {
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg, #123c5e 0%, #1d587f 52%, #17476c 100%);
    isolation: isolate;
}

.grand-site-footer::before,
.grand-site-footer::after {
    position: absolute;
    z-index: -1;
    width: 430px;
    height: 430px;
    border-radius: 50%;
    content: '';
    pointer-events: none;
    background: radial-gradient(circle, rgba(81, 164, 255, .18), rgba(81, 164, 255, 0) 70%);
}

.grand-site-footer::before { top: -270px; right: -110px; }
.grand-site-footer::after { bottom: -310px; left: -145px; }

.grand-site-footer > .pt-4 {
    position: relative;
    padding-top: 2.5rem !important;
}

.grand-site-footer .footer-web-logo img {
    max-height: 58px;
    width: auto;
    padding: 7px;
    border-radius: 10px;
    background: rgba(255, 255, 255, .95);
    box-shadow: 0 10px 24px rgba(1, 23, 43, .20);
    transition: transform .25s ease, box-shadow .25s ease;
}

.grand-site-footer .footer-header {
    position: relative;
    margin-bottom: .85rem;
    color: #fff;
    letter-spacing: .035em;
}

@keyframes grand-footer-heading-colors {
    0%, 100% { color: #ffffff; text-shadow: 0 0 0 rgba(125, 196, 255, 0); }
    33% { color: #9ed6ff; text-shadow: 0 0 14px rgba(98, 183, 255, .22); }
    66% { color: #c8e8ff; text-shadow: 0 0 18px rgba(157, 218, 255, .26); }
}

.grand-site-footer h6.footer-header {
    animation: grand-footer-heading-colors 5.5s ease-in-out infinite;
}

.grand-site-footer h6.footer-header:nth-of-type(2) { animation-delay: .7s; }
.grand-site-footer h6.footer-header:nth-of-type(3) { animation-delay: 1.4s; }

/* About Us: an editorial, responsive layout built on the existing business
 * page content so the page remains fully manageable from the admin panel. */
.grand-about-page .business-pages-banner-section {
    position: relative;
    min-height: 205px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    box-shadow: 0 16px 36px rgba(20, 59, 99, .18);
    animation: grand-scale-in .5s cubic-bezier(.22, .8, .28, 1) both;
}

.grand-about-page .business-pages-banner-section::before {
    position: absolute;
    inset: 0;
    content: '';
    background: linear-gradient(125deg, rgba(8, 50, 92, .82), rgba(21, 115, 202, .42));
    z-index: 1;
}

.grand-about-page .business-pages-banner-section::after { z-index: 2; background-color: transparent; }
.grand-about-page .business-pages-banner-section .container { position: relative; z-index: 3; }
.grand-about-page .business-pages-banner-section h1 {
    font-size: clamp(2rem, 4vw, 3.2rem);
    letter-spacing: -.035em;
    text-shadow: 0 3px 18px rgba(0, 22, 48, .38);
    animation: grand-rise-in .55s .12s cubic-bezier(.22, .8, .28, 1) both;
}

.grand-about-card {
    overflow: hidden;
    border: 1px solid rgba(34, 102, 173, .12);
    border-radius: 18px;
    box-shadow: 0 14px 38px rgba(26, 73, 124, .08);
    animation: grand-rise-in .55s .12s cubic-bezier(.22, .8, .28, 1) both;
}

.grand-about-card .card-body { padding: clamp(1.25rem, 3.5vw, 3.25rem); }
.grand-about-content { color: #435166; font-size: 1.03rem; line-height: 1.78; }
.grand-about-content > h2 {
    position: relative;
    margin: 2.35rem 0 .85rem;
    padding-bottom: .7rem;
    color: #172d4c;
    font-size: clamp(1.55rem, 2.5vw, 2.25rem);
    font-weight: 750;
    letter-spacing: -.025em;
}
.grand-about-content > h2:first-child { margin-top: 0; }
.grand-about-content > h2::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 54px;
    height: 4px;
    border-radius: 99px;
    content: '';
    background: linear-gradient(90deg, var(--web-primary), #75beff);
}
.grand-about-content p { margin-bottom: 1.1rem; }
.grand-about-content strong { color: #1d3656; }
.grand-about-tagline {
    display: inline-flex;
    align-items: center;
    margin: .5rem 0 1.3rem !important;
    padding: .55rem 1rem;
    border: 1px solid rgba(32, 123, 225, .17);
    border-radius: 999px;
    color: var(--web-primary);
    font-weight: 750;
    background: linear-gradient(120deg, #edf7ff, #f8fbff);
    box-shadow: 0 8px 18px rgba(32, 119, 220, .08);
}
.grand-about-content ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
    margin: 1.15rem 0 0;
    padding: 0;
    list-style: none;
}
.grand-about-content li {
    position: relative;
    min-height: 100%;
    padding: 1rem 1rem 1rem 2.7rem;
    border: 1px solid rgba(31, 111, 204, .11);
    border-radius: 12px;
    background: #f8fbff;
    box-shadow: 0 5px 14px rgba(34, 83, 137, .04);
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}
.grand-about-content li::before {
    position: absolute;
    top: 1.12rem;
    left: 1rem;
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    content: '';
    background: radial-gradient(circle at 35% 35%, #94d2ff 0 22%, var(--web-primary) 25% 100%);
    box-shadow: 0 3px 7px rgba(22, 107, 198, .26);
}
.grand-about-benefits {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1.25rem;
}
.grand-about-benefits article {
    min-height: 100%;
    padding: 1.35rem;
    border: 1px solid rgba(33, 111, 200, .12);
    border-radius: 15px;
    background: linear-gradient(145deg, #fff, #f4f9ff);
    box-shadow: 0 8px 22px rgba(26, 73, 124, .06);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.grand-about-benefits article h3 { margin: 0 0 .5rem; color: #1c69b7; font-size: 1.1rem; font-weight: 750; }
.grand-about-benefits article p { margin: 0; font-size: .93rem; line-height: 1.62; }
.grand-about-closing {
    margin-top: 2rem;
    padding: clamp(1.35rem, 3vw, 2.25rem);
    border-radius: 16px;
    color: #fff;
    background: linear-gradient(130deg, #125b9e, #2385df);
    box-shadow: 0 16px 28px rgba(20, 95, 170, .18);
}
.grand-about-closing h2 { margin: 0 0 .55rem; padding: 0; color: #fff; font-size: clamp(1.45rem, 2.3vw, 2rem); }
.grand-about-closing h2::after { display: none; }
.grand-about-closing p, .grand-about-closing strong { margin: 0; color: rgba(255, 255, 255, .93); }
@media (hover: hover) {
    .grand-about-content li:hover, .grand-about-benefits article:hover { border-color: rgba(31, 120, 234, .32); box-shadow: 0 15px 28px rgba(26, 73, 124, .12); transform: translateY(-5px); }
}
@media (max-width: 767px) {
    .grand-about-page .business-pages-banner-section { min-height: 155px; border-radius: 14px; }
    .grand-about-card { border-radius: 14px; }
    .grand-about-content { font-size: .98rem; line-height: 1.68; }
    .grand-about-content ul, .grand-about-benefits { grid-template-columns: 1fr; }
}

/* Terms & Conditions: a calm, legible legal-document experience. */
.grand-terms-page .business-pages-banner-section {
    min-height: 190px;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 16px 36px rgba(20, 59, 99, .16);
    animation: grand-scale-in .48s cubic-bezier(.22, .8, .28, 1) both;
}
.grand-terms-page .business-pages-banner-section::before {
    position: absolute;
    inset: 0;
    z-index: 1;
    content: '';
    background: linear-gradient(125deg, rgba(10, 43, 78, .86), rgba(31, 122, 211, .48));
}
.grand-terms-page .business-pages-banner-section::after { z-index: 2; background-color: transparent; }
.grand-terms-page .business-pages-banner-section .container { position: relative; z-index: 3; }
.grand-terms-page .business-pages-banner-section h1 { font-size: clamp(1.85rem, 3.6vw, 3rem); text-shadow: 0 3px 18px rgba(0, 22, 48, .38); }
.grand-terms-card {
    border: 1px solid rgba(31, 102, 177, .12);
    border-radius: 18px;
    box-shadow: 0 14px 36px rgba(22, 71, 123, .08);
    animation: grand-rise-in .54s .1s cubic-bezier(.22, .8, .28, 1) both;
}
.grand-terms-card .card-body { padding: clamp(1.25rem, 3.4vw, 3rem); }
.grand-terms-content { max-width: 960px; margin: 0 auto; color: #48576a; font-size: 1rem; line-height: 1.8; }
.grand-terms-updated {
    display: inline-flex;
    margin: 0 0 1.6rem;
    padding: .5rem .85rem;
    border: 1px solid rgba(31, 120, 234, .16);
    border-radius: 999px;
    color: #1d70bd;
    font-size: .9rem;
    font-weight: 700;
    background: #f1f8ff;
}
.grand-terms-content h2 {
    position: relative;
    margin: 2.2rem 0 .7rem;
    padding: 1rem 1.1rem;
    border-left: 4px solid var(--web-primary);
    border-radius: 0 11px 11px 0;
    color: #1d3655;
    font-size: clamp(1.24rem, 2vw, 1.56rem);
    font-weight: 750;
    line-height: 1.35;
    background: linear-gradient(90deg, #edf7ff, #fff);
}
.grand-terms-content h2:first-of-type { margin-top: .25rem; }
.grand-terms-content p { margin: 0 0 1rem; }
.grand-terms-content ul { margin: .4rem 0 1.3rem; padding-left: 1.4rem; }
.grand-terms-content li { margin: .35rem 0; padding-left: .2rem; }
.grand-terms-content li::marker { color: var(--web-primary); }
.grand-terms-content strong { color: #233b5a; }
.grand-terms-contact {
    margin-top: 2rem;
    padding: 1.35rem 1.5rem;
    border-radius: 14px;
    color: #fff;
    background: linear-gradient(130deg, #155fa6, #2587e4);
    box-shadow: 0 14px 28px rgba(23, 99, 174, .16);
}
.grand-terms-contact strong { color: #fff; }
@media (max-width: 767px) {
    .grand-terms-page .business-pages-banner-section { min-height: 150px; border-radius: 14px; }
    .grand-terms-card { border-radius: 14px; }
    .grand-terms-content { font-size: .96rem; line-height: 1.7; }
    .grand-terms-content h2 { padding: .85rem .9rem; }
}

/* Privacy Policy: shares the legal-document readability, with a distinct
 * teal-blue identity that highlights data protection and trust. */
.grand-privacy-page .business-pages-banner-section {
    min-height: 190px;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 16px 36px rgba(15, 81, 98, .16);
    animation: grand-scale-in .48s cubic-bezier(.22, .8, .28, 1) both;
}
.grand-privacy-page .business-pages-banner-section::before {
    position: absolute;
    inset: 0;
    z-index: 1;
    content: '';
    background: linear-gradient(125deg, rgba(7, 60, 75, .88), rgba(21, 139, 157, .48));
}
.grand-privacy-page .business-pages-banner-section::after { z-index: 2; background-color: transparent; }
.grand-privacy-page .business-pages-banner-section .container { position: relative; z-index: 3; }
.grand-privacy-page .business-pages-banner-section h1 { font-size: clamp(1.85rem, 3.6vw, 3rem); text-shadow: 0 3px 18px rgba(0, 32, 42, .38); }
.grand-privacy-card {
    border: 1px solid rgba(17, 116, 136, .13);
    border-radius: 18px;
    box-shadow: 0 14px 36px rgba(17, 83, 101, .08);
    animation: grand-rise-in .54s .1s cubic-bezier(.22, .8, .28, 1) both;
}
.grand-privacy-card .card-body { padding: clamp(1.25rem, 3.4vw, 3rem); }
.grand-privacy-content { max-width: 960px; margin: 0 auto; color: #485e68; font-size: 1rem; line-height: 1.8; }
.grand-privacy-updated {
    display: inline-flex;
    margin: 0 0 1.6rem;
    padding: .5rem .85rem;
    border: 1px solid rgba(12, 139, 160, .18);
    border-radius: 999px;
    color: #087a91;
    font-size: .9rem;
    font-weight: 700;
    background: #effbfd;
}
.grand-privacy-content h2 {
    position: relative;
    margin: 2.2rem 0 .7rem;
    padding: 1rem 1.1rem;
    border-left: 4px solid #0c93a8;
    border-radius: 0 11px 11px 0;
    color: #183f4c;
    font-size: clamp(1.24rem, 2vw, 1.56rem);
    font-weight: 750;
    line-height: 1.35;
    background: linear-gradient(90deg, #edfbfc, #fff);
}
.grand-privacy-content h2:first-of-type { margin-top: .25rem; }
.grand-privacy-content h3 { margin: 1.35rem 0 .45rem; color: #087d94; font-size: 1.08rem; font-weight: 750; }
.grand-privacy-content p { margin: 0 0 1rem; }
.grand-privacy-content ul { margin: .4rem 0 1.3rem; padding-left: 1.4rem; }
.grand-privacy-content li { margin: .35rem 0; padding-left: .2rem; }
.grand-privacy-content li::marker { color: #0c93a8; }
.grand-privacy-content strong { color: #234a57; }
.grand-privacy-contact {
    margin-top: 2rem;
    padding: 1.35rem 1.5rem;
    border-radius: 14px;
    color: #fff;
    background: linear-gradient(130deg, #087b8f, #159db2);
    box-shadow: 0 14px 28px rgba(10, 119, 139, .16);
}
.grand-privacy-contact strong { color: #fff; }
@media (max-width: 767px) {
    .grand-privacy-page .business-pages-banner-section { min-height: 150px; border-radius: 14px; }
    .grand-privacy-card { border-radius: 14px; }
    .grand-privacy-content { font-size: .96rem; line-height: 1.7; }
    .grand-privacy-content h2 { padding: .85rem .9rem; }
}

/* Refund Policy: warm, reassuring treatment for refund and support details. */
.grand-refund-page .business-pages-banner-section {
    min-height: 190px;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 16px 36px rgba(117, 65, 16, .16);
    animation: grand-scale-in .48s cubic-bezier(.22, .8, .28, 1) both;
}
.grand-refund-page .business-pages-banner-section::before {
    position: absolute;
    inset: 0;
    z-index: 1;
    content: '';
    background: linear-gradient(125deg, rgba(104, 52, 10, .87), rgba(213, 119, 22, .48));
}
.grand-refund-page .business-pages-banner-section::after { z-index: 2; background-color: transparent; }
.grand-refund-page .business-pages-banner-section .container { position: relative; z-index: 3; }
.grand-refund-page .business-pages-banner-section h1 { font-size: clamp(1.85rem, 3.6vw, 3rem); text-shadow: 0 3px 18px rgba(53, 24, 0, .38); }
.grand-refund-card {
    border: 1px solid rgba(192, 112, 24, .15);
    border-radius: 18px;
    box-shadow: 0 14px 36px rgba(117, 65, 16, .08);
    animation: grand-rise-in .54s .1s cubic-bezier(.22, .8, .28, 1) both;
}
.grand-refund-card .card-body { padding: clamp(1.25rem, 3.4vw, 3rem); }
.grand-refund-content { max-width: 960px; margin: 0 auto; color: #5b554d; font-size: 1rem; line-height: 1.8; }
.grand-refund-updated {
    display: inline-flex;
    margin: 0 0 1.6rem;
    padding: .5rem .85rem;
    border: 1px solid rgba(211, 124, 27, .20);
    border-radius: 999px;
    color: #ae6010;
    font-size: .9rem;
    font-weight: 700;
    background: #fff8ed;
}
.grand-refund-content h2 {
    position: relative;
    margin: 2.2rem 0 .7rem;
    padding: 1rem 1.1rem;
    border-left: 4px solid #dc801e;
    border-radius: 0 11px 11px 0;
    color: #563819;
    font-size: clamp(1.24rem, 2vw, 1.56rem);
    font-weight: 750;
    line-height: 1.35;
    background: linear-gradient(90deg, #fff7e9, #fff);
}
.grand-refund-content h2:first-of-type { margin-top: .25rem; }
.grand-refund-content p { margin: 0 0 1rem; }
.grand-refund-content ul { margin: .4rem 0 1.3rem; padding-left: 1.4rem; }
.grand-refund-content li { margin: .35rem 0; padding-left: .2rem; }
.grand-refund-content li::marker { color: #dc801e; }
.grand-refund-content strong { color: #69431a; }
.grand-refund-contact {
    margin-top: 2rem;
    padding: 1.35rem 1.5rem;
    border-radius: 14px;
    color: #fff;
    background: linear-gradient(130deg, #b9630d, #ef981f);
    box-shadow: 0 14px 28px rgba(174, 94, 12, .17);
}
.grand-refund-contact strong { color: #fff; }
@media (max-width: 767px) {
    .grand-refund-page .business-pages-banner-section { min-height: 150px; border-radius: 14px; }
    .grand-refund-card { border-radius: 14px; }
    .grand-refund-content { font-size: .96rem; line-height: 1.7; }
    .grand-refund-content h2 { padding: .85rem .9rem; }
}

/* Return Policy: a reassuring green identity for clear, confident returns. */
.grand-return-page .business-pages-banner-section {
    min-height: 190px; border-radius: 18px; overflow: hidden;
    box-shadow: 0 16px 36px rgba(22, 101, 66, .16);
    animation: grand-scale-in .48s cubic-bezier(.22, .8, .28, 1) both;
}
.grand-return-page .business-pages-banner-section::before { position: absolute; inset: 0; z-index: 1; content: ''; background: linear-gradient(125deg, rgba(12, 75, 48, .88), rgba(31, 151, 96, .48)); }
.grand-return-page .business-pages-banner-section::after { z-index: 2; background-color: transparent; }
.grand-return-page .business-pages-banner-section .container { position: relative; z-index: 3; }
.grand-return-page .business-pages-banner-section h1 { font-size: clamp(1.85rem, 3.6vw, 3rem); text-shadow: 0 3px 18px rgba(0, 36, 20, .38); }
.grand-return-card { border: 1px solid rgba(27, 132, 83, .15); border-radius: 18px; box-shadow: 0 14px 36px rgba(23, 91, 59, .08); animation: grand-rise-in .54s .1s cubic-bezier(.22, .8, .28, 1) both; }
.grand-return-card .card-body { padding: clamp(1.25rem, 3.4vw, 3rem); }
.grand-return-content { max-width: 960px; margin: 0 auto; color: #4c6055; font-size: 1rem; line-height: 1.8; }
.grand-return-updated { display: inline-flex; margin: 0 0 1.6rem; padding: .5rem .85rem; border: 1px solid rgba(28, 149, 89, .20); border-radius: 999px; color: #177e4b; font-size: .9rem; font-weight: 700; background: #effaf4; }
.grand-return-content h2 { position: relative; margin: 2.2rem 0 .7rem; padding: 1rem 1.1rem; border-left: 4px solid #1d9a5a; border-radius: 0 11px 11px 0; color: #1e4b32; font-size: clamp(1.24rem, 2vw, 1.56rem); font-weight: 750; line-height: 1.35; background: linear-gradient(90deg, #effaf3, #fff); }
.grand-return-content h2:first-of-type { margin-top: .25rem; }
.grand-return-content p { margin: 0 0 1rem; }
.grand-return-content ul, .grand-return-content ol { margin: .4rem 0 1.3rem; padding-left: 1.4rem; }
.grand-return-content li { margin: .35rem 0; padding-left: .2rem; }
.grand-return-content li::marker { color: #1d9a5a; font-weight: 700; }
.grand-return-content strong { color: #25563a; }
.grand-return-contact { margin-top: 2rem; padding: 1.35rem 1.5rem; border-radius: 14px; color: #fff; background: linear-gradient(130deg, #167d49, #2caa69); box-shadow: 0 14px 28px rgba(22, 122, 72, .17); }
.grand-return-contact strong { color: #fff; }
@media (max-width: 767px) { .grand-return-page .business-pages-banner-section { min-height: 150px; border-radius: 14px; } .grand-return-card { border-radius: 14px; } .grand-return-content { font-size: .96rem; line-height: 1.7; } .grand-return-content h2 { padding: .85rem .9rem; } }

/* Cancellation Policy: concise indigo styling for order-management guidance. */
.grand-cancellation-page .business-pages-banner-section { min-height: 190px; border-radius: 18px; overflow: hidden; box-shadow: 0 16px 36px rgba(61, 52, 130, .16); animation: grand-scale-in .48s cubic-bezier(.22, .8, .28, 1) both; }
.grand-cancellation-page .business-pages-banner-section::before { position: absolute; inset: 0; z-index: 1; content: ''; background: linear-gradient(125deg, rgba(44, 38, 105, .88), rgba(92, 83, 203, .50)); }
.grand-cancellation-page .business-pages-banner-section::after { z-index: 2; background-color: transparent; }
.grand-cancellation-page .business-pages-banner-section .container { position: relative; z-index: 3; }
.grand-cancellation-page .business-pages-banner-section h1 { font-size: clamp(1.85rem, 3.6vw, 3rem); text-shadow: 0 3px 18px rgba(20, 15, 65, .38); }
.grand-cancellation-card { border: 1px solid rgba(82, 72, 185, .15); border-radius: 18px; box-shadow: 0 14px 36px rgba(54, 47, 125, .08); animation: grand-rise-in .54s .1s cubic-bezier(.22, .8, .28, 1) both; }
.grand-cancellation-card .card-body { padding: clamp(1.25rem, 3.4vw, 3rem); }
.grand-cancellation-content { max-width: 960px; margin: 0 auto; color: #55556a; font-size: 1rem; line-height: 1.8; }
.grand-cancellation-updated { display: inline-flex; margin: 0 0 1.6rem; padding: .5rem .85rem; border: 1px solid rgba(88, 78, 193, .20); border-radius: 999px; color: #5146b1; font-size: .9rem; font-weight: 700; background: #f3f2ff; }
.grand-cancellation-content h2 { position: relative; margin: 2.2rem 0 .7rem; padding: 1rem 1.1rem; border-left: 4px solid #6256c8; border-radius: 0 11px 11px 0; color: #37325d; font-size: clamp(1.24rem, 2vw, 1.56rem); font-weight: 750; line-height: 1.35; background: linear-gradient(90deg, #f3f2ff, #fff); }
.grand-cancellation-content h2:first-of-type { margin-top: .25rem; }
.grand-cancellation-content p { margin: 0 0 1rem; }
.grand-cancellation-content ul, .grand-cancellation-content ol { margin: .4rem 0 1.3rem; padding-left: 1.4rem; }
.grand-cancellation-content li { margin: .35rem 0; padding-left: .2rem; }
.grand-cancellation-content li::marker { color: #6256c8; font-weight: 700; }
.grand-cancellation-content strong { color: #3e396c; }
.grand-cancellation-contact { margin-top: 2rem; padding: 1.35rem 1.5rem; border-radius: 14px; color: #fff; background: linear-gradient(130deg, #5146ae, #796ee0); box-shadow: 0 14px 28px rgba(76, 65, 174, .17); }
.grand-cancellation-contact strong { color: #fff; }
@media (max-width: 767px) { .grand-cancellation-page .business-pages-banner-section { min-height: 150px; border-radius: 14px; } .grand-cancellation-card { border-radius: 14px; } .grand-cancellation-content { font-size: .96rem; line-height: 1.7; } .grand-cancellation-content h2 { padding: .85rem .9rem; } }

.grand-site-footer .footer-header::after {
    display: block;
    width: 34px;
    height: 3px;
    margin-top: .55rem;
    border-radius: 99px;
    content: '';
    background: linear-gradient(90deg, #55aeff, #b5dcff);
}

.grand-site-footer .widget-list-item { margin-bottom: .42rem; }

.grand-site-footer .widget-list-link {
    display: inline-flex;
    align-items: center;
    color: rgba(255, 255, 255, .84) !important;
    text-decoration: none;
    transition: color .2s ease, transform .2s ease;
}

.grand-site-footer .widget-list-link:hover {
    color: #fff !important;
}

.grand-site-footer .subscribe-border {
    min-height: 60px;
    padding-right: 125px !important;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 12px !important;
    color: #fff;
    background: rgba(255, 255, 255, .10);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
    transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}

.grand-site-footer .subscribe-border::placeholder { color: rgba(255, 255, 255, .58); }
.grand-site-footer .subscribe-border:focus {
    border-color: #88c6ff;
    background: rgba(255, 255, 255, .16);
    box-shadow: 0 0 0 .22rem rgba(91, 174, 255, .18);
}

.grand-site-footer .subscribe-button {
    top: 7px;
    right: 7px;
    min-height: 46px;
    padding: 0 17px;
    border-radius: 8px;
    color: #123c5e;
    font-weight: 700;
    background: #fff;
    box-shadow: 0 5px 13px rgba(0, 29, 58, .15);
    transition: transform .2s ease, color .2s ease, background-color .2s ease;
}

.grand-site-footer hr { border-color: rgba(255, 255, 255, .20); }

.grand-site-footer .social-btn {
    position: relative;
    overflow: hidden;
    width: 46px;
    height: 46px;
    margin: 0 !important;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 50%;
    color: #fff !important;
    background: #1b4d70 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .10), 0 7px 15px rgba(1, 25, 49, .18);
    transition: transform .25s cubic-bezier(.22, .8, .28, 1), background-color .25s ease, box-shadow .25s ease, border-color .25s ease;
    animation: grand-scale-in .42s cubic-bezier(.22, .8, .28, 1) both;
}

.grand-site-footer .social-media:nth-child(2) .social-btn { animation-delay: .05s; }
.grand-site-footer .social-media:nth-child(3) .social-btn { animation-delay: .10s; }
.grand-site-footer .social-media:nth-child(4) .social-btn { animation-delay: .15s; }
.grand-site-footer .social-media:nth-child(5) .social-btn { animation-delay: .20s; }
.grand-site-footer .social-media:nth-child(6) .social-btn { animation-delay: .25s; }

.grand-site-footer .max-sm-100:has(.social-media) {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    gap: 10px;
    padding: 10px 12px;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 18px;
    background: rgba(4, 35, 62, .20);
}

.grand-site-footer .max-sm-100:has(.social-media)::-webkit-scrollbar { display: none; }
.grand-site-footer .social-media { flex: 0 0 auto; }

.grand-site-footer .sb-twitter { background: #111827 !important; }
.grand-site-footer .sb-linkedin { background: #0a66c2 !important; }
.grand-site-footer .sb-google { background: #4285f4 !important; }
.grand-site-footer .sb-pinterest { background: #bd081c !important; }
.grand-site-footer .sb-instagram { background: linear-gradient(135deg, #833ab4, #fd1d1d 55%, #fcb045) !important; }
.grand-site-footer .sb-facebook { background: #1877f2 !important; }

.grand-site-footer .social-btn::before {
    position: absolute;
    inset: 0;
    border-radius: inherit;
    content: '';
    opacity: 0;
    background: linear-gradient(135deg, rgba(255, 255, 255, .44), rgba(255, 255, 255, 0) 58%);
    transition: opacity .25s ease;
}

.grand-site-footer .social-btn i,
.grand-site-footer .social-btn svg { position: relative; z-index: 1; }

.grand-site-footer .social-btn:focus-visible {
    outline: 3px solid rgba(162, 213, 255, .92);
    outline-offset: 3px;
}

.grand-site-footer .bg-white-overlay-50 {
    border-top: 1px solid rgba(255, 255, 255, .13);
    background: rgba(4, 30, 52, .24) !important;
}

.grand-site-footer .footer-company-about {
    max-width: 245px;
    margin-top: 16px;
    color: rgba(255, 255, 255, .78);
    font-size: 14px;
    line-height: 1.65;
}

.grand-site-footer .row > [class*='col-'] {
    animation: grand-rise-in .48s cubic-bezier(.22, .8, .28, 1) both;
}

.grand-site-footer .row > [class*='col-']:nth-child(2) { animation-delay: .07s; }
.grand-site-footer .row > [class*='col-']:nth-child(3) { animation-delay: .14s; }
.grand-site-footer .row > [class*='col-']:nth-child(4) { animation-delay: .21s; }

@media (hover: hover) {
    .grand-site-footer .footer-web-logo img:hover {
        transform: translateY(-3px) scale(1.02);
        box-shadow: 0 16px 28px rgba(1, 23, 43, .28);
    }

    .grand-site-footer .widget-list-link:hover { transform: translateX(4px); }
    [dir='rtl'] .grand-site-footer .widget-list-link:hover { transform: translateX(-4px); }
    .grand-site-footer .subscribe-button:hover { color: #fff; background: var(--web-primary); transform: translateY(-1px); }
    .grand-site-footer .social-btn:hover {
        border-color: rgba(255, 255, 255, .55);
        filter: brightness(1.12) saturate(1.06);
        box-shadow: 0 12px 22px rgba(2, 30, 61, .35), 0 0 0 5px rgba(112, 184, 255, .13);
        transform: translateY(-5px) scale(1.09);
    }
    .grand-site-footer .social-btn:hover::before { opacity: 1; }
    .grand-site-footer .social-btn:hover i,
    .grand-site-footer .social-btn:hover svg { animation: grand-gentle-float .7s ease-in-out; }
}

@media (max-width: 575px) {
    .grand-site-footer .max-sm-100:has(.social-media) { gap: 8px; padding: 8px 10px; }
    .grand-site-footer .social-btn { width: 42px; height: 42px; }
}

@media (max-width: 575px) {
    .grand-site-footer > .pt-4 { padding-top: 1.75rem !important; }
    .grand-site-footer .footer-header::after { margin-inline: auto; }
    .grand-site-footer .footer-company-about { margin-inline: auto; text-align: center; }
    .grand-site-footer .subscribe-border { min-height: 56px; padding-right: 112px !important; }
    .grand-site-footer .subscribe-button { min-height: 42px; padding: 0 12px; font-size: .82rem; }
}

/*version 16.1*/

/* Storefront assistant: replaces the WhatsApp floating button with an on-site helper. */
.grand-ai-chat-toggle { position: relative; display: inline-grid; width: 52px; height: 52px; place-items: center; border: 0; border-radius: 50%; color: #fff; font-size: 21px; background: linear-gradient(135deg, #267ff0, #5a55e9); box-shadow: 0 13px 25px rgba(37, 97, 205, .30); transition: transform .22s ease, box-shadow .22s ease, filter .22s ease; animation: grand-ai-chat-float 3.8s ease-in-out infinite; }
.grand-ai-chat-toggle::before { position: absolute; inset: -6px; border: 1px solid rgba(48,128,244,.22); border-radius: inherit; content: ''; animation: grand-ai-chat-ring 2.7s ease-out infinite; }
.grand-ai-chat-toggle i { position: relative; z-index: 2; }
.grand-ai-chat-ping { position: absolute; top: 3px; right: 3px; width: 11px; height: 11px; border: 2px solid #fff; border-radius: 50%; background: #47d98d; }
.grand-ai-chat-panel { position: fixed; z-index: 1055; right: 28px; bottom: 102px; display: flex; width: min(370px, calc(100vw - 30px)); max-height: min(560px, calc(100vh - 132px)); flex-direction: column; overflow: hidden; border: 1px solid rgba(66,121,206,.18); border-radius: 20px; opacity: 0; pointer-events: none; background: #f7faff; box-shadow: 0 24px 55px rgba(20,59,118,.25); transform: translateY(18px) scale(.96); transform-origin: right bottom; transition: opacity .23s ease, transform .23s cubic-bezier(.22,.8,.28,1); }
.grand-ai-chat-panel.is-open { opacity: 1; pointer-events: auto; transform: translateY(0) scale(1); }
.grand-ai-chat-header { position: relative; display: flex; align-items: center; gap: 11px; padding: 16px 17px; overflow: hidden; color: #fff; background: linear-gradient(125deg, #197fee, #6259e8); }
.grand-ai-chat-header::after { position: absolute; top: -50px; right: -30px; width: 145px; height: 145px; border-radius: 50%; content: ''; background: rgba(255,255,255,.12); }
.grand-ai-chat-avatar { position: relative; z-index: 1; display: grid; width: 42px; height: 42px; flex: 0 0 42px; place-items: center; border-radius: 13px; color: #276fe1; font-size: 18px; background: #fff; box-shadow: 0 8px 15px rgba(0,47,123,.18); }
.grand-ai-chat-header > div:nth-child(2) { position: relative; z-index: 1; min-width: 0; }
.grand-ai-chat-header strong { display: block; font-size: 15px; line-height: 1.25; }
.grand-ai-chat-header span { display: block; margin-top: 2px; color: rgba(255,255,255,.85); font-size: 12px; }
.grand-ai-chat-header span i { display: inline-block; width: 7px; height: 7px; margin-right: 4px; border-radius: 50%; background: #55ec9a; box-shadow: 0 0 0 3px rgba(85,236,154,.17); }
.grand-ai-chat-close { position: relative; z-index: 1; display: grid; width: 32px; height: 32px; margin-left: auto; place-items: center; border: 0; border-radius: 10px; color: #fff; font-size: 28px; line-height: 1; background: rgba(255,255,255,.15); transition: background .2s ease, transform .2s ease; }
.grand-ai-chat-messages { min-height: 285px; flex: 1; padding: 18px; overflow-y: auto; background: linear-gradient(180deg, #f8fbff, #f1f6ff); }
.grand-ai-chat-intro { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: -2px 0 14px; padding: 8px 10px; border: 1px solid #dce8fa; border-radius: 10px; color: #5680b5; font-size: 11px; background: rgba(255,255,255,.72); }
.grand-ai-chat-intro span { color: #286fcd; font-weight: 750; }
.grand-ai-chat-intro small { color: #7b8ea8; font-size: 10px; }
.grand-ai-message { width: fit-content; max-width: 86%; margin-bottom: 12px; padding: 11px 13px; border-radius: 14px; font-size: 14px; line-height: 1.48; box-shadow: 0 5px 12px rgba(32,77,135,.08); animation: grand-ai-message-in .25s ease both; }
.grand-ai-message--bot { border-top-left-radius: 4px; color: #33435c; background: #fff; }
.grand-ai-message--user { margin-left: auto; border-top-right-radius: 4px; color: #fff; background: linear-gradient(135deg, #2581ef, #5e62e9); }
.grand-ai-quick-replies { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 4px; }
.grand-ai-quick-replies button { padding: 7px 10px; border: 1px solid #cfe0fa; border-radius: 999px; color: #2876da; font-size: 12px; font-weight: 650; background: #fff; transition: color .2s ease, border-color .2s ease, background .2s ease, transform .2s ease; }
.grand-ai-chat-form { display: flex; gap: 8px; padding: 12px; border-top: 1px solid #e0eaf6; background: #fff; }
.grand-ai-chat-form input { min-width: 0; height: 45px; flex: 1; padding: 0 13px; border: 1px solid #cbdcf2; border-radius: 11px; outline: none; color: #283c58; background: #fbfdff; transition: border-color .2s ease, box-shadow .2s ease; }
.grand-ai-chat-form input:focus { border-color: #3c91fb; box-shadow: 0 0 0 3px rgba(52,139,244,.13); }
.grand-ai-chat-form button { display: grid; width: 45px; height: 45px; flex: 0 0 45px; place-items: center; border: 0; border-radius: 11px; color: #fff; background: linear-gradient(135deg, #2381f1, #5c5fe8); box-shadow: 0 8px 15px rgba(35,114,222,.22); }
.grand-ai-typing { display: flex; width: fit-content; gap: 4px; margin: 0 0 12px; padding: 12px 13px; border-radius: 13px 13px 13px 4px; background: #fff; box-shadow: 0 5px 12px rgba(32,77,135,.08); }
.grand-ai-typing i { width: 6px; height: 6px; border-radius: 50%; background: #7a98c4; animation: grand-ai-dot 1s ease-in-out infinite; }
.grand-ai-typing i:nth-child(2) { animation-delay: .15s; } .grand-ai-typing i:nth-child(3) { animation-delay: .3s; }
@keyframes grand-ai-chat-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
@keyframes grand-ai-chat-ring { 0%,100% { opacity: .6; transform: scale(.92); } 60% { opacity: 0; transform: scale(1.16); } }
@keyframes grand-ai-message-in { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: translateY(0); } }
@keyframes grand-ai-dot { 0%,100% { opacity: .3; transform: translateY(0); } 50% { opacity: 1; transform: translateY(-3px); } }
@media (hover:hover) { .grand-ai-chat-toggle:hover { filter: brightness(1.06); box-shadow: 0 17px 30px rgba(37,97,205,.38); transform: translateY(-4px) scale(1.06); } .grand-ai-chat-close:hover { background: rgba(255,255,255,.27); transform: rotate(90deg); } .grand-ai-quick-replies button:hover { border-color: #8fc0ff; color: #fff; background: var(--web-primary); transform: translateY(-1px); } }
@media (max-width: 575px) { .grand-ai-chat-panel { right: 14px; bottom: 83px; border-radius: 17px; } .grand-ai-chat-toggle { width: 48px; height: 48px; } .grand-ai-chat-messages { min-height: 245px; padding: 14px; } }
@media (prefers-reduced-motion: reduce) { .grand-ai-chat-toggle, .grand-ai-chat-toggle::before, .grand-ai-message, .grand-ai-typing i { animation: none !important; } .grand-ai-chat-panel { transition: none; } }

/* FAQ Help Center: searchable, accessible accordion with restrained motion. */
.grand-faq-page {
    position: relative;
    overflow: hidden;
    padding: 2.25rem 0 1rem;
    background:
        radial-gradient(circle at 8% 12%, rgba(36, 131, 242, .10), transparent 25rem),
        radial-gradient(circle at 94% 43%, rgba(101, 90, 235, .08), transparent 26rem);
}
.grand-faq-page::before, .grand-faq-page::after { position: absolute; z-index: 0; width: 230px; height: 230px; border-radius: 50%; content: ''; pointer-events: none; background: rgba(50, 137, 245, .05); }
.grand-faq-page::before { top: 18rem; left: -150px; }
.grand-faq-page::after { right: -150px; bottom: 4rem; background: rgba(98, 88, 232, .05); }
.grand-faq-page .container { position: relative; z-index: 1; }
.grand-faq-hero { max-width: 780px; margin: 0 auto 2.1rem; animation: grand-rise-in .52s cubic-bezier(.22,.8,.28,1) both; }
.grand-faq-kicker { display: inline-flex; align-items: center; gap: .45rem; padding: .5rem .85rem; border: 1px solid rgba(39, 128, 238, .15); border-radius: 999px; color: var(--web-primary); font-size: .86rem; font-weight: 750; background: rgba(255,255,255,.94); box-shadow: 0 8px 18px rgba(27,91,169,.07); }
.grand-faq-hero h1 { margin: .9rem 0 .55rem; color: #172c4b; font-size: clamp(2rem, 4vw, 3rem); font-weight: 800; letter-spacing: -.04em; }
.grand-faq-hero p { max-width: 620px; margin: 0 auto; color: #66768d; font-size: 1rem; line-height: 1.65; }
.grand-faq-search-wrap { position: relative; max-width: 620px; margin: 1.55rem auto 0; }
.grand-faq-search-wrap > i { position: absolute; top: 50%; left: 1.1rem; z-index: 1; color: #6380a4; font-size: 1.1rem; transform: translateY(-50%); }
.grand-faq-search-wrap input { width: 100%; min-height: 56px; padding: 0 1.1rem 0 3.25rem; border: 1px solid #d9e5f3; border-radius: 14px; outline: none; color: #203652; font-size: 1rem; background: rgba(255,255,255,.97); box-shadow: 0 12px 28px rgba(25,83,150,.09); transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.grand-faq-search-wrap input::placeholder { color: #95a5b9; }
.grand-faq-search-wrap input:focus { border-color: #549eff; box-shadow: 0 0 0 .23rem rgba(46,136,243,.13), 0 14px 31px rgba(25,83,150,.10); transform: translateY(-1px); }
.grand-faq-list { max-width: 970px; margin: 0 auto; }
.grand-faq-item { margin-bottom: .85rem; overflow: hidden; border: 1px solid #e1eaf5; border-radius: 15px; background: rgba(255,255,255,.96); box-shadow: 0 8px 20px rgba(24,76,135,.055); animation: grand-rise-in .45s cubic-bezier(.22,.8,.28,1) both; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.grand-faq-item:nth-child(2) { animation-delay: .05s; } .grand-faq-item:nth-child(3) { animation-delay: .1s; } .grand-faq-item:nth-child(4) { animation-delay: .15s; } .grand-faq-item:nth-child(5) { animation-delay: .2s; }
.grand-faq-question { display: flex; width: 100%; align-items: center; gap: 1rem; padding: 1.18rem 1.3rem; border: 0; color: #1d304a; text-align: left; background: transparent; transition: color .2s ease, background .2s ease; }
.grand-faq-number { display: inline-grid; flex: 0 0 34px; width: 34px; height: 34px; place-items: center; border-radius: 10px; color: var(--web-primary); font-size: .75rem; font-weight: 800; background: #eaf4ff; }
.grand-faq-question-text { flex: 1; font-size: 1rem; font-weight: 750; line-height: 1.45; }
.grand-faq-chevron { flex: 0 0 auto; color: #6d7f98; font-size: .9rem; transition: transform .25s ease, color .2s ease; }
.grand-faq-question:not(.collapsed) { color: var(--web-primary); background: linear-gradient(90deg, rgba(234,245,255,.82), rgba(249,251,255,.4)); }
.grand-faq-question:not(.collapsed) .grand-faq-number { color: #fff; background: linear-gradient(135deg, var(--web-primary), #5f63e8); box-shadow: 0 7px 14px rgba(33,116,222,.18); }
.grand-faq-question:not(.collapsed) .grand-faq-chevron { color: var(--web-primary); transform: rotate(180deg); }
.grand-faq-answer { padding: .15rem 1.3rem 1.35rem 4.35rem; color: #5d6e84; font-size: .97rem; line-height: 1.75; white-space: normal; }
.grand-faq-no-results, .grand-faq-empty { max-width: 540px; margin: 2rem auto; padding: 3rem 1.5rem; border: 1px dashed #cddced; border-radius: 18px; color: #6a7a91; text-align: center; background: rgba(255,255,255,.78); }
.grand-faq-no-results > i { display: inline-grid; width: 56px; height: 56px; margin-bottom: 1rem; place-items: center; border-radius: 16px; color: var(--web-primary); font-size: 1.5rem; background: #eaf4ff; }
.grand-faq-no-results h3, .grand-faq-empty h3 { margin: 0 0 .5rem; color: #233850; font-size: 1.18rem; font-weight: 750; }
.grand-faq-no-results p { margin: 0; }
@media (hover:hover) { .grand-faq-item:hover { border-color: #c2dafe; box-shadow: 0 14px 28px rgba(24,86,163,.11); transform: translateY(-2px); } .grand-faq-question:hover { color: var(--web-primary); background: #fbfdff; } }
@media (max-width: 575px) { .grand-faq-page { padding-top: 1.35rem; } .grand-faq-hero { margin-bottom: 1.5rem; } .grand-faq-hero p { font-size: .92rem; } .grand-faq-search-wrap input { min-height: 51px; border-radius: 12px; } .grand-faq-item { border-radius: 12px; } .grand-faq-question { gap: .7rem; padding: 1rem; } .grand-faq-number { flex-basis: 29px; width: 29px; height: 29px; border-radius: 8px; font-size: .68rem; } .grand-faq-question-text { font-size: .92rem; } .grand-faq-answer { padding: .05rem 1rem 1.1rem; font-size: .92rem; } }

/* Contact page: focused support experience with a clean, responsive visual hierarchy. */
.grand-contact-page {
    position: relative;
    overflow: hidden;
    padding: 2.25rem 0 1rem;
    background:
        radial-gradient(circle at 12% 8%, rgba(33, 133, 241, .10), transparent 26rem),
        radial-gradient(circle at 90% 38%, rgba(99, 102, 241, .08), transparent 25rem);
}

.grand-contact-page::before,
.grand-contact-page::after {
    position: absolute;
    z-index: 0;
    width: 230px;
    height: 230px;
    border-radius: 50%;
    content: '';
    pointer-events: none;
    filter: blur(1px);
}

.grand-contact-page::before {
    top: 7rem;
    left: -145px;
    background: rgba(36, 126, 238, .07);
}

.grand-contact-page::after {
    right: -125px;
    bottom: 3rem;
    background: rgba(92, 88, 230, .06);
}

.grand-contact-page > .container { position: relative; z-index: 1; }

.grand-contact-page .grand-contact-hero {
    margin-bottom: .75rem;
    animation: grand-rise-in .5s cubic-bezier(.22, .8, .28, 1) both;
}

.grand-contact-page .headerTitle {
    display: inline-flex;
    align-items: center;
    gap: .65rem;
    margin: 0;
    color: #132a4c;
    font-size: clamp(2rem, 3.7vw, 3rem);
    font-weight: 800;
    letter-spacing: -.035em;
}

.grand-contact-page .headerTitle::before {
    display: inline-grid;
    width: 2.6rem;
    height: 2.6rem;
    place-items: center;
    border-radius: .85rem;
    content: '✦';
    color: #fff;
    font-size: 1.25rem;
    background: linear-gradient(135deg, var(--web-primary), #5d64ed);
    box-shadow: 0 11px 22px rgba(32, 112, 220, .22);
    animation: grand-gentle-float 3.8s ease-in-out infinite;
}

.grand-contact-page .grand-contact-subtitle {
    max-width: 630px;
    margin: .75rem auto 0;
    color: #66758a;
    font-size: 1rem;
    line-height: 1.65;
}

.grand-contact-page .grand-contact-layout {
    align-items: stretch;
    margin-top: .15rem;
    padding-top: 2rem !important;
    padding-bottom: 3.25rem !important;
}

.grand-contact-page .grand-contact-visual {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100%;
    padding: clamp(1.5rem, 4vw, 4rem);
    border: 1px solid rgba(40, 125, 224, .10);
    border-right: 0;
    border-radius: 22px 0 0 22px;
    background: linear-gradient(145deg, #eef7ff, #f9fbff 58%, #eff2ff);
    box-shadow: 0 18px 45px rgba(24, 83, 142, .08);
    animation: grand-rise-in .58s .09s cubic-bezier(.22, .8, .28, 1) both;
}

.grand-contact-page .for-contact-image {
    width: min(100%, 480px);
    height: auto;
    filter: drop-shadow(0 18px 20px rgba(31, 89, 152, .14));
    animation: grand-gentle-float 5.2s ease-in-out infinite;
}

.grand-contact-page .grand-contact-card {
    height: 100%;
    margin: 0;
    overflow: hidden;
    border: 1px solid rgba(30, 96, 177, .13);
    border-radius: 0 22px 22px 0;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 18px 45px rgba(24, 83, 142, .10);
    animation: grand-rise-in .58s .17s cubic-bezier(.22, .8, .28, 1) both;
}

.grand-contact-page .for-send-message { padding: clamp(1.5rem, 3.2vw, 3rem); }

.grand-contact-page .for-send-message h2 {
    position: relative;
    margin-bottom: 2rem !important;
    color: #182c4a !important;
    font-size: clamp(1.4rem, 2.4vw, 1.82rem);
    font-weight: 800 !important;
    letter-spacing: -.02em;
}

.grand-contact-page .for-send-message h2::after {
    display: block;
    width: 46px;
    height: 4px;
    margin: .75rem auto 0;
    border-radius: 99px;
    content: '';
    background: linear-gradient(90deg, var(--web-primary), #6d65ed);
}

.grand-contact-page .form-group { margin-bottom: 1.25rem; }
.grand-contact-page .form-group label {
    margin-bottom: .5rem;
    color: #536276;
    font-size: .91rem;
    font-weight: 700;
}

.grand-contact-page .form-control {
    min-height: 52px;
    border: 1px solid #d9e2ef;
    border-radius: 11px;
    color: #20334e;
    background: #fbfdff;
    box-shadow: none;
    transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease, transform .2s ease;
}

.grand-contact-page textarea.form-control {
    min-height: 155px;
    padding-top: .85rem;
    resize: vertical;
}

.grand-contact-page .form-control::placeholder { color: #98a6ba; }
.grand-contact-page .form-control:focus {
    border-color: #4e9cff;
    background: #fff;
    box-shadow: 0 0 0 .22rem rgba(45, 135, 242, .13);
    transform: translateY(-1px);
}

.grand-contact-page .iti { width: 100%; }
.grand-contact-page .iti .form-control { padding-left: 78px !important; }

.grand-contact-page .default-captcha-container { margin: .25rem 0 1.4rem; }

.grand-contact-page #contact-form-btn {
    min-width: 132px;
    min-height: 50px;
    padding: .75rem 1.55rem;
    border: 0;
    border-radius: 11px;
    font-weight: 750;
    letter-spacing: .01em;
    background: linear-gradient(135deg, var(--web-primary), #5569e9);
    box-shadow: 0 12px 21px rgba(33, 113, 225, .24);
    transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

@media (hover: hover) {
    .grand-contact-page #contact-form-btn:hover {
        filter: brightness(1.05);
        box-shadow: 0 15px 27px rgba(33, 113, 225, .31);
        transform: translateY(-3px);
    }
}

.grand-contact-page #contact-form-btn:focus-visible {
    outline: 3px solid rgba(84, 150, 255, .45);
    outline-offset: 3px;
}

@media (max-width: 991px) {
    .grand-contact-page .grand-contact-visual {
        min-height: auto;
        border-right: 1px solid rgba(40, 125, 224, .10);
        border-bottom: 0;
        border-radius: 22px 22px 0 0;
    }
    .grand-contact-page .grand-contact-card { border-radius: 0 0 22px 22px; }
    .grand-contact-page .for-contact-image { width: min(100%, 390px); }
}

@media (max-width: 575px) {
    .grand-contact-page { padding-top: 1.35rem; }
    .grand-contact-page .headerTitle { font-size: 1.85rem; }
    .grand-contact-page .headerTitle::before { width: 2.25rem; height: 2.25rem; border-radius: .72rem; }
    .grand-contact-page .grand-contact-subtitle { font-size: .92rem; }
    .grand-contact-page .grand-contact-layout { padding-top: 1.25rem !important; padding-bottom: 2rem !important; }
    .grand-contact-page .grand-contact-visual { padding: 1.5rem 1.1rem; border-radius: 16px 16px 0 0; }
    .grand-contact-page .grand-contact-card { border-radius: 0 0 16px 16px; }
    .grand-contact-page .for-send-message { padding: 1.35rem 1rem; }
    .grand-contact-page .for-send-message h2 { margin-bottom: 1.5rem !important; }
    .grand-contact-page #contact-form-btn { width: 100%; }
}
/* Grand Baazar customer authentication */
.grand-auth-page {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-height: clamp(540px, 72vh, 780px);
    padding: 2.25rem 0;
    background:
        radial-gradient(circle at 8% 8%, rgba(31, 124, 255, .15), transparent 27rem),
        radial-gradient(circle at 92% 88%, rgba(255, 139, 34, .13), transparent 24rem),
        linear-gradient(135deg, #f7faff 0%, #eef5ff 48%, #f8fbff 100%);
}
.grand-auth-page::before,
.grand-auth-page::after {
    content: "";
    position: absolute;
    z-index: -1;
    width: 19rem;
    height: 19rem;
    border: 1px solid rgba(31, 124, 255, .16);
    border-radius: 50%;
    animation: grand-auth-orbit 14s ease-in-out infinite;
}
.grand-auth-page::before { top: -10rem; left: -8rem; }
.grand-auth-page::after { right: -8rem; bottom: -11rem; animation-delay: -7s; }
.grand-auth-page .login-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(26, 105, 214, .13);
    border-radius: 22px;
    padding: clamp(1.5rem, 3vw, 2.75rem);
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 22px 60px rgba(19, 68, 136, .14);
    animation: grand-auth-enter .62s cubic-bezier(.2,.75,.28,1) both;
}
.grand-auth-page .login-card::before {
    content: "";
    position: absolute;
    top: 0;
    right: 10%;
    left: 10%;
    height: 3px;
    border-radius: 0 0 999px 999px;
    background: linear-gradient(90deg, #1677f2, #5a62f4, #ff8a22);
}
.grand-auth-icon-shell {
    display: grid;
    place-items: center;
    width: 84px;
    height: 84px;
    border-radius: 24px;
    background: linear-gradient(135deg, #e8f3ff, #f4f7ff);
    box-shadow: 0 14px 28px rgba(25, 112, 232, .16);
    animation: grand-auth-float 4s ease-in-out infinite;
}
.grand-auth-kicker {
    display: inline-flex;
    margin-top: 1rem;
    color: #1475ed;
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.grand-auth-heading { text-align: center; margin-bottom: 1.75rem; }
.grand-auth-heading .grand-auth-kicker { margin-top: 0; margin-bottom: .55rem; }
.grand-auth-intro {
    max-width: 31rem;
    margin: -.65rem auto 1.55rem;
    color: #66758b;
    font-size: .94rem;
    line-height: 1.55;
    text-align: center;
}
.grand-auth-page .form-label { color: #26364e; font-size: .88rem; }
.grand-auth-page .form-control,
.grand-auth-page .iti__selected-country {
    min-height: 48px;
    border-color: #dce5f2;
    border-radius: 11px;
    background-color: #fbfdff;
    box-shadow: none;
    transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.grand-auth-page .form-control:focus {
    border-color: #1976ed;
    background-color: #fff;
    box-shadow: 0 0 0 .22rem rgba(25, 118, 237, .12);
}
.grand-auth-page .btn--primary {
    min-height: 48px;
    border: 0;
    border-radius: 11px;
    background: linear-gradient(100deg, #1268dc, #247fed 58%, #5366f2);
    box-shadow: 0 12px 22px rgba(27, 108, 223, .24);
    transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.grand-auth-page .btn--primary:hover,
.grand-auth-page .btn--primary:focus { transform: translateY(-2px); box-shadow: 0 16px 28px rgba(27, 108, 223, .32); filter: saturate(1.08); }
.grand-auth-page .social-media-login-btn {
    border-radius: 11px;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.grand-auth-page .social-media-login-btn:hover { transform: translateY(-2px); border-color: #86b9f8; box-shadow: 0 10px 18px rgba(20, 91, 180, .12); }
.grand-auth-page .custom-control-label { color: #60708a; }
.grand-auth-page .text-primary { color: #126ee7 !important; font-weight: 700; }
@keyframes grand-auth-enter { from { opacity: 0; transform: translateY(24px) scale(.985); } to { opacity: 1; transform: none; } }
@keyframes grand-auth-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }
@keyframes grand-auth-orbit { 0%, 100% { transform: translate3d(0,0,0) scale(1); } 50% { transform: translate3d(15px, 10px, 0) scale(1.08); } }
@media (max-width: 575.98px) {
    .grand-auth-page { padding: .65rem 0 1.25rem; }
    .grand-auth-page .login-card { border-radius: 18px; padding: 1.25rem; }
    .grand-auth-page .login-card::before { right: 18%; left: 18%; }
    .grand-auth-icon-shell { width: 72px; height: 72px; border-radius: 20px; }
}
@media (prefers-reduced-motion: reduce) {
    .grand-auth-page *, .grand-auth-page::before, .grand-auth-page::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Vendor onboarding: professional seller registration without changing the workflow. */
.vendor-registration-page { position: relative; }
.vendor-registration-page .create-an-account {
    overflow: hidden;
    border: 1px solid rgba(32, 109, 210, .12);
    border-radius: 22px;
    background: linear-gradient(135deg, #edf5ff, #f7fbff 60%, #e8f2ff);
    box-shadow: 0 20px 48px rgba(24, 79, 151, .10);
    animation: grand-vendor-enter .55s cubic-bezier(.2,.75,.28,1) both;
}
.vendor-registration-page .create-an-account::after { content: ''; position: absolute; width: 24rem; height: 24rem; right: -11rem; top: -13rem; border-radius: 50%; background: radial-gradient(circle, rgba(24,126,239,.16), transparent 67%); pointer-events: none; }
.vendor-registration-intro { position: relative; z-index: 1; padding: .75rem 1.25rem; }
.vendor-registration-intro h3 { color: #183a67; font-size: clamp(1.65rem, 3vw, 2.15rem); font-weight: 800; }
.vendor-registration-intro p { color: #60738e; line-height: 1.6; }
.vendor-registration-intro .text-primary { color: #1476ed !important; }
.vendor-registration-art img { max-width: 100%; filter: drop-shadow(0 16px 20px rgba(31, 82, 145, .14)); animation: grand-vendor-float 4s ease-in-out infinite; }
.vendor-registration-form-card { position: relative; z-index: 1; border: 1px solid rgba(33, 96, 177, .11); border-radius: 16px !important; box-shadow: 0 12px 30px rgba(22, 78, 145, .10); }
.vendor-registration-form-heading { margin-bottom: 1.65rem; }
.vendor-registration-form-heading > span { display: block; margin-bottom: .4rem; color: #1477ed; font-size: .73rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.vendor-registration-form-heading h4 { color: #1c385e; font-size: 1.7rem; font-weight: 800; }
.vendor-registration-form-heading p { margin: 0; color: #6d7d94; }
.vendor-registration-page label { color: #354861; font-size: .9rem; font-weight: 650; }
.vendor-registration-page .form-control { min-height: 49px; border-color: #d9e4f2; border-radius: 10px; background: #fbfdff; box-shadow: none; transition: border-color .2s ease, box-shadow .2s ease, background .2s ease; }
.vendor-registration-page .form-control:focus { border-color: #1a78ee; background: #fff; box-shadow: 0 0 0 4px rgba(26,120,238,.11); }
.vendor-registration-page .btn--primary { min-height: 49px; border: 0; border-radius: 10px; background: linear-gradient(100deg, #1768d8, #2584ef) !important; box-shadow: 0 10px 19px rgba(24, 104, 215, .24); transition: transform .2s ease, box-shadow .2s ease; }
.vendor-registration-page .btn--primary:hover { transform: translateY(-2px); box-shadow: 0 14px 25px rgba(24,104,215,.31); }
@keyframes grand-vendor-enter { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: none; } }
@keyframes grand-vendor-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }
@media (max-width: 991.98px) { .vendor-registration-intro { text-align: center; } .vendor-registration-art { margin-bottom: .5rem !important; } }
@media (prefers-reduced-motion: reduce) { .vendor-registration-page *, .vendor-registration-page::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }

/* Grand Baazar default storefront: mobile responsive polish. */
@media (max-width: 991.98px) {
    html,
    body {
        max-width: 100%;
        overflow-x: hidden;
        background: #f5f8fc;
    }

    body.toolbar-enabled {
        padding-bottom: 78px;
    }

    .mobile-head {
        position: sticky;
        top: 0;
        z-index: 1040;
        background: #fff !important;
        box-shadow: 0 8px 24px rgba(18, 62, 122, .08);
    }

    .mobile-head .navbar {
        padding-block: 8px;
    }

    .mobile-head .container {
        display: grid;
        grid-template-columns: 44px minmax(112px, 1fr) auto;
        align-items: center;
        gap: 8px;
        padding-inline: 12px !important;
    }

    .mobile-head .navbar-toggler {
        width: 42px;
        height: 42px;
        margin: 0;
        border: 0;
        border-radius: 50%;
        background: #f3f7fd;
        box-shadow: none;
    }

    .mobile-head .navbar-brand {
        justify-self: center;
        margin: 0 !important;
        min-width: 0 !important;
    }

    .mobile-head .navbar-brand img,
    .mobile-head .mobile-logo-img {
        width: auto !important;
        max-width: 172px;
        max-height: 54px;
        object-fit: contain;
    }

    .mobile-head .navbar-toolbar {
        justify-self: end;
        gap: 6px;
        min-width: 0;
    }

    .mobile-head .navbar-tool {
        margin: 0 !important;
        min-width: 0;
    }

    .mobile-head .navbar-tool-text {
        display: none !important;
    }

    .mobile-head .navbar-tool-icon-box {
        display: grid;
        place-items: center;
        width: 42px !important;
        height: 42px !important;
        border-radius: 50% !important;
        background: #f3f7fd !important;
        color: var(--web-primary) !important;
        box-shadow: none !important;
    }

    .mobile-head .navbar-tool-icon,
    .mobile-head .open-search-form-mobile i {
        color: var(--web-primary) !important;
        font-size: 19px;
        line-height: 1;
    }

    .mobile-head .navbar-tool-label {
        top: -7px;
        inset-inline-end: -5px;
        min-width: 22px;
        height: 22px;
        border: 2px solid #fff;
        font-size: 11px;
        line-height: 18px;
    }

    .mobile-head .search-form-mobile {
        grid-column: 1 / -1;
        order: 5;
        width: 100%;
        margin: 4px 0 0 !important;
    }

    .mobile-head .search-form-mobile:not(.active) {
        display: none;
    }

    .mobile-head .search_form .d-flex {
        gap: 8px !important;
    }

    .mobile-head .search-bar-input {
        min-height: 42px;
        border-radius: 12px !important;
        background: #f7faff;
        font-size: 14px;
    }

    .navbar-stuck-menu .navbar-collapse {
        width: min(88vw, 330px);
        min-height: 100vh;
        padding: 22px 26px;
        background: #fff;
        box-shadow: 18px 0 40px rgba(23, 55, 97, .12);
    }

    .navbar-stuck-menu .navbar-nav .nav-link {
        padding-block: 11px;
        color: #172033;
        font-size: 16px;
    }

    .grand-default-hero {
        padding: 12px 0 6px !important;
        background: linear-gradient(180deg, #f3f8ff 0%, #fff 100%);
    }

    .grand-default-hero .container {
        padding-inline: 12px;
    }

    .grand-default-hero .__top-slider-images > div {
        padding-inline: 0 !important;
    }

    .grand-default-hero__slider,
    .grand-default-hero__slider .owl-stage-outer,
    .grand-default-hero__slider .owl-stage,
    .grand-default-hero__slider .owl-item,
    .grand-default-hero__slide {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
    }

    .grand-default-hero__slider {
        overflow: hidden;
        border-radius: 14px !important;
        background: #fff;
        box-shadow: 0 14px 32px rgba(15, 78, 160, .10) !important;
    }

    .grand-default-hero__slide .__slide-img,
    .grand-default-hero__slide .__slide-img.__slide-img-170 {
        display: block;
        width: 100%;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 16 / 9;
        object-fit: cover !important;
        object-position: center !important;
    }

    .grand-default-hero__slider .owl-dots {
        position: absolute;
        right: 0;
        bottom: 8px;
        left: 0;
        margin: 0 !important;
    }

    .grand-default-hero__slider .owl-nav button {
        width: 34px !important;
        height: 34px !important;
        border-radius: 50% !important;
    }

    .grand-default-footer-banners,
    .footer-slider-container {
        overflow: hidden;
    }

    .grand-site-footer {
        text-align: center;
    }

    .grand-site-footer .footer-web-logo {
        margin-bottom: 20px;
    }

    .grand-site-footer .footer-web-logo a {
        display: inline-flex !important;
        justify-content: center;
        max-width: 178px;
        padding: 8px 16px;
        border-radius: 12px;
        background: rgba(255,255,255,.94);
    }

    .grand-site-footer .footer-web-logo a img {
        height: 44px !important;
        object-fit: contain;
    }

    .grand-site-footer .footer-company-about {
        max-width: 320px;
        margin: 18px auto 0;
        color: rgba(255,255,255,.84);
        font-size: 15px;
        line-height: 1.7;
    }

    .grand-site-footer .footer-header {
        display: block;
        margin-bottom: 14px;
        color: #fff;
        text-align: center !important;
        font-weight: 800;
    }

    .grand-site-footer .footer-header::after {
        content: "";
        display: block;
        width: 42px;
        height: 3px;
        margin: 10px auto 0;
        border-radius: 99px;
        background: #8ac6ff;
    }

    .grand-site-footer .widget-list-link,
    .grand-site-footer .__text-14px {
        color: rgba(255,255,255,.88) !important;
        line-height: 1.55;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .grand-site-footer .subscribe-border {
        height: 58px;
        padding-inline: 16px 118px !important;
        border-radius: 13px !important;
        background: rgba(255,255,255,.09) !important;
    }

    .grand-site-footer .subscribe-button {
        top: 6px !important;
        inset-inline-end: 6px !important;
        min-width: 104px;
        height: 46px;
        border-radius: 10px;
        font-size: 13px;
    }

    .grand-site-footer .start_address span,
    .grand-site-footer .__text-14px {
        justify-content: center;
    }

    .grand-site-footer .social-btn {
        width: 46px;
        height: 46px;
        border-radius: 50%;
    }

    .app-download-popup {
        inset-inline: 12px !important;
        inset-block-end: 82px !important;
        width: auto !important;
        margin: 0 !important;
        padding: 12px !important;
        border: 1px solid rgba(30, 120, 235, .12);
        border-radius: 18px !important;
        background: rgba(255,255,255,.98) !important;
        box-shadow: 0 18px 42px rgba(19, 72, 140, .18) !important;
        z-index: 1039 !important;
    }

    .app-download-popup .d-flex {
        gap: 10px !important;
    }

    .app-download-popup .app-banner-close {
        display: grid;
        place-items: center;
        width: 32px;
        height: 32px;
        flex: 0 0 32px;
        border-radius: 50% !important;
        background: #f4f7fb !important;
    }

    .app-download-popup h5 {
        margin-bottom: 2px !important;
        color: #1d2b3f;
        font-size: 14px !important;
        line-height: 1.25;
    }

    .app-download-popup .opacity-70 {
        max-width: 140px;
        line-height: 1.3;
    }

    .app-download-popup #install-btn {
        min-height: 36px;
        margin-top: 6px !important;
        border-radius: 10px;
        padding-inline: 14px !important;
    }

    .chatbot-container,
    .chat-toggle,
    .floating-chat,
    .chat-icon {
        z-index: 1038 !important;
    }

    .back-to-top {
        z-index: 1037 !important;
    }
}

@media (max-width: 575.98px) {
    .mobile-head .container {
        grid-template-columns: 42px minmax(104px, 1fr) auto;
        padding-inline: 10px !important;
    }

    .mobile-head .navbar-brand img,
    .mobile-head .mobile-logo-img {
        max-width: 162px;
        max-height: 52px;
    }

    .mobile-head .navbar-toolbar {
        gap: 4px;
    }

    .mobile-head .navbar-tool-icon-box {
        width: 40px !important;
        height: 40px !important;
    }

    .grand-default-hero .container,
    .container {
        padding-inline: 10px;
    }

    .grand-default-hero__slider {
        border-radius: 12px !important;
    }

    .grand-default-hero__slide .__slide-img,
    .grand-default-hero__slide .__slide-img.__slide-img-170 {
        aspect-ratio: 16 / 8.8;
    }

    .footer-slide-item {
        min-height: 128px;
        border-radius: 14px;
        box-shadow: 0 12px 26px rgba(18, 76, 151, .08);
    }

    .grand-site-footer .row {
        row-gap: 12px;
    }

    .grand-site-footer .footer-padding-bottom {
        padding-bottom: 22px !important;
    }

    .grand-site-footer .widget-list {
        padding-bottom: 0 !important;
    }

    .grand-site-footer .widget-list-item {
        margin-bottom: 9px;
    }

    .grand-site-footer .bg-white-overlay-50 {
        padding-block: 18px !important;
    }

    .app-download-popup {
        inset-inline: 10px !important;
        max-width: calc(100vw - 20px);
    }
}

@media (max-width: 374.98px) {
    .mobile-head .container {
        grid-template-columns: 38px minmax(90px, 1fr) auto;
        gap: 5px;
    }

    .mobile-head .navbar-toggler,
    .mobile-head .navbar-tool-icon-box {
        width: 36px !important;
        height: 36px !important;
    }

    .mobile-head .navbar-brand img,
    .mobile-head .mobile-logo-img {
        max-width: 132px;
    }

    .app-download-popup .opacity-70 {
        max-width: 112px;
        font-size: 10px !important;
    }
}
