@import './variables.scss'; .execomm-section { padding-block: 8rem; padding-inline: 2.81rem; width: 100%; max-width: 1800px; margin: 0 auto; min-height: 100vh; h1 { text-align: center; color: $primary; font-size: 3rem; font-weight: 900; margin-bottom: 3rem; } .banner-container { width: 100%; margin-bottom: 4rem; border-radius: 1.5rem; overflow: hidden; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); img { width: 100%; height: auto; /* Allows the image to scale naturally based on its native aspect ratio */ display: block; } } .photo-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2rem; .photo-card { width: 100%; border-radius: 1rem; overflow: hidden; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); transition: transform 0.3s ease; &:hover { transform: translateY(-5px); } img { width: 100%; height: auto; aspect-ratio: 1 / 1; /* CHANGED: Forces the images to be perfectly square */ object-fit: cover; display: block; } } } } /* --- Responsive Adjustments --- */ @media screen and (max-width: 1024px) { .execomm-section { .photo-grid { grid-template-columns: repeat(2, 1fr); gap: 1.5rem; } } } @media screen and (max-width: 768px) { .execomm-section { padding-top: 7rem; padding-bottom: 4rem; padding-inline: 1rem; h1 { font-size: 2rem; margin-bottom: 2rem; } .banner-container { margin-bottom: 2rem; border-radius: 1rem; } } } @media screen and (max-width: 480px) { .execomm-section { .photo-grid { grid-template-columns: repeat(1, 1fr); gap: 1.5rem; } } }