.elementor-6856 .elementor-element.elementor-element-b9374d2{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}/* Start custom CSS for html, class: .elementor-element-8066503 *//* Menu Section Custom Styles */
.menu-section {
    padding: 60px 0;
    background-color: #f5f5f5;
}

.menu-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

.menu-item {
    background-color: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 3px 10px rgba(0,0,0,0.05);
    display: flex;
    flex-direction: column;
    min-height: 350px; /* Consistent minimum height for all menu items */
    max-width: 400px; /* Cap maximum width for uniformity */
    margin: 0 auto; /* Center items in grid cells */
}

.menu-image {
    width: 100%;
    height: 200px; /* Fixed height for all images */
    object-fit: cover; /* Crop images to fit without distortion */
    aspect-ratio: 2/1; /* Enforce 2:1 aspect ratio for consistency */
    flex-shrink: 0; /* Prevent image from shrinking */
    display: block; /* Ensure image behaves as a block element */
    background-color: #f0f0f0; /* Fallback background if image fails to load */
}

.menu-content {
    padding: 20px;
    flex-grow: 1; /* Allow content to fill remaining space */
    display: flex;
    flex-direction: column;
    justify-content: space-between; /* Ensure consistent content spacing */
}

.menu-title {
    font-size: 20px;
    color: #008080;
    margin-bottom: 10px;
}

.menu-description {
    color: #666;
    margin-bottom: 15px;
    flex-grow: 1; /* Ensure description takes available space */
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .menu-item {
        max-width: 100%; /* Allow full width on smaller screens */
        min-height: 300px; /* Slightly reduce height for mobile */
    }
    
    .menu-image {
        height: 180px; /* Slightly smaller height for mobile */
        aspect-ratio: 2/1;
    }
}/* End custom CSS */