/* Alleen essentiële custom styling behouden */
@import url('https://fonts.googleapis.com/css2?family=Luckiest+Guy&display=swap');

/* Header en menu styling */
.main-menu {
    background: transparent;
}

.hamburger-icon span {
    transform-origin: center;
    transition: all 0.3s ease-in-out;
}

#mobile-menu {
    z-index: 40;
}

/* Menu item hover en active styling met gradient en kader */
.menu-link:hover, .menu-link:active {
    background: linear-gradient(to right, #F2731A, #C054A2);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    position: relative;
}

.menu-link:hover::before, .menu-link:active::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: 4px;
    z-index: -1;
}

.main-menu a:hover, .main-menu a:active {
    background: linear-gradient(to right, #F2731A, #C054A2);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    position: relative;
}

.main-menu a:hover::before, .main-menu a:active::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(255, 255, 255, 0.7);
    border-radius: 4px;
    z-index: -1;
}

/* Webshop button hover effect */
@keyframes gradient-shift {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

a[href*="webshop"] {
    background-size: 200% 200%;
    animation: gradient-shift 3s ease infinite;
}

/* Titels */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Luckiest Guy', cursive;
}

/* Carousel styling */
.carousel {
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
    scrollbar-width: none; /* Firefox */
    max-width: 100vw;
    overflow: hidden;
}

.carousel::-webkit-scrollbar {
    display: none; /* Chrome, Safari and Opera */
}

.carousel-dot {
    transition: opacity 0.3s ease;
}

/* Desktop styles */
@media (min-width: 768px) {
    .hero-content h1 {
        font-size: 9rem !important;
    }
    
    .hero-content p {
        font-size: 3rem !important;
    }
}

/* Mobile touch feedback for buttons */
@media (max-width: 767px) {
    /* Active state for buttons on mobile */
    button:active, 
    a[href*="webshop"]:active,
    [onclick*="window.location"]:active {
        background-color: #F2731A !important;
        border-color: #F2731A !important;
        transform: scale(1.05) !important;
        transition: transform 0.2s, background-color 0.2s, border-color 0.2s !important;
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3) !important;
    }
    
    /* Add specific active state for order buttons */
    .w-full[onclick*="window.location"]:active,
    .order-button:active {
        background-color: #F2731A !important;
        border-color: #F2731A !important;
        color: white !important;
        opacity: 1;
        transform: scale(1.05) !important;
    }
    
    /* Specific styling for webshop button */
    .webshop-button:active {
        transform: scale(1.1) !important;
        opacity: 1;
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.4) !important;
        transition: all 0.2s ease !important;
        z-index: 60 !important;
    }
    
    /* Add touch animation class */
    .touch-feedback {
        position: relative;
        overflow: hidden;
    }
    
    .touch-feedback::after {
        content: '';
        display: block;
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        pointer-events: none;
        background-image: radial-gradient(circle, #fff 20%, transparent 20.01%);
        background-repeat: no-repeat;
        background-position: 50%;
        transform: scale(10, 10);
        opacity: 0;
        transition: transform .3s, opacity .5s;
    }
    
    .touch-feedback:active::after {
        transform: scale(0, 0);
        opacity: .3;
        transition: 0s;
    }
}
