.oneocean-image-gallery .block__heading-row,
.oneocean-modal .block__heading-row {
	margin-bottom: 2rem;
}

.oneocean-image-gallery__grid {
	display: grid;
	gap: 1rem;
}

.oneocean-image-gallery__grid--2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.oneocean-image-gallery__grid--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.oneocean-image-gallery__grid--4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.oneocean-image-gallery__grid--auto {
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.oneocean-image-gallery__item {
	display: block;
}

.oneocean-image-gallery__item img {
	display: block;
	width: 100%;
	height: auto;
}

.oneocean-image-gallery__caption {
	color: #829491;
	font-size: 0.8rem;
	padding-top: 0.75rem;
}

.glightbox-wheatley .ginner-container {
	position: relative;
}

.glightbox-wheatley .gslide-media {
	position: relative;
	overflow: hidden;
}

.glightbox-wheatley .gslide-description {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 3;
	width: 100%;
	max-width: none;
	margin: 0;
	flex: none;
	background: linear-gradient(180deg, rgba(10, 16, 20, 0) 0%, rgba(10, 16, 20, 0.72) 52%, rgba(10, 16, 20, 0.92) 100%);
	pointer-events: none;
}

.glightbox-wheatley .gdesc-inner {
	padding: 1.1rem 1.25rem 1rem;
}

.glightbox-wheatley .gslide-title {
	margin: 0;
	color: #f5f7f8;
	font-family: inherit;
	font-size: 0.9rem;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: 0.01em;
	text-wrap: balance;
}

.glightbox-wheatley .gslide-desc {
	color: #d6dde0;
	font-family: inherit;
	font-size: 0.84rem;
	line-height: 1.5;
}

.glightbox-wheatley .gslide-desc a,
.glightbox-wheatley .gslide-title a {
	color: inherit;
}

.oneocean-modal__shell {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: block;
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	transition: opacity 200ms ease, visibility 0s linear 200ms;
}

.oneocean-modal__shell.is-entering,
.oneocean-modal__shell.is-open,
.oneocean-modal__shell.is-leaving {
	visibility: visible;
	transition-delay: 0s;
}

.oneocean-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(18, 41, 51, 0.7);
	opacity: 0;
	transition: opacity 200ms ease;
}

.oneocean-modal__dialog {
	position: relative;
	z-index: 1;
	max-width: 48rem;
	margin: 5vh auto;
	max-height: 90vh;
	overflow: auto;
	background: #fff;
	padding: 2rem;
	box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.2);
	opacity: 0;
	transform: translateY(10px) scale(0.985);
	transition: opacity 200ms ease, transform 200ms cubic-bezier(0.22, 1, 0.36, 1);
	will-change: opacity, transform;
}

.oneocean-modal__shell.is-entering,
.oneocean-modal__shell.is-open {
	opacity: 1;
	pointer-events: auto;
}

.oneocean-modal__shell.is-entering .oneocean-modal__backdrop,
.oneocean-modal__shell.is-open .oneocean-modal__backdrop {
	opacity: 1;
}

.oneocean-modal__shell.is-entering .oneocean-modal__dialog,
.oneocean-modal__shell.is-open .oneocean-modal__dialog {
	opacity: 1;
	transform: translateY(0) scale(1);
}

.oneocean-modal__shell.is-leaving {
	opacity: 0;
	pointer-events: none;
}

.oneocean-modal__shell.is-leaving .oneocean-modal__backdrop {
	opacity: 0;
}

.oneocean-modal__shell.is-leaving .oneocean-modal__dialog {
	opacity: 0;
	transform: translateY(8px) scale(0.99);
}

.oneocean-modal__dialog--wide {
	max-width: 72rem;
}

.oneocean-modal__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.5rem;
}

.oneocean-modal__title {
	margin-bottom: 0;
}

.oneocean-modal__close {
	font-size: 2rem;
	line-height: 1;
	color: #122933;
}

body.oneocean-modal-open {
	overflow: hidden;
}

@media (max-width: 767px) {
	.oneocean-image-gallery__grid--2,
	.oneocean-image-gallery__grid--3,
	.oneocean-image-gallery__grid--4 {
		grid-template-columns: 1fr;
	}

	.glightbox-wheatley .gdesc-inner {
		padding: 0.9rem 1rem 0.95rem;
	}

	.glightbox-wheatley .gslide-title {
		font-size: 0.85rem;
		line-height: 1.45;
	}

	.oneocean-modal__dialog {
		margin: 1rem;
		padding: 1.5rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.oneocean-modal__shell,
	.oneocean-modal__backdrop,
	.oneocean-modal__dialog {
		transition: none;
	}

	.oneocean-modal__dialog {
		transform: none;
	}
}
