﻿:root {
	--ea-ink: #173126;
	--ea-deep: #0b5d31;
	--ea-accent: #0d793e;
	--ea-accent-dark: #09552c;
	--ea-gold: #90be3f;
	--ea-sand: #f5f3ec;
	--ea-mist: #eef4ed;
	--ea-line: rgba(23, 49, 38, 0.12);
	--ea-white: #ffffff;
	--ea-shadow: 0 24px 64px rgba(10, 29, 18, 0.12);
	--ea-radius-lg: 28px;
	--ea-radius-md: 20px;
	--ea-radius-sm: 14px;
	--ea-container: 1280px;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
	overscroll-behavior-y: none;
}

body {
	margin: 0;
	font-family: "Source Sans 3", "PingFang SC", "Microsoft YaHei", sans-serif;
	color: var(--ea-ink);
	background:
		radial-gradient(circle at top left, rgba(13, 121, 62, 0.12), transparent 28%),
		radial-gradient(circle at bottom right, rgba(144, 190, 63, 0.16), transparent 22%),
		linear-gradient(180deg, #fbfaf5 0%, #f5f3ec 100%);
	line-height: 1.6;
	overflow-x: hidden;
	overflow-x: clip;
	overscroll-behavior-y: none;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

a {
	color: inherit;
	text-decoration: none;
}

p {
	margin: 0 0 1rem;
}

ul,
ol {
	margin: 0;
	padding: 0;
}

.container {
	width: min(var(--ea-container), calc(100% - 2rem));
	margin: 0 auto;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.site-main {
	padding-top: 6rem;
}

.page-shell {
	padding-bottom: 0;
}

.entry-content {
	width: 100%;
}

.entry-content > * {
	margin-top: 0;
	margin-bottom: 0;
}

.page-shell > .entry-content > :last-child {
	margin-bottom: 0 !important;
}

.page-shell > .entry-content > .stk-block:last-child,
.page-shell > .entry-content > .wp-block-group:last-child,
.page-shell > .entry-content > .wp-block-cover:last-child,
.page-shell > .entry-content > .wp-block-uagb-container:last-child {
	min-height: 0 !important;
	padding-bottom: 0 !important;
}

.entry-content .container {
	width: min(var(--ea-container), calc(100% - 2rem));
	margin: 0 auto;
}

.entry-content .wp-block-group__inner-container {
	width: 100%;
}

.site-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
	backdrop-filter: blur(18px);
	background: rgba(252, 251, 247, 0.92);
	border-bottom: 0 solid transparent;
}

.site-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.25rem;
	min-height: 5.5rem;
}

.brand {
	display: inline-flex;
	align-items: center;
	gap: 0.9rem;
	font-family: "Sora", sans-serif;
	font-weight: 700;
}

.brand__mark {
	display: grid;
	place-items: center;
	width: 3rem;
	height: 3rem;
	border-radius: 1rem;
	background: linear-gradient(135deg, var(--ea-deep), var(--ea-accent));
	color: var(--ea-white);
	box-shadow: var(--ea-shadow);
}

.brand__text {
	display: flex;
	flex-direction: column;
	line-height: 1.2;
}

.brand__text small {
	font-size: 0.8rem;
	font-weight: 500;
	color: rgba(16, 32, 51, 0.72);
}

.site-header__nav {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex: 1 1 auto;
	min-width: 0;
	gap: 1.5rem;
}

.site-header__actions {
	display: flex;
	align-items: center;
	flex-shrink: 0;
	gap: 1rem;
}

.menu,
.menu ul {
	list-style: none;
}

.menu--primary,
.menu--fallback,
.menu--footer {
	display: flex;
	align-items: center;
	gap: 0.85rem;
	flex-wrap: wrap;
}

.main-nav {
	min-width: 0;
}

.main-nav .menu--primary,
.main-nav .menu--fallback {
	flex-wrap: wrap;
	justify-content: flex-end;
	row-gap: 0.35rem;
}

.menu-item a {
	font-weight: 600;
	font-size: 0.9rem;
	white-space: nowrap;
	color: rgba(16, 32, 51, 0.84);
	transition: color 0.2s ease;
}

.menu-item a:hover,
.menu-item.current-menu-item a {
	color: var(--ea-accent-dark);
}

.language-switcher {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.25rem;
	border-radius: 999px;
	background: rgba(16, 32, 51, 0.05);
}

.language-switcher__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.45rem 0.85rem;
	border-radius: 999px;
	font-size: 0.85rem;
	font-weight: 700;
	color: rgba(16, 32, 51, 0.68);
}

.language-switcher__link.is-active {
	background: var(--ea-white);
	color: var(--ea-deep);
	box-shadow: 0 10px 24px rgba(16, 32, 51, 0.08);
}

.button,
button.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: 0.95rem 1.35rem;
	border: 0;
	border-radius: 999px;
	font-family: "Sora", sans-serif;
	font-size: 0.95rem;
	font-weight: 700;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.wp-block-buttons.button-group {
	display: flex;
	flex-wrap: wrap;
	gap: 0.9rem;
}

.wp-block-button.button--primary .wp-block-button__link,
.wp-block-button.button--secondary .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: 0.95rem 1.35rem;
	border: 0;
	border-radius: 999px;
	font-family: "Sora", sans-serif;
	font-size: 0.95rem;
	font-weight: 700;
	text-decoration: none;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.wp-block-button.button--primary .wp-block-button__link:hover,
.wp-block-button.button--secondary .wp-block-button__link:hover {
	transform: translateY(-2px);
}

.button:hover,
button.button:hover {
	transform: translateY(-2px);
}

.button--primary {
	background: linear-gradient(135deg, var(--ea-accent), var(--ea-accent-dark));
	color: var(--ea-white);
	box-shadow: 0 16px 36px rgba(17, 101, 85, 0.25);
}

.wp-block-button.button--primary .wp-block-button__link {
	background: linear-gradient(135deg, var(--ea-accent), var(--ea-accent-dark));
	color: var(--ea-white);
	box-shadow: 0 16px 36px rgba(9, 85, 44, 0.22);
}

.button--secondary {
	background: rgba(16, 32, 51, 0.06);
	color: var(--ea-deep);
}

.wp-block-button.button--secondary .wp-block-button__link {
	background: rgba(23, 49, 38, 0.06);
	color: var(--ea-deep);
}

.button--small {
	padding: 0.72rem 1rem;
	font-size: 0.84rem;
}

.button-group {
	display: flex;
	flex-wrap: wrap;
	gap: 0.9rem;
}

.button-group--stack {
	flex-direction: column;
	align-items: stretch;
}

.menu-toggle {
	display: none;
	flex-direction: column;
	gap: 0.3rem;
	width: 3rem;
	height: 3rem;
	padding: 0.6rem;
	border: 0;
	border-radius: 0.85rem;
	background: rgba(16, 32, 51, 0.06);
}

.menu-toggle span {
	display: block;
	width: 100%;
	height: 2px;
	background: var(--ea-deep);
}

.hero,
.page-hero {
	position: relative;
	padding: 6rem 0 4rem;
}

.hero::before,
.page-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(135deg, rgba(11, 93, 49, 0.96), rgba(23, 49, 38, 0.9)),
		radial-gradient(circle at top right, rgba(144, 190, 63, 0.28), transparent 28%);
	z-index: 0;
}

.hero__inner,
.page-hero__inner,
.page-hero__inner > .wp-block-group__inner-container {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
	gap: 2rem;
	align-items: center;
}

.hero__content,
.page-hero__content {
	color: var(--ea-white);
}

.hero__eyebrow,
.page-hero__eyebrow,
.section-heading__eyebrow,
.site-footer__eyebrow,
.feature-card__eyebrow,
.office-card__role {
	margin-bottom: 0.8rem;
	font-family: "Sora", sans-serif;
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--ea-gold);
}

.hero__title,
.page-hero__title,
.section-heading__title,
.cta-banner h2,
.site-footer__brand h2 {
	margin: 0 0 1rem;
	font-family: "Sora", sans-serif;
	line-height: 1.1;
}

.hero__title {
	font-size: clamp(2.6rem, 4vw, 4.4rem);
	max-width: 12ch;
}

.page-hero__title {
	font-size: clamp(2.2rem, 3.4vw, 3.5rem);
	max-width: 12ch;
}

.hero__lead,
.page-hero__lead,
.section-heading__lead,
.cta-banner p {
	font-size: 1.1rem;
	color: rgba(255, 255, 255, 0.82);
	max-width: 62ch;
}

.hero__proof,
.check-list,
.stat-panel__list {
	list-style: none;
	display: grid;
	gap: 0.85rem;
	margin-top: 1.5rem;
}

.hero__proof li,
.check-list li,
.stat-panel__list li {
	position: relative;
	padding-left: 1.5rem;
}

.hero__proof li::before,
.check-list li::before,
.stat-panel__list li::before {
	content: "";
	position: absolute;
	top: 0.55rem;
	left: 0;
	width: 0.7rem;
	height: 0.7rem;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--ea-gold), #ebc995);
}

.hero__visual,
.page-hero__visual {
	position: relative;
}

.hero__image-wrap,
.hero-card,
.media-card,
.reference-panel,
.stat-panel,
.feature-card,
.office-card,
.form-panel,
.cta-banner {
	border-radius: var(--ea-radius-lg);
	box-shadow: var(--ea-shadow);
}

.hero__image-wrap {
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(255, 255, 255, 0.08);
}

