/* No'k Acessórios - Custom Styles */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 80px;
}

/* Hide scrollbar */
::-webkit-scrollbar {
    /* display: none; */
}

.no-scrollbar {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.no-scrollbar::-webkit-scrollbar {
    display: none;
}

/* Font Family */
body {
    font-family: 'Inter', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Custom Classes */
.gradient-overlay {
    background: linear-gradient(180deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.3) 100%);
}

.hover-scale {
    transition: transform 0.3s ease;
}

.hover-scale:hover {
    transform: scale(1.05);
}

.whatsapp-float {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 1000;
}

/* Product Carousel */
.products-carousel-wrapper {
    position: relative;
    overflow: hidden;
}

.products-carousel {
    display: flex !important;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -ms-overflow-style: none;
    gap: 2rem;
    padding: 1rem 0;
    cursor: grab;
    user-select: none;
}

.products-carousel:active {
    cursor: grabbing;
}

.products-carousel::-webkit-scrollbar {
    display: none;
}

.products-carousel .product-card {
    flex: 0 0 auto;
    width: 300px;
    scroll-snap-align: start;
}

.carousel-btn {
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.carousel-btn:hover {
    transform: scale(1.1);
}

.carousel-btn:disabled {
    opacity: 0.3;
    cursor: not-allowed;
}

.carousel-dots {
    display: flex;
}

.carousel-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #4A5568;
    cursor: pointer;
    transition: all 0.3s ease;
}

.carousel-dot.active {
    background-color: #FB6007;
    width: 24px;
    border-radius: 5px;
}

/* Hero Carousel */
.hero-carousel {
    position: relative;
    width: 100%;
    height: 100%;
}

.hero-slide {
    display: none;
    width: 100%;
    height: 100%;
}

.hero-slide.active {
    display: block;
}

/* Testimonials Carousel */
.testimonials-carousel-wrapper {
    position: relative;
}

.testimonials-carousel {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -ms-overflow-style: none;
    gap: 2rem;
    padding: 1rem 0;
    cursor: grab;
    user-select: none;
}

.testimonials-carousel:active {
    cursor: grabbing;
}

.testimonials-carousel::-webkit-scrollbar {
    display: none;
}

.testimonials-carousel > div {
    flex: 0 0 auto;
    width: 350px;
    scroll-snap-align: start;
}

.input-error {
    border-color: #ff5252 !important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .whatsapp-float {
        bottom: 20px;
        right: 20px;
    }
    
    .whatsapp-float .w-16 {
        width: 56px;
        height: 56px;
    }
    
    /* Hero Section Mobile */
    #inicio h1 {
        font-size: 2.5rem !important;
        line-height: 1.2;
    }
    
    #inicio p {
        font-size: 1rem !important;
    }
    
    /* Section Titles Mobile */
    section h2 {
        font-size: 2rem !important;
    }
    
    /* Product Cards Mobile */
    .product-card .h-72 {
        height: 250px;
    }
    
    .product-card img {
        object-fit: contain !important;
    }
    
    /* FAQ Mobile */
    .faq-question span {
        font-size: 1rem !important;
    }
    
    /* Stats Box Mobile */
    .absolute.-bottom-8.-left-8 {
        position: relative !important;
        bottom: 0 !important;
        left: 0 !important;
        margin-top: 1rem;
    }
    
    /* Carousel Mobile */
    .products-carousel .product-card {
        width: 280px;
    }
    
    .testimonials-carousel > div {
        width: 300px;
    }
}

@media (max-width: 640px) {
    /* Hero Section Small Mobile */
    #inicio {
        height: 600px !important;
    }
    
    #inicio h1 {
        font-size: 2rem !important;
    }
    
    /* Buttons Mobile */
    .px-10 {
        padding-left: 1.5rem !important;
        padding-right: 1.5rem !important;
    }
    
    /* Product Grid Mobile */
    .grid-cols-1 {
        gap: 1.5rem;
    }

    .px-12 {
        padding: 0 !important;
    }
}
