/* Imagely / NextGEN — one stylesheet for every album and gallery.
   Tokens come from style.css (:root). Future galleries inherit this
   automatically; change colors/spacing here, not per gallery. */

/* -------------------------------------------------
   Photos page shell (matches About / Field / Notices)
------------------------------------------------- */
.ocma-photos-page.separate-containers .site-main .inside-article {
	padding: 0 !important;
	background: transparent;
	box-shadow: none;
}

.ocma-photos-page .entry-header {
	display: none;
}

.ocma-photos-page .site-content {
	background: var(--ocma-light-bg);
}

.ocma-photos-page .entry-content {
	max-width: 1140px;
	margin: 0 auto;
	padding: 32px 24px 56px;
}

.ocma-photos-hero h1 {
	color: #fff;
}

/* -------------------------------------------------
   Album covers — Imagely compact layout (floats / stacked
   frames). Colors and type only; do not change size or grid.
------------------------------------------------- */
.ngg-album-compactbox {
	background: #fff;
	border-color: var(--ocma-border) !important;
}

.ngg-album-compactbox:before,
.ngg-album-compactbox:after {
	border-bottom-color: var(--ocma-navy) !important;
}

.ngg-album-compactbox .Thumb {
	border-color: var(--ocma-navy) !important;
}

.ngg-album-compact h4 {
	font-family: var(--ocma-display);
	font-weight: 700;
	color: var(--ocma-navy);
}

.ngg-album-compact h4 a,
.ngg-album-desc {
	color: var(--ocma-navy) !important;
	text-decoration: none !important;
}

.ngg-album-compact h4 a:hover,
.ngg-album-compact h4 a:focus,
.ngg-album-desc:hover,
.ngg-album-desc:focus {
	color: var(--ocma-orange-dark) !important;
}

.ngg-album-gallery-image-counter {
	font-family: var(--ocma-display);
	letter-spacing: 0.04em;
	color: var(--ocma-muted);
}

.ngg-album-gallery-image-counter strong {
	color: var(--ocma-orange-dark);
}

/* Extended album template (if used later) */
.ngg-album {
	border-color: var(--ocma-border);
}

.ngg-albumtitle,
.ngg-albumtitle a {
	font-family: var(--ocma-display);
	color: var(--ocma-navy);
	text-decoration: none;
}

.ngg-albumtitle a:hover,
.ngg-albumtitle a:focus {
	color: var(--ocma-orange-dark);
}

.ngg-thumbnail img {
	border-color: var(--ocma-border);
}

.ngg-thumbnail img:hover {
	background-color: var(--ocma-sky);
	border-color: var(--ocma-orange);
}

/* Imagely “default-view” compact cards, if that template is on */
.ngg-albumoverview.default-view .ngg-album-compact {
	border-color: var(--ocma-border);
	box-shadow: 0 8px 20px rgba(12, 31, 63, 0.08);
}

.ngg-albumoverview.default-view .ngg-album-compact h4 .ngg-album-desc {
	font-family: var(--ocma-display);
	color: var(--ocma-navy);
}

/* -------------------------------------------------
   Breadcrumbs (inside an album / gallery)
------------------------------------------------- */
.ngg-breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px;
	list-style: none;
	margin: 0 0 24px !important;
	padding: 0 !important;
	font-family: var(--ocma-display);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.ngg-breadcrumb {
	color: var(--ocma-muted);
}

.ngg-breadcrumb a {
	color: var(--ocma-navy);
	text-decoration: none;
	border-bottom: 2px solid var(--ocma-orange);
}

.ngg-breadcrumb a:hover,
.ngg-breadcrumb a:focus {
	color: var(--ocma-orange-dark);
}

.ngg-breadcrumb-divisor {
	color: var(--ocma-orange);
	font-weight: 400;
	letter-spacing: 0;
}

/* -------------------------------------------------
   Gallery thumbnail grid
------------------------------------------------- */
.ngg-galleryoverview {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
	gap: 14px;
	margin: 0;
	padding: 0;
	width: 100% !important;
}

.ngg-gallery-thumbnail-box {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

.ngg-gallery-thumbnail {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: var(--ocma-navy-dark);
	border-radius: var(--ocma-radius);
	overflow: hidden;
	box-shadow: 0 8px 20px rgba(12, 31, 63, 0.08);
	aspect-ratio: 3 / 2;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.ngg-gallery-thumbnail:hover {
	transform: translateY(-3px);
	box-shadow: 0 16px 28px rgba(12, 31, 63, 0.16);
}

.ngg-gallery-thumbnail a {
	display: block;
	height: 100%;
}

.ngg-gallery-thumbnail img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	border: 0 !important;
	margin: 0 !important;
	transition: transform 0.35s ease, opacity 0.2s ease;
}

.ngg-gallery-thumbnail:hover img {
	transform: scale(1.05);
	opacity: 0.92;
}

.ngg-galleryoverview .slideshowlink {
	grid-column: 1 / -1;
	margin: 8px 0 0;
	text-align: left;
}

.ngg-galleryoverview .slideshowlink a,
a.slideshowlink {
	display: inline-block;
	font-family: var(--ocma-display);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	text-decoration: none;
	color: #fff;
	background: var(--ocma-orange);
	border-radius: var(--ocma-radius);
	padding: 10px 18px;
	transition: background-color 0.15s ease, transform 0.15s ease;
}

.ngg-galleryoverview .slideshowlink a:hover,
.ngg-galleryoverview .slideshowlink a:focus,
a.slideshowlink:hover,
a.slideshowlink:focus {
	background: var(--ocma-orange-dark);
	color: #fff;
}

/* Pagination */
.ngg-navigation {
	grid-column: 1 / -1;
	margin: 12px 0 0 !important;
	font-family: var(--ocma-display);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ngg-navigation a,
.ngg-navigation span {
	display: inline-block;
	margin: 0 4px 8px 0;
	padding: 8px 12px;
	border-radius: var(--ocma-radius);
	text-decoration: none;
	color: var(--ocma-navy);
	background: #fff;
	border: 1px solid var(--ocma-border);
}

.ngg-navigation a:hover,
.ngg-navigation a:focus {
	background: var(--ocma-navy);
	border-color: var(--ocma-navy);
	color: #fff;
}

.ngg-navigation span.current {
	background: var(--ocma-orange);
	border-color: var(--ocma-orange);
	color: #fff;
}

/* -------------------------------------------------
   Simple Lightbox (Imagely default)
------------------------------------------------- */
.sl-overlay {
	background: var(--ocma-navy-dark) !important;
	opacity: 0.94 !important;
}

.sl-wrapper .sl-close,
.sl-wrapper .sl-navigation button {
	color: #f4c58a !important;
}

.sl-wrapper .sl-close:hover,
.sl-wrapper .sl-navigation button:hover {
	color: var(--ocma-orange) !important;
}

.sl-wrapper .sl-counter,
.sl-wrapper .sl-caption {
	font-family: var(--ocma-display);
	letter-spacing: 0.08em;
	color: #fff;
}

/* -------------------------------------------------
   Mobile
------------------------------------------------- */
@media (max-width: 781px) {
	.ocma-photos-page .entry-content {
		padding: 24px 18px 40px;
	}

	.ngg-galleryoverview {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}
}