.hero__image-wrap img,
.hero-card img,
.media-card {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero-card .wp-block-image,
.media-card .wp-block-image,
.home-atlas__panel .wp-block-image {
	height: 100%;
	margin: 0;
}

.media-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero-card,
.media-card {
	min-height: 100%;
	overflow: hidden;
	background: var(--ea-mist);
}

.hero-card__placeholder {
	min-height: 360px;
	background:
		linear-gradient(135deg, rgba(27, 139, 119, 0.25), rgba(199, 154, 94, 0.18)),
		linear-gradient(180deg, #ffffff 0%, #edf4f2 100%);
}

.hero--home {
	overflow: clip;
	padding: 6.9rem 0 4.2rem;
	min-height: calc(100svh - 5.5rem);
	display: flex;
	align-items: center;
}

.hero--home::before {
	background:
		radial-gradient(circle at top left, rgba(199, 154, 94, 0.2), transparent 22%),
		radial-gradient(circle at 78% 28%, rgba(27, 139, 119, 0.2), transparent 24%),
		linear-gradient(135deg, #11263a 0%, #18344d 48%, #0f2233 100%);
}

.home-hero__inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(360px, 0.95fr);
	gap: clamp(2rem, 5vw, 4.75rem);
	align-items: center;
	min-height: clamp(560px, calc(100svh - 12rem), 760px);
	width: min(1520px, calc(100% - 4rem));
	margin: 0 auto;
}

.home-hero__copy {
	max-width: 42rem;
	color: var(--ea-white);
}

.home-hero__title {
	max-width: 10.7ch;
	font-size: clamp(2.8rem, 5.3vw, 4.8rem);
	letter-spacing: -0.04em;
	line-height: 0.95;
}

.home-hero__lead {
	max-width: 34rem;
	font-size: clamp(1.05rem, 1.55vw, 1.24rem);
}

.home-hero__ghost {
	background: rgba(255, 255, 255, 0.08);
	color: var(--ea-white);
	border: 1px solid rgba(255, 255, 255, 0.14);
}

.home-hero__metrics {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin-top: 1.8rem;
	max-width: 38rem;
}

.home-hero__metric {
	padding-top: 1rem;
	border-top: 1px solid rgba(255, 255, 255, 0.14);
}

.home-hero__metric strong {
	display: block;
	margin-bottom: 0.3rem;
	font-family: "Sora", sans-serif;
	font-size: clamp(1.5rem, 2vw, 2rem);
	color: var(--ea-white);
}

.home-hero__metric span {
	font-size: 0.92rem;
	color: rgba(255, 255, 255, 0.72);
}

.home-hero__proof {
	max-width: 34rem;
	margin-top: 2rem;
}

.home-hero__visual {
	position: relative;
	min-height: 40rem;
}

.home-hero__frame {
	position: relative;
	overflow: hidden;
	border-radius: 2rem;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(255, 255, 255, 0.08);
	box-shadow: 0 34px 72px rgba(7, 17, 28, 0.28);
}

.home-hero__frame--primary {
	margin-left: clamp(2rem, 5vw, 4.75rem);
	aspect-ratio: 5 / 6;
}

.home-hero__frame--secondary {
	position: absolute;
	left: 0;
	bottom: 2.35rem;
	width: min(18rem, 42%);
	aspect-ratio: 4 / 5;
	border-radius: 1.5rem;
}

.home-hero__frame img[data-depth] {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: translateY(var(--ea-depth-shift, 0px)) scale(1.04);
	transform-origin: center;
	transition: transform 0.3s ease-out;
	will-change: transform;
}

.home-hero__frame--secondary img {
	animation: homeFloat 9s ease-in-out infinite;
}

.home-hero__panel {
	position: absolute;
	top: 1.4rem;
	right: 0;
	width: min(19.5rem, 42%);
	padding: 1.4rem 1.45rem;
	border-radius: 1.55rem;
	background: linear-gradient(180deg, rgba(10, 24, 36, 0.72), rgba(15, 34, 51, 0.62));
	backdrop-filter: blur(18px);
	border: 1px solid rgba(255, 255, 255, 0.12);
	box-shadow: 0 26px 48px rgba(7, 17, 28, 0.22);
}

.home-hero__panel-label,
.home-network__context-label,
.home-capability__note-label,
.home-cta__meta-label {
	margin-bottom: 0.75rem;
	font-family: "Sora", sans-serif;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.home-hero__panel-label {
	color: rgba(255, 255, 255, 0.7);
}

.home-hero__panel-list {
	list-style: none;
	display: grid;
	gap: 0.9rem;
}

.home-hero__panel-list li {
	display: grid;
	gap: 0.25rem;
	padding-top: 0.9rem;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.home-hero__panel-list li:first-child {
	padding-top: 0;
	border-top: 0;
}

.home-hero__panel-value {
	font-family: "Sora", sans-serif;
	font-size: 1.1rem;
	font-weight: 700;
	color: var(--ea-white);
}

.home-hero__panel-text {
	font-size: 0.93rem;
	color: rgba(255, 255, 255, 0.72);
}

.home-network,
.home-process {
	position: relative;
}

.home-network__grid,
.home-capability__grid {
	display: grid;
	grid-template-columns: minmax(260px, 0.84fr) minmax(0, 1.16fr);
	gap: clamp(1.75rem, 4vw, 3.5rem);
	align-items: start;
}

.home-network__intro,
.home-capability__intro {
	position: sticky;
	top: 7.25rem;
}

.home-network__body {
	display: grid;
	gap: 1.5rem;
}

.home-network__image {
	overflow: hidden;
	min-height: 21rem;
	border-radius: 1.8rem;
	box-shadow: var(--ea-shadow);
}

.home-network__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.home-network__roles,
.home-capability__list,
.home-process__timeline {
	border-top: 1px solid var(--ea-line);
}

.home-network__role,
.home-capability__item,
.home-process__step {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 1.2rem;
	padding: 1.35rem 0;
	border-bottom: 1px solid var(--ea-line);
	transition: transform 0.24s ease, border-color 0.24s ease;
}

.home-network__role:hover,
.home-capability__item:hover,
.home-process__step:hover {
	transform: translateX(8px);
	border-color: rgba(27, 139, 119, 0.28);
}

.home-network__index,
.home-capability__number,
.home-process__step-index {
	font-family: "Sora", sans-serif;
	font-size: 1.06rem;
	font-weight: 700;
	color: var(--ea-gold);
}

.home-network__role h3,
.home-capability__copy h3,
.home-trust__item h3 {
	margin: 0 0 0.45rem;
	font-family: "Sora", sans-serif;
	color: var(--ea-deep);
}

.home-network__role p,
.home-capability__copy p,
.home-network__context-copy {
	margin: 0;
	color: rgba(16, 32, 51, 0.72);
}

.home-network__context {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	padding-top: 1.2rem;
	border-top: 1px solid var(--ea-line);
}

.home-network__context-label {
	color: var(--ea-gold);
}

.home-inline-link,
.home-cta__email {
	font-family: "Sora", sans-serif;
	font-weight: 700;
	color: var(--ea-accent-dark);
}

.home-capability__note {
	margin-top: 2rem;
	padding: 1.35rem 0 0;
	border-top: 1px solid var(--ea-line);
}

.home-capability__note-label {
	color: var(--ea-gold);
}

.home-capability__note p {
	margin: 0;
	color: rgba(16, 32, 51, 0.72);
}

.home-process__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
	gap: clamp(1.75rem, 4vw, 3.5rem);
	align-items: start;
}

.home-process__timeline {
	list-style: none;
}

.home-process__step p {
	margin: 0;
	font-size: 1.04rem;
	color: rgba(16, 32, 51, 0.8);
}

.home-trust {
	grid-column: 1 / -1;
	margin-top: 0.75rem;
	padding: clamp(1.5rem, 3vw, 2.4rem);
	border-radius: 2rem;
	background: linear-gradient(135deg, rgba(17, 38, 58, 0.98), rgba(15, 34, 51, 0.98));
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow: var(--ea-shadow);
}

.home-trust .section-heading__title,
.home-cta__copy h2,
.home-trust__item h3 {
	color: var(--ea-white);
}

.home-trust__lead,
.home-trust__item p,
.home-cta__copy p,
.home-cta__meta-label {
	color: rgba(255, 255, 255, 0.76);
}

.home-trust__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 1.5rem;
	margin-top: 1.75rem;
}

.home-trust__item {
	padding: 1rem 0;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.home-trust__item p {
	margin: 0;
}

.home-trust .button--secondary {
	background: rgba(255, 255, 255, 0.08);
	color: var(--ea-white);
	border: 1px solid rgba(255, 255, 255, 0.14);
}

.home-cta {
	padding-top: 1rem;
}

.home-cta__panel {
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	padding: clamp(1.6rem, 3vw, 2.35rem);
	border-radius: 2rem;
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow: var(--ea-shadow);
}

.home-cta__panel::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(15, 34, 51, 0.96) 0%, rgba(15, 34, 51, 0.82) 45%, rgba(15, 34, 51, 0.92) 100%),
		url("../images/product-legacy-1.png") center/cover no-repeat;
}

.home-cta__copy,
.home-cta__meta {
	position: relative;
	z-index: 1;
}

.home-cta__copy {
	max-width: 36rem;
}

.home-cta__copy h2 {
	margin: 0 0 0.85rem;
	font-family: "Sora", sans-serif;
	font-size: clamp(2rem, 3vw, 3rem);
	line-height: 1.08;
}

.home-cta__copy p {
	margin: 0;
}

.home-cta__meta {
	display: grid;
	gap: 0.75rem;
	justify-items: start;
}

.home-cta__meta-label {
	margin-bottom: 0;
}

.home-cta__email {
	font-size: 1.15rem;
	color: var(--ea-white);
}

@keyframes homeFloat {
	0%,
	100% {
		transform: translateY(0) scale(1.04);
	}

	50% {
		transform: translateY(-10px) scale(1.04);
	}
}

.section {
	padding: 5rem 0;
}

.section--surface {
	background: rgba(255, 255, 255, 0.5);
	border-top: 1px solid rgba(16, 32, 51, 0.05);
	border-bottom: 1px solid rgba(16, 32, 51, 0.05);
}

.section--cta {
	padding-top: 2rem;
}

.section-heading {
	max-width: 62rem;
	margin-bottom: 2rem;
}

.section-heading__title {
	font-size: clamp(2rem, 3vw, 3rem);
	color: var(--ea-deep);
}

.section-heading__lead {
	color: rgba(16, 32, 51, 0.72);
	font-size: 1.05rem;
}

.card-grid {
	display: grid;
	gap: 1.25rem;
}

.card-grid > .wp-block-group__inner-container,
.split-section > .wp-block-group__inner-container,
.timeline > .wp-block-group__inner-container,
.contact-layout > .wp-block-group__inner-container {
	display: inherit;
	grid-template-columns: inherit;
	gap: inherit;
	align-items: inherit;
}

.card-grid--three {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.card-grid--two {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.card-grid--four {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.card-grid--five {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.feature-card,
.office-card,
.reference-panel,
.stat-panel,
.form-panel,
.cta-banner {
	padding: 1.6rem;
	background: var(--ea-white);
	border: 1px solid var(--ea-line);
}

.feature-card h3,
.office-card h3,
.reference-panel h3,
.stat-panel h3 {
	margin: 0 0 0.7rem;
	font-family: "Sora", sans-serif;
	font-size: 1.15rem;
	color: var(--ea-deep);
}

.feature-card p,
.office-card p,
.reference-panel p,
.stat-panel p,
.form-panel p {
	color: rgba(16, 32, 51, 0.74);
}

.feature-card--accent {
	background: linear-gradient(180deg, rgba(22, 50, 75, 0.98), rgba(16, 32, 51, 1));
	border-color: rgba(255, 255, 255, 0.08);
}

.feature-card--accent h3,
.feature-card--accent p {
	color: var(--ea-white);
}

.split-section {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 0.92fr);
	gap: 2rem;
	align-items: center;
}

.split-section--reverse .split-section__content {
	order: 2;
}

.split-section--reverse .split-section__visual {
	order: 1;
}

.step-list {
	list-style: none;
	display: grid;
	gap: 0.9rem;
	counter-reset: steps;
}

.step-list__item {
	position: relative;
	padding: 1.2rem 1.2rem 1.2rem 4.25rem;
	border-radius: var(--ea-radius-md);
	background: var(--ea-white);
	border: 1px solid var(--ea-line);
}

.step-list__item::before {
	counter-increment: steps;
	content: counter(steps);
	position: absolute;
	top: 50%;
	left: 1.15rem;
	transform: translateY(-50%);
	display: grid;
	place-items: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--ea-accent), var(--ea-accent-dark));
	color: var(--ea-white);
	font-family: "Sora", sans-serif;
	font-weight: 700;
}

.timeline {
	display: grid;
	gap: 1rem;
}

.timeline__item {
	position: relative;
	padding: 1.5rem 1.5rem 1.5rem 5rem;
	border-radius: var(--ea-radius-md);
	background: var(--ea-white);
	border: 1px solid var(--ea-line);
}

.timeline__index {
	position: absolute;
	top: 1.25rem;
	left: 1.25rem;
	margin: 0;
	font-family: "Sora", sans-serif;
	font-size: 1.3rem;
	font-weight: 800;
	color: var(--ea-accent);
}

.timeline__item h3 {
	margin: 0 0 0.6rem;
	font-family: "Sora", sans-serif;
	font-size: 1.15rem;
}

.section-actions {
	margin-top: 1.75rem;
}

.prose-stack,
.generic-page .prose {
	max-width: 72ch;
}

.lead-paragraph {
	font-size: 1.08rem;
	color: rgba(16, 32, 51, 0.8);
}

.office-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.25rem;
}

.office-card a {
	color: var(--ea-accent-dark);
	font-weight: 700;
}

.contact-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr);
	gap: 1.5rem;
}

.contact-layout__offices {
	display: grid;
}

