body {
    font-family: 'Arial', sans-serif; /* Or the font used in the image */
    margin: 0;
    padding: 0;
    overflow-x: hidden; 
    padding-top: 90px; 
}




/* Removed Header Images/Diagonal Styling as it was not part of the new banner */
/* .gallery-page-title { ... } */
/* .header-images-container { ... } */
/* .header-image { ... } */


/* Gallery Grid Styling */
.gallery-grid-section {
  
    padding-top: 40px; /* Adjusted padding-top as the banner is now above */
}

.gallery-title {
    text-align: center;
    margin-bottom: 30px;
    font-weight: bold;
    color: #343a40;
    text-transform: uppercase;
}

.gallery-item {
    border: 1px solid #ddd;
    border-radius: 5px;
    overflow: hidden;
    background-color: #fff;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.gallery-image {
    width: 100%;
    height: auto; /* Fixed height for grid consistency - adjust as needed */
    object-fit: cover; /* Crop image to fit without distorting */
}

.gallery-caption {
    padding: 10px;
    font-size: 1rem;
    color: #333;
    font-weight: 500;
}

/* --- Responsive Adjustments --- */

    .gallery-image {
    }
     .contact-info {
        margin-top: 30px; /* Add space above info block when stacked */
    }
    .contact-title {
        font-size: 1.2rem;
        padding: 8px 20px;
    }
     .contact .btn-send { /* Ensure button is full width and centered on small screens */
        width: 100%;
        text-align: center;
        padding-left: 0;
        padding-right: 0;
    }
     .contact-wrapper {
         padding: 20px; /* Smaller padding */
     }
     .contact-info h4 {
         margin-top: 15px; /* Add space above h4 in info block */
     }
}

@media (max-width: 575.98px) { /* For extra small devices */
    .gallery-image {
       
    }
     .gallery-caption {
         font-size: 0.9rem;
     }
}


