.gradient-bg {
    background: linear-gradient(135deg, #1a1a1a 0%, #000000 100%);
}

.card-blur {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
}

/* Responsive iframe container for 360 tours */
@supports (aspect-ratio: 1) {
    [style*="aspect-ratio"] {
        width: 100% !important;
        height: auto !important;
    }
}

/* Video player styling */
video {
    display: block;
    background-color: #000;
}

video::-webkit-media-controls-panel {
    background-color: rgba(0, 0, 0, 0.8);
}

video::-webkit-media-controls-play-button {
    background-color: #3b82f6;
    border-radius: 50%;
}

/* Fallback for older browsers */
.kuula-wrapper {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%; /* 16:9 ratio */
    height: 0;
    overflow: hidden;
}

.kuula-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* Mobile optimization */
@media (max-width: 640px) {
    .kuula-wrapper {
        padding-bottom: 60%; /* Adjust for smaller screens */
    }
}

/* Diagonal bounce animation */
@keyframes diagonalBounce {
    0%, 100% {
        transform: translate(0, 0);
    }
    50% {
        transform: translate(8px, -8px);
    }
}

.animate-diagonal-bounce {
    animation: diagonalBounce 1.5s infinite;
}

/* Swipe/slide animation - more intuitive */
@keyframes swipeMotion {
    0%, 100% {
        transform: translate(0, 0);
    }
    50% {
        transform: translate(16px, 16px);
    }
}

.animate-swipe {
    animation: swipeMotion 2s ease-in-out infinite;
}