.form-panel {
	background: linear-gradient(180deg, #ffffff 0%, #f6f9f8 100%);
	min-height: 100%;
}

.form-panel__placeholder {
	display: grid;
	gap: 0.8rem;
}

.reference-panel,
.stat-panel {
	background: linear-gradient(180deg, #ffffff 0%, #f0f6f6 100%);
}

.cta-banner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	background: linear-gradient(135deg, var(--ea-deep), #214a6d);
	color: var(--ea-white);
	border-color: rgba(255, 255, 255, 0.08);
}

.site-footer {
	padding: 3rem 0 2rem;
	background: linear-gradient(180deg, #102033 0%, #152d44 100%);
	color: rgba(255, 255, 255, 0.82);
}

.site-footer__top {
	display: grid;
	grid-template-columns: minmax(0, 1.3fr) minmax(240px, 0.7fr);
	gap: 2rem;
	padding-bottom: 2rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.site-footer__brand h2,
.site-footer__links h3 {
	color: var(--ea-white);
}

.site-footer .menu-item a,
.site-footer .language-switcher__link {
	color: rgba(255, 255, 255, 0.82);
}

.site-footer__offices {
	padding: 2rem 0;
}

.site-footer__offices .office-card {
	background: rgba(255, 255, 255, 0.05);
	border-color: rgba(255, 255, 255, 0.08);
}

.site-footer__offices .office-card h3,
.site-footer__offices .office-card p,
.site-footer__offices .office-card a {
	color: var(--ea-white);
}

.site-footer__bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding-top: 1.25rem;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.generic-page {
	padding: 3rem 0 5rem;
}

.prose h1 {
	font-family: "Sora", sans-serif;
	font-size: clamp(2rem, 3vw, 3rem);
	color: var(--ea-deep);
}

.reveal {
	opacity: 1;
	transform: translateY(18px);
	transition: transform 0.5s ease;
}

.reveal.is-visible {
	transform: translateY(0);
}

.reveal--delay-1 {
	transition-delay: 0.05s;
}

.reveal--delay-2 {
	transition-delay: 0.12s;
}

.reveal--delay-3 {
	transition-delay: 0.2s;
}

.reveal--delay-4 {
	transition-delay: 0.28s;
}

.reveal--delay-5 {
	transition-delay: 0.36s;
}

.reveal--delay-6 {
	transition-delay: 0.44s;
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.reveal {
		opacity: 1;
		transform: none;
		transition: none;
	}

	.home-hero__frame img[data-depth] {
		transform: none;
	}

	.home-hero__frame--secondary img {
		animation: none;
	}
}

@media (max-width: 1080px) {
	.card-grid--five,
	.card-grid--four {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.card-grid--three,
	.office-grid,
	.contact-layout,
	.split-section,
	.site-footer__top,
	.hero__inner,
	.page-hero__inner {
		grid-template-columns: 1fr;
	}

	.home-hero__inner,
	.home-network__grid,
	.home-capability__grid,
	.home-process__grid,
	.home-trust__grid {
		grid-template-columns: 1fr;
	}

	.home-hero__inner {
		min-height: auto;
		width: min(100%, calc(100% - 2rem));
	}

	.home-network__intro,
	.home-capability__intro {
		position: static;
	}

	.home-hero__visual {
		min-height: auto;
		padding-bottom: 8rem;
	}

	.home-hero__frame--primary {
		margin-left: 0;
	}

	.home-hero__panel {
		right: auto;
		left: 50%;
		top: auto;
		bottom: 0;
		width: min(22rem, calc(100% - 1rem));
		transform: translateX(-50%);
	}

	.home-network__context,
	.home-cta__panel {
		flex-direction: column;
		align-items: flex-start;
	}
}

@media (max-width: 960px) {
	.menu-toggle {
		display: inline-flex;
	}

	.site-header__nav {
		position: absolute;
		top: calc(100% + 0.5rem);
		left: 1rem;
		right: 1rem;
		display: none;
		flex-direction: column;
		align-items: stretch;
		padding: 1rem;
		border-radius: 1.2rem;
		background: rgba(252, 251, 247, 0.98);
		box-shadow: var(--ea-shadow);
	}

	.site-header__nav.is-open {
		display: flex;
	}

	.menu--primary,
	.menu--fallback,
	.menu--footer,
	.site-header__actions,
	.cta-banner,
	.site-footer__bottom {
		flex-direction: column;
		align-items: flex-start;
	}

	.hero,
	.page-hero {
		padding-top: 5rem;
	}
}

@media (max-width: 640px) {
	.site-main {
		padding-top: 5rem;
	}

	.hero__title,
	.page-hero__title,
	.section-heading__title,
	.prose h1 {
		max-width: none;
	}

	.card-grid--five,
	.card-grid--four,
	.card-grid--three,
	.card-grid--two {
		grid-template-columns: 1fr;
	}

	.feature-card,
	.office-card,
	.reference-panel,
	.stat-panel,
	.form-panel,
	.cta-banner,
	.step-list__item,
	.timeline__item {
		padding: 1.25rem;
	}

	.timeline__item {
		padding-left: 4rem;
	}

	.home-hero__inner {
		width: min(100%, calc(100% - 1.5rem));
	}

	.home-hero__title {
		font-size: clamp(2.7rem, 14vw, 4rem);
	}

	.home-hero__metrics,
	.home-trust__grid {
		grid-template-columns: 1fr;
	}

	.home-hero__visual {
		padding-bottom: 9.5rem;
	}

	.home-hero__frame--secondary {
		width: min(13rem, 48%);
	}

	.home-hero__panel {
		width: calc(100% - 1rem);
	}

	.home-cta__email {
		font-size: 1rem;
	}
}

body.home {
	background: var(--ea-body-bg);
}

body.home .site-main {
	overflow: hidden;
}

body.home .site-header {
	background: var(--ea-header-bg);
}

.home-poster {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.03fr) minmax(340px, 0.97fr);
	gap: clamp(2rem, 4vw, 4.5rem);
	width: min(1480px, calc(100% - 3rem));
	margin: 0 auto;
	padding: clamp(7.6rem, 10vw, 10rem) 0 3rem;
}

.home-poster::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: min(46vw, 54rem);
	height: clamp(21rem, 39vw, 35rem);
	background: linear-gradient(135deg, #15314a 0%, #0d2134 100%);
	border-bottom-left-radius: 2.5rem;
	box-shadow: 0 30px 72px rgba(10, 24, 36, 0.16);
}

.home-poster__top,
.home-poster__image,
.home-poster__proofs {
	position: relative;
	z-index: 1;
	width: auto;
	margin: 0;
}

.home-poster__top {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.75rem;
	align-content: end;
	min-height: clamp(26rem, 38vw, 40rem);
}

.home-poster__copy {
	max-width: 52rem;
}

.home-poster__eyebrow,
.home-poster__aside-label,
.home-poster__caption-label,
.home-focus__side-label,
.home-endcap__email-label,
.home-essay__context-label {
	margin: 0 0 0.8rem;
	font-family: "Sora", sans-serif;
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--ea-gold);
}

.home-poster__title,
.home-essay__title,
.home-operations__title,
.home-endcap__copy h2 {
	margin: 0;
	font-family: "Sora", sans-serif;
	font-weight: 700;
	letter-spacing: -0.055em;
	line-height: 0.93;
	color: var(--ea-deep);
}

.home-poster__title {
	max-width: 9.2ch;
	font-size: clamp(3.4rem, 7vw, 7.8rem);
}

.home-poster__lead {
	max-width: 34rem;
	margin: 1.5rem 0 0;
	font-size: clamp(1.08rem, 1.55vw, 1.28rem);
	color: rgba(16, 32, 51, 0.76);
}

.home-poster__copy .button-group {
	margin-top: 1.8rem;
}

.home-poster .button--secondary {
	background: transparent;
	border: 1px solid rgba(16, 32, 51, 0.12);
}

.home-poster__aside {
	display: grid;
	gap: 0.8rem;
	max-width: 18.5rem;
	padding-top: 1rem;
	border-top: 1px solid rgba(16, 32, 51, 0.12);
}

.home-poster__aside-label,
.home-poster__caption-label,
.home-focus__side-label,
.home-endcap__email-label,
.home-essay__context-label {
	margin-bottom: 0;
}

.home-poster__aside-list {
	list-style: none;
	display: grid;
}

.home-poster__aside-list li {
	display: grid;
	gap: 0.22rem;
	padding: 0.95rem 0;
	border-bottom: 1px solid rgba(16, 32, 51, 0.1);
}

.home-poster__aside-value {
	font-family: "Sora", sans-serif;
	font-size: 1.04rem;
	font-weight: 700;
	color: var(--ea-deep);
}

.home-poster__aside-text {
	color: rgba(16, 32, 51, 0.7);
}

.home-poster__inline-link {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	font-family: "Sora", sans-serif;
	font-weight: 700;
	color: var(--ea-accent-dark);
}

.home-poster__inline-link::after {
	content: "\2192";
	font-size: 0.95em;
}

.home-poster__image {
	position: relative;
	grid-column: 2;
	grid-row: 1;
	align-self: start;
	overflow: hidden;
	min-height: clamp(26rem, 39vw, 40rem);
	margin-top: 0;
	border-radius: 2.25rem;
	box-shadow: 0 36px 84px rgba(10, 24, 36, 0.18);
}

.home-poster__image::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(90deg, rgba(11, 26, 39, 0.42) 0%, rgba(11, 26, 39, 0.08) 34%, rgba(11, 26, 39, 0.08) 100%);
}

.home-poster__image > img,
.home-essay__visual img,
.home-endcap__image img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.home-poster__image > img[data-depth],
.home-essay__visual img[data-depth],
.home-endcap__image img[data-depth] {
	transform: translateY(var(--ea-depth-shift, 0px)) scale(1.04);
	transform-origin: center;
	transition: transform 0.3s ease-out;
	will-change: transform;
}

.home-poster__caption {
	position: absolute;
	left: clamp(1.25rem, 3vw, 2rem);
	bottom: clamp(1.25rem, 3vw, 2rem);
	z-index: 2;
	max-width: min(28rem, calc(100% - 2.5rem));
	padding: 1rem 1.1rem;
	border-radius: 1.2rem;
	background: rgba(248, 244, 236, 0.92);
	backdrop-filter: blur(14px);
	border: 1px solid rgba(255, 255, 255, 0.48);
}

.home-poster__caption-text {
	margin: 0.35rem 0 0;
	font-size: 0.98rem;
	color: rgba(16, 32, 51, 0.76);
}

.home-poster__proofs {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
	margin-top: 1.1rem;
	padding-top: 1rem;
	border-top: 1px solid rgba(16, 32, 51, 0.1);
}

.home-poster__proof {
	display: grid;
	gap: 0.2rem;
	padding-right: 1rem;
}

.home-poster__proof + .home-poster__proof {
	padding-left: 1.5rem;
	border-left: 1px solid rgba(16, 32, 51, 0.08);
}

.home-poster__proof-value,
.home-poster__proof-label {
	margin: 0;
	font-family: "Sora", sans-serif;
}

.home-poster__proof-value {
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 700;
	color: var(--ea-deep);
}

.home-poster__proof-label {
	font-size: 0.88rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(16, 32, 51, 0.46);
}

.home-poster__proof-text {
	margin: 0.2rem 0 0;
	max-width: 22rem;
	color: rgba(16, 32, 51, 0.72);
}

.home-essay {
	padding-top: 6rem;
}

.home-essay__grid,
.home-focus__grid,
.home-operations__grid {
	display: grid;
	gap: clamp(2rem, 4vw, 4.5rem);
}

.home-essay__grid {
	grid-template-columns: minmax(260px, 0.8fr) minmax(0, 1.2fr);
	align-items: start;
}

.home-essay__intro,
.home-focus__side {
	position: sticky;
	top: 7rem;
}

.home-essay__title {
	max-width: 9.2ch;
	margin-bottom: 1rem;
	font-size: clamp(2.45rem, 4.6vw, 4.8rem);
}

.home-essay__lead,
.home-operations__lead,
.home-focus__side p,
.home-endcap__copy > p,
.home-essay__copy p,
.home-focus__copy p,
.home-operations__trust-row p {
	color: rgba(16, 32, 51, 0.72);
}

.home-essay__lead {
	max-width: 25rem;
	margin: 0;
	font-size: 1.08rem;
}

.home-essay__body {
	display: grid;
	gap: 1.75rem;
}

.home-essay__visual {
	position: relative;
	overflow: hidden;
	aspect-ratio: 16 / 10;
	border-radius: 1.85rem;
	box-shadow: 0 26px 60px rgba(10, 24, 36, 0.14);
}

.home-essay__visual::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(16, 32, 51, 0.04), rgba(16, 32, 51, 0.16));
}

.home-essay__roles,
.home-focus__list,
.home-operations__timeline,
.home-operations__trust {
	border-top: 1px solid var(--ea-line);
}

.home-essay__row,
.home-focus__row,
.home-operations__step {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 1.2rem;
	padding: 1.35rem 0;
	border-bottom: 1px solid var(--ea-line);
	transition: transform 0.24s ease, border-color 0.24s ease;
}

.home-essay__row:hover,
.home-focus__row:hover,
.home-operations__step:hover {
	transform: translateX(10px);
	border-color: rgba(27, 139, 119, 0.28);
}

.home-essay__index,
.home-focus__index,
.home-operations__step-index,
.home-focus__steps span {
	font-family: "Sora", sans-serif;
	font-size: 1.05rem;
	font-weight: 700;
	color: var(--ea-gold);
}

.home-essay__copy h3,
.home-focus__copy h3,
.home-operations__trust-row h3,
.home-focus__side h3 {
	margin: 0 0 0.45rem;
	font-family: "Sora", sans-serif;
	color: var(--ea-deep);
}

.home-essay__copy p,
.home-focus__copy p,
.home-operations__trust-row p {
	margin: 0;
}

.home-essay__context {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	padding-top: 1.25rem;
	border-top: 1px solid var(--ea-line);
}

.home-essay__context-text {
	margin: 0.45rem 0 0;
	max-width: 36rem;
	color: rgba(16, 32, 51, 0.72);
}

.home-focus {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(246, 241, 231, 0.7));
}

.home-focus__header {
	max-width: 58rem;
	margin-bottom: clamp(2rem, 4vw, 3rem);
}

.home-focus__grid {
	grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);
	align-items: start;
}

.home-focus__side {
	padding-left: clamp(1.5rem, 3vw, 2.4rem);
	border-left: 1px solid var(--ea-line);
}

.home-focus__side h3 {
	font-size: clamp(1.8rem, 3vw, 2.5rem);
	line-height: 1;
	letter-spacing: -0.04em;
}

.home-focus__side p {
	margin: 0;
}

.home-focus__steps {
	list-style: none;
	display: grid;
	gap: 0.85rem;
	margin: 1.5rem 0 1.75rem;
}

.home-focus__steps li {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 1rem;
	align-items: start;
	padding-top: 0.9rem;
	border-top: 1px solid var(--ea-line);
}

.home-focus__steps p {
	margin: 0;
	color: rgba(16, 32, 51, 0.72);
}

.home-operations__grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
}

.home-operations__column {
	padding-top: 1.25rem;
	border-top: 1px solid var(--ea-line);
}

.home-operations__title {
	max-width: 11ch;
	margin-bottom: 1rem;
	font-size: clamp(2.2rem, 3.8vw, 3.8rem);
}

.home-operations__lead {
	max-width: 36rem;
	margin: 0;
	font-size: 1.05rem;
}

.home-operations__timeline,
.home-operations__trust {
	list-style: none;
	display: grid;
	gap: 0;
	margin-top: 2rem;
}

.home-operations__step p {
	margin: 0;
	color: rgba(16, 32, 51, 0.78);
}

.home-operations__trust-row {
	padding: 1.25rem 0;
	border-bottom: 1px solid var(--ea-line);
}

