.hero-pagination {
    bottom: 40px !important;
}

.hero-pagination .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: #fff;
    opacity: 0.4;
}

.hero-pagination .swiper-pagination-bullet-active {
    width: 14px;
    height: 14px;
    opacity: 1;
}

.filter-btn {
    padding: 12px 24px;
    border-radius: 9999px;
    border: 1px solid #d9d9d9;
    background: #fff;
    font-size: 18px;
    transition: 0.35s;
    white-space: nowrap;
}

.filter-btn:hover,
.filter-btn.active {
    background: #99b717;
    color: #fff;
    border-color: #99b717;
}

@media (max-width: 768px) {
    .filter-btn {
        padding: 10px 18px;
        font-size: 15px;
    }
}

/* Hand animation */
.animate-hand {
    animation: handFloat 5s ease-in-out infinite;
    transform-origin: bottom center;
}

/* Cinnamon animation */
.animate-cinnamon {
    animation: cinnamonFloat 5s ease-in-out infinite;
    transform-origin: center bottom;
}

@keyframes handFloat {
    0%,
    100% {
        transform: translateY(18px);
    }

    50% {
        transform: translateY(0);
    }
}

@keyframes cinnamonFloat {
    0%,
    100% {
        transform: translateY(0) rotate(-3deg);
    }

    50% {
        transform: translateY(-18px) rotate(3deg);
    }
}

.certificateSwiper {
    overflow: hidden;
}

.certificateSwiper .swiper-slide {
    display: flex;
    align-items: center;
    height: auto;
    width: fit-content !important;
}

.certificateSwiper img {
    transition: transform 0.4s ease;
}

.certificateSwiper .swiper-slide:hover img {
    transform: scale(1.08);
}

.product-filter-scroll::-webkit-scrollbar {
    display: none;
}

.product-filter-scroll {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.product-tab {
    position: relative;
    padding: 22px 34px;
    font-weight: 600;
    color: #303030;
    cursor: pointer;
    transition: 0.3s;
    white-space: nowrap;
}

.product-tab:hover {
    color: #99b717;
}

.product-tab::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -1px;
    width: 0;
    height: 4px;
    border-radius: 999px;
    background: #99b717;
    transform: translateX(-50%);
    transition: 0.3s;
}

.product-tab.active {
    color: #303030;
}

.product-tab.active::after {
    width: 70%;
}

.tab-content {
    animation: fadeTab 0.35s ease;
}

@keyframes fadeTab {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.size-btn {
    padding: 10px 24px;
    border: 1px solid #1c1d1b;
    border-radius: 999px;
    transition: 0.3s;
    font-size: 15px;
}

.size-btn:hover {
    background: #e46a37;
    color: #fff;
    border-color: #e46a37;
}

.size-btn.active {
    background: #e46a37;
    color: #fff;
    border-color: #e46a37;
}

.qty-btn {
    font-size: 22px;
    transition: 0.3s;
}

.qty-btn:hover {
    background: #99b717;
    color: #fff;
}

.product-thumb {
    background: #f8fbf5;
    border: 2px solid transparent;
    border-radius: 18px;
    padding: 10px;
    transition: 0.3s;
    cursor: pointer;
    height: 110px;

    display: flex;
    align-items: center;
    justify-content: center;
}

.product-thumb img {
    max-height: 90px;
    transition: 0.35s;
}

.product-thumb:hover {
    border-color: #99b717;
}

.product-thumb:hover img {
    transform: scale(1.08);
}

.product-thumb.active {
    border-color: #99b717;
    box-shadow: 0 10px 25px rgba(153, 183, 23, 0.15);
}

.thumbnailSwiper {
    overflow: hidden;
}

.thumbnailSwiper .swiper-slide {
    height: auto;
}

label.error {
    color: #f44336;
}

/* ========================================================= */
/* GLOBAL PAGE LOADER */
/* ========================================================= */

#pageLoader {
    visibility: visible;
    pointer-events: all;
}

/* Logo animation */

.page-loader-logo {
    animation: loaderLogo 1.8s ease-in-out infinite;
    transform-origin: center;
}

/* Loading dots */

.page-loader-dot {
    animation: loaderDot 1.4s ease-in-out infinite;
}

.page-loader-dot:nth-child(1) {
    animation-delay: 0s;
}

.page-loader-dot:nth-child(2) {
    animation-delay: 0.2s;
}

.page-loader-dot:nth-child(3) {
    animation-delay: 0.4s;
}

/* Logo */

@keyframes loaderLogo {
    0%,
    100% {
        transform: scale(1);
        opacity: 1;
    }

    50% {
        transform: scale(1.04);
        opacity: 0.8;
    }
}

/* Dots */

@keyframes loaderDot {
    0%,
    60%,
    100% {
        transform: translateY(0);
        opacity: 0.35;
    }

    30% {
        transform: translateY(-6px);
        opacity: 1;
    }
}
