        .reveal {
            opacity: 0;
            transform: translateY(20px);
            transition: all 0.6s ease-out;
        }

        .reveal.active {
            opacity: 1;
            transform: translateY(0);
        }

        .nav-glass {
            background: rgba(255, 255, 255, 0.9);
            backdrop-filter: blur(10px);
            border-bottom: 1px solid rgba(58, 125, 126, 0.1);
        }

        .btn-primary {
            background-color: #3A7D7E;
            transition: all 0.3s ease;
        }

        .btn-primary:hover {
            background-color: #2d6162;
            transform: translateY(-2px);
            box-shadow: 0 10px 20px rgba(58, 125, 126, 0.2);
        }

        .card-shadow {
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
            border: 1px solid rgba(58, 125, 126, 0.05);
        }

        .logo-font {
            font-family: 'Playfair Display', serif;
            font-style: italic;
        }

        .gallery-item:hover img,
        .offer-image-container:hover img {
            transform: scale(1.05);
        }

        .calendar-container {
            position: relative;
            padding-bottom: 75%;
            height: 0;
            overflow: hidden;
            border-radius: 2rem;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
        }

        .calendar-container iframe {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            border: 0;
        }

        .offer-image-container {
            width: 100%;
            height: 200px;
            overflow: hidden;
            border-radius: 1.5rem;
            margin-bottom: 1.5rem;
        }

        #mobile-menu {
            transition: transform 0.3s ease-in-out;
            transform: translateX(100%);
        }

        #mobile-menu.open {
            transform: translateX(0);
        }

        body.menu-open {
            overflow: hidden;
        }