.home-endcap__panel {
	position: relative;
	overflow: hidden;
	display: grid;
	grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
	min-height: 34rem;
	border-radius: 2.2rem;
	background: linear-gradient(135deg, #11263a 0%, #0d2233 100%);
	box-shadow: 0 30px 70px rgba(10, 24, 36, 0.2);
}

.home-endcap__image {
	position: relative;
	min-height: 100%;
}

.home-endcap__image::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(90deg, rgba(17, 38, 58, 0.08) 0%, rgba(17, 38, 58, 0.5) 100%);
}

body.lang-zh-cn .home-poster__title {
	max-width: 7ch;
	font-size: clamp(2.9rem, 6vw, 5.8rem);
	letter-spacing: -0.04em;
}

body.lang-zh-cn .home-essay__title,
body.lang-zh-cn .home-operations__title,
body.lang-zh-cn .home-endcap__copy h2 {
	letter-spacing: -0.035em;
}

.home-endcap__copy {
	display: grid;
	align-content: center;
	gap: 0.8rem;
	padding: clamp(2rem, 5vw, 4rem);
	color: var(--ea-white);
}

.home-endcap__copy h2 {
	max-width: 9ch;
	font-size: clamp(2.4rem, 4vw, 4.4rem);
	color: var(--ea-white);
}

.home-endcap__copy > p {
	max-width: 30rem;
	margin: 0;
	color: rgba(255, 255, 255, 0.76);
}

.home-endcap__email-label {
	margin-top: 0.5rem;
	color: rgba(255, 255, 255, 0.58);
}

.home-endcap__email {
	font-family: "Sora", sans-serif;
	font-size: clamp(1.08rem, 1.7vw, 1.45rem);
	font-weight: 700;
	color: var(--ea-white);
}

.home-endcap__copy .button-group {
	margin-top: 0.85rem;
}

.home-endcap__copy .button--secondary {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.16);
	color: var(--ea-white);
}

@media (prefers-reduced-motion: reduce) {
	.home-poster__image > img[data-depth],
	.home-essay__visual img[data-depth],
	.home-endcap__image img[data-depth] {
		transform: none;
		transition: none;
	}
}

@media (max-width: 1080px) {
	.home-poster {
		grid-template-columns: 1fr;
		width: min(100%, calc(100% - 2rem));
		gap: 1.5rem;
	}

	.home-poster::before {
		display: none;
	}

	.home-poster__image {
		grid-column: auto;
		grid-row: auto;
	}

	.home-poster__proofs {
		grid-column: auto;
	}

	.home-poster__top,
	.home-essay__grid,
	.home-focus__grid,
	.home-operations__grid,
	.home-endcap__panel {
		grid-template-columns: 1fr;
	}

	.home-poster__top,
	.home-poster__image,
	.home-poster__proofs {
		width: auto;
	}

	.home-poster__top {
		min-height: auto;
	}

	.home-poster__aside,
	.home-essay__intro,
	.home-focus__side {
		position: static;
	}

	.home-poster__image {
		min-height: 23rem;
	}

	.home-poster__proofs {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1rem 1.25rem;
	}

	.home-poster__proof {
		padding-right: 0;
	}

	.home-poster__proof + .home-poster__proof {
		padding-left: 0;
		border-left: 0;
	}

	.home-focus__side {
		padding-top: 1.5rem;
		padding-left: 0;
		border-top: 1px solid var(--ea-line);
		border-left: 0;
	}

	.home-endcap__image {
		min-height: 22rem;
	}
}

@media (max-width: 640px) {
	.home-poster {
		width: min(100%, calc(100% - 1.5rem));
		padding-top: 7rem;
	}

	.home-poster__top,
	.home-poster__image,
	.home-poster__proofs {
		width: auto;
	}

	.home-poster__title {
		font-size: clamp(3rem, 14vw, 4.8rem);
	}

	.home-poster__lead,
	.home-essay__lead,
	.home-operations__lead,
	.home-focus__side p,
	.home-endcap__copy > p {
		font-size: 1rem;
	}

	.home-poster__image {
		min-height: 20rem;
		border-radius: 1.4rem;
	}

	.home-poster__caption {
		max-width: calc(100% - 1.5rem);
		padding: 0.85rem 0.95rem;
	}

	.home-poster__proofs {
		grid-template-columns: 1fr;
	}

	.home-essay__title,
	.home-operations__title,
	.home-endcap__copy h2 {
		max-width: none;
	}

	.home-essay__visual {
		aspect-ratio: 4 / 5;
	}

	.home-essay__row,
	.home-focus__row,
	.home-operations__step,
	.home-focus__steps li {
		grid-template-columns: 1fr;
		gap: 0.55rem;
	}

	.home-endcap__panel {
		min-height: auto;
	}

	.home-endcap__image {
		min-height: 18rem;
	}

	.home-endcap__copy {
		padding: 1.5rem;
	}

	.home-endcap__email {
		font-size: 1rem;
		word-break: break-all;
	}
}

.page-hero {
	overflow: hidden;
	padding: clamp(6.5rem, 8vw, 7.8rem) 0 2.75rem;
	background:
		radial-gradient(circle at top left, rgba(144, 190, 63, 0.12), transparent 22%),
		radial-gradient(circle at 84% 8%, rgba(13, 121, 62, 0.1), transparent 20%),
		linear-gradient(180deg, #fcfbf7 0%, #f5f3ec 56%, #fcfbf8 100%);
}

.page-hero::before {
	inset: 0 0 auto auto;
	width: min(34vw, 30rem);
	height: 100%;
	background: linear-gradient(180deg, rgba(11, 93, 49, 0.96) 0%, rgba(23, 49, 38, 0.98) 100%);
	border-bottom-left-radius: 2.1rem;
}

.page-hero__inner {
	grid-template-columns: minmax(0, 0.94fr) minmax(340px, 1.06fr);
	gap: clamp(2rem, 4vw, 4rem);
	align-items: center;
	min-height: clamp(28rem, 38vw, 32rem);
}

.page-hero__content {
	padding-bottom: 0;
	color: var(--ea-deep);
}

.page-hero__title {
	max-width: 8.4ch;
	margin-bottom: 1rem;
	font-size: clamp(2.6rem, 4.7vw, 4.7rem);
	letter-spacing: -0.055em;
	line-height: 0.94;
	color: var(--ea-deep);
}

.page-hero__lead {
	max-width: 32rem;
	font-size: 1.03rem;
	line-height: 1.72;
	color: rgba(16, 32, 51, 0.72);
}

.page-hero__content .button-group {
	margin-top: 1.8rem;
}

.page-hero__content .button--secondary {
	background: transparent;
	border: 1px solid rgba(16, 32, 51, 0.12);
}

.page-hero__visual {
	align-self: stretch;
	display: flex;
}

.page-hero .hero-card {
	position: relative;
	width: 100%;
	min-height: clamp(24rem, 36vw, 33rem);
	border-radius: 1.45rem;
	background: #173126;
	box-shadow: 0 30px 72px rgba(10, 24, 36, 0.14);
}

.page-hero .hero-card::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(8, 22, 16, 0.02), rgba(8, 22, 16, 0.22));
}

.page-hero .hero-card img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transform: translateY(var(--ea-depth-shift, 0px)) scale(1.015);
	transform-origin: center;
	transition: transform 0.3s ease-out;
	will-change: transform;
}

body.lang-zh-cn .page-hero__title {
	max-width: 7.2ch;
	font-size: clamp(2.45rem, 4.4vw, 4.45rem);
	letter-spacing: -0.04em;
}

.home-atlas__header {
	max-width: 60rem;
	margin-bottom: clamp(2rem, 4vw, 3rem);
}

.home-atlas__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.16fr) minmax(300px, 0.84fr);
	gap: 1.25rem;
	align-items: stretch;
}

.home-atlas__panel {
	position: relative;
	overflow: hidden;
	min-height: 17rem;
	border-radius: 1.85rem;
	box-shadow: 0 26px 60px rgba(10, 24, 36, 0.14);
}

.home-atlas__panel--primary {
	grid-row: 1 / span 2;
	min-height: 36rem;
}

.home-atlas__panel::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(10, 24, 36, 0.06), rgba(10, 24, 36, 0.46));
}

.home-atlas__panel img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: translateY(var(--ea-depth-shift, 0px)) scale(1.03);
	transform-origin: center;
	transition: transform 0.3s ease-out;
	will-change: transform;
}

.home-atlas__caption {
	position: absolute;
	left: 1.15rem;
	right: 1.15rem;
	bottom: 1.15rem;
	z-index: 1;
	display: grid;
	gap: 0.3rem;
	padding: 0.95rem 1.05rem;
	border-radius: 1.15rem;
	background: rgba(248, 244, 236, 0.9);
	backdrop-filter: blur(12px);
}

.home-atlas__label {
	margin: 0;
	font-family: "Sora", sans-serif;
	font-size: 0.74rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--ea-gold);
}

.home-atlas__title {
	margin: 0;
	font-family: "Sora", sans-serif;
	font-size: 1.12rem;
	line-height: 1.12;
	color: var(--ea-deep);
}

.home-atlas__text {
	margin: 0;
	line-height: 1.55;
	color: rgba(16, 32, 51, 0.74);
}

@media (prefers-reduced-motion: reduce) {
	.page-hero .hero-card img,
	.home-atlas__panel img {
		transform: none;
		transition: none;
	}
}

@media (max-width: 1080px) {
	.page-hero::before {
		display: none;
	}

	.page-hero__inner,
	.home-atlas__grid {
		grid-template-columns: 1fr;
		min-height: auto;
	}

	.page-hero .hero-card {
		min-height: 22rem;
	}

	.home-atlas__panel--primary {
		grid-row: auto;
		min-height: 24rem;
	}
}

@media (max-width: 640px) {
	.page-hero {
		padding-top: 7rem;
	}

	.page-hero__title {
		max-width: none;
		font-size: clamp(2.35rem, 12vw, 3.8rem);
	}

	.page-hero .hero-card {
		min-height: 19rem;
		border-radius: 1.4rem;
	}

	.home-atlas__panel,
	.home-atlas__panel--primary {
		min-height: 18rem;
		border-radius: 1.3rem;
	}

	.home-atlas__caption {
		left: 0.85rem;
		right: 0.85rem;
		bottom: 0.85rem;
	}
}

/* 2026-04 visual cleanup: remove gradients and decorative blur from the active editorial system */
body,
body.home,
.page-hero,
.section--surface {
	background-image: none;
}

body,
body.home {
	background-color: var(--ea-body-bg);
}

.site-header,
body.home .site-header {
	background: var(--ea-header-bg);
	backdrop-filter: none;
}

.brand__mark {
	background: var(--ea-accent);
	box-shadow: 0 14px 34px rgba(9, 85, 44, 0.18);
}

.button--primary,
.wp-block-button.button--primary .wp-block-button__link {
	background: var(--ea-accent);
	box-shadow: 0 14px 30px rgba(9, 85, 44, 0.18);
}

.page-hero {
	background-color: var(--ea-body-bg);
}

.page-hero::before {
	background: #173126;
}

.page-hero .hero-card::after,
.home-atlas__panel::after {
	background: rgba(8, 22, 16, 0.18);
}

.home-atlas__caption {
	background: rgba(247, 245, 239, 0.96);
	backdrop-filter: none;
}

.site-footer,
.feature-card--accent,
.home-trust,
.home-endcap__panel,
.home-focus {
	background-image: none;
}

.site-footer,
.feature-card--accent,
.home-trust,
.home-endcap__panel {
	background-color: #173126;
}

.home-focus {
	background-color: #f8f6ef;
}

.hero__proof li::before,
.check-list li::before,
.stat-panel__list li::before,
.step-list__item::before {
	background: var(--ea-gold);
}

.home-poster::before,
.home-cta__panel::before {
	background-image: none;
	background-color: #173126;
}

.home-poster__image::after,
.home-essay__visual::after,
.home-endcap__image::after {
	background: rgba(8, 22, 16, 0.14);
}

.home-poster__caption {
	background: rgba(247, 245, 239, 0.96);
	backdrop-filter: none;
}

/* Header and footer customizer layer */
body {
	font-family: var(--ea-body-font);
	color: var(--ea-body-text);
	background: var(--ea-body-bg);
}

h1,
h2,
h3,
h4,
h5,
h6,
.brand,
.button,
button.button,
.wp-block-button.button--primary .wp-block-button__link,
.wp-block-button.button--secondary .wp-block-button__link,
.hero__eyebrow,
.page-hero__eyebrow,
.section-heading__eyebrow,
.site-footer__eyebrow,
.office-card__role {
	font-family: var(--ea-display-font);
}

.site-main {
	padding-top: var(--ea-header-offset);
}

.site-header__frame,
.site-footer__frame {
	width: min(var(--ea-container), calc(100% - 2rem));
	margin: 0 auto;
}

.site-header__bar,
.site-footer__bar {
	position: relative;
}

.site-header__bar {
	background: var(--ea-header-bar-bg);
	color: var(--ea-header-bar-text);
	border-top: 1px solid var(--ea-header-border);
}

.site-footer__bar {
	background: var(--ea-footer-bar-bg);
	color: var(--ea-footer-bar-text);
	margin-bottom: clamp(1rem, 2vw, 1.5rem);
}

.site-header__bar-inner,
.site-footer__bar-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	flex-wrap: wrap;
}

