.oo-campaign-page {
	--oo-campaign-ink: #001f30;
	--oo-campaign-aqua: #00ecea;
	--oo-campaign-green: #04aa9e;
	font-family: "Recursive", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.oo-campaign-page .oo-campaign-skip-link {
	background: #fff;
	color: var(--oo-campaign-ink);
	left: 1rem;
	padding: .75rem 1rem;
	position: fixed;
	top: -10rem;
	z-index: 100001;
}

.oo-campaign-page .oo-campaign-skip-link:focus { top: 1rem; }

.oo-campaign-page .oo-campaign-header {
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	background: rgba(255, 255, 255, .96);
	border-bottom: 1px solid rgba(0, 31, 48, .2);
	position: sticky;
	top: 0;
	z-index: 1000;
}

.oo-campaign-page.admin-bar .oo-campaign-header { top: 32px; }

.oo-campaign-page .oo-campaign-header__inner {
	align-items: center;
	display: flex;
	gap: 1.5rem;
	justify-content: space-between;
	min-height: 5rem;
	padding: 0 1rem;
}

.oo-campaign-page .oo-campaign-brand { align-items: center; display: flex; flex: 0 1 auto; gap: .875rem; min-width: 0; }
.oo-campaign-page .oo-campaign-brand a { color: var(--oo-campaign-ink); font-weight: 700; text-decoration: none; }
.oo-campaign-page .oo-campaign-brand__logo { flex: 0 0 auto; letter-spacing: .05em; }
.oo-campaign-page .oo-campaign-brand__image { display: block; height: 2rem; object-fit: contain; width: auto; }
.oo-campaign-page .oo-campaign-brand__divider { background: var(--oo-campaign-aqua); flex: 0 0 2px; height: 1.875rem; width: 2px; }
.oo-campaign-page .oo-campaign-brand__campaign { overflow: hidden; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.oo-campaign-page .oo-campaign-nav-toggle { background: transparent; border: 2px solid var(--oo-campaign-ink); color: var(--oo-campaign-ink); font: inherit; font-weight: 700; padding: .65rem .9rem; }
.oo-campaign-page .oo-campaign-nav { background: rgba(255, 255, 255, .98); border-bottom: 1px solid rgba(0, 31, 48, .2); box-shadow: 0 1rem 2rem rgba(0,31,48,.12); display: none; left: 0; padding: 1rem; position: absolute; right: 0; top: 100%; }
.oo-campaign-page .oo-campaign-nav.is-open { display: block; }
.oo-campaign-page .oo-campaign-nav__links { list-style: none; margin: 0 0 1rem; padding: 0; }
.oo-campaign-page .oo-campaign-nav__links a { color: var(--oo-campaign-ink); display: block; font-weight: 700; padding: .65rem 0; text-decoration: none; text-decoration-thickness: 2px; text-underline-offset: .35rem; }
.oo-campaign-page .oo-campaign-nav__links a:hover,
.oo-campaign-page .oo-campaign-nav__links a:focus-visible { text-decoration: underline; text-decoration-color: var(--oo-campaign-aqua); }
.oo-campaign-page .oo-campaign-nav__cta.mon-button { align-items: center; background: var(--oo-campaign-aqua); border: 2px solid var(--oo-campaign-aqua); color: var(--oo-campaign-ink); display: inline-flex; font-weight: 700; gap: .75rem; justify-content: center; margin-bottom: 0; min-height: 3.125rem; padding: .75rem 1.25rem 0.75rem 1.5rem; }
.oo-campaign-page .oo-campaign-nav__cta.mon-button::after { animation: none; content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M1 10.001H19M19 10.001L10.5 1.50098M19 10.001L10.5 18.501' stroke='%23122933' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); display: block; flex: 0 0 1.25rem; height: 1.25rem; line-height: 0; position: static; right: auto; top: auto; transform: none; width: 1.25rem; }
.oo-campaign-page .oo-campaign-nav__cta.mon-button:hover,
.oo-campaign-page .oo-campaign-nav__cta.mon-button:focus-visible { background: #fff; color: var(--oo-campaign-ink); }
.oo-campaign-page .oo-campaign-main { min-height: 50vh; overflow: clip; }
.oo-campaign-page .oo-campaign-resources-heading,
.oo-campaign-page .oo-campaign-resources-intro { margin-left: auto; margin-right: auto; max-width: 75rem; padding-left: 1rem; padding-right: 1rem; }
.oo-campaign-page .oo-campaign-resources-heading { margin-top: clamp(3rem, 8vw, 7rem); }

@media (max-width: 782px) {
	.oo-campaign-page.admin-bar .oo-campaign-header { top: 46px; }
}

@media (max-width: 620px) {
	.oo-campaign-page .oo-campaign-header__inner { min-height: 4.25rem; }
	.oo-campaign-page .oo-campaign-brand { gap: .65rem; }
	.oo-campaign-page .oo-campaign-brand__logo,
	.oo-campaign-page .oo-campaign-brand__campaign { font-size: .875rem; }
	.oo-campaign-page .oo-campaign-brand__divider { height: 1.5rem; }
}

@media (min-width: 1024px) {
	.oo-campaign-page .oo-campaign-nav-toggle { display: none; }
	.oo-campaign-page .oo-campaign-nav { align-items: center; background: transparent; border: 0; box-shadow: none; display: flex; gap: 1.625rem; padding: 0; position: static; }
	.oo-campaign-page .oo-campaign-nav__links { align-items: center; display: flex; gap: 1.625rem; margin: 0; }
	.oo-campaign-page .oo-campaign-nav__links a { padding: .5rem 0; }
}

/* Campaign presentation for the agency Repeater Icon block. Add the
 * `oo-campaign-challenges` additional CSS class in the block editor. */
.oo-campaign-page .repeater-icon.oo-campaign-challenges .repeater-icon__grid {
	align-items: stretch;
	grid-row-gap: 1.5rem;
}

.oo-campaign-page .repeater-icon.oo-campaign-challenges .repeater-icon__item {
	align-items: center;
	background: #b9d8f4;
	border-top: .5rem solid var(--oo-campaign-aqua);
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: flex-start;
	padding: clamp(1.5rem, 3vw, 2.5rem);
	text-align: center;
}

.oo-campaign-page .repeater-icon.oo-campaign-challenges .repeater-icon__item:nth-child(2) {
	background: #2d625e;
	color: #fff;
}

.oo-campaign-page .repeater-icon.oo-campaign-challenges .repeater-icon__item:nth-child(3) {
	background: #164a70;
	color: #fff;
}

.oo-campaign-page .repeater-icon.oo-campaign-challenges .repeater-icon__item:nth-child(2) .repeater-icon__item-heading,
.oo-campaign-page .repeater-icon.oo-campaign-challenges .repeater-icon__item:nth-child(2) .repeater-icon__text,
.oo-campaign-page .repeater-icon.oo-campaign-challenges .repeater-icon__item:nth-child(3) .repeater-icon__item-heading,
.oo-campaign-page .repeater-icon.oo-campaign-challenges .repeater-icon__item:nth-child(3) .repeater-icon__text {
	color: inherit;
}

.oo-campaign-page .repeater-icon.oo-campaign-challenges .repeater-icon__image,
.oo-campaign-page .repeater-icon.oo-campaign-challenges .repeater-icon__item-heading,
.oo-campaign-page .repeater-icon.oo-campaign-challenges .repeater-icon__text {
	text-align: center;
}

.oo-campaign-page .repeater-icon.oo-campaign-challenges .repeater-icon__image {
	margin-left: auto;
	margin-right: auto;
}

.oo-campaign-page .repeater-icon.oo-campaign-challenges .repeater-icon__icon {
	height: var(--oo-campaign-challenge-icon-height, 6rem);
	max-height: none;
	max-width: 100%;
	width: auto;
}

/* Compact campaign presentation for the agency Testimonial block. Add the
 * `oo-campaign-testimonial-compact` additional CSS class in the editor. */
.oo-campaign-page .testimonial.oo-campaign-testimonial-compact {
	display: block;
	min-height: 0;
	overflow: hidden;
	padding: clamp(3rem, 7vw, 6rem) 0;
}

.oo-campaign-page .testimonial.oo-campaign-testimonial-compact .mon-row {
	position: relative;
	z-index: 1;
}

.oo-campaign-page .testimonial.oo-campaign-testimonial-compact .testimonial__grid {
	margin-left: auto;
	margin-right: 0;
	max-width: 56%;
	padding: 0;
}

.oo-campaign-page .testimonial.oo-campaign-testimonial-compact .testimonial__card {
	padding: clamp(2rem, 5vw, 4rem);
}

.oo-campaign-page .testimonial.oo-campaign-testimonial-compact .testimonial__logo-image {
	height: auto;
	max-height: 7rem;
	max-width: min(18rem, 100%);
	object-fit: contain;
	width: auto;
}

.oo-campaign-page .testimonial.oo-campaign-testimonial-compact .testimonial__background {
	bottom: 0;
	left: 0;
	position: absolute;
	top: 0;
	width: 50%;
	z-index: 0;
}

.oo-campaign-page .testimonial.oo-campaign-testimonial-compact .testimonial__background-image {
	height: 100%;
	object-fit: cover;
	position: static;
	width: 100%;
}

@media (max-width: 767px) {
	.oo-campaign-page .testimonial.oo-campaign-testimonial-compact {
		padding-top: 0;
	}

	.oo-campaign-page .testimonial.oo-campaign-testimonial-compact .testimonial__background {
		aspect-ratio: 16 / 9;
		position: relative;
		width: 100%;
	}

	.oo-campaign-page .testimonial.oo-campaign-testimonial-compact .testimonial__grid {
		max-width: 100%;
	}
}
