.photo-archive .intro-heading {
	padding: 0 0 20px 0;
}


/* ------------------------------------------------ */
/* GRID LAYOUT */
/* ------------------------------------------------ */

.photo-archive-landing,
.photo-archive-landing-year {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
	padding: 0 0 20px 0;
}

@media only screen and (max-width: 1100px) {

	.photo-archive-landing,
	.photo-archive-landing-year {
		grid-template-columns: repeat(3, 1fr);
	}

}

@media only screen and (max-width: 800px) {

	.photo-archive-landing,
	.photo-archive-landing-year {
		grid-template-columns: repeat(2, 1fr);
	}

}

@media only screen and (max-width: 500px) {

	.photo-archive-landing,
	.photo-archive-landing-year {
		grid-template-columns: 1fr;
	}

}


/* ------------------------------------------------ */
/* CARD STYLE */
/* ------------------------------------------------ */

.photo-archive-landing .year,
.photo-archive-landing-year .year {
	background: #ffffff;
	border-radius: 8px;
	overflow: hidden;
	text-align: center;
	box-shadow: 0 3px 10px rgba(0,0,0,0.08);
	transition: transform .2s ease, box-shadow .2s ease;
}

.photo-archive-landing .year:hover,
.photo-archive-landing-year .year:hover {
	transform: translateY(-4px);
	box-shadow: 0 6px 18px rgba(0,0,0,0.12);
}


/* ------------------------------------------------ */
/* CARD IMAGE */
/* ------------------------------------------------ */

.photo-archive-landing img,
.photo-archive-landing-year img {
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}


/* ------------------------------------------------ */
/* CARD TITLE BAR */
/* ------------------------------------------------ */

.photo-archive-landing h2,
.photo-archive-landing-year h2 {
	margin: 0;
	padding: 14px 10px;
	font-size: 16px;
	text-align: center;
	background-color: #007caa;
}

.photo-archive-landing h2 a,
.photo-archive-landing-year h2 a {
	color: #ffffff;
	text-decoration: none;
	display: block;
}

.photo-archive-landing .year:hover h2,
.photo-archive-landing-year .year:hover h2 {
	background-color: #1f6a89;
}


/* ------------------------------------------------ */
/* YEAR PAGE INTRO */
/* ------------------------------------------------ */

.photo-archive-year-intro {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	padding: 0 0 25px 0;
}

.photo-archive-year-intro a {
	display: inline-block;
	background-color: #007caa;
	color: white !important;
	font-size: 16px;
	padding: 6px 25px;
	border-radius: 10px;
	text-align: center;
}

.photo-archive-year-intro a:hover {
	background-color: #f9a64a;
}

@media only screen and (max-width: 800px) {

	.photo-archive-year-intro {
		display: block;
		text-align: center;
		padding-bottom: 40px;
	}

}


/* ------------------------------------------------ */
/* SINGLE ALBUM PAGE */
/* ------------------------------------------------ */

.single-photo-album #et-main-area #main-content {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.album-single-intro {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 55px;
	margin-bottom: 30px;
	text-align: left;
}

.album-single-intro .heading {
	margin: 0;
}

.album-single-links {
	display: flex;
	gap: 15px;
}

.album-single-intro a.link {
	background-color: #007caa;
	color: #fff !important;
	font-size: 16px;
	padding: 8px 20px;
	border-radius: 10px;
	text-align: center;
	display: inline-block;
}

.album-single-intro a.link:hover {
	background-color: #f9a64a;
}

.album-single-content {
	margin-top: 30px;
	padding-bottom: 30px;
}

.long-description {
	padding: 30px;
}


/* ------------------------------------------------ */
/* MEDIA BLOCKS */
/* ------------------------------------------------ */

.album-media-block {
	border: 1px solid #e6e6e6;
	border-radius: 6px;
	padding: 30px 35px 35px 35px;
	margin-bottom: 40px;
	background: #fafafa;
}


/* ------------------------------------------------ */
/* MEDIA INSTRUCTION */
/* ------------------------------------------------ */

.media-instruction {
	text-align: center;
	font-size: 15px;
	color: #555;
	margin-bottom: 22px;
	padding: 6px 0 10px 0;
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
	font-style: italic;
	line-height: 1.5;
}


/* ------------------------------------------------ */
/* EMBEDS */
/* ------------------------------------------------ */

.youtube-embed-code,
.flickr-embed-code {
	text-align: center;
	margin-top: 10px;
}


/* ------------------------------------------------ */
/* RESPONSIVE YOUTUBE EMBED */
/* ------------------------------------------------ */

.youtube-embed-code {
	position: relative;
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
	padding-bottom: 56.25%;
	height: 0;
}

.youtube-embed-code iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
}


/* ------------------------------------------------ */
/* FLICKR */
/* ------------------------------------------------ */

.flickr-embed-code iframe,
.flickr-embed-code img {
	max-width: 100%;
	margin: 0 auto;
}


/* ------------------------------------------------ */
/* MOBILE */
/* ------------------------------------------------ */

@media only screen and (max-width: 800px) {

	.album-single-intro {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.album-single-links {
		margin-top: 15px;
	}

}