.site-header__bar-inner {
	padding-block: var(--ea-header-bar-padding-y);
}

.site-footer__bar-inner {
	padding-block: var(--ea-footer-bar-padding-y);
}

.site-header__bar-text,
.site-footer__bar-text {
	margin: 0;
	max-width: 72ch;
}

.site-header__bar-link,
.site-footer__bar-link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-weight: 700;
	text-decoration: none;
	color: inherit;
}

body.header-bar-align-start .site-header__bar-inner,
body.footer-bar-align-start .site-footer__bar-inner {
	justify-content: flex-start;
}

body.header-bar-align-center .site-header__bar-inner,
body.footer-bar-align-center .site-footer__bar-inner {
	justify-content: center;
	text-align: center;
}

body.header-bar-align-end .site-header__bar-inner,
body.footer-bar-align-end .site-footer__bar-inner {
	justify-content: flex-end;
	text-align: right;
}

.site-header__desktop {
	display: block;
}

.site-header__mobile {
	display: none;
}

.site-header__columns {
	display: grid;
	grid-template-columns: var(--ea-header-columns-desktop, 1fr);
	align-items: center;
	column-gap: var(--ea-header-nav-gap);
	min-height: var(--ea-header-height);
	padding-block: var(--ea-header-padding-y);
}

.site-header__column {
	display: flex;
	flex-wrap: wrap;
	min-width: 0;
}

.site-header__module {
	display: flex;
	align-items: center;
	min-width: 0;
	max-width: 100%;
	position: relative;
	will-change: transform;
}

.site-header__module--logo .brand,
.site-header__module--logo .custom-logo-link {
	max-width: 100%;
}

.site-header__module--menu {
	flex: 1 1 auto;
	width: 100%;
}

.site-header__module--menu .main-nav {
	width: 100%;
}

.site-header__module--menu .menu--primary,
.site-header__module--menu .menu--fallback {
	width: 100%;
}

.site-header__desktop .main-nav .menu--primary,
.site-header__desktop .main-nav .menu--fallback {
	flex-wrap: nowrap;
	white-space: nowrap;
}

.site-header__desktop .main-nav .menu-item {
	flex: 0 0 auto;
	min-width: 0;
}

.site-header__desktop .main-nav .menu-item a {
	white-space: nowrap;
}

.site-header__column .site-header__module--menu {
	text-align: var(--ea-menu-inline-text-align, inherit);
}

.site-header__column .site-header__module--menu .main-nav {
	display: flex;
	justify-content: var(--ea-menu-inline-justify, flex-start);
	text-align: var(--ea-menu-inline-text-align, inherit);
}

.site-header__column .site-header__module--menu .main-nav .menu--primary,
.site-header__column .site-header__module--menu .main-nav .menu--fallback {
	justify-content: var(--ea-menu-inline-justify, flex-start);
	text-align: var(--ea-menu-inline-text-align, left);
}

.site-footer__columns {
	display: grid;
	grid-template-columns: var(--ea-footer-columns-desktop, 1fr);
	gap: var(--ea-footer-column-gap);
	align-items: start;
}

.site-footer__column {
	display: flex;
	min-width: 0;
}

.site-footer__module {
	min-width: 0;
	max-width: 100%;
	position: relative;
	will-change: transform;
}

.site-footer__module--brand,
.site-footer__module--bottom,
.site-footer__module--links,
.site-footer__module--offices {
	width: 100%;
}

.site-footer__module--bottom {
	padding-top: 1rem;
	border-top: 1px solid var(--ea-footer-line);
}

.site-footer__links .menu--footer,
.site-footer__links .menu--fallback {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.6rem;
}

.site-footer__module--offices .office-grid {
	grid-template-columns: 1fr;
}

body.header-width-contained .site-header__frame,
body.footer-width-contained .site-footer__frame {
	width: min(var(--ea-container), calc(100% - 2rem));
}

body.header-width-wide .site-header__frame,
body.footer-width-wide .site-footer__frame {
	width: min(var(--ea-wide-container), calc(100% - 2rem));
}

body.header-width-custom .site-header__frame {
	width: min(var(--ea-header-custom-width), calc(100% - 2rem));
}

body.footer-width-custom .site-footer__frame {
	width: min(var(--ea-footer-custom-width), calc(100% - 2rem));
}

body.header-width-full .site-header__frame,
body.footer-width-full .site-footer__frame {
	width: calc(100% - 2rem);
}

.site-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 2000;
	background: var(--ea-header-bg);
	border-bottom: var(--ea-header-divider-width) solid var(--ea-header-border);
	box-shadow: var(--ea-header-shadow);
	backdrop-filter: blur(var(--ea-header-blur));
}

body.admin-bar:not(.no-sticky-header) .site-header {
	top: 32px;
}

.site-header__nav,
.site-header__mobile,
.site-header__bar {
	position: relative;
	z-index: 2001;
}

body.home .site-header {
	background: var(--ea-header-bg);
}

body.is-front-page.home-header-transparent .site-main {
	padding-top: 0;
}

body.is-front-page.home-header-transparent .site-header:not(.is-scrolled) {
	background: transparent;
	border-bottom-color: transparent;
	box-shadow: none;
	backdrop-filter: none;
}

body.is-front-page.home-header-transparent .site-header:not(.is-scrolled) .menu-item a,
body.is-front-page.home-header-transparent .site-header:not(.is-scrolled) .site-header__contact,
body.is-front-page.home-header-transparent .site-header:not(.is-scrolled) .language-switcher__link,
body.is-front-page.home-header-transparent .site-header:not(.is-scrolled) .menu-toggle,
body.is-front-page.home-header-transparent .site-header:not(.is-scrolled) .brand__text strong,
body.is-front-page.home-header-transparent .site-header:not(.is-scrolled) .brand__text small {
	color: var(--ea-home-header-text);
}

body.is-front-page.home-header-transparent .site-header:not(.is-scrolled) .site-header__contact-label {
	color: var(--ea-home-header-muted);
}

body.is-front-page.home-header-transparent .site-header:not(.is-scrolled) .language-switcher {
	background: var(--ea-home-header-chip-bg);
}

body.is-front-page.home-header-transparent .site-header:not(.is-scrolled) .language-switcher__link.is-active {
	background: var(--ea-home-header-active-bg);
	color: var(--ea-home-header-text);
	box-shadow: none;
}

body.is-front-page.home-header-transparent .site-header:not(.is-scrolled) .menu-toggle span {
	background: var(--ea-home-header-text);
}

body.is-front-page.home-header-transparent .site-header:not(.is-scrolled) .site-header__cta--outline {
	border-color: var(--ea-home-header-outline);
	color: var(--ea-home-header-text);
}

body.is-front-page.home-header-transparent .site-header:not(.is-scrolled) .site-header__cta--soft {
	background: var(--ea-home-header-chip-bg);
	color: var(--ea-home-header-text);
}

body.no-sticky-header .site-header {
	position: relative;
	top: auto;
	left: auto;
	right: auto;
	backdrop-filter: none;
}

body.no-sticky-header .site-main {
	padding-top: 0;
}

.site-header__inner {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: clamp(1rem, 2vw, 2rem);
	min-height: var(--ea-header-height);
	padding-block: var(--ea-header-padding-y);
}

body.header-layout-right .site-header__inner {
	display: flex;
	justify-content: space-between;
}

.custom-logo-link {
	display: inline-flex;
	align-items: center;
}

.custom-logo-picture {
	display: inline-flex;
	align-items: center;
	max-width: 100%;
}

.custom-logo,
.custom-logo-link img {
	width: var(--ea-logo-width);
	max-width: 100%;
	height: auto;
	transform: translateY(var(--ea-header-logo-offset-y));
}

@media (max-width: 1180px) {
	.site-header .custom-logo-link--responsive img {
		width: auto !important;
		height: 58px;
		max-width: min(var(--ea-logo-width-mobile), 58px);
		max-height: 58px;
	}
}

.brand__mark {
	background: var(--ea-accent);
	box-shadow: 0 12px 26px rgba(9, 85, 44, 0.2);
}

.button,
button.button,
.wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: var(--ea-button-padding-y) var(--ea-button-padding-x);
	border: 1px solid transparent;
	border-radius: var(--ea-button-radius);
	font-family: var(--ea-button-font);
	font-size: var(--ea-button-font-size);
	font-weight: var(--ea-button-font-weight);
	letter-spacing: var(--ea-button-letter-spacing);
	text-transform: var(--ea-button-text-transform);
	cursor: pointer;
	transition:
		transform 220ms ease,
		box-shadow 220ms ease,
		background 220ms ease,
		border-color 220ms ease,
		color 220ms ease,
		opacity 220ms ease;
}

.button--primary,
.wp-block-button__link,
.wp-block-button.button--primary .wp-block-button__link {
	background: var(--ea-button-primary-bg);
	color: var(--ea-button-primary-text);
	border-color: var(--ea-button-primary-border);
	box-shadow: var(--ea-button-shadow);
}

.button--secondary,
.wp-block-button.button--secondary .wp-block-button__link {
	background: var(--ea-button-secondary-bg);
	color: var(--ea-button-secondary-text);
	border-color: var(--ea-button-secondary-border);
	box-shadow: var(--ea-button-secondary-shadow);
}

body.button-hover-lift .button:hover,
body.button-hover-lift button.button:hover,
body.button-hover-lift .wp-block-button__link:hover {
	transform: translateY(calc(var(--ea-button-hover-shift) * -1));
}

body.button-hover-scale .button:hover,
body.button-hover-scale button.button:hover,
body.button-hover-scale .wp-block-button__link:hover {
	transform: translateY(calc(var(--ea-button-hover-shift) * -0.5)) scale(1.02);
}

body.button-hover-glow .button:hover,
body.button-hover-glow button.button:hover,
body.button-hover-glow .wp-block-button__link:hover {
	box-shadow:
		0 0 0 1px rgba(255, 255, 255, 0.08),
		var(--ea-button-shadow);
}

body.button-hover-minimal .button:hover,
body.button-hover-minimal button.button:hover,
body.button-hover-minimal .wp-block-button__link:hover {
	opacity: 0.88;
	box-shadow: none;
	transform: none;
}

.site-header__nav {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	column-gap: var(--ea-header-nav-gap);
	row-gap: 0.75rem;
	flex: 1 1 auto;
	min-width: 0;
	width: 100%;
}

body.header-layout-balanced .site-header__nav {
	justify-content: stretch;
}

body.header-layout-left .site-header__nav {
	grid-template-columns: auto minmax(0, 1fr);
}

body.header-layout-right .site-header__nav {
	justify-content: stretch;
}

.main-nav {
	display: flex;
	flex: 1 1 auto;
	min-width: 0;
	width: 100%;
}

.main-nav .menu--primary,
.main-nav .menu--fallback {
	width: 100%;
	gap: var(--ea-menu-gap);
	row-gap: 0.35rem;
}

body.header-nav-start .main-nav .menu--primary,
body.header-nav-start .main-nav .menu--fallback {
	justify-content: flex-start;
}

body.header-nav-center .main-nav .menu--primary,
body.header-nav-center .main-nav .menu--fallback {
	justify-content: center;
}

body.header-nav-end .main-nav .menu--primary,
body.header-nav-end .main-nav .menu--fallback {
	justify-content: flex-end;
}

.menu-item a,
.language-switcher__link,
.site-header__contact {
	font-family: var(--ea-nav-font);
}

.menu-item a {
	position: relative;
	padding: var(--ea-menu-item-padding-y) var(--ea-menu-item-padding-x);
	font-size: var(--ea-menu-font-size);
	font-weight: var(--ea-menu-font-weight);
	letter-spacing: var(--ea-menu-letter-spacing);
	word-spacing: var(--ea-menu-word-spacing);
	text-transform: var(--ea-menu-text-transform);
	color: var(--ea-header-text);
	transition:
		color var(--ea-menu-hover-speed) ease,
		background var(--ea-menu-hover-speed) ease,
		transform var(--ea-menu-hover-speed) ease,
		box-shadow var(--ea-menu-hover-speed) ease;
}

.site-header__actions {
	display: flex;
	align-items: center;
	justify-self: end;
	gap: var(--ea-header-actions-gap);
	flex-wrap: wrap;
}

body.header-layout-left .main-nav {
	order: 2;
}

body.header-layout-left .site-header__actions {
	order: 1;
	justify-self: start;
}

.site-header__contact {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	font-size: var(--ea-header-contact-font-size);
	line-height: 1.2;
	color: var(--ea-header-text);
}

.site-header__contact-label {
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--ea-header-muted);
}

.site-header__contact--pill {
	padding: 0.7rem 0.9rem;
	border-radius: 999px;
	background: var(--ea-accent-soft);
}

.site-header__cta {
	border: 1px solid transparent;
	box-shadow: none;
	font-size: var(--ea-header-cta-font-size);
	padding: var(--ea-header-cta-padding-y) var(--ea-header-cta-padding-x);
	border-radius: var(--ea-header-cta-radius);
}

.site-header__cta.button,
.site-header__cta.button:hover {
	transform: none;
}

.site-header__cta--solid {
	background: var(--ea-accent);
	color: var(--ea-white);
}

.site-header__cta--soft {
	background: var(--ea-accent-soft);
	color: var(--ea-deep);
}

.site-header__cta--outline {
	background: transparent;
	border-color: var(--ea-header-outline);
	color: var(--ea-header-text);
}

body.header-scroll-compact .site-header.is-scrolled .site-header__inner {
	min-height: calc(var(--ea-header-height) - 10px);
	padding-block: max(8px, calc(var(--ea-header-padding-y) - 4px));
}

body.header-scroll-shadow .site-header.is-scrolled,
body.header-scroll-compact .site-header.is-scrolled {
	box-shadow: 0 18px 42px rgba(10, 29, 18, 0.12);
}

body.header-menu-hover-underline .menu-item a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -0.35rem;
	height: var(--ea-menu-underline-thickness);
	background: var(--ea-accent);
	transform: scaleX(0);
	transform-origin: center;
	transition: transform var(--ea-menu-hover-speed) ease;
}

body.header-menu-hover-underline .menu-item a:hover::after,
body.header-menu-hover-underline .menu-item.current-menu-item > a::after,
body.header-menu-hover-underline .menu-item.current_page_item > a::after,
body.header-menu-hover-underline .menu-item.current-menu-ancestor > a::after,
body.header-menu-hover-underline .menu-item.current_page_ancestor > a::after,
body.header-menu-hover-underline .menu-item.is-current > a::after {
	transform: scaleX(1);
}

body.header-menu-hover-pill .menu-item a {
	border-radius: var(--ea-menu-item-radius);
}

body.header-menu-hover-pill .menu-item a:hover,
body.header-menu-hover-pill .menu-item.current-menu-item > a,
body.header-menu-hover-pill .menu-item.current_page_item > a,
body.header-menu-hover-pill .menu-item.current-menu-ancestor > a,
body.header-menu-hover-pill .menu-item.current_page_ancestor > a,
body.header-menu-hover-pill .menu-item.is-current > a {
	background: var(--ea-accent-soft);
	color: var(--ea-accent-dark);
}

body.header-menu-hover-lift .menu-item a {
	transition: transform var(--ea-menu-hover-speed) ease, color var(--ea-menu-hover-speed) ease;
}

body.header-menu-hover-lift .menu-item a:hover,
body.header-menu-hover-lift .menu-item.current-menu-item > a,
body.header-menu-hover-lift .menu-item.current_page_item > a,
body.header-menu-hover-lift .menu-item.current-menu-ancestor > a,
body.header-menu-hover-lift .menu-item.current_page_ancestor > a,
body.header-menu-hover-lift .menu-item.is-current > a {
	transform: translateY(-2px);
	color: var(--ea-accent-dark);
}

body.header-menu-hover-minimal .menu-item a::after {
	display: none;
}

.site-footer {
	padding: var(--ea-footer-padding-top) 0 var(--ea-footer-padding-bottom);
	background: var(--ea-footer-bg);
	color: var(--ea-footer-text);
}

.site-footer__top {
	gap: var(--ea-footer-column-gap);
	border-bottom: 1px solid var(--ea-footer-line);
}

.site-footer__brand h2,
.site-footer__links h3 {
	color: var(--ea-footer-heading);
}

.site-footer__brand h2 {
	font-size: clamp(2rem, 3vw, var(--ea-footer-heading-size));
}

.site-footer .menu-item a,
.site-footer .language-switcher__link,
.site-footer p {
	color: var(--ea-footer-text);
}

.site-footer__brand p,
.site-footer__note {
	color: var(--ea-footer-muted);
}

.site-footer__note {
	font-size: var(--ea-footer-note-size);
}

.site-footer__offices .office-card {
	background: var(--ea-footer-card-bg);
	border-color: var(--ea-footer-card-border);
	backdrop-filter: none;
}

.site-footer__offices .office-card h3,
.site-footer__offices .office-card p,
.site-footer__offices .office-card a {
	color: var(--ea-footer-heading);
}

.site-footer__bottom {
	border-top: 1px solid var(--ea-footer-line);
}

.site-footer__bottom-copy {
	display: grid;
	gap: 0.35rem;
}

/* Spectra slider integration */
.site-main .wp-block-uagb-slider.uag-blocks-common-selector {
	--z-index-desktop: 1;
	--z-index-tablet: 1;
	--z-index-mobile: 1;
}

.site-main .wp-block-uagb-slider.uagb-slider-container {
	position: relative;
	z-index: 1;
	margin: clamp(1.5rem, 3vw, 2.5rem) 0;
	isolation: isolate;
}

body.is-front-page .entry-content > .wp-block-uagb-slider.uagb-slider-container:first-child {
	margin-top: 0;
	border-top: 0 !important;
}

body.is-front-page .entry-content > .wp-block-uagb-container:first-child .wp-block-uagb-slider.uagb-slider-container {
	margin-top: 0;
	border-top: 0 !important;
}

.site-main .wp-block-uagb-slider.uagb-slider-container:hover {
	box-shadow: 0 28px 56px rgba(23, 49, 38, 0.12);
}

.site-main .wp-block-uagb-slider .uagb-swiper {
	position: relative;
	overflow: hidden;
	border-radius: 0;
	background: transparent;
	box-shadow: 0 28px 56px rgba(23, 49, 38, 0.12);
}

.site-main .wp-block-uagb-slider .swiper-wrapper {
	align-items: stretch;
}

.site-main .wp-block-uagb-slider .swiper-slide,
.site-main .wp-block-uagb-slider .swiper-content,
.site-main .wp-block-uagb-slider .wp-block-uagb-container {
	height: 100%;
}

.site-main .wp-block-uagb-slider .wp-block-uagb-container {
	overflow: hidden;
	border-radius: inherit;
}

.site-main .wp-block-uagb-slider .swiper-button-prev,
.site-main .wp-block-uagb-slider .swiper-button-next {
	top: 50%;
	margin-top: 0;
	width: 3.15rem;
	height: 3.15rem;
	border: 1px solid rgba(255, 255, 255, 0.24);
	border-radius: 999px;
	background: rgba(15, 31, 24, 0.34);
	color: #ffffff;
	backdrop-filter: blur(12px);
	transform: translateY(-50%);
	transition: background 220ms ease, border-color 220ms ease, transform 220ms ease, opacity 220ms ease;
}

.site-main .wp-block-uagb-slider .swiper-button-prev:hover,
.site-main .wp-block-uagb-slider .swiper-button-next:hover {
	background: rgba(15, 31, 24, 0.48);
	border-color: rgba(255, 255, 255, 0.4);
}

.site-main .wp-block-uagb-slider .swiper-button-prev {
	left: 1rem;
}

.site-main .wp-block-uagb-slider .swiper-button-next {
	right: 1rem;
}

.site-main .wp-block-uagb-slider .swiper-button-prev::after,
.site-main .wp-block-uagb-slider .swiper-button-next::after {
	font-size: 1rem;
	font-weight: 700;
}

.site-main .wp-block-uagb-slider .swiper-pagination {
	bottom: 1rem;
}

.site-main .wp-block-uagb-slider .swiper-pagination-bullet {
	width: 0.72rem;
	height: 0.72rem;
	margin: 0 0.24rem !important;
	opacity: 1;
	background: rgba(255, 255, 255, 0.36);
	transition: transform 220ms ease, background 220ms ease, opacity 220ms ease;
}

.site-main .wp-block-uagb-slider .swiper-pagination-bullet-active {
	background: #ffffff;
	transform: scale(1.16);
}

body.is-front-page .entry-content > .wp-block-uagb-slider.uagb-slider-container:first-child {
	margin-top: 0;
}

body.is-front-page .entry-content > .wp-block-uagb-slider.uagb-slider-container:first-child .uagb-swiper {
	min-height: clamp(540px, calc(100svh - var(--ea-header-offset) - 1.25rem), 880px);
}

body.is-front-page .entry-content > .wp-block-uagb-slider.uagb-slider-container:first-child .swiper-wrapper {
	min-height: inherit !important;
}

body.footer-align-center .site-footer__top,
body.footer-align-center .site-footer__bottom {
	text-align: center;
}

body.footer-align-center .site-footer__bottom {
	justify-content: center;
}

body.footer-layout-centered .site-footer__top {
	grid-template-columns: 1fr;
	justify-items: center;
	text-align: center;
}

body.footer-layout-centered .site-footer__bottom {
	flex-direction: column;
	align-items: center;
}

body.footer-layout-compact .site-footer__top {
	grid-template-columns: 1fr;
	gap: 1.25rem;
}

body.footer-layout-compact .site-footer__bottom {
	flex-direction: column;
	align-items: flex-start;
}

body.footer-offices-hidden .site-footer__offices {
	display: none;
}

body.footer-lang-hidden .site-footer__bottom .language-switcher {
	display: none;
}

@media (min-width: 961px) and (max-width: 1200px) {
	.site-header__columns {
		grid-template-columns: var(--ea-header-columns-tablet, var(--ea-header-columns-desktop, 1fr));
	}

	.site-footer__columns {
		grid-template-columns: var(--ea-footer-columns-tablet, var(--ea-footer-columns-desktop, 1fr));
	}
}

@media (min-width: 961px) and (max-width: 1440px) {
	.site-header__desktop .custom-logo,
	.site-header__desktop .custom-logo-link img {
		width: min(var(--ea-logo-width), 380px);
	}

	.site-header__desktop .main-nav .menu--primary,
	.site-header__desktop .main-nav .menu--fallback {
		gap: min(var(--ea-menu-gap), 18px);
	}

	.site-header__desktop .menu-item a {
		font-size: min(var(--ea-menu-font-size), 16px);
		letter-spacing: 0;
	}
}

@media (min-width: 961px) and (max-width: 1320px) {
	.site-header__desktop .custom-logo,
	.site-header__desktop .custom-logo-link img {
		width: min(var(--ea-logo-width), 340px);
	}

	.site-header__desktop .main-nav .menu--primary,
	.site-header__desktop .main-nav .menu--fallback {
		gap: min(var(--ea-menu-gap), 12px);
	}

	.site-header__desktop .menu-item a {
		font-size: min(var(--ea-menu-font-size), 14px);
		letter-spacing: 0;
	}
}

@media (min-width: 961px) and (max-width: 1366px) {
	.site-header__desktop .main-nav .menu--primary,
	.site-header__desktop .main-nav .menu--fallback {
		gap: min(var(--ea-menu-gap), 14px);
	}

	.site-header__desktop .menu-item a {
		font-size: min(var(--ea-menu-font-size), 15px);
	}
}

@media (min-width: 961px) and (max-width: 1120px) {
	.site-header__desktop .custom-logo,
	.site-header__desktop .custom-logo-link img {
		width: min(var(--ea-logo-width), 260px);
	}

	.site-header__columns {
		column-gap: min(var(--ea-header-nav-gap), 14px);
	}

	.site-header__desktop .main-nav .menu--primary,
	.site-header__desktop .main-nav .menu--fallback {
		gap: min(var(--ea-menu-gap), 10px);
	}

	.site-header__desktop .menu-item a {
		font-size: min(var(--ea-menu-font-size), 13px);
	}
}

@media (min-width: 1101px) {
	.site-header__columns {
		grid-template-columns: minmax(150px, 0.28fr) minmax(0, 0.62fr) auto;
	}

	.site-header__column--3 {
		justify-self: end;
	}
}

@media (max-width: 1100px) {
	.site-main {
		padding-top: var(--ea-header-height-mobile);
	}

	body.no-sticky-header .site-main,
	body.is-front-page.home-header-transparent .site-main {
		padding-top: 0;
	}

	.site-header {
		isolation: isolate;
		overflow: visible;
	}

	.site-header::before {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		top: -100vh;
		bottom: 0;
		z-index: 0;
		background: var(--ea-header-bg);
		pointer-events: none;
	}

	.site-header__frame,
	.site-header__bar {
		position: relative;
		z-index: 1;
	}

	.site-header__desktop {
		display: none;
	}

	.site-header__mobile {
		display: block;
		position: relative;
	}

	.site-header__nav {
		position: absolute;
		left: 0;
		right: 0;
		display: none;
		grid-template-columns: 1fr;
		top: calc(100% + 0.75rem);
		width: auto;
		padding: 1.1rem;
		border-radius: var(--ea-header-dropdown-radius);
		background: var(--ea-header-dropdown-bg);
		border: 1px solid var(--ea-header-border);
		box-shadow: 0 22px 48px rgba(10, 29, 18, 0.1);
		overflow: hidden;
	}

	.site-header__nav.is-open {
		display: grid;
	}

	.site-header__nav .menu--primary,
	.site-header__nav .menu--fallback {
		flex-direction: column;
		align-items: flex-start;
	}

	.site-header__nav .menu-item a {
		white-space: normal;
	}

	.site-header__actions {
		width: 100%;
	}

	.site-header__contact {
		width: 100%;
	}

	body.header-layout-balanced .site-header__nav,
	body.header-layout-left .site-header__nav,
	body.header-layout-right .site-header__nav {
		justify-content: stretch;
	}

	.site-footer__columns {
		grid-template-columns: 1fr !important;
		gap: var(--ea-footer-column-gap-mobile);
	}

	.custom-logo,
	.custom-logo-link img {
		width: min(var(--ea-logo-width-mobile), 260px);
		max-width: 100%;
	}

	.site-header__inner {
		min-height: var(--ea-header-height-mobile);
		padding-block: var(--ea-header-padding-y-mobile);
	}

	.site-footer__column {
		flex-direction: column !important;
		justify-content: flex-start !important;
		align-items: stretch !important;
		text-align: left !important;
		gap: var(--ea-footer-column-gap-mobile) !important;
	}

	.site-footer__links .menu-item a {
		white-space: normal;
		overflow-wrap: anywhere;
	}
}

@media (max-width: 720px) {
	.site-header__frame,
	.site-footer__frame {
		width: calc(100% - 1.25rem);
	}

	.custom-logo,
	.custom-logo-link img {
		width: var(--ea-logo-width-mobile);
		max-width: 100%;
	}

	.site-header__inner {
		grid-template-columns: minmax(0, 1fr) auto;
		min-height: var(--ea-header-height-mobile);
		padding-block: var(--ea-header-padding-y-mobile);
	}

	.site-header__bar-inner,
	.site-footer__bar-inner {
		flex-direction: column;
		align-items: flex-start;
	}

	.brand {
		min-width: 0;
	}

	.main-nav .menu--primary,
	.main-nav .menu--fallback {
		gap: var(--ea-menu-gap-mobile);
	}

	.menu-item a {
		font-size: var(--ea-menu-font-size-mobile);
	}

	.site-header__actions {
		gap: var(--ea-header-actions-gap-mobile);
	}

	.site-header__contact {
		font-size: var(--ea-header-contact-font-size-mobile);
	}

	.site-header__cta {
		font-size: var(--ea-header-cta-font-size-mobile);
		padding: var(--ea-header-cta-padding-y-mobile) var(--ea-header-cta-padding-x-mobile);
	}

	.button,
	button.button,
	.wp-block-button__link {
		font-size: var(--ea-button-font-size-mobile);
		padding: var(--ea-button-padding-y-mobile) var(--ea-button-padding-x-mobile);
	}

	.site-footer {
		padding: var(--ea-footer-padding-top-mobile) 0 var(--ea-footer-padding-bottom-mobile);
	}

	.site-footer__top {
		gap: var(--ea-footer-column-gap-mobile);
	}

	.site-footer__columns {
		grid-template-columns: var(--ea-footer-columns-mobile, 1fr) !important;
		gap: var(--ea-footer-column-gap-mobile);
	}

	.site-footer__column {
		flex-direction: column !important;
		justify-content: flex-start !important;
		align-items: stretch !important;
		text-align: left !important;
		gap: var(--ea-footer-column-gap-mobile) !important;
	}

	.site-footer__brand h2 {
		font-size: clamp(1.75rem, 8vw, var(--ea-footer-heading-size-mobile));
	}

	.site-footer__note {
		font-size: var(--ea-footer-note-size-mobile);
	}

	.site-footer__bottom {
		align-items: flex-start;
	}

	.site-main .wp-block-uagb-slider .uagb-swiper {
		border-radius: 0;
	}

	body.is-front-page .entry-content > .wp-block-uagb-slider.uagb-slider-container:first-child .uagb-swiper {
		min-height: clamp(420px, calc(100svh - var(--ea-header-height-mobile) - 1rem), 620px);
	}

	.site-main .wp-block-uagb-slider .swiper-button-prev,
	.site-main .wp-block-uagb-slider .swiper-button-next {
		width: 2.5rem;
		height: 2.5rem;
	}

	.site-main .wp-block-uagb-slider .swiper-button-prev {
		left: 0.75rem;
	}

	.site-main .wp-block-uagb-slider .swiper-button-next {
		right: 0.75rem;
	}

	.site-main .wp-block-uagb-slider .swiper-pagination {
		bottom: 0.8rem;
	}

}

@media (max-width: 782px) {
	body.admin-bar:not(.no-sticky-header) .site-header {
		top: 46px;
	}
}

