/*
 * FORESEA light mockup.
 * Keeps Idea 1's information architecture while moving the visual balance
 * toward white, pale grey and pale teal.
 */

body.idea-one {
	background: #fff;
}

.site-header {
	box-shadow: 0 1px 0 #e4ebf0;
}

.draft-hero--light {
	min-height: 520px;
	color: var(--ink);
	background:
		radial-gradient(circle at 46% 18%, rgba(2, 169, 173, .12), transparent 18%),
		linear-gradient(135deg, #fff 0%, #f7fafc 62%, #eff8f7 100%);
}

.draft-hero--light::before {
	z-index: 0;
	inset: 42px 3vw 42px 53%;
	border-radius: 40% 10px 10px 12%;
	background-position: center;
	box-shadow: 0 20px 55px rgba(8, 27, 73, .12);
}

.draft-hero--light::after {
	z-index: 1;
	inset: auto auto 20px 43%;
	width: 180px;
	height: 180px;
	border: 28px solid rgba(2, 169, 173, .08);
	border-radius: 50%;
	background: transparent;
}

.draft-hero--light .draft-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	max-width: var(--container);
	padding-right: 53%;
}

.draft-hero--light h1 {
	color: var(--navy);
	font-size: clamp(2.8rem, 4.5vw, 4.15rem);
}

.draft-hero--light h1 em,
.draft-hero--light h2 {
	color: var(--teal-dark);
}

.draft-hero--light .draft-hero__content > p:not(.breadcrumbs):not(.kicker) {
	color: var(--muted);
}

.draft-hero--light .breadcrumbs {
	color: #758397;
}

.draft-hero--light .button--outline {
	border-color: #9ba9b7;
	color: var(--navy);
}

.draft-hero--home.draft-hero--light {
	min-height: 650px;
}

.draft-hero--home.draft-hero--light::before {
	inset: 50px 3vw 50px 55%;
	border-radius: 54% 10px 10px 18%;
}

.draft-hero--home.draft-hero--light .draft-hero__content {
	padding-block: 65px 38px;
	padding-right: 52%;
}

.draft-hero--light .metrics {
	max-width: 620px;
	grid-template-columns: repeat(2, 1fr);
	color: var(--navy);
	padding-top: 36px;
}

.draft-hero--light .metrics span {
	color: var(--teal-dark);
}

.draft-hero--light .metrics small {
	color: var(--muted);
	opacity: 1;
}

.draft-hero--inner.draft-hero--light {
	min-height: 390px;
}

.draft-hero--inner.draft-hero--light::before {
	inset: 32px 4vw 32px 58%;
	border-radius: 9px;
}

.draft-hero--inner.draft-hero--light .draft-hero__content {
	padding-block: 52px;
	padding-right: 48%;
}

.draft-hero--about {
	min-height: 350px;
	color: #fff;
	background: var(--navy);
}

.draft-hero--about::before {
	background-position: 62% 38%;
}

.draft-hero--about::after {
	background: linear-gradient(90deg,rgba(3,23,51,.9) 0%,rgba(3,23,51,.76) 46%,rgba(3,23,51,.28) 100%);
}

.draft-hero--about .draft-hero__content {
	padding-block: 38px;
}

.draft-hero--about .breadcrumbs {
	margin-bottom: 12px;
	color: rgba(255,255,255,.72);
}

.draft-hero--about h1 {
	margin-bottom: .16em;
	font-size: clamp(2.65rem,4.5vw,3.8rem);
}

.draft-hero--about h2 {
	margin-bottom: .45em;
	color: #20d0c8;
	font-size: clamp(1.25rem,2vw,1.65rem);
}

.draft-hero--about .draft-hero__content > p:not(.breadcrumbs) {
	max-width: 650px;
	margin-bottom: 0;
	color: rgba(255,255,255,.88);
	font-size: 1rem;
}

.draft-hero--inner.draft-hero--services {
	min-height: 350px;
}

.draft-hero--inner.draft-hero--services::before {
	inset: 28px 4vw 28px 61%;
	border-radius: 10px;
	background-position: 70% center;
}

.draft-hero--inner.draft-hero--services::after {
	display: none;
}

.draft-hero--inner.draft-hero--services .draft-hero__content {
	padding-block: 40px;
	padding-right: 43%;
}

.draft-hero--services .breadcrumbs {
	margin-bottom: 12px;
}

.draft-hero--services h1 {
	margin-bottom: .16em;
	font-size: clamp(2.65rem,4.4vw,3.7rem);
}

.draft-hero--services h2 {
	margin-bottom: .45em;
	font-size: clamp(1.25rem,2vw,1.65rem);
}

.draft-hero--services .draft-hero__content > p:not(.breadcrumbs) {
	margin-bottom: 0;
	font-size: 1rem;
}

.services-overview {
	padding-block: 42px 62px;
}

.services-overview .filters {
	gap: 10px;
	margin-bottom: 30px;
}

.services-overview .filters button {
	min-height: 38px;
	padding: 7px 17px;
	border-radius: 6px;
	font-size: .78rem;
	font-weight: 600;
}

.services-overview .filters button:focus-visible {
	outline: 3px solid rgba(2,169,173,.28);
	outline-offset: 3px;
}

.services-overview .service-image-grid {
	align-items: stretch;
}

.services-overview .service-image-grid article {
	display: flex;
	height: 100%;
	flex-direction: column;
}

.services-overview .service-image-grid article[hidden] {
	display: none;
}

.services-overview .service-image-grid img {
	position: relative;
	z-index: 1;
	height: 188px;
	aspect-ratio: auto;
	filter: saturate(.9) contrast(.96) brightness(1.02);
}

.services-overview .service-image-grid article > div {
	position: relative;
	z-index: 2;
	min-height: 220px;
	padding: 21px;
	overflow: visible;
}

.services-overview .service-image-grid .draft-icon {
	position: relative;
	z-index: 3;
	width: 48px;
	height: 48px;
	margin-top: -45px;
	margin-bottom: 14px;
}

