
* {
				margin: 0;
				padding: 0;
				box-sizing: border-box;
			}

			.gallery-container {
				display: flex;
				padding: 20px;
				max-width: 1200px;
				margin: 0 auto;
			}

			.featured-image {
				width: 50%;
			}

			.featured-image img {
				width: 100%;
				height: 100%;
				object-fit: cover;
				border-radius: 8px;
				cursor: pointer;
				transition: transform 0.3s ease;
			}

			.featured-image img:hover {
				transform: scale(1.02);
			}

			.grid-container {
				width: 50%;
				display: grid;
				overflow: hidden;
			}

			.grid-item {
				position: relative;
			}

			.grid-item.mg-hidden {
				display: none;
			}

			.grid-item img {
				width: 100%;
				height: 100%;
				object-fit: cover;
				border-radius: 8px;
				cursor: pointer;
				transition: transform 0.3s ease;
			}

			.grid-item img:hover {
				transform: scale(1.02);
			}

			.more-overlay {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				background: rgba(0, 0, 0, 0.5);
				display: flex;
				align-items: center;
				justify-content: center;
				color: white;
				font-size: 24px;
				cursor: pointer;
				border-radius: 8px;
				transition: background-color 0.3s ease;
			}

			.more-overlay:hover {
				background: rgba(0, 0, 0, 0.7);
			}

			.lightbox {
				display: none;
				position: fixed;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				background: rgba(0, 0, 0, 0.9);
				z-index: 1000;
				justify-content: center;
				align-items: center;
				opacity: 0;
				transition: opacity 0.3s ease-in-out;
			}

			.lightbox.mg-active {
				opacity: 1;
			}

			.lightbox-content {
				position: relative;
				max-width: 90%;
				max-height: 90vh;
				transform: scale(0.9);
				transition: transform 0.3s ease-in-out;
			}

			.lightbox.mg-active .lightbox-content {
				transform: scale(1);
			}

			.lightbox img {
				max-width: 100%;
				max-height: 90vh;
				object-fit: contain;
				border-radius: 4px;
			}

			.close-lightbox {
				position: absolute;
				top: 20px;
				right: 20px;
				color: white;
				font-size: 30px;
				cursor: pointer;
				z-index: 1001;
				transition: transform 0.3s ease;
			}

			.close-lightbox:hover {
				transform: scale(1.1);
			}

			.nav-button {
				position: absolute;
				top: 50%;
				transform: translateY(-50%);
				color: white;
				font-size: 30px;
				cursor: pointer;
				padding: 20px;
				z-index: 1001;
				transition: transform 0.3s ease, background-color 0.3s ease;
				background-color: rgba(0, 0, 0, 0.5);
				border-radius: 50%;
				width: 60px;
				height: 60px;
				display: flex;
				align-items: center;
				justify-content: center;
			}

			.nav-button:hover {
				transform: translateY(-50%) scale(1.1);
				background-color: rgba(0, 0, 0, 0.8);
			}

			.prev-button { left: 20px; }
			.next-button { right: 20px; }

			/* Responsive styles (handled by Elementor controls) */
			@media (max-width: 1024px) {
				.gallery-container {
					flex-direction: column;
					padding: 10px;
				}

				.featured-image,
				.grid-container {
					width: 100%;
					height: auto;
				}

				.grid-container {
					gap: 10px;
				}
			}

			@media (max-width: 576px) {
				.grid-container {
					gap: 10px;
				}

				.nav-button {
					padding: 10px;
					font-size: 24px;
					width: 40px;
					height: 40px;
				}

				.prev-button { left: 10px; }
				.next-button { right: 10px; }

				.close-lightbox {
					top: 10px;
					right: 10px;
					font-size: 24px;
				}
			}