/* ==========================================================================
   Global Styling
   ========================================================================== */
	 * {
		box-sizing: border-box;
	}

	body {
		background-color: #fff;
		max-width: 100%;
		margin: auto;
	}

	main {
		margin: 0 auto;
		padding: 2em 0;
		max-width: 1024px;
		/* Remove or comment out height: 100vh if it causes issues */
		/* height: 100vh; */
		text-align: center;
		align-items: center;
		/* Ensure space at the bottom so footer isn't right under images */
		margin-bottom: 150px;
	}

	h1 {
		font-family: "Anton", sans-serif;
		text-align: center;
		align-items: center;
		position: relative;
	}

	input::placeholder {
		color: #999;
	}

	ul {
		list-style: none;
		padding: 0;
	}

	#container {
		max-width: 1050px;
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
		gap: 15px;
		padding: 10px;
	}

	.gallery-container {
		background-color: #fff;
		margin-right: 5px;
		/* Extra bottom space so footer doesn't overlap */
		margin-bottom: 2em;
	}

	.gallery {
		display: grid;
		justify-content: center;
		grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
		grid-gap: 6px;
		padding-top: 10px;
	}

	.gallery__item {
		width: 100%;
		height: 100%;
		object-fit: cover;
		border-radius: 10px;
	}

	.title {
		background-color: #dd3f41;
		/* Create the gradient */
		background-image: linear-gradient(45deg, #f70845, #fafa6e);
		/* Set the background size and repeat properties */
		background-size: 100%;
		background-repeat: repeat;
		/* Use the text as a mask for the background */
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
		-moz-background-clip: text;
		-moz-text-fill-color: transparent;
	}

	#search {
		font-size: 17px;
		border: 2px solid rgb(168, 168, 168);
		border-radius: 6px;
		min-width: 30%;
		margin: auto;
		margin-bottom: 2%;
		padding: 12px 20% 12px 12px;
		color: rgb(91, 91, 91);
	}

	input:focus {
		outline: 2px solid orange;
	}

	img {
		flex-basis: 29.7%;
		grid-gap: 5px;
		opacity: 0.9;
		cursor: pointer;
		margin-bottom: 1.9rem;
		border-radius: 10px;
	}

	a:hover {
		opacity: 1;
	}

	.gallery img {
		max-width: 100%;
		height: auto;
	}

	figcaption {
		color: orangered;
		background-color: aliceblue;
	}

	/* Responsive adjustments */
	@media (max-width: 767px) {
		.gallery {
			width: 90%;
		}

		.gallery img {
			height: 500px;
			width: 500px;
		}

		.lb-data .lb-close {
			position: fixed;
			left: 10px;
			top: 20px;
		}

		.lb-nav a.lb-next {
			position: fixed;
			right: 35px;
			top: 0;
		}

		.lb-nav a.lb-prev {
			position: fixed;
			left: 35px;
			top: 0;
		}
	}

	@media (max-width: 480px) {
		img {
			flex-basis: 100%;
			margin-bottom: 21px;
		}

		.lightbox-content {
			width: 90%;
			margin: 20% auto;
		}
	}
