/* 
 * Responsive CSS for Ostsee Fisch Theme
 * This file contains responsive styles for different screen sizes
 */

/* Tablet Styles (768px - 1199px) */
@media (max-width: 1199px) {
    /* Layout */
    .container {
        max-width: 960px;
    }
    
    .section {
        padding: 50px 0;
    }
    
    /* Header & Navigation */
    .main-nav-items {
        display: none;
        position: absolute;
        top: 80px;
        left: 0;
        width: 100%;
        background-color: var(--color-primary);
        flex-direction: column;
        padding: 20px;
        z-index: 100;
    }
    
    .main-nav-items.active {
        display: flex;
    }
    
    .main-nav-item {
        margin: 10px 0;
    }
    
    .hamburger-menu {
        display: block;
    }
    
    /* Hero Section */
    .hero-title {
        font-size: 2.5rem;
    }
    
    .hero-subtitle {
        font-size: 1.2rem;
    }
    
    /* Product Categories */
    .product-category-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    /* Product Tiles */
    .product-tile-image {
        height: 180px;
    }
    
    /* Product Modal */
    .product-modal-content {
        margin: 40px 20px;
    }
    
    .product-modal-body {
        flex-direction: column;
    }
    
    .product-modal-image {
        flex: 0 0 100%;
        padding-right: 0;
        margin-bottom: 20px;
    }
    
    .product-modal-info {
        flex: 0 0 100%;
    }
    
    /* Footer */
    .footer-container {
        flex-direction: column;
    }
    
    .footer-info, .footer-nav, .footer-contact {
        flex: 0 0 100%;
        margin-bottom: 30px;
    }
}

/* Mobile Styles (up to 767px) */
@media (max-width: 767px) {
    /* Layout */
    .container {
        max-width: 100%;
        padding: 0 15px;
    }
    
    .section {
        padding: 40px 0;
    }
    
    /* Header */
    .site-logo img {
        max-height: 50px;
    }
    
    /* Hero Section */
    .hero-section {
        padding: 60px 0;
    }
    
    .hero-title {
        font-size: 2rem;
    }
    
    .hero-subtitle {
        font-size: 1rem;
    }
    
    /* Product Categories */
    .product-category-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    /* Product Tiles */
    .product-tile-image {
        height: 160px;
    }
    
    /* Contact Form */
    .form-row {
        margin-bottom: 15px;
    }
    
    /* Footer */
    .site-footer {
        padding: 30px 0 15px;
    }
    
    .footer-bottom {
        margin-top: 20px;
        padding-top: 15px;
    }
}

/* Small Mobile Styles (up to 480px) */
@media (max-width: 480px) {
    /* Hero Section */
    .hero-title {
        font-size: 1.8rem;
    }
    
    .hero-button {
        padding: 10px 20px;
        font-size: 14px;
    }
    
    /* Section Titles */
    .section-title {
        font-size: 1.8rem;
    }
    
    /* Product Modal */
    .product-modal-content {
        margin: 20px 10px;
    }
    
    .product-modal-header {
        padding: 10px 15px;
    }
    
    .product-modal-body {
        padding: 15px;
    }
}
