/* Page Transition Animation Styles */
.page-transition {
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    background-color: rgba(248, 241, 234, 0.9);
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.8s ease, visibility 0.8s ease;
}

.page-transition.show {
    opacity: 1;
    visibility: visible;
}

.page-transition-logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: 'Playfair Display', serif;
    font-size: 2.2rem;
    font-weight: 700;
    color: #e83e8c;
}

/* Enhanced transitions */
.fade-in-up {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

.fade-in-up.show {
    opacity: 1;
    transform: translateY(0);
}

/* Enhanced hover effects */
.nav-link,
.btn,
.footer-links a {
    transition: all 0.5s ease;
}

.nav-link:hover,
.footer-links a:hover {
    opacity: 0.8;
    transform: translateY(-2px);
}

.btn:hover {
    opacity: 0.9;
    transform: translateY(-3px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Image hover effects */
.product-card-img {
    transition: all 1.2s cubic-bezier(0.4, 0, 0.2, 1);
    overflow: hidden;
}

.product-card:hover .product-card-img {
    opacity: 0.9;
    transform: scale(1.05);
}

/* Card scaling effect */
.card {
    transition: transform 1.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.card:hover {
    transform: scale(1.03);
}

/* Logo scaling effect */
.logo-maskot-navbar {
    transition: transform 1.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.logo-maskot-navbar:hover {
    transform: scale(1.1);
}