.services-overview .service-image-grid h2 {
	min-height: 2.5em;
	margin-bottom: .55em;
	font-size: 1.17rem;
	line-height: 1.25;
	overflow-wrap: anywhere;
}

.services-overview .service-image-grid p {
	margin-bottom: 1em;
	font-size: .84rem;
	line-height: 1.55;
}

.services-overview .impact-panel {
	grid-template-columns: .75fr 1.25fr;
	align-items: center;
	margin-top: 38px;
	padding: 38px;
}

.services-overview .impact-panel > div:first-child {
	align-self: center;
}

.services-overview .impact-panel > div:first-child h2 {
	font-size: clamp(1.9rem,2.7vw,2.35rem);
}

.services-overview .impact-point {
	min-height: 132px;
	padding: 19px;
}

.services-overview .impact-point > span {
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
}

.services-overview .impact-point > span svg {
	width: 22px;
	height: 22px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.65;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.services-final-cta .container > div > p:last-child {
	max-width: 650px;
	margin: 8px 0 0;
	color: rgba(255,255,255,.72);
}

.about-intro {
	padding-block: clamp(58px,7vw,82px);
	background: #fff !important;
}

.about-intro .two-column {
	grid-template-columns: .9fr 1.1fr;
	gap: clamp(36px,5vw,64px);
}

.about-intro h2 {
	max-width: 520px;
	font-size: clamp(1.8rem,2.7vw,2.45rem);
}

.about-intro .two-column > div > p:not(.kicker) {
	max-width: 540px;
	margin-bottom: 1em;
}

.about-intro .two-column > img {
	height: 400px;
	min-height: 0;
	object-position: 76% center;
}

.about-intro .boxed-metrics {
	margin-top: 36px;
	background: #f8fbfc;
}

.metrics .metric-icon {
	color: var(--teal-dark);
}

.metrics .metric-icon svg {
	width: 25px;
	height: 25px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.65;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.editorial-hero {
	min-height: 330px !important;
}

.editorial-hero::before {
	inset: 45px 5vw 45px 66% !important;
}

.articles-hero {
	min-height: 310px !important;
}

.articles-hero::before {
	inset: 28px 5vw 28px 62% !important;
	border-radius: 9px !important;
	background-position: 50% 42%;
}

.articles-hero::after {
	display: none;
}

.articles-hero .draft-hero__content {
	padding-block: 38px !important;
	padding-right: 45% !important;
}

.articles-hero .kicker {
	margin-bottom: 8px;
}

.articles-hero h1 {
	margin-bottom: 10px;
	font-size: clamp(2.5rem, 4.2vw, 3.75rem);
}

.articles-hero .draft-hero__content > p:not(.kicker) {
	max-width: 660px;
	margin-bottom: 0;
	font-size: 1rem;
	line-height: 1.65;
}

.articles-section {
	padding-block: 44px 70px;
	background: #fff !important;
}

.article-filters {
	gap: 10px;
	margin-bottom: 14px;
}

.article-filters a {
	display: inline-flex;
	min-height: 42px;
	padding: 8px 18px;
	border: 1px solid var(--line);
	border-radius: 7px;
	align-items: center;
	justify-content: center;
	background: #fff;
	color: var(--muted);
	font-size: .78rem;
	font-weight: 700;
	text-decoration: none;
	transition: border-color .18s, background-color .18s, color .18s;
}

.article-filters a:hover {
	border-color: rgba(2, 169, 173, .58);
	color: var(--teal-dark);
}

.article-filters a.active {
	border-color: var(--teal);
	background: var(--teal);
	color: #fff;
}

.article-filters a:focus-visible,
.article-card__link:focus-visible,
.pagination .page-numbers:focus-visible {
	outline: 3px solid rgba(2, 169, 173, .35);
	outline-offset: 3px;
}

.article-results {
	margin: 0 0 22px;
	color: #758397;
	font-size: .78rem;
}

.articles-section > .container,
.gallery-section > .container {
	transition: opacity .18s ease;
}

.articles-section.is-filtering > .container,
.gallery-section.is-filtering > .container {
	opacity: .48;
	pointer-events: none;
}

.articles-section .articles-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
	align-items: stretch;
}

.article-card {
	min-width: 0;
	height: 100%;
	border: 1px solid #dce5ea;
	border-radius: 9px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 9px 28px rgba(8, 27, 73, .045);
	transition: border-color .2s, box-shadow .2s, transform .2s;
}

.article-card:hover {
	border-color: rgba(2, 169, 173, .38);
	box-shadow: 0 16px 36px rgba(8, 27, 73, .1);
	transform: translateY(-3px);
}

.article-card__link {
	display: flex;
	height: 100%;
	flex-direction: column;
	color: inherit;
	text-decoration: none;
}

.article-card__media {
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: #eff5f7;
}

.article-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .28s ease;
}

.article-card:hover .article-card__media img {
	transform: scale(1.025);
}

.article-card__body {
	display: flex;
	min-height: 0;
	padding: 19px 19px 18px;
	flex: 1;
	flex-direction: column;
}

.article-card__category {
	color: var(--teal-dark);
	font-size: .67rem;
	font-weight: 800;
	letter-spacing: .045em;
	text-transform: uppercase;
}

