@font-face {
	font-family: zodiak-bold;
	src: url(fonts/Zodiak_Complete/Fonts/OTF/Zodiak-Bold.otf);
}

@font-face {
	font-family: zodiak;
	src: url(fonts/Zodiak_Complete/Fonts/OTF/Zodiak-Regular.otf);
}

@font-face {
	font-family: amulya;
	src: url(fonts/Amulya_Complete/Fonts/OTF/Amulya-Regular.otf);
}

@font-face {
	font-family: amulya-light;
	src: url(fonts/Amulya_Complete/Fonts/OTF/Amulya-Light.otf);
}

body {
		margin: 0;
		padding: 0;
		background-color: white;
}

header {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 20px;
	.logo {
		margin-top: 50px;
		margin-bottom: 40px;
	}
}

header.bar {
	justify-content: start;
	font-size: 10px;
	padding: 5px 20px;

	.logo {
		margin-top: 10px;
		margin-bottom: 10px;
	}
}

.logo {
	display: inline-block;
	color: black;
	text-decoration: none;

	.city {
		font-family: zodiak-bold;
		display: block;
		font-size: 3em;
		letter-spacing: 0.25em;
		line-height: 0.9;
		margin-right: -0.25em;
	}

	.steakbox {
		font-family: zodiak;
		display: flex;
		align-items: center;
		justify-content: center;
		margin-top: 10px;

		.line {
			height: 2px;
			background-color: black;
			flex-grow: 1;
		}

		.steaks {
			font-size: 1em;
			letter-spacing: 0.5em;
			padding: 0 1em;
			margin-right: -0.5em;
		}
	}
}

.image-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
	padding: 10px;
	max-width: 1200px;
	margin: 0 auto;
}

.review {
	max-width: 1200px;
	margin: 0 auto;
	padding: 10px;
	
	.header-image {
		width: 100%;
	}

	h1, h2, h3 {
		font-family: zodiak;
		letter-spacing: 0.04em; 
		text-align: center;
		margin: 0;
		text-transform: uppercase;
	}
	
	p, a {
		font-family: amulya;
		margin-top: 0;
		color: black;
	}
}

.grid-item-wrapper {
	position: relative;
	aspect-ratio: 1 / 1; 
}

.grid-item {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.grid-item-wrapper::after {
	font-family: amulya-light;
	content: attr(data-name);
	position: absolute;
	top: 15%; 
	left: 0;
	width: 100%;
	color: white;
	text-align: center;
	font-size: 2.5em; 
	line-height: 1.2;
	text-shadow: 0 0 5px rgba(0, 0, 0, 0.8);
	z-index: 10;
	overflow-wrap: break-word;
	word-break: break-word;
}


footer {
	font-family: amulya;
	max-width: 1000px; 
	margin: 40px auto 20px;
	padding: 0 20px;
	text-align: center;

	.line {
		height: 2px;
		background-color: black;
		width: 100%;
		margin-bottom: 20px;
	}

	.links {
		display: flex;
		justify-content: center;
		gap: 2rem;
		flex-wrap: wrap;

		a {
			color: black;
			text-decoration: none;
			font-size: 20px;
			text-transform: uppercase;
			letter-spacing: 3px;
			
			&:hover {
				text-decoration: underline;
			}
		}
	}
}




@media (min-width: 768px) {
	.image-grid {
		grid-template-columns: 1fr 1fr 1fr;
	}
}