/* Factory page: make the Production Workflow steps easier to scan. */
@media (min-width: 1024px) {
	.post-782 .stk-f8413a3 .stk-dbf7219-column {
		display: grid !important;
		grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
		grid-auto-rows: 1fr !important;
		gap: 22px 24px !important;
		align-items: stretch !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219-column > .wp-block-stackable-column {
		width: auto !important;
		max-width: none !important;
		flex: none !important;
		grid-column: span 2;
		overflow: visible !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219-column > .wp-block-stackable-column > .stk-column-wrapper,
	.post-782 .stk-f8413a3 .stk-dbf7219-column > .wp-block-stackable-column > .stk-column-wrapper > .stk-inner-blocks {
		height: 100% !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219-column > .wp-block-stackable-column:nth-child(4) {
		grid-column: 2 / span 2;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219-column > .wp-block-stackable-column:nth-child(5) {
		grid-column: 4 / span 2;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219-column > .wp-block-stackable-column > .stk-column-wrapper > .stk-inner-blocks > .wp-block-stackable-columns {
		height: 100% !important;
		min-block-size: clamp(13rem, 15vw, 14rem) !important;
		border: 1px solid rgba(39, 48, 108, 0.14) !important;
		border-radius: 8px !important;
		background: rgba(255, 255, 255, 0.72) !important;
		padding: 20px !important;
		display: block !important;
		align-items: flex-start !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219-column > .wp-block-stackable-column > .stk-column-wrapper > .stk-inner-blocks > .wp-block-stackable-columns > .stk-row {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 12px !important;
		align-items: start !important;
		width: 100% !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219-column > .wp-block-stackable-column > .stk-column-wrapper > .stk-inner-blocks > .wp-block-stackable-columns > .stk-row > .wp-block-stackable-column {
		width: auto !important;
		max-width: none !important;
		flex: none !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219-column > .wp-block-stackable-column > .stk-column-wrapper > .stk-inner-blocks > .wp-block-stackable-columns > .stk-row > .wp-block-stackable-column:first-child,
	.post-782 .stk-f8413a3 .stk-dbf7219-column > .wp-block-stackable-column > .stk-column-wrapper > .stk-inner-blocks > .wp-block-stackable-columns > .stk-row > .wp-block-stackable-column:first-child > .stk-column-wrapper,
	.post-782 .stk-f8413a3 .stk-dbf7219-column > .wp-block-stackable-column > .stk-column-wrapper > .stk-inner-blocks > .wp-block-stackable-columns > .stk-row > .wp-block-stackable-column:first-child > .stk-column-wrapper > .stk-inner-blocks {
		height: auto !important;
		min-height: 0 !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219 .stk-block-image,
	.post-782 .stk-f8413a3 .stk-dbf7219 .stk-img-wrapper {
		width: 42px !important;
		height: 42px !important;
		margin: 0 0 2px !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219 .stk-img-wrapper img {
		width: 42px !important;
		height: 42px !important;
		object-fit: contain !important;
		display: block !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219 .stk-block-text__text.has-text-color {
		font-size: clamp(15px, 1.15vw, 18px) !important;
		line-height: 1.28 !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219 .stk-block-text__text:not(.has-text-color) {
		font-size: clamp(13px, 0.95vw, 15px) !important;
		line-height: 1.45 !important;
	}
}

@media (min-width: 768px) and (max-width: 1023px) {
	.post-782 .stk-f8413a3 .stk-dbf7219-column {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 18px !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219-column > .wp-block-stackable-column {
		width: auto !important;
		max-width: none !important;
		flex: none !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219 .stk-block-image,
	.post-782 .stk-f8413a3 .stk-dbf7219 .stk-img-wrapper {
		width: 34px !important;
		height: 34px !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219 .stk-img-wrapper img {
		width: 34px !important;
		height: 34px !important;
		object-fit: contain !important;
		display: block !important;
	}
}

@media (max-width: 767px) {
	.post-782 .stk-f8413a3 {
		margin-right: 1rem !important;
		margin-left: 1rem !important;
	}

	.post-782 .stk-f8413a3 .stk-f8413a3-column,
	.post-782 .stk-f8413a3 .stk-ab286b5,
	.post-782 .stk-f8413a3 .stk-ab286b5-container,
	.post-782 .stk-f8413a3 .stk-ab286b5-inner-blocks,
	.post-782 .stk-f8413a3 .stk-dbf7219,
	.post-782 .stk-f8413a3 .stk-dbf7219-column {
		width: 100% !important;
		max-width: none !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219-column {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219-column > .wp-block-stackable-column {
		width: auto !important;
		max-width: none !important;
		flex: none !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219-column > .wp-block-stackable-column > .stk-column-wrapper > .stk-inner-blocks > .wp-block-stackable-columns {
		border: 1px solid rgba(39, 48, 108, 0.14) !important;
		border-radius: 8px !important;
		background: rgba(255, 255, 255, 0.72) !important;
		padding: 18px !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219-column > .wp-block-stackable-column > .stk-column-wrapper > .stk-inner-blocks > .wp-block-stackable-columns > .stk-row {
		display: grid !important;
		grid-template-columns: 24px minmax(0, 1fr) !important;
		gap: 12px !important;
		align-items: start !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219 .stk-block-image,
	.post-782 .stk-f8413a3 .stk-dbf7219 .stk-img-wrapper {
		width: 30px !important;
		height: 30px !important;
	}

	.post-782 .stk-f8413a3 .stk-dbf7219 .stk-img-wrapper img {
		width: 30px !important;
		height: 30px !important;
		object-fit: contain !important;
		display: block !important;
	}
}

/* Sustainability page: lightweight guardrails for editable Stackable logo cards. */
.page-id-783 .ea-sus-logo-section {
	background: #ffffff;
}

.page-id-783 .ea-sus-logo-card > .stk-column-wrapper {
	min-height: 132px;
	background: #ffffff;
	padding: 16px 10px !important;
}

.page-id-783 .ea-sus-logo-image .stk-img-wrapper {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 192px;
	max-width: 100%;
	height: 86px;
	border: 1px solid rgba(39, 48, 108, 0.14);
	border-radius: 6px;
	background: #ffffff;
	padding: 0 8px;
}

.page-id-783 .ea-sus-logo-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.page-id-783 .ea-sus-logo-title .stk-block-heading__text,
.page-id-783 .ea-sus-logo-caption .stk-block-text__text {
	margin: 0;
	text-align: center;
}

.page-id-783 .ea-sus-logo-title .stk-block-heading__text {
	color: #27306c;
	font-family: Manrope, Arial, sans-serif;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
}

.page-id-783 .ea-sus-logo-caption .stk-block-text__text {
	margin-top: 2px;
	color: #52616b;
	font-family: Manrope, Arial, sans-serif;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.2;
}

.page-id-783 .ea-sus-focus-panel-title .stk-block-heading__text {
	margin: 0 0 22px;
	color: #27306c;
	font-family: "Sora", Arial, sans-serif;
	font-size: 25px;
	line-height: 1.22;
	font-weight: 700;
}

.page-id-783 .ea-sus-focus-item {
	padding: 18px 0;
	border-top: 1px solid #e3e9e2;
}

.page-id-783 .ea-sus-focus-item > .stk-row {
	display: grid !important;
	grid-template-columns: 34px 1fr;
	gap: 15px;
	align-items: start;
}

.page-id-783 .ea-sus-focus-number .stk-block-text__text {
	margin: 0;
	color: #90be3f;
	font-family: Manrope, Arial, sans-serif;
	font-size: 13px;
	font-weight: 900;
	line-height: 1.32;
}

.page-id-783 .ea-sus-focus-panel > .stk-column-wrapper .ea-sus-focus-number {
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid #e3e9e2;
}

.page-id-783 .ea-sus-focus-item-title .stk-block-heading__text {
	margin: 0 0 7px;
	color: #102331;
	font-family: "Sora", Arial, sans-serif;
	font-size: 18px;
	line-height: 1.32;
	font-weight: 700;
}

.page-id-783 .ea-sus-focus-item-text .stk-block-text__text {
	margin: 0;
	color: #26343e;
	font-family: Manrope, Arial, sans-serif;
	font-size: 15.5px;
	line-height: 1.62;
}

.page-id-783 .ea-sus-section-dark .ea-sus-process-card > .stk-column-wrapper {
	background: rgba(255, 255, 255, 0.07) !important;
	border-color: rgba(255, 255, 255, 0.16) !important;
}

.page-id-783 .ea-sus-section-dark .ea-sus-process-card .ea-sus-card-title .stk-block-heading__text {
	color: #ffffff !important;
}

.page-id-783 .ea-sus-section-dark .ea-sus-process-card .ea-sus-card-text .stk-block-text__text {
	color: rgba(255, 255, 255, 0.78) !important;
}

/* Footer professional refresh */
.site-footer {
	position: relative;
	padding: var(--ea-footer-padding-top) 0 var(--ea-footer-padding-bottom);
	overflow: hidden;
	background: var(--ea-footer-bg);
	color: var(--ea-footer-text);
	font-family: var(--ea-footer-font);
}

.site-footer::before {
	display: none;
}

.site-footer__frame {
	position: relative;
	z-index: 1;
}

.site-footer__main {
	display: grid;
	grid-template-columns: var(--ea-footer-columns-desktop, minmax(280px, 0.9fr) minmax(420px, 1.15fr) minmax(190px, 0.48fr));
	gap: var(--ea-footer-column-gap);
	align-items: start;
	padding-bottom: clamp(2rem, 3vw, 3rem);
	border-bottom: 1px solid var(--ea-footer-line);
}

.site-footer__column {
	display: flex;
	min-width: 0;
}

.site-footer__module {
	min-width: 0;
	max-width: 100%;
	position: relative;
	will-change: transform;
}

.site-footer__module--brand,
.site-footer__module--bottom,
.site-footer__module--links,
.site-footer__module--offices {
	width: 100%;
}

.site-footer__module--bottom {
	padding-top: 1.25rem;
	border-top: 1px solid var(--ea-footer-line);
}

.site-footer__module--language {
	display: flex;
}

.site-footer__brand {
	display: grid;
	align-content: start;
	gap: 1rem;
	max-width: 440px;
}

.site-footer__logo-plate {
	display: inline-flex;
	width: fit-content;
	max-width: 100%;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.site-footer__logo-plate .custom-logo-link {
	display: inline-flex;
	align-items: center;
	max-width: 100%;
}

.site-footer__logo-plate .custom-logo,
.site-footer__logo-plate .custom-logo-link img {
	display: block;
	width: min(var(--ea-footer-logo-width), 68vw) !important;
	max-width: min(var(--ea-footer-logo-width), 100%);
	height: auto;
	max-height: var(--ea-footer-logo-max-height);
	object-fit: contain;
}

.site-footer__eyebrow,
.site-footer__section-label,
.office-grid--footer .office-card__role {
	margin: 0;
	color: var(--ea-accent);
	font-family: var(--ea-footer-font);
	font-size: var(--ea-footer-label-size);
	font-weight: var(--ea-footer-label-weight);
	line-height: 1.35;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.site-footer__brand h2 {
	max-width: 20rem;
	margin: 0;
	color: var(--ea-footer-heading);
	font-family: var(--ea-footer-heading-font);
	font-size: var(--ea-footer-brand-title-size);
	font-weight: var(--ea-footer-heading-weight);
	line-height: 1.12;
	letter-spacing: 0;
}

.site-footer__brand p,
.site-footer__tagline,
.site-footer p {
	margin: 0;
	color: var(--ea-footer-muted);
	font-size: var(--ea-footer-body-size);
	font-weight: var(--ea-footer-body-weight);
	line-height: 1.58;
}

.site-footer__offices {
	display: grid;
	gap: 1.15rem;
	padding: 0;
}

.site-footer__offices h3,
.site-footer__links h3 {
	margin: 0;
	color: var(--ea-footer-heading);
	font-family: var(--ea-footer-heading-font);
	font-size: var(--ea-footer-section-title-size);
	font-weight: var(--ea-footer-heading-weight);
	line-height: 1.18;
	letter-spacing: 0;
}

.site-footer__offices > h3::after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	margin-top: var(--ea-footer-office-heading-line-gap);
	background: var(--ea-footer-line);
}

.site-footer__module--offices .office-grid--footer,
.office-grid--footer {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: var(--ea-footer-office-column-gap);
	row-gap: var(--ea-footer-office-content-gap);
	align-items: stretch;
	border: 0;
}

.office-card--footer {
	display: grid;
	align-content: start;
	gap: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.site-footer__offices .office-card--footer {
	background: transparent;
	border: 0;
	box-shadow: none;
}

.office-card--footer + .office-card--footer {
	padding-left: clamp(0.9rem, 1.4vw, 1.15rem);
	border-left: 1px solid var(--ea-footer-line);
}

.office-card--footer h3 {
	margin: 0;
	color: var(--ea-footer-heading);
	font-family: var(--ea-footer-heading-font);
	font-size: var(--ea-footer-office-title-size);
	font-weight: var(--ea-footer-heading-weight);
	line-height: 1.22;
}

.office-card--footer h3::after {
	content: "";
	display: var(--ea-footer-office-title-line-display);
	width: var(--ea-footer-office-title-line-width);
	height: var(--ea-footer-office-title-line-thickness);
	margin-top: var(--ea-footer-office-title-line-gap);
	background: var(--ea-footer-office-title-line-color);
}

.site-footer__offices .office-card--footer h3 {
	color: var(--ea-footer-heading);
}

.office-card--footer .office-card__company {
	margin: 0;
	margin-top: var(--ea-footer-office-company-gap);
	color: var(--ea-footer-heading);
	font-family: var(--ea-footer-heading-font);
	font-size: max(12px, calc(var(--ea-footer-office-address-size) - 2px));
	font-weight: var(--ea-footer-heading-weight);
	line-height: 1.35;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.site-footer__offices .office-card--footer .office-card__address,
.office-card--footer .office-card__address {
	margin: 0;
	margin-top: var(--ea-footer-office-title-gap);
	color: var(--ea-footer-office-address-color);
	font-family: var(--ea-footer-office-address-font);
	font-size: var(--ea-footer-office-address-size);
	font-weight: var(--ea-footer-office-address-weight);
	line-height: 1.52;
}

.site-footer__offices .office-card--footer .office-card__contact,
.office-card--footer .office-card__contact {
	margin: 0;
	line-height: 1.25;
}

.office-card--footer .office-card__contacts {
	display: grid;
	gap: var(--ea-footer-office-phone-email-gap);
	align-content: start;
	margin-top: var(--ea-footer-office-address-gap);
}

.site-footer__offices .office-card--footer a,
.office-card--footer a {
	text-decoration: none;
	text-underline-offset: 0.2em;
	transition: color 180ms ease, text-decoration-color 180ms ease;
}

.site-footer__offices .office-card--footer .office-card__contact--phone a,
.office-card--footer .office-card__contact--phone a {
	color: var(--ea-footer-office-phone-color);
	font-family: var(--ea-footer-office-phone-font);
	font-size: var(--ea-footer-office-phone-size);
	font-weight: var(--ea-footer-office-phone-weight);
}

.site-footer__offices .office-card--footer .office-card__contact--email a,
.office-card--footer .office-card__contact--email a {
	color: var(--ea-footer-office-email-color);
	font-family: var(--ea-footer-office-email-font);
	font-size: var(--ea-footer-office-email-size);
	font-weight: var(--ea-footer-office-email-weight);
}

.site-footer__offices .office-card--footer a:hover,
.office-card--footer a:hover {
	color: var(--ea-accent-dark);
	text-decoration: underline;
	text-decoration-color: var(--ea-footer-line);
}

.site-footer__links {
	display: grid;
	gap: 1.15rem;
}

.site-footer__links .menu--footer,
.site-footer__links .menu--footer-custom,
.site-footer__links .menu--fallback {
	display: grid;
	gap: 0;
	align-items: start;
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--ea-footer-line);
}

.site-footer__links .menu-item {
	margin: 0;
	padding: 0;
	border-bottom: 1px solid var(--ea-footer-line);
}

.site-footer__links .menu-item a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.72rem 0;
	color: var(--ea-footer-text);
	font-family: var(--ea-footer-font);
	font-size: var(--ea-footer-link-size);
	font-weight: var(--ea-footer-link-weight);
	line-height: 1.25;
	letter-spacing: 0.02em;
	text-decoration: none;
	text-transform: none;
	white-space: normal;
	transition: color 180ms ease, padding-left 180ms ease;
}

.site-footer__links .menu-item a::after {
	content: "";
	width: 0.38rem;
	height: 0.38rem;
	border-top: 1px solid currentColor;
	border-right: 1px solid currentColor;
	opacity: 0.45;
	transform: rotate(45deg);
}

.site-footer__links .menu-item a:hover {
	padding-left: 0.25rem;
	color: var(--ea-accent);
}

.site-footer__bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.25rem;
	padding-top: 1.25rem;
	border-top: 0;
}

.site-footer__bottom-copy {
	display: grid;
	gap: 0.35rem;
}

.site-footer__bottom-copy p,
.site-footer__note {
	margin: 0;
	color: var(--ea-footer-muted);
	font-family: var(--ea-footer-font);
	font-size: var(--ea-footer-note-size);
	font-weight: var(--ea-footer-body-weight);
	line-height: 1.4;
}

.site-footer .language-switcher {
	flex: 0 0 auto;
	background: var(--ea-footer-card-bg);
}

.site-footer .language-switcher__link {
	color: var(--ea-footer-muted);
	text-decoration: none;
}

.site-footer .language-switcher__link.is-active {
	background: var(--ea-accent);
	color: var(--ea-button-primary-text);
}

body.footer-align-center .site-footer__main,
body.footer-align-center .site-footer__bottom {
	text-align: center !important;
}

body.footer-align-center .site-footer__column {
	align-items: center !important;
	text-align: center !important;
}

body.footer-align-center .site-footer__module--language {
	justify-content: center;
}

body.footer-layout-centered .site-footer__main {
	justify-items: center;
}

body.footer-layout-centered .site-footer__column {
	align-items: center !important;
	text-align: center !important;
}

body.footer-layout-centered .site-footer__brand {
	max-width: 620px;
}

body.footer-layout-compact .site-footer__main {
	padding-bottom: 1.5rem;
}

body.footer-layout-compact .site-footer__brand,
body.footer-layout-compact .site-footer__offices,
body.footer-layout-compact .site-footer__links {
	gap: 0.85rem;
}

@media (max-width: 1180px) {
	.site-footer__main {
		grid-template-columns: var(--ea-footer-columns-tablet, var(--ea-footer-columns-desktop, minmax(260px, 0.82fr) minmax(360px, 1.18fr)));
	}

	.site-footer__links {
		width: 100%;
	}

	.site-footer__links .menu--footer,
	.site-footer__links .menu--footer-custom,
	.site-footer__links .menu--fallback {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		column-gap: 1.5rem;
		border-bottom: 1px solid var(--ea-footer-line);
	}

	.site-footer__links .menu-item {
		border-bottom: 0;
	}
}

@media (max-width: 860px) {
	.site-footer__main {
		grid-template-columns: var(--ea-footer-columns-tablet, 1fr);
		gap: var(--ea-footer-column-gap-mobile);
	}

	.site-footer__brand {
		max-width: none;
	}

	.site-footer__module--offices .office-grid--footer,
	.office-grid--footer {
		grid-template-columns: 1fr;
	}

	.office-card--footer + .office-card--footer {
		border-left: 0;
		padding-left: 0;
	}

	.office-card--footer {
		padding: 0;
	}

	.site-footer__links .menu--footer,
	.site-footer__links .menu--footer-custom,
	.site-footer__links .menu--fallback {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 720px) {
	.site-footer {
		padding: var(--ea-footer-padding-top-mobile) 0 var(--ea-footer-padding-bottom-mobile);
	}

	.site-footer__main {
		grid-template-columns: var(--ea-footer-columns-mobile, 1fr);
	}

	.site-footer__logo-plate {
		padding: 0;
	}

	.site-footer__logo-plate .custom-logo,
	.site-footer__logo-plate .custom-logo-link img {
		width: min(var(--ea-footer-logo-width-mobile), 72vw) !important;
		max-width: var(--ea-footer-logo-width-mobile);
		max-height: var(--ea-footer-logo-max-height-mobile);
	}

	.site-footer__brand h2 {
		max-width: 18rem;
		font-size: var(--ea-footer-brand-title-size-mobile);
	}

	.site-footer__brand p,
	.site-footer__tagline,
	.site-footer p {
		font-size: var(--ea-footer-body-size-mobile);
	}

	.site-footer__eyebrow,
	.site-footer__section-label,
	.office-grid--footer .office-card__role {
		font-size: var(--ea-footer-label-size-mobile);
	}

	.site-footer__offices h3,
	.site-footer__links h3 {
		font-size: var(--ea-footer-section-title-size-mobile);
	}

	.office-card--footer h3 {
		font-size: var(--ea-footer-office-title-size-mobile);
	}

	.office-card--footer .office-card__company {
		font-size: max(11px, calc(var(--ea-footer-office-address-size-mobile) - 2px));
	}

	.site-footer__offices .office-card--footer .office-card__address,
	.office-card--footer .office-card__address {
		font-size: var(--ea-footer-office-address-size-mobile);
	}

	.site-footer__offices .office-card--footer .office-card__contact--phone a,
	.office-card--footer .office-card__contact--phone a {
		font-size: var(--ea-footer-office-phone-size-mobile);
	}

	.site-footer__offices .office-card--footer .office-card__contact--email a,
	.office-card--footer .office-card__contact--email a {
		font-size: var(--ea-footer-office-email-size-mobile);
	}

	.site-footer__links .menu-item a {
		font-size: var(--ea-footer-link-size-mobile);
	}

	.site-footer__bottom-copy p,
	.site-footer__note {
		font-size: var(--ea-footer-note-size-mobile);
	}

	.site-footer__links .menu--footer,
	.site-footer__links .menu--footer-custom,
	.site-footer__links .menu--fallback {
		grid-template-columns: 1fr;
		column-gap: 0;
	}

	.site-footer__links .menu-item {
		border-bottom: 1px solid var(--ea-footer-line);
	}

	.site-footer__bottom {
		flex-direction: column;
		align-items: flex-start;
	}
}

