/* Squared Waffle House - Custom Styles */

/* Custom Font */
@font-face {
    font-family: 'Acumin Variable Concept';
    src: url('../fonts/AcuminVariableConcept.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Dalmatins';
    src: url('../fonts/Dalmatins.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'ArbFONTS-GE_SS_TWO';
    src: url('../fonts/ArbFONTS-GE_SS_TWO_MEDIUM_5.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

/* Utility Classes */
.text-neon {
    text-shadow: 0 0 10px rgba(255, 20, 147, 0.7), 0 0 20px rgba(255, 20, 147, 0.3);
}

.border-neon {
    box-shadow: 0 0 10px rgba(255, 20, 147, 0.5);
}

.texture-overlay {
    background-image: url("https://www.transparenttextures.com/patterns/grid-me.png");
}

/* Menu Grid - Responsive Layout */
.masonry-grid {
    display: grid;
    gap: 1.5rem;
    /* Mobile: Single column */
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
}

/* Tablet: 2 columns */
@media (min-width: 768px) {
    .masonry-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Desktop: 3 columns with masonry effect */
@media (min-width: 1024px) {
    .masonry-grid {
        grid-template-columns: repeat(3, 1fr);
        grid-auto-rows: 10px;
    }
    
    .masonry-item {
        grid-row-end: span 35;
    }
    
    .masonry-item-lg {
        grid-row-end: span 45;
    }
}

/* Mobile Menu Styles */
.mobile-menu {
    position: fixed;
    top: 0;
    right: -100%;
    width: 100%;
    height: 100vh;
    background: rgba(13, 13, 13, 0.98);
    backdrop-filter: blur(20px);
    transition: right 0.3s ease-in-out;
    z-index: 60;
    overflow-y: auto;
}

.mobile-menu.active {
    right: 0;
}

.mobile-menu-content {
    padding: 6rem 2rem 2rem;
}

.mobile-menu-close {
    position: absolute;
    top: 2rem;
    right: 2rem;
    font-size: 2rem;
    cursor: pointer;
    color: #fff;
}

.mobile-menu-links {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-bottom: 3rem;
}

.mobile-menu-links a {
    font-size: 1.5rem;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    color: #94a3b8;
    transition: color 0.3s ease;
    font-family: 'Syncopate', sans-serif;
}

.mobile-menu-links a:hover,
.mobile-menu-links a:active {
    color: #FF1493;
}

/* Menu Card Responsive Adjustments */
.menu-card {
    min-height: 300px;
}

/* Mobile specific menu card adjustments */
@media (max-width: 767px) {
    .menu-card {
        min-height: auto;
    }
    
    .masonry-item,
    .masonry-item-lg {
        grid-row-end: auto !important;
    }
}

/* Tablet specific menu card adjustments */
@media (min-width: 768px) and (max-width: 1023px) {
    .masonry-item,
    .masonry-item-lg {
        grid-row-end: auto !important;
        min-height: 350px;
    }
}

/* Logo Styling */
.logo-icon {
    transition: opacity 0.3s ease;
}

/* Logo fallback - if image doesn't load, show text */
.logo-icon:not([src]),
.logo-icon[src=""] {
    display: none;
}

/* Smooth Scrolling */
html.scroll-smooth {
    scroll-behavior: smooth;
}

/* Hero Section Responsive Text */
@media (max-width: 640px) {
    .hero-title {
        font-size: 3.5rem !important;
    }
}

/* Navigation Responsive */
@media (max-width: 640px) {
    nav .logo-text {
        font-size: 1.25rem;
    }
}