.article-card h2 {
	display: -webkit-box;
	min-height: 4.05em;
	margin: 8px 0 10px;
	overflow: hidden;
	color: var(--navy);
	font-size: 1.03rem;
	line-height: 1.35;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.article-card__excerpt {
	display: -webkit-box;
	min-height: 4.8em;
	overflow: hidden;
	color: var(--muted);
	font-size: .78rem;
	line-height: 1.6;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.article-card time {
	margin-top: 18px;
	color: #8290a0;
	font-size: .68rem;
}

.article-card__read {
	margin-top: 12px;
	color: var(--teal-dark);
	font-size: .73rem;
	font-weight: 800;
	text-transform: uppercase;
}

.articles-empty {
	padding: 58px 24px;
	border: 1px solid var(--line);
	border-radius: 9px;
	text-align: center;
	background: #f7fafc;
}

.articles-empty p {
	margin-bottom: 24px;
	color: var(--muted);
}

.articles-section .pagination {
	margin-top: 42px;
}

.articles-section .nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: center;
}

.articles-section .page-numbers {
	display: inline-flex;
	min-width: 42px;
	min-height: 42px;
	padding: 8px 12px;
	border: 1px solid var(--line);
	border-radius: 6px;
	align-items: center;
	justify-content: center;
	color: var(--navy);
	font-size: .78rem;
	font-weight: 700;
	text-decoration: none;
}

.articles-section .page-numbers.current,
.articles-section a.page-numbers:hover {
	border-color: var(--teal);
	background: var(--teal);
	color: #fff;
}

.articles-cta {
	padding-block: 46px;
}

.draft-section:nth-of-type(even) {
	background: #f7fafc;
}

.expertise {
	background: #fff !important;
}

.trust-band:not(.service-cta) {
	color: var(--navy);
	background:
		radial-gradient(circle at 86% 40%, rgba(2, 169, 173, .13), transparent 25%),
		#eaf6f5;
}

.trust-band:not(.service-cta) .kicker {
	color: var(--teal-dark);
}

.trust-band:not(.service-cta) .trust-grid article {
	border-color: rgba(8, 27, 73, .14);
}

.trust-band:not(.service-cta) .trust-grid article > span {
	color: var(--teal-dark);
}

.trust-band:not(.service-cta) .trust-grid p {
	color: var(--muted);
}

.trust-band.values-section {
	padding-block: 48px;
	border-top: 18px solid #eaf6f5;
	color: #fff;
	background:
		radial-gradient(circle at 86% 38%,rgba(2,169,173,.18),transparent 26%),
		linear-gradient(115deg,#031733,#062c52);
}

.values-section .center-heading {
	margin: 0 auto;
}

.values-section .kicker {
	color: #26d5ce !important;
}

.values-section h2 {
	margin-bottom: 0;
}

.values-section .trust-grid {
	margin-top: 26px;
}

.trust-band.values-section .trust-grid article {
	grid-template-columns: 42px 1fr;
	gap: 18px;
	align-items: start;
	border-color: rgba(255,255,255,.18);
	text-align: left;
}

.trust-band.values-section .trust-grid article > span {
	color: #26d5ce;
}

.trust-band.values-section .trust-grid p {
	color: rgba(255,255,255,.7);
}

.value-icon {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border: 1px solid rgba(38,213,206,.3);
	border-radius: 50%;
}

.value-icon svg {
	width: 22px;
	height: 22px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.65;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.previews {
	background: #fff !important;
}

.draft-card,
.service-image-grid article,
.article-tile {
	box-shadow: 0 10px 30px rgba(8, 27, 73, .045);
}

.impact-panel {
	background: #eff8f7;
}

.benefits {
	border: 1px solid #d9e9ed;
	background: #eef7fb;
}

.contact-stage {
	padding-block: 55px 48px;
	background: #f4f7fa;
}

.contact-panel {
	box-shadow: 0 14px 40px rgba(8, 27, 73, .08);
}

.contact-panel > div:first-child {
	padding: 28px;
	border-radius: 8px;
	background: #eaf6f5;
}

.legal-content {
	background: #fff;
}

.legal-content__inner {
	max-width: 860px;
}

.legal-content__updated {
	padding-bottom: 18px;
	border-bottom: 1px solid var(--line);
	color: #758397;
	font-size: .82rem;
}

.legal-content h2 {
	margin-top: 42px;
	margin-bottom: 12px;
	font-size: clamp(1.35rem,2vw,1.75rem);
}

.legal-content p,
.legal-content li {
	color: var(--muted);
}

.legal-content ul {
	display: grid;
	gap: 8px;
	padding-left: 22px;
}

.legal-content a {
	color: var(--teal-dark);
	font-weight: 600;
	text-underline-offset: 3px;
}

.light-final-cta {
	padding-block: 48px;
	color: #fff;
	background:
		radial-gradient(circle at 80% 50%, rgba(2, 169, 173, .25), transparent 30%),
		var(--navy);
}

.light-final-cta .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 35px;
}

.light-final-cta .kicker {
	color: #27d4ce;
}

.light-final-cta h2 {
	max-width: 760px;
	margin: 0;
}

.site-footer {
	padding-top: 42px;
	border-top: 3px solid rgba(38,213,206,.45);
	background: linear-gradient(115deg,#020e20,#052541);
}

.site-footer__legal {
	margin-top: 35px;
}

.draft-hero--home .hero-eyebrow {
	margin-bottom: 10px;
	color: var(--teal-dark) !important;
	font-size: .76rem !important;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.draft-hero--home.draft-hero--light h1 {
	max-width: 720px;
	margin-bottom: .42em;
	font-size: clamp(2.65rem, 3.7vw, 3.55rem);
	line-height: 1.02;
}

.draft-hero--home.draft-hero--light {
	min-height: 570px;
}

.draft-hero--home.draft-hero--light::before {
	inset: 46px 3vw 46px 64%;
	border-radius: 34px 8px 8px 18px;
	background-position: 38% 18%;
}

.draft-hero--home.draft-hero--light::after {
	display: none;
}

.draft-hero--home.has-video::before {
	inset: 0;
	border-radius: 0;
	background-position: center;
	box-shadow: none;
}

.draft-hero--home.has-video::after {
	z-index: 1;
	display: block;
	inset: 0;
	width: auto;
	height: auto;
	border: 0;
	border-radius: 0;
	background: linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(247,250,252,.95) 43%,rgba(239,248,247,.72) 68%,rgba(8,27,73,.12) 100%);
}

.hero-video {
	position: absolute;
	z-index: 0;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.draft-hero--home.draft-hero--light .draft-hero__content {
	padding: 38px 38% 26px 0;
}

.draft-hero--home .draft-hero__content > p:not(.hero-eyebrow) {
	max-width: 680px;
	margin-bottom: 1em;
	font-size: 1rem;
	line-height: 1.6;
}

.draft-hero--home .draft-hero__actions {
	flex-direction: row;
	gap: 12px;
	margin-top: 8px;
}

.home-about {
	padding-block: clamp(52px,6vw,72px);
	background:
		radial-gradient(circle at 90% 15%, rgba(2,169,173,.09), transparent 23%),
		#eff8f7 !important;
}

.home-about__heading {
	max-width: 760px;
}

.home-about__heading h2 {
	margin-bottom: 0;
	color: var(--navy);
	font-size: clamp(2.35rem, 4vw, 3.8rem);
}

.home-statistics {
	grid-template-columns: repeat(5,minmax(0,1fr));
	gap: 0;
	margin: 18px 0 0;
	padding: 16px 0 0;
	border-top: 1px solid rgba(8,27,73,.14);
	color: var(--navy);
}

.home-statistics > div {
	grid-template-columns: 26px minmax(0,1fr);
	justify-content: center;
	padding-inline: 10px;
	column-gap: 7px;
	border-right: 1px solid rgba(8,27,73,.12);
}

.home-statistics > div:last-child {
	border-right: 0;
}

.home-statistics span {
	color: var(--teal-dark);
}

.home-statistics strong {
	font-size: 1.16rem;
}

.home-statistics small {
	color: var(--muted);
	opacity: 1;
	font-size: .62rem;
}

.home-about__body {
	display: grid;
	grid-template-columns: .9fr 1.1fr;
	gap: clamp(30px,4vw,52px);
	align-items: start;
	margin-top: 28px;
}

.home-about__body > div {
	padding-left: clamp(26px,3.2vw,44px);
	border-left: 1px solid rgba(2,169,173,.25);
}

.home-about__body p {
	color: var(--muted);
}

.home-about__lead {
	color: var(--navy) !important;
	font-size: 1.2rem;
	line-height: 1.75;
}

.home-about__body .button {
	margin-top: 8px;
}

.draft-hero--home .home-statistics {
	width: 100%;
	max-width: none;
	grid-template-columns: repeat(5,minmax(0,1fr));
	padding-top: 16px;
}

.draft-hero--home .home-statistics span {
	color: var(--teal-dark);
	font-size: 1.2rem;
}

.expertise {
	padding-top: clamp(52px,6vw,72px);
}

.expertise .draft-heading {
	margin-bottom: 30px;
}

.expertise .draft-card {
	min-height: 215px;
	padding: 20px;
}

.expertise .draft-icon {
	width: 44px;
	height: 44px;
	margin-bottom: 12px;
}

.expertise .draft-card h3 {
	margin-bottom: .5em;
	font-size: 1.03rem;
}

.expertise .draft-card p {
	margin-bottom: .9em;
	font-size: .82rem;
	line-height: 1.5;
}

.draft-icon svg {
	width: 27px;
	height: 27px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.7;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.trust-icon {
	display: grid;
	width: 40px;
	height: 40px;
	place-items: center;
	border: 1px solid rgba(2,169,173,.22);
	border-radius: 50%;
	background: rgba(255,255,255,.5);
}

.trust-icon svg {
	width: 23px;
	height: 23px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.65;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.previews {
	padding-block: clamp(58px,6vw,76px);
}

.previews .preview-grid {
	align-items: start;
	gap: 36px;
}

.previews .preview-grid > div {
	min-width: 0;
}

.previews .article-preview-grid {
	align-items: stretch;
}

.previews .article-preview-grid article {
	display: flex;
	height: 100%;
	flex-direction: column;
	background: #fff;
}

.previews .article-preview-grid img {
	height: 126px;
	aspect-ratio: auto;
	object-fit: cover;
}

.previews .article-preview-grid article > div {
	display: flex;
	min-height: 150px;
	flex: 1;
	flex-direction: column;
}

.previews .article-preview-grid h3 {
	line-height: 1.42;
}

.previews .article-preview-grid time {
	margin-top: auto;
}

.previews .mini-gallery {
	grid-template-rows: repeat(2,138px);
}

.previews .mini-gallery img {
	height: 100%;
}

.previews .mini-gallery img:nth-child(4) {
	grid-column: auto;
}

.site-footer .site-branding__logo-link {
	padding: 0;
	background: transparent;
}

.site-footer .custom-logo {
	max-height: 48px;
	filter: brightness(0) invert(1);
	opacity: .96;
}

section[id] {
	scroll-margin-top: calc(var(--header) + 18px);
}

@media (min-width: 1021px) {
	.site-header__inner {
		display: grid;
		grid-template-columns: minmax(190px,1fr) auto minmax(190px,1fr);
		gap: 24px;
	}

	.primary-navigation {
		margin-left: 0;
	}

	.button--header {
		justify-self: end;
		margin-left: 0;
	}
}

@media (max-width: 1100px) {
	.articles-section .articles-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.articles-section .articles-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.services-overview .impact-panel {
		grid-template-columns: 1fr;
	}

	.about-intro .two-column {
		grid-template-columns: 1fr;
	}

	.about-intro .two-column > img {
		height: 340px;
		order: initial;
	}

	.about-intro .boxed-metrics .metrics {
		grid-template-columns: repeat(2,1fr);
	}

	body .draft-hero--home.has-video::before {
		inset: 0;
	}

	.draft-hero--light::before,
	.draft-hero--home.draft-hero--light::before,
	.draft-hero--inner.draft-hero--light::before {
		inset: 42px 2vw 42px 56%;
	}

	.draft-hero--light .draft-hero__content,
	.draft-hero--home.draft-hero--light .draft-hero__content,
	.draft-hero--inner.draft-hero--light .draft-hero__content {
		padding-right: 46%;
	}

	.draft-hero--home .home-statistics {
		grid-template-columns: repeat(3,1fr);
		gap: 22px 0;
	}

	.draft-hero--home .home-statistics > div:nth-child(3) {
		border-right: 0;
	}
}

@media (max-width: 760px) {
	.draft-hero--about {
		min-height: 340px;
	}

	.draft-hero--about .draft-hero__content {
		padding-block: 34px;
	}

	.about-intro .two-column > img {
		height: 300px;
		min-height: 0;
		order: initial;
	}

	.about-intro .boxed-metrics {
		padding-inline: 18px;
	}
}

@media (max-width: 700px) {
	.services-overview .impact-panel {
		padding: 26px;
	}

	.services-overview .impact-panel .impact-points {
		grid-template-columns: 1fr;
	}

	body .draft-hero--home.has-video {
		padding-bottom: 0;
	}

	body .draft-hero--home.has-video::before {
		inset: 0;
		height: auto;
		border-radius: 0;
	}

	body .draft-hero--home.has-video::after {
		display: block;
		background: rgba(247,250,252,.92);
	}

	.draft-hero--light,
	.draft-hero--home.draft-hero--light,
	.draft-hero--inner.draft-hero--light {
		min-height: auto;
		padding-bottom: 280px;
	}

	.draft-hero--light::before,
	.draft-hero--home.draft-hero--light::before,
	.draft-hero--inner.draft-hero--light::before,
	.editorial-hero::before {
		inset: auto 14px 22px;
		height: 250px;
		border-radius: 18px 18px 8px 8px;
	}

	.draft-hero--light::after {
		display: none;
	}

	.articles-hero {
		padding-bottom: 252px;
	}

	.articles-hero::before {
		inset: auto 14px 18px !important;
		height: 225px;
		background-position: 50% 42%;
	}

	.articles-hero .draft-hero__content {
		padding: 38px 0 24px !important;
	}

	.draft-hero--light .draft-hero__content,
	.draft-hero--home.draft-hero--light .draft-hero__content,
	.draft-hero--inner.draft-hero--light .draft-hero__content {
		padding: 48px 0 30px;
	}

	.draft-hero--light .metrics {
		max-width: none;
	}

	.home-about__body {
		grid-template-columns: 1fr;
		gap: 22px;
	}

	.home-about__body > div {
		padding-left: 0;
		border-left: 0;
	}

	.draft-hero--home .home-statistics {
		grid-template-columns: repeat(2,1fr);
	}

	.draft-hero--home .home-statistics > div:nth-child(3) {
		border-right: 1px solid rgba(8,27,73,.12);
	}

	.draft-hero--home .home-statistics > div:nth-child(even) {
		border-right: 0;
	}

	.light-final-cta .container {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (prefers-reduced-motion: reduce) {
	.hero-video {
		display: none;
	}

	.article-card,
	.article-card__media img {
		transition: none;
	}
}

@media (max-width: 520px) {
	.article-filters a {
		flex: 1 1 100%;
		width: 100%;
	}

	.articles-section .articles-grid {
		grid-template-columns: 1fr;
	}

	.article-card h2,
	.article-card__excerpt {
		min-height: 0;
	}

	.services-overview .filters button {
		flex: 1 1 100%;
		width: 100%;
	}

	.services-overview .service-image-grid h2 {
		min-height: 0;
	}

	.draft-hero--light .draft-hero__actions .button--outline {
		border-color: #9ba9b7;
		color: var(--navy);
	}

	.draft-hero--light .metrics {
		grid-template-columns: repeat(2, 1fr);
	}

	.home-statistics {
		gap: 24px 0;
		margin-block: 32px;
	}

	.home-statistics > div {
		grid-template-columns: 28px minmax(0,1fr);
		padding-inline: 8px;
		column-gap: 8px;
	}

	.home-about__heading h2 {
		font-size: 2.3rem;
	}
}

/* Gallery */
.draft-hero--gallery {
	min-height: 325px !important;
}

.draft-hero--gallery::before {
	inset: 28px 5vw 28px 58% !important;
	border-radius: 9px !important;
	background-position: 50% 58%;
}

.draft-hero--gallery::after {
	display: none;
}

.draft-hero--gallery .draft-hero__content {
	padding-block: 36px !important;
	padding-right: 48% !important;
}

.draft-hero--gallery .breadcrumbs {
	margin-bottom: 12px;
}

.draft-hero--gallery h1 {
	margin-bottom: 7px;
	font-size: clamp(2.5rem, 4.2vw, 3.8rem);
}

.draft-hero--gallery h2 {
	margin-bottom: 10px;
	font-size: clamp(1.25rem, 2vw, 1.65rem);
}

.draft-hero--gallery .draft-hero__content > p:not(.breadcrumbs):not(.gallery-hero__labels) {
	max-width: 620px;
	margin-bottom: 0;
	font-size: 1rem;
	line-height: 1.6;
}

.draft-hero--gallery .gallery-hero__labels {
	display: flex;
	margin: 16px 0 0 !important;
	flex-wrap: wrap;
	gap: 7px;
	color: var(--teal-dark) !important;
	font-size: .72rem !important;
	font-weight: 800;
	letter-spacing: .045em;
	text-transform: uppercase;
}

.gallery-section {
	padding-block: 44px 74px;
	background: #fff !important;
}

.gallery-filters {
	gap: 10px;
	margin-bottom: 14px;
}

.gallery-filters a {
	display: inline-flex;
	min-height: 42px;
	padding: 8px 20px;
	border: 1px solid var(--line);
	border-radius: 7px;
	align-items: center;
	justify-content: center;
	background: #fff;
	color: var(--muted);
	font-size: .78rem;
	font-weight: 700;
	text-decoration: none;
	transition: border-color .18s, background-color .18s, color .18s;
}

.gallery-filters a:hover {
	border-color: rgba(2, 169, 173, .58);
	color: var(--teal-dark);
}

.gallery-filters a.active {
	border-color: var(--teal);
	background: var(--teal);
	color: #fff;
}

.gallery-filters a:focus-visible,
.gallery-card:focus-visible,
.gallery-load-more .button:focus-visible,
.gallery-lightbox button:focus-visible {
	outline: 3px solid rgba(2, 169, 173, .35);
	outline-offset: 3px;
}

.gallery-results {
	margin: 0 0 22px;
	color: #758397;
	font-size: .78rem;
}

.gallery-section .gallery-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.gallery-card-wrap {
	min-width: 0;
	border: 1px solid #dce5ea;
	border-radius: 9px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 9px 28px rgba(8, 27, 73, .045);
	transition: border-color .2s, box-shadow .2s, transform .2s;
}

.gallery-card-wrap:first-child {
	grid-column: span 2;
}

.gallery-card-wrap:hover {
	border-color: rgba(2, 169, 173, .38);
	box-shadow: 0 16px 36px rgba(8, 27, 73, .1);
	transform: translateY(-3px);
}

.gallery-card {
	display: flex;
	width: 100%;
	height: 100%;
	padding: 0;
	border: 0;
	flex-direction: column;
	background: transparent;
	color: inherit;
	text-align: left;
	cursor: zoom-in;
}

.gallery-card__media {
	position: relative;
	display: block;
	height: 260px;
	overflow: hidden;
	background: #eff5f7;
}

.gallery-card__media > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .3s ease;
}

.gallery-card-wrap:hover .gallery-card__media > img {
	transform: scale(1.025);
}

.gallery-card__placeholder {
	display: block;
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, #eff8f7, #dcecf1);
}

.gallery-card__overlay {
	position: absolute;
	inset: 0;
	display: flex;
	padding: 22px;
	flex-direction: column;
	justify-content: flex-end;
	color: #fff;
	background: linear-gradient(180deg, transparent 38%, rgba(3, 23, 51, .78));
	opacity: 0;
	transition: opacity .2s ease;
}

.gallery-card__overlay span {
	font-size: .68rem;
	font-weight: 800;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.gallery-card__overlay strong {
	margin-top: 5px;
	font: 700 1.05rem/1.35 var(--heading);
}

.gallery-card-wrap:hover .gallery-card__overlay,
.gallery-card:focus-visible .gallery-card__overlay {
	opacity: 1;
}

.gallery-card__content {
	display: flex;
	min-height: 124px;
	padding: 17px 19px 18px;
	flex: 1;
	flex-direction: column;
}

.gallery-card__content > strong {
	color: var(--navy);
	font: 700 1rem/1.35 var(--heading);
}

.gallery-card__content > span {
	margin-top: 7px;
	color: var(--teal-dark);
	font-size: .68rem;
	font-weight: 800;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.gallery-card__content small {
	display: -webkit-box;
	margin-top: 8px;
	overflow: hidden;
	color: var(--muted);
	font-size: .76rem;
	line-height: 1.5;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.gallery-load-more {
	margin-top: 34px;
	text-align: center;
}

.gallery-load-more .button[disabled] {
	cursor: wait;
	opacity: .65;
	transform: none;
}

.gallery-empty {
	padding: 58px 24px;
	border: 1px solid var(--line);
	border-radius: 9px;
	text-align: center;
	background: #f7fafc;
}

.gallery-empty p {
	margin-bottom: 24px;
	color: var(--muted);
}

.gallery-final-cta {
	padding-block: 46px;
}

.gallery-final-cta p:last-child {
	margin: 7px 0 0;
	color: rgba(255, 255, 255, .7);
}

.gallery-lightbox[hidden] {
	display: none;
}

.gallery-lightbox {
	position: fixed;
	z-index: 1000;
	inset: 0;
	display: grid;
	padding: 28px;
	place-items: center;
}

.gallery-lightbox__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(2, 15, 35, .9);
	backdrop-filter: blur(5px);
}

.gallery-lightbox__dialog {
	position: relative;
	z-index: 1;
	display: grid;
	width: min(1120px, 92vw);
	max-height: 92vh;
	grid-template-columns: 56px minmax(0, 1fr) 56px;
	align-items: center;
}

.gallery-lightbox figure {
	max-height: 92vh;
	margin: 0;
	overflow: auto;
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 24px 80px rgba(0, 0, 0, .35);
}

.gallery-lightbox figure img {
	display: block;
	width: 100%;
	max-height: 72vh;
	object-fit: contain;
	background: #071b34;
}

.gallery-lightbox figcaption {
	padding: 18px 22px 20px;
}

.gallery-lightbox figcaption strong {
	display: block;
	color: var(--navy);
	font: 700 1.08rem/1.35 var(--heading);
}

.gallery-lightbox figcaption > span {
	display: block;
	margin-top: 5px;
	color: var(--teal-dark);
	font-size: .68rem;
	font-weight: 800;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.gallery-lightbox figcaption p {
	margin: 7px 0 0;
	color: var(--muted);
	font-size: .82rem;
}

.gallery-lightbox button {
	display: grid;
	width: 46px;
	height: 46px;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, .3);
	border-radius: 50%;
	place-items: center;
	background: rgba(3, 23, 51, .72);
	color: #fff;
	font-size: 2rem;
	line-height: 1;
	cursor: pointer;
}

.gallery-lightbox__previous {
	justify-self: start;
}

.gallery-lightbox__next {
	justify-self: end;
}

.gallery-lightbox__close {
	position: absolute;
	z-index: 2;
	top: 12px;
	right: 68px;
}

body.gallery-lightbox-open {
	overflow: hidden;
}

@media (max-width: 900px) {
	.gallery-section .gallery-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.gallery-card-wrap:first-child {
		grid-column: auto;
	}
}

@media (max-width: 700px) {
	.draft-hero--gallery {
		padding-bottom: 252px;
	}

	.draft-hero--gallery::before {
		inset: auto 14px 18px !important;
		height: 225px;
		background-position: 50% 55%;
	}

	.draft-hero--gallery .draft-hero__content {
		padding: 38px 0 24px !important;
	}

	.gallery-lightbox {
		padding: 12px;
	}

	.gallery-lightbox__dialog {
		width: 100%;
		grid-template-columns: 48px minmax(0, 1fr) 48px;
	}

	.gallery-lightbox__close {
		top: 8px;
		right: 56px;
	}
}

@media (max-width: 520px) {
	.gallery-filters {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.gallery-filters a {
		width: 100%;
		padding-inline: 10px;
	}

	.gallery-filters a:first-child {
		grid-column: 1 / -1;
	}

	.gallery-section .gallery-grid {
		grid-template-columns: 1fr;
	}

	.gallery-card__media {
		height: 235px;
	}

	.gallery-lightbox__dialog {
		grid-template-columns: 42px minmax(0, 1fr) 42px;
	}

	.gallery-lightbox button {
		width: 40px;
		height: 40px;
	}

	.gallery-lightbox__close {
		right: 48px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.gallery-card-wrap,
	.gallery-card__media > img,
	.gallery-card__overlay {
		transition: none;
	}
}

/* Shared full-width inner-page hero */
.draft-hero--cover {
	min-height: 380px;
	color: #fff;
	background: var(--navy);
}

.draft-hero--cover::before {
	z-index: -2;
	inset: 0;
	border-radius: 0;
	background-position: center;
	box-shadow: none;
}

.draft-hero--cover::after {
	z-index: -1;
	inset: 0;
	display: block;
	width: auto;
	height: auto;
	border: 0;
	border-radius: 0;
	background:
		linear-gradient(90deg, rgba(3, 23, 51, .96) 0%, rgba(3, 23, 51, .83) 44%, rgba(3, 23, 51, .46) 72%, rgba(3, 23, 51, .2) 100%);
}

.draft-hero--cover .draft-hero__content {
	position: relative;
	z-index: 1;
	max-width: var(--container);
	padding: 42px 0;
}

.draft-hero--cover .breadcrumbs {
	margin-bottom: 16px;
	color: rgba(255, 255, 255, .76);
}

.draft-hero--cover h1 {
	max-width: 840px;
	margin-bottom: 8px;
	color: #fff;
	font-size: clamp(2.8rem, 4.6vw, 4.15rem);
}

.draft-hero--cover h2 {
	max-width: 850px;
	margin-bottom: 13px;
	color: #25d1c9;
	font-size: clamp(1.35rem, 2.2vw, 1.85rem);
}

.draft-hero--cover .draft-hero__content > p:not(.breadcrumbs):not(.gallery-hero__labels) {
	max-width: 760px;
	margin-bottom: 0;
	color: rgba(255, 255, 255, .9);
	font-size: 1rem;
	line-height: 1.65;
}

.draft-hero--cover .gallery-hero__labels {
	display: flex;
	margin: 17px 0 0;
	flex-wrap: wrap;
	gap: 7px;
	color: #25d1c9;
	font-size: .7rem;
	font-weight: 800;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.draft-hero--cover--about::before {
	background-position: 62% 42%;
}

.draft-hero--cover--services::before {
	background-position: 52% 50%;
}

.draft-hero--cover--articles::before {
	background-position: 50% 48%;
}

.draft-hero--cover--gallery::before {
	background-position: 50% 55%;
}

.draft-hero--cover--contact::before {
	background-position: 50% 50%;
}

@media (max-width: 700px) {
	.draft-hero--cover {
		min-height: 390px;
		padding-bottom: 0;
	}

	.draft-hero--cover::before {
		inset: 0 !important;
		height: auto;
		border-radius: 0;
	}

	.draft-hero--cover::after {
		background:
			linear-gradient(90deg, rgba(3, 23, 51, .96) 0%, rgba(3, 23, 51, .84) 72%, rgba(3, 23, 51, .68) 100%);
	}

	.draft-hero--cover .draft-hero__content {
		padding: 42px 0 !important;
		padding-right: 0 !important;
	}

	.draft-hero--cover h1 {
		font-size: clamp(2.45rem, 12vw, 3.35rem);
	}
}

/* Responsive completion for WordPress archives, articles and utility pages. */
.site-main,
.site-main > *,
.container {
	min-width: 0;
}

.page-hero {
	padding-block: clamp(64px, 8vw, 96px);
	background:
		radial-gradient(circle at 82% 24%, rgba(2, 169, 173, .14), transparent 30%),
		linear-gradient(135deg, #f7fafc, #eff8f7);
}

.page-hero .container {
	max-width: 1180px;
}

.page-hero .eyebrow,
.article-hero__category {
	display: inline-flex;
	margin: 0 0 14px;
	color: var(--teal-dark);
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .055em;
	text-decoration: none;
	text-transform: uppercase;
}

.page-hero h1 {
	max-width: 880px;
	margin: 0;
	color: var(--navy);
	font-size: clamp(2.4rem, 5vw, 4.5rem);
	overflow-wrap: anywhere;
}

.page-hero__intro {
	max-width: 720px;
	margin-top: 18px;
	color: var(--muted);
}

.archive-section {
	padding-block: clamp(56px, 7vw, 88px);
}

.archive-section .article-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	align-items: stretch;
}

.archive-section .pagination {
	margin-top: 42px;
}

.archive-section .nav-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
}

.archive-section .page-numbers {
	display: inline-flex;
	min-width: 44px;
	min-height: 44px;
	padding: 8px 12px;
	border: 1px solid var(--line);
	border-radius: 6px;
	align-items: center;
	justify-content: center;
	color: var(--navy);
	font-size: .8rem;
	font-weight: 700;
	text-decoration: none;
}

.archive-section .page-numbers.current,
.archive-section a.page-numbers:hover {
	border-color: var(--teal);
	background: var(--teal);
	color: #fff;
}

.article-hero {
	padding-block: clamp(64px, 8vw, 104px);
	background:
		radial-gradient(circle at 84% 30%, rgba(2, 169, 173, .15), transparent 32%),
		linear-gradient(135deg, #f7fafc, #eff8f7);
}

.article-hero__inner {
	max-width: 980px;
}

.article-hero__category:hover,
.article-hero__category:focus-visible {
	color: var(--navy);
	text-decoration: underline;
	text-underline-offset: 4px;
}

.article-hero h1 {
	max-width: 940px;
	margin: 0;
	color: var(--navy);
	font-size: clamp(2.55rem, 5.6vw, 5rem);
	line-height: 1.06;
	overflow-wrap: anywhere;
}

.article-meta {
	display: flex;
	margin-top: 24px;
	flex-wrap: wrap;
	gap: 10px;
	color: var(--muted);
	font-size: .78rem;
}

.article-meta span + span::before {
	margin-right: 10px;
	color: var(--teal-dark);
	content: "•";
}

.article-featured {
	max-width: 1080px;
	margin-top: clamp(34px, 5vw, 64px);
}

.article-featured img {
	width: 100%;
	max-height: 620px;
	border-radius: var(--radius);
	object-fit: cover;
}

.prose--article {
	max-width: 840px;
	padding-block: clamp(46px, 7vw, 86px);
	color: #263c5d;
	font-size: 1rem;
	line-height: 1.8;
}

.prose--article > * {
	max-width: 100%;
}

.prose--article h2,
.prose--article h3 {
	margin-top: 1.8em;
	color: var(--navy);
}

.prose--article a {
	color: var(--teal-dark);
	overflow-wrap: anywhere;
	text-underline-offset: 3px;
}

.prose--article img,
.prose--article video,
.prose--article iframe {
	max-width: 100%;
	height: auto;
}

.prose--article table {
	display: block;
	max-width: 100%;
	overflow-x: auto;
}

.prose--article blockquote {
	padding: 22px 26px;
	border-left: 4px solid var(--teal);
	margin: 32px 0;
	background: #eff8f7;
}

.post-navigation {
	max-width: 1080px;
	padding-bottom: clamp(56px, 8vw, 96px);
}

.post-navigation .nav-links {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.post-navigation a {
	display: flex;
	min-width: 0;
	min-height: 112px;
	padding: 24px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	flex-direction: column;
	justify-content: center;
	color: var(--navy);
	text-decoration: none;
	overflow-wrap: anywhere;
}

.post-navigation a:hover,
.post-navigation a:focus-visible {
	border-color: rgba(2, 169, 173, .55);
	background: #eff8f7;
}

.post-navigation span {
	color: var(--teal-dark);
	font-size: .7rem;
	font-weight: 800;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.post-navigation strong {
	margin-top: 5px;
	font-size: .95rem;
	line-height: 1.45;
}

.nav-next {
	text-align: right;
}

.not-found {
	display: grid;
	min-height: min(680px, calc(100vh - var(--header)));
	padding-block: clamp(70px, 10vw, 130px);
	place-items: center;
	background:
		radial-gradient(circle at 80% 20%, rgba(2, 169, 173, .17), transparent 28%),
		linear-gradient(145deg, #f7fafc, #eff8f7);
}

.not-found__inner {
	max-width: 760px;
	text-align: center;
}

.not-found__code {
	margin: 0;
	color: rgba(2, 169, 173, .22);
	font: 800 clamp(5rem, 15vw, 10rem)/.85 var(--heading);
}

.not-found h1 {
	margin-inline: auto;
	font-size: clamp(2.1rem, 5vw, 4rem);
}

.not-found__inner > p:not(.not-found__code):not(.eyebrow) {
	max-width: 560px;
	margin-inline: auto;
	color: var(--muted);
}

@media (max-width: 1020px) {
	.primary-navigation {
		overflow-y: auto;
		align-items: start;
		padding: 26px 14px 40px;
	}

	.primary-menu,
	.primary-navigation .menu {
		width: min(100%, 420px);
		gap: 14px;
	}

	.primary-menu a,
	.primary-navigation .menu a {
		display: inline-flex;
		min-height: 44px;
		align-items: center;
		font-size: 1.18rem;
	}

	.primary-menu .sub-menu {
		max-width: 100%;
	}

	.archive-section .article-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	img,
	svg,
	video,
	iframe {
		max-width: 100%;
	}

	.page-hero,
	.article-hero {
		padding-block: 52px;
	}

	.page-hero h1 {
		font-size: clamp(2.2rem, 11vw, 3.25rem);
	}

	.article-hero h1 {
		font-size: clamp(2.2rem, 10.5vw, 3.45rem);
		line-height: 1.08;
	}

	.article-meta {
		margin-top: 18px;
	}

	.article-featured {
		margin-top: 28px;
	}

	.prose--article {
		padding-block: 44px 56px;
		font-size: .96rem;
	}

	.post-navigation .nav-links {
		grid-template-columns: 1fr;
	}

	.nav-next {
		text-align: left;
	}

	.site-footer a,
	.contact-panel a,
	.contact-panel p {
		overflow-wrap: anywhere;
	}

	.programme-detail summary {
		grid-template-columns: 38px minmax(0, 1fr) auto;
		padding-inline: 16px;
	}
}

@media (max-width: 560px) {
	.archive-section .article-grid {
		grid-template-columns: 1fr;
	}

	.filters button {
		flex: 1 1 100%;
		min-height: 44px;
	}

	.boxed-metrics {
		padding-inline: 16px;
	}

	.boxed-metrics .metrics > div {
		grid-template-columns: 30px minmax(0, 1fr);
		justify-content: start;
	}

	.boxed-metrics .metrics strong,
	.boxed-metrics .metrics small {
		min-width: 0;
		overflow-wrap: anywhere;
	}

	.contact-panel li {
		grid-template-columns: 42px minmax(0, 1fr);
		gap: 12px;
	}

	.contact-panel li > span {
		width: 40px;
		height: 40px;
	}

	.site-footer__legal p:last-child {
		display: flex;
		flex-wrap: wrap;
		gap: 10px 18px;
	}

	.site-footer__legal a {
		margin: 0;
	}

	.post-navigation a {
		min-height: 96px;
		padding: 20px;
	}

	.not-found {
		min-height: auto;
	}
}
