@font-face {
	font-display: swap;
	font-family: "Lardy Sans";
	font-style: normal;
	font-weight: 300 800;
	src: url("https://www.pictet.com/etc.clientlibs/picdev/clientlibs/clientlib-site/resources/fonts/LardySansVAR.woff2") format("woff2");
}

@font-face {
	font-display: swap;
	font-family: "Lardy Serif";
	font-style: normal;
	font-weight: 300 800;
	src: url("https://www.pictet.com/etc.clientlibs/picdev/clientlibs/clientlib-site/resources/fonts/LardySerifVAR.woff2") format("woff2");
}

:root {
	--afinitive-font-sans: "Lardy Sans", Verdana, sans-serif;
	--afinitive-font-serif: "Lardy Serif", Georgia, serif;
	--afinitive-ink: #243336;
	--afinitive-muted: #59666a;
	--afinitive-petrol: #0f3034;
	--afinitive-gold: #b99a4f;
	--afinitive-gold-dark: #8b6b2d;
	--afinitive-accent: #8b5149;
	--afinitive-text-soft: #4a4643;
	--afinitive-line: #d8d0cb;
	--afinitive-surface: #f6f4f3;
}

body.elementor-page {
	background: #fff;
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-sans);
	overflow-x: hidden;
}

html {
	overflow-x: hidden;
}

.elementor .afinitive-section {
	background: #fff;
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-sans);
}

.site-main {
	background: #fff;
}

.afinitive-site-header {
	background: #fff;
	border-bottom: 1px solid #d9d4cf;
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-sans);
	position: relative;
	z-index: 10;
}

.afinitive-site-header__inner {
	align-items: center;
	display: grid;
	grid-template-columns: 210px minmax(0, 1fr) 210px;
	margin: 0 auto;
	min-height: 98px;
	width: calc(100% - 72px);
	max-width: 1280px;
}

.afinitive-site-header .afinitive-logo {
	align-items: center;
	display: inline-flex;
	min-height: 82px;
	overflow: visible;
	text-decoration: none;
	width: 120px;
}

.afinitive-site-header .afinitive-actions {
	align-items: center;
	display: flex;
	gap: 14px;
	justify-content: flex-end;
}

.afinitive-site-footer {
	background: #fff;
	border-top: 1px solid #ded8d3;
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-sans);
	padding: 36px 0 0;
}

.afinitive-site-footer__inner {
	display: grid;
	gap: 34px 54px;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	margin: 0 auto;
	max-width: 1720px;
	min-height: 360px;
	width: calc(100% - 120px);
}

.afinitive-site-footer__brand {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-serif);
	font-size: 29px;
	font-weight: 400;
	grid-column: 1 / -1;
	line-height: 1.15;
	margin-bottom: 14px;
}

.afinitive-site-footer__group h3 {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-serif);
	font-size: 19px;
	font-weight: 400;
	line-height: 1.12;
	margin: 0 0 17px;
	text-wrap: balance;
}

.afinitive-site-footer__group ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.afinitive-site-footer__group li {
	margin: 0;
	padding: 0;
}

.afinitive-site-footer__group a {
	color: #4b4a48;
	display: inline-block;
	font-size: 12.5px;
	line-height: 1.18;
	margin-bottom: 13px;
	text-decoration: none;
}

.afinitive-site-footer__group a:hover {
	color: var(--afinitive-gold-dark);
}

.afinitive-site-footer__bottom {
	align-items: center;
	border-top: 1px solid #ded8d3;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	margin-top: 24px;
	min-height: 58px;
	padding: 0 max(60px, calc((100% - 1720px) / 2));
}

.afinitive-site-footer__legal,
.afinitive-site-footer__social {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 22px;
}

.afinitive-site-footer__legal,
.afinitive-site-footer__legal a,
.afinitive-site-footer__social a {
	color: #4b4a48;
	font-size: 11.5px;
	line-height: 1.2;
	text-decoration: none;
	white-space: nowrap;
}

.afinitive-site-footer__legal a:hover,
.afinitive-site-footer__social a:hover {
	color: var(--afinitive-gold-dark);
}

.afinitive-site-footer__social {
	flex-wrap: nowrap;
	gap: 15px;
}

.afinitive-site-footer__social a {
	font-weight: 700;
	min-width: 14px;
	text-align: center;
}

body .elementor .elementor-section.afinitive-section {
	clear: both;
	display: block !important;
	width: 100% !important;
}

body .elementor .elementor-section.afinitive-section[id] {
	scroll-margin-top: 96px;
}

body .elementor .elementor-section.afinitive-section > .elementor-container {
	display: flex !important;
	flex-wrap: wrap !important;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: 1180px !important;
	width: calc(100% - 96px) !important;
}

.elementor .afinitive-section .elementor-column > .elementor-widget-wrap {
	align-content: flex-start;
	padding: 0 18px !important;
}

.elementor .afinitive-section .elementor-widget {
	margin-bottom: 14px;
}

.elementor .afinitive-section a,
.elementor .afinitive-section p,
.elementor .afinitive-section span,
.elementor .afinitive-section div {
	color: inherit;
}

.elementor .afinitive-header {
	border-bottom: 1px solid #d9d4cf;
	font-size: 12px;
	min-height: 98px;
}

body .elementor .elementor-section.afinitive-header > .elementor-container {
	align-items: center;
	max-width: 1280px !important;
	width: calc(100% - 72px) !important;
}

.elementor .afinitive-header .elementor-widget-wrap {
	align-content: center;
}

.afinitive-logo {
	color: #393330 !important;
	display: inline-flex;
	align-items: center;
	font-family: var(--afinitive-font-sans);
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1;
	text-decoration: none;
}

.afinitive-logo .elementor-widget-container {
	white-space: nowrap;
}

.afinitive-logo .custom-logo-link {
	display: inline-flex;
	align-items: center;
	line-height: 1;
	overflow: visible;
}

.afinitive-logo img,
.afinitive-logo .custom-logo {
	display: block;
	height: auto !important;
	max-height: 82px !important;
	max-width: none !important;
	object-fit: contain;
	width: 120px !important;
}

.afinitive-mark {
	color: #936a62 !important;
	display: inline-block;
	font-size: 7px;
	margin-right: 4px;
	vertical-align: super;
}

.afinitive-nav,
.afinitive-actions {
	color: #373230 !important;
	font-family: var(--afinitive-font-sans);
	font-size: 11px;
	font-weight: 500;
	line-height: 1.3;
	text-align: right;
}

.afinitive-header-menu {
	display: flex;
	flex-wrap: wrap;
	gap: 22px;
	justify-content: flex-end;
	list-style: none;
	margin: 0;
	padding: 0;
}

.afinitive-header-menu li {
	margin: 0;
	padding: 0;
	position: relative;
}

.afinitive-header-menu a {
	color: #373230 !important;
	display: inline-flex;
	line-height: 1.3;
	text-decoration: none;
}

.afinitive-header-menu a:hover {
	color: var(--afinitive-gold-dark) !important;
}

.afinitive-header-menu .menu-item-has-children > a::after {
	color: var(--afinitive-gold-dark);
	content: "";
	border-left: 3px solid transparent;
	border-right: 3px solid transparent;
	border-top: 4px solid currentColor;
	height: 0;
	margin-left: 7px;
	margin-top: 5px;
	width: 0;
}

.afinitive-header-menu .sub-menu {
	background: #fff;
	border: 1px solid #e6dfd9;
	box-shadow: 0 18px 38px rgba(21, 38, 42, .12);
	display: grid;
	gap: 0;
	left: 50%;
	list-style: none;
	margin: 0;
	min-width: 235px;
	opacity: 0;
	padding: 10px 0;
	pointer-events: none;
	position: absolute;
	top: calc(100% + 14px);
	transform: translateX(-50%) translateY(6px);
	transition: opacity .18s ease, transform .18s ease;
	z-index: 30;
}

.afinitive-header-menu .sub-menu::before {
	content: "";
	height: 14px;
	left: 0;
	position: absolute;
	right: 0;
	top: -14px;
}

.afinitive-header-menu .sub-menu a {
	color: var(--afinitive-ink) !important;
	display: block;
	font-size: 11.5px;
	font-weight: 500;
	padding: 9px 16px;
	text-align: left;
	white-space: normal;
}

.afinitive-header-menu .sub-menu a:hover,
.afinitive-header-menu .sub-menu a:focus {
	background: #f7f4f1;
	color: var(--afinitive-gold-dark) !important;
}

.afinitive-header-menu .menu-item-has-children:hover > .sub-menu,
.afinitive-header-menu .menu-item-has-children:focus-within > .sub-menu {
	opacity: 1;
	pointer-events: auto;
	transform: translateX(-50%) translateY(0);
}

.afinitive-client-access {
	border: 1px solid #d8d0cb;
	display: inline-block;
	padding: 12px 18px;
	text-decoration: none;
	white-space: nowrap;
}

.afinitive-language-switch {
	align-items: center;
	display: inline-flex;
	gap: 6px;
	white-space: nowrap;
}

.afinitive-language-switch a {
	color: inherit;
	text-decoration: none;
}

.elementor .afinitive-hero {
	padding: 30px 0 88px !important;
}

body .elementor .elementor-section.afinitive-hero > .elementor-container,
body .elementor .elementor-section.afinitive-history > .elementor-container,
body .elementor .elementor-section.afinitive-global > .elementor-container {
	max-width: 1180px !important;
	width: calc(100% - 96px) !important;
}

.afinitive-kicker {
	color: #68605b !important;
	font-family: var(--afinitive-font-sans);
	font-size: 13px;
	line-height: 1.3;
	margin-bottom: 18px;
}

.afinitive-hero-title {
	max-width: 760px;
}

.afinitive-hero-title .elementor-heading-title {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-sans);
	font-size: 60px !important;
	font-weight: 700;
	letter-spacing: 0;
	line-height: .98;
}

.afinitive-hero-copy {
	max-width: 650px;
}

.afinitive-link .elementor-button {
	background: transparent !important;
	border: 0 !important;
	border-bottom: 1px solid #9f726c !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--afinitive-gold-dark) !important;
	font-family: var(--afinitive-font-sans);
	font-size: 13px;
	font-weight: 500;
	min-height: 0 !important;
	padding: 0 0 3px !important;
}

.afinitive-hero-reference {
	margin-top: 28px;
	width: 100%;
}

.afinitive-hero-reference img,
.afinitive-hero-reference video {
	display: block;
	height: 560px !important;
	object-fit: cover;
	object-position: center 40%;
	width: 100%;
}

.afinitive-hero-reference video {
	background: var(--afinitive-petrol);
}

.elementor .afinitive-profiles,
.elementor .afinitive-insights,
.elementor .afinitive-about,
.elementor .afinitive-difference,
.elementor .afinitive-services,
.elementor .afinitive-team,
.elementor .afinitive-governance {
	padding: 78px 0 !important;
}

body .elementor .elementor-section.afinitive-profiles > .elementor-container,
.elementor .afinitive-profiles .elementor-container {
	align-items: start;
	display: grid !important;
	flex-wrap: nowrap !important;
	gap: 42px !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: 1640px !important;
	width: calc(100% - 160px) !important;
}

body .elementor .elementor-section.afinitive-profiles > .elementor-container > .elementor-column {
	min-width: 0 !important;
	width: auto !important;
}

.elementor .afinitive-profiles .elementor-column > .elementor-widget-wrap {
	padding: 0 !important;
}

.elementor .afinitive-profiles .afinitive-section-title .elementor-heading-title {
	font-family: var(--afinitive-font-sans) !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	letter-spacing: .22em !important;
	line-height: 1.16 !important;
	max-width: 330px;
	text-transform: uppercase !important;
}

.elementor .afinitive-profiles .afinitive-lead {
	font-family: var(--afinitive-font-serif);
	font-size: 15px !important;
	line-height: 1.35 !important;
	max-width: 340px;
}

.elementor .afinitive-profiles .afinitive-profile-links {
	font-family: var(--afinitive-font-sans);
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.55 !important;
}

.elementor .afinitive-profiles .afinitive-profile-links .elementor-widget-container {
	max-width: 360px;
}

.elementor .afinitive-profiles .afinitive-profile-links span {
	float: right;
}

.elementor .afinitive-profiles .afinitive-profile-links hr {
	border: 0;
	border-top: 1px solid #ded8d3;
	margin: 15px 0;
}

.elementor .afinitive-pioneer {
	border-top: 1px solid #ded8d3;
	padding: 78px 0 !important;
}

body .elementor .elementor-section.afinitive-pioneer > .elementor-container,
.elementor .afinitive-pioneer .elementor-container {
	align-items: start;
	display: grid !important;
	flex-wrap: nowrap !important;
	gap: 42px !important;
	grid-template-columns: minmax(260px, 1fr) minmax(0, 2fr) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: 1540px !important;
	width: calc(100% - 80px) !important;
}

body .elementor .elementor-section.afinitive-pioneer > .elementor-container > .elementor-column,
.elementor .afinitive-pioneer .elementor-column {
	min-width: 0 !important;
	width: auto !important;
}

.elementor .afinitive-pioneer .elementor-column > .elementor-widget-wrap {
	padding: 0 !important;
}

.elementor .afinitive-pioneer .afinitive-pioneer-title .elementor-heading-title {
	color: #4a4643 !important;
	font-family: var(--afinitive-font-serif) !important;
	font-size: 29px !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	line-height: 1.14 !important;
	text-transform: none !important;
}

.elementor .afinitive-pioneer .afinitive-pioneer-layout {
	display: grid;
	gap: 52px 58px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	width: 100%;
}

.elementor .afinitive-pioneer .afinitive-pioneer-text {
	color: #4a4643 !important;
	font-family: var(--afinitive-font-serif) !important;
	font-size: 20px !important;
	line-height: 1.35 !important;
}

.elementor .afinitive-pioneer .afinitive-pioneer-text p {
	margin: 0;
}

.afinitive-pioneer-video {
	align-items: center;
	aspect-ratio: 16 / 7;
	background: linear-gradient(135deg, rgba(7, 44, 48, .72), rgba(80, 78, 74, .58)), url("../images/afinitive-meeting-room.png") center / cover;
	display: flex;
	grid-column: 1 / -1;
	justify-content: center;
	margin-top: 2px;
	min-height: 360px;
	position: relative;
	width: 100%;
}

.afinitive-pioneer-video::before {
	border-bottom: 24px solid transparent;
	border-left: 34px solid rgba(255, 255, 255, .86);
	border-top: 24px solid transparent;
	content: "";
	display: block;
	height: 0;
	margin-left: 10px;
	width: 0;
}

.afinitive-pioneer-video span {
	bottom: 28px;
	color: rgba(255, 255, 255, .8);
	font-family: var(--afinitive-font-serif);
	font-size: 22px;
	left: 34px;
	position: absolute;
}

.elementor .afinitive-insights .elementor-container {
	align-items: start;
	display: grid !important;
	gap: 0 !important;
	grid-template-columns: 1fr 2.15fr !important;
}

.elementor .afinitive-insights {
	display: none !important;
}

.elementor-element-pic6929 {
	display: none !important;
}

.elementor .afinitive-insights .elementor-column:first-child {
	grid-column: 1;
	grid-row: 1;
}

.elementor .afinitive-insights .elementor-column:nth-child(2) {
	grid-column: 2;
	grid-row: 1;
	min-width: 0;
}

body .elementor .elementor-section.afinitive-about > .elementor-container,
.elementor .afinitive-about .elementor-container {
	display: grid !important;
	grid-template-columns: minmax(220px, 33.33%) minmax(0, 66.67%) !important;
	flex-wrap: nowrap !important;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: 1640px !important;
	row-gap: 0 !important;
	width: calc(100% - 160px) !important;
}

.elementor .afinitive-about {
	padding: 78px 0 70px !important;
}

.elementor .afinitive-about .elementor-column > .elementor-widget-wrap {
	padding: 0 !important;
}

body .elementor .elementor-section.afinitive-about > .elementor-container > .elementor-column {
	min-width: 0 !important;
	width: auto !important;
}

body .elementor .elementor-section.afinitive-about > .elementor-container > .elementor-column:first-child {
	grid-column: 1 !important;
	grid-row: 1 !important;
}

body .elementor .elementor-section.afinitive-about > .elementor-container > .elementor-column:nth-child(2) {
	grid-column: 2 !important;
	grid-row: 1 !important;
}

.elementor .afinitive-about .afinitive-about-title .elementor-heading-title,
.elementor .afinitive-about .afinitive-section-title .elementor-heading-title {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-serif) !important;
	font-size: 34px !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	line-height: 1.14 !important;
	text-transform: none !important;
}

.elementor .afinitive-about .afinitive-lead {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-serif) !important;
	font-size: 25px !important;
	line-height: 1.23 !important;
	margin-top: 0 !important;
	max-width: 1040px;
}

.elementor .afinitive-about .afinitive-link {
	margin-top: 24px;
}

.elementor .afinitive-about .afinitive-link .elementor-button {
	color: #8b5149 !important;
	font-size: 18px !important;
	font-weight: 400 !important;
}

.afinitive-about-stats .elementor-widget-container {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 70px;
}

.afinitive-about-stat {
	border-left: 1px solid #cfc8c2;
	display: grid;
	grid-template-rows: auto auto 1fr auto;
	min-height: 220px;
	padding: 18px 16px 0 16px;
}

.afinitive-about-stat strong {
	color: #9f665f;
	display: block;
	font-family: var(--afinitive-font-serif);
	font-size: 47px;
	font-weight: 400;
	line-height: 1;
	margin-bottom: 10px;
}

.afinitive-about-stat small {
	color: #9f665f;
	display: block;
	font-family: var(--afinitive-font-sans);
	font-size: 8px;
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: 0;
	text-transform: uppercase;
}

.afinitive-about-stat span {
	color: var(--afinitive-ink);
	display: block;
	font-family: var(--afinitive-font-sans);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.25;
	margin-top: auto;
}

.afinitive-about-note {
	color: #5e5753 !important;
	font-family: var(--afinitive-font-sans);
	font-size: 16px !important;
	line-height: 1.4 !important;
	margin: 64px 0 0;
}

.afinitive-about-image {
	margin: 68px 0 0;
	width: 100%;
}

.afinitive-about-image img {
	display: block;
	height: 430px;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.afinitive-about-services {
	margin-top: 36px;
}

.afinitive-about-services h3 {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-serif);
	font-size: 20px;
	font-weight: 400;
	line-height: 1.2;
	margin: 0 0 18px;
}

.afinitive-about-services__grid {
	display: grid;
	gap: 34px 26px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.afinitive-about-services article {
	border-top: 1px solid #d8d0cb;
	padding-top: 18px;
}

.afinitive-about-services h4 {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-serif);
	font-size: 18px;
	font-weight: 400;
	line-height: 1.2;
	margin: 0 0 12px;
}

.afinitive-about-services p {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-sans);
	font-size: 13px;
	line-height: 1.42;
	margin: 0 0 16px;
}

.afinitive-about-services a {
	border-bottom: 1px solid #9f726c;
	color: #8b5149;
	font-family: var(--afinitive-font-sans);
	font-size: 12px;
	text-decoration: none;
}

.afinitive-about-photo img {
	display: block;
	height: auto !important;
	width: 100%;
}

.elementor .afinitive-profiles .elementor-column,
.elementor .afinitive-insights .elementor-column,
.elementor .afinitive-about .elementor-column {
	width: auto !important;
}

.afinitive-section-title .elementor-heading-title,
.afinitive-card-title .elementor-heading-title {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-sans);
	font-size: 25px !important;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.08;
}

.afinitive-card-title .elementor-heading-title {
	color: var(--afinitive-gold-dark) !important;
	font-size: 20px !important;
}

.afinitive-lead,
.afinitive-card-copy {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-serif);
	font-size: 14px !important;
	line-height: 1.48 !important;
}

.afinitive-card-copy {
	font-size: 13px !important;
}

.afinitive-profile-links {
	color: #7d554f !important;
	font-family: var(--afinitive-font-sans);
	font-size: 14px;
	font-weight: 500;
	line-height: 2.35;
}

.afinitive-profile-links span {
	float: right;
}

.afinitive-profile-links hr {
	border: 0;
	border-top: 1px solid #ded8d3;
	margin: 0;
}

.afinitive-card-column {
	margin-bottom: 36px !important;
}

.afinitive-meta {
	color: #77706b !important;
	font-family: var(--afinitive-font-sans);
	font-size: 11px;
	line-height: 1.35;
}

.afinitive-insights-grid {
	display: grid;
	gap: 56px 24px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-left: 0;
}

.afinitive-insight-card {
	margin: 0;
}

.afinitive-insight-card a {
	color: inherit;
	display: block;
	text-decoration: none;
}

.afinitive-insight-card.is-featured {
	grid-column: span 2;
}

.afinitive-insight-card.is-featured .afinitive-insight-thumb {
	height: 255px;
	margin-bottom: 18px;
}

.afinitive-insight-card.is-featured h3 {
	color: var(--afinitive-gold-dark);
	font-family: var(--afinitive-font-serif);
	font-size: 21px;
	font-weight: 400;
	line-height: 1.14;
	margin: 0 0 12px;
}

.afinitive-insight-card.is-small {
	padding-top: 0;
}

.afinitive-insight-thumb {
	background: #f0eeee;
	height: 178px;
	margin: 0 0 18px;
	width: 100%;
}

.afinitive-insight-card.is-small h3 {
	color: #3d302d;
	font-family: var(--afinitive-font-serif);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.2;
	margin: 0 0 12px;
}

.afinitive-insight-card span {
	border-bottom: 1px solid #9f726c;
	color: var(--afinitive-gold-dark) !important;
	display: inline-block;
	font-family: var(--afinitive-font-sans);
	font-size: 12px;
	font-weight: 500;
	line-height: 1.2;
	padding-bottom: 3px;
}

.afinitive-insights-more {
	border-bottom: 1px solid #9f726c;
	color: var(--afinitive-gold-dark) !important;
	display: block;
	font-family: var(--afinitive-font-sans);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.2;
	margin: 54px 0 0 auto;
	padding-bottom: 3px;
	text-align: right;
	text-decoration: none;
	width: max-content;
}

.elementor .afinitive-newsletter-row {
	border-top: 1px solid #ded8d3;
	padding: 34px 0 42px !important;
}

.elementor .afinitive-newsletter-row .elementor-container {
	align-items: center;
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
}

.elementor .afinitive-newsletter-row .elementor-column {
	width: auto !important;
}

.afinitive-newsletter {
	display: flex;
	margin-top: 0;
	width: 100%;
}

.afinitive-newsletter input,
.afinitive-contact-form input[type="text"],
.afinitive-contact-form input[type="email"],
.afinitive-contact-form input[type="tel"] {
	background: #fff;
	border: 1px solid #ddd7d2;
	flex: 1;
	font-family: var(--afinitive-font-sans);
	font-size: 13px;
	min-height: 42px;
	padding: 10px 16px;
}

.afinitive-newsletter button,
.afinitive-contact-form .tnp-submit {
	background: var(--afinitive-petrol);
	border: 1px solid var(--afinitive-petrol);
	color: #fff !important;
	font-family: var(--afinitive-font-sans);
	font-size: 12px;
	font-weight: 500;
	min-width: 132px;
	padding: 0 22px;
}

.elementor .afinitive-section .afinitive-contact-form .tnp-submit {
	color: #fff !important;
}

.afinitive-contact-form {
	margin-top: 0;
	width: 100%;
}

.afinitive-contact-form form {
	align-items: end;
	display: grid;
	gap: 12px;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr) minmax(0, 1.15fr) auto;
	width: 100%;
}

.afinitive-contact-form .tnp-field {
	margin: 0;
	padding: 0;
}

.afinitive-contact-form label {
	color: var(--afinitive-muted);
	display: block;
	font-family: var(--afinitive-font-sans);
	font-size: 11px;
	font-weight: 500;
	line-height: 1.2;
	margin: 0 0 6px;
}

.afinitive-contact-form .tnp-submit {
	cursor: pointer;
	height: 42px;
}

.afinitive-contact-form .tnp-privacy-field {
	grid-column: 1 / -1;
	margin-top: 2px;
}

.afinitive-contact-form .tnp-privacy-field label {
	align-items: center;
	display: flex;
	gap: 8px;
	margin: 0;
}

.afinitive-contact-form .tnp-privacy-field label span {
	display: inline;
}

.afinitive-contact-form .tnp-privacy {
	flex: 0 0 auto;
	min-height: 0;
	width: auto;
}

.elementor .afinitive-press {
	padding: 18px 0 92px !important;
}

.elementor .afinitive-press .elementor-container {
	max-width: 1180px !important;
}

.elementor .afinitive-press .elementor-column > .elementor-widget-wrap {
	padding: 0 18px !important;
}

.afinitive-press .afinitive-section-title {
	margin-bottom: 36px;
}

.afinitive-press .afinitive-section-title .elementor-heading-title {
	font-family: var(--afinitive-font-serif);
	font-size: 28px !important;
	font-weight: 400;
}

.afinitive-press-grid {
	display: grid;
	gap: 30px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.afinitive-press-card {
	margin: 0;
}

.afinitive-press-link {
	color: inherit;
	display: block;
	text-decoration: none;
}

.afinitive-press-media {
	align-items: flex-end;
	background: linear-gradient(#f0efee 0%, #f0efee 84%, #f8f6f5 84%, #f8f6f5 100%);
	display: flex;
	height: 300px;
	margin-bottom: 22px;
	padding: 0 16px 18px;
}

.afinitive-press-media span {
	color: #2f2c2a !important;
	display: block;
	font-family: var(--afinitive-font-serif);
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
	max-width: 120px;
	text-transform: uppercase;
}

.afinitive-press-meta {
	color: var(--afinitive-gold-dark) !important;
	font-family: var(--afinitive-font-sans);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.35;
	margin: 0 0 12px;
}

.afinitive-press-card h3 {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-serif);
	font-size: 25px;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.16;
	margin: 0;
}

.elementor .afinitive-history {
	background: #f6f4f3;
	border-bottom: 1px solid #ded8d3;
	border-top: 1px solid #ded8d3;
	padding: 74px 0 0 !important;
}

.elementor .afinitive-history .elementor-container {
	display: grid !important;
	grid-template-columns: 1fr 2fr !important;
}

.elementor .afinitive-history .elementor-column {
	width: auto !important;
}

.elementor .afinitive-history .elementor-column:last-child {
	grid-column: 1 / -1;
}

.elementor .afinitive-history .elementor-column:last-child,
.elementor .afinitive-history .elementor-column:last-child > .elementor-widget-wrap,
.elementor .afinitive-history .afinitive-timeline-video {
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	max-width: none !important;
	width: 100vw !important;
}

.elementor .afinitive-history .afinitive-section-title .elementor-heading-title {
	color: #4a4643 !important;
	font-family: var(--afinitive-font-serif) !important;
	font-size: 34px !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	line-height: 1.16 !important;
	text-transform: none !important;
}

.elementor .afinitive-history .afinitive-lead {
	color: #4a4643 !important;
	font-family: var(--afinitive-font-serif) !important;
	font-size: 27px !important;
	line-height: 1.18 !important;
	max-width: 800px;
}

.elementor .afinitive-history .afinitive-link {
	margin-top: 34px;
}

.elementor .afinitive-history .afinitive-link .elementor-button {
	color: #8b5149 !important;
	font-size: 19px !important;
	font-weight: 400 !important;
}

.afinitive-wide-reference img,
.afinitive-wide-reference video {
	display: block;
	height: 520px !important;
	margin-top: 70px;
	object-fit: cover;
	object-position: center 55%;
	width: 100%;
}

.afinitive-timeline-video {
	background: #f6f4f3;
	position: relative;
	overflow: hidden;
}

.afinitive-timeline-video::after {
	background: rgba(6, 22, 26, 0.18);
	content: "";
	inset: 70px 0 0;
	pointer-events: none;
	position: absolute;
}

.afinitive-timeline-video video {
	background: #f6f4f3;
	height: clamp(680px, 52vw, 980px) !important;
	object-fit: cover;
	object-position: center center;
	width: 100%;
}

.elementor .afinitive-essence {
	background: #fff;
	border-bottom: 1px solid #ded8d3;
	padding: 78px 0 70px !important;
}

body .elementor .elementor-section.afinitive-essence > .elementor-container,
.elementor .afinitive-essence .elementor-container {
	display: grid !important;
	flex-wrap: nowrap !important;
	grid-template-columns: minmax(220px, 33.33%) minmax(0, 66.67%) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: 1640px !important;
	row-gap: 0 !important;
	width: calc(100% - 160px) !important;
}

body .elementor .elementor-section.afinitive-essence > .elementor-container > .elementor-column {
	min-width: 0 !important;
	width: auto !important;
}

body .elementor .elementor-section.afinitive-essence > .elementor-container > .elementor-column:first-child {
	grid-column: 1 !important;
	grid-row: 1 !important;
}

body .elementor .elementor-section.afinitive-essence > .elementor-container > .elementor-column:nth-child(2) {
	grid-column: 2 !important;
	grid-row: 1 !important;
}

.elementor .afinitive-essence .elementor-column > .elementor-widget-wrap {
	padding: 0 !important;
}

.elementor .afinitive-essence .afinitive-essence-title .elementor-heading-title {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-serif) !important;
	font-size: 34px !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	line-height: 1.14 !important;
	text-transform: none !important;
}

.afinitive-essence-grid {
	display: grid;
	gap: 38px 36px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.afinitive-essence-grid article {
	border-top: 1px solid #d8d0cb;
	min-height: 145px;
	padding-top: 16px;
}

.afinitive-essence-grid article:nth-child(-n+2) {
	border-top: 0;
	padding-top: 0;
}

.afinitive-essence-grid h3 {
	color: #4a4643;
	font-family: var(--afinitive-font-serif);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.22;
	margin: 0 0 13px;
}

.afinitive-essence-grid p {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-serif);
	font-size: 12px;
	line-height: 1.34;
	margin: 0;
}

.afinitive-key-figures {
	grid-column: 1 / -1;
	margin-top: 8px;
}

.afinitive-key-figures h3 {
	color: #4a4643;
	font-family: var(--afinitive-font-serif);
	font-size: 18px;
	font-weight: 400;
	line-height: 1.2;
	margin: 0 0 22px;
}

.afinitive-key-figures__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	row-gap: 28px;
}

.afinitive-key-figures__grid div {
	border-left: 1px solid #d8d0cb;
	min-height: 118px;
	padding: 8px 12px 0 12px;
}

.afinitive-key-figures__grid strong {
	color: #9f665f;
	display: block;
	font-family: var(--afinitive-font-serif);
	font-size: 32px;
	font-weight: 400;
	line-height: 1;
	margin-bottom: 7px;
}

.afinitive-key-figures__grid small {
	color: #9f665f;
	display: block;
	font-family: var(--afinitive-font-sans);
	font-size: 7px;
	font-weight: 700;
	letter-spacing: .08em;
	line-height: 1.2;
	margin-bottom: 48px;
	text-transform: uppercase;
}

.afinitive-key-figures__grid span {
	color: #8b5149;
	display: block;
	font-family: var(--afinitive-font-sans);
	font-size: 10px;
	line-height: 1.25;
}

.elementor .afinitive-services,
.elementor .afinitive-responsibility,
.elementor .afinitive-difference,
.elementor .afinitive-team,
.elementor .afinitive-governance,
.elementor .afinitive-regulators,
.elementor .afinitive-stakeholders,
.elementor .afinitive-partners,
.elementor .afinitive-offices {
	border-top: 1px solid #ded8d3;
	padding: 78px 0 !important;
}

.elementor .afinitive-services .elementor-container,
.elementor .afinitive-responsibility .elementor-container,
.elementor .afinitive-difference .elementor-container,
.elementor .afinitive-team .elementor-container,
.elementor .afinitive-governance .elementor-container,
.elementor .afinitive-regulators .elementor-container,
.elementor .afinitive-partners .elementor-container,
.elementor .afinitive-offices .elementor-container {
	align-items: start;
	display: grid !important;
	gap: 58px 34px !important;
	grid-template-columns: 1fr 1fr 1fr !important;
}

.elementor .afinitive-services .elementor-column,
.elementor .afinitive-responsibility .elementor-column,
.elementor .afinitive-difference .elementor-column,
.elementor .afinitive-team .elementor-column,
.elementor .afinitive-governance .elementor-column,
.elementor .afinitive-regulators .elementor-column,
.elementor .afinitive-partners .elementor-column,
.elementor .afinitive-offices .elementor-column {
	min-width: 0;
	width: auto !important;
}

.elementor .afinitive-services .elementor-column:first-child,
.elementor .afinitive-responsibility .elementor-column:first-child,
.elementor .afinitive-difference .elementor-column:first-child,
.elementor .afinitive-team .elementor-column:first-child,
.elementor .afinitive-governance .elementor-column:first-child,
.elementor .afinitive-regulators .elementor-column:first-child,
.elementor .afinitive-partners .elementor-column:first-child,
.elementor .afinitive-offices .elementor-column:first-child {
	grid-column: 1;
	grid-row: 1 / span 2;
}

.elementor .afinitive-difference .elementor-column:nth-child(2),
.elementor .afinitive-services .elementor-column:nth-child(2),
.elementor .afinitive-team .elementor-column:nth-child(2),
.elementor .afinitive-governance .elementor-column:nth-child(2),
.elementor .afinitive-regulators .elementor-column:nth-child(2),
.elementor .afinitive-partners .elementor-column:nth-child(2),
.elementor .afinitive-offices .elementor-column:nth-child(2) {
	grid-column: 2 / 4;
	grid-row: 1;
}

.elementor .afinitive-responsibility .elementor-column:nth-child(2) {
	grid-column: 2;
	grid-row: 1;
}

.elementor .afinitive-services .elementor-column:nth-child(3),
.elementor .afinitive-responsibility .elementor-column:nth-child(3) {
	grid-column: 3;
	grid-row: 1;
}

.elementor .afinitive-services .elementor-column:nth-child(4),
.elementor .afinitive-responsibility .elementor-column:nth-child(4) {
	grid-column: 2;
	grid-row: 2;
}

.elementor .afinitive-services .elementor-column:nth-child(5),
.elementor .afinitive-responsibility .elementor-column:nth-child(5) {
	grid-column: 3;
	grid-row: 2;
}

.elementor .afinitive-services .elementor-column > .elementor-widget-wrap,
.elementor .afinitive-responsibility .elementor-column > .elementor-widget-wrap,
.elementor .afinitive-difference .elementor-column > .elementor-widget-wrap,
.elementor .afinitive-team .elementor-column > .elementor-widget-wrap,
.elementor .afinitive-governance .elementor-column > .elementor-widget-wrap,
.elementor .afinitive-regulators .elementor-column > .elementor-widget-wrap,
.elementor .afinitive-partners .elementor-column > .elementor-widget-wrap,
.elementor .afinitive-offices .elementor-column > .elementor-widget-wrap {
	padding: 0 !important;
}

.elementor .afinitive-services .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-responsibility .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-difference .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-team .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-governance .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-regulators .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-partners .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-offices .afinitive-section-title .elementor-heading-title {
	font-family: var(--afinitive-font-serif);
	font-size: 29px !important;
	font-weight: 400 !important;
	line-height: 1.14 !important;
}

.elementor .afinitive-team .afinitive-section-title::after {
	border-top: 1px solid #d8d0cb;
	content: "";
	display: block;
	margin: 18px 0 18px;
	width: 100%;
}

.elementor .afinitive-stakeholders .elementor-container {
	display: block !important;
}

.elementor .afinitive-stakeholders .elementor-column {
	width: 100% !important;
}

.elementor .afinitive-stakeholders .elementor-column > .elementor-widget-wrap {
	padding: 0 !important;
}

.elementor .afinitive-stakeholders .afinitive-lead {
	max-width: 980px;
}

.elementor .afinitive-offices .elementor-container {
	display: block !important;
	max-width: none !important;
	width: 100% !important;
}

.elementor .afinitive-offices .elementor-column {
	width: 100% !important;
}

.elementor .afinitive-offices .elementor-column:first-child,
.elementor .afinitive-offices .elementor-column:nth-child(2) {
	grid-column: auto;
	grid-row: auto;
}

.elementor .afinitive-offices .afinitive-lead {
	max-width: 860px;
}

.elementor .afinitive-offices {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.elementor .afinitive-offices .elementor-column:first-child {
	left: 50%;
	margin-left: -50vw;
	margin-right: 0;
	max-width: none;
	position: relative;
	right: 50%;
	width: 100vw !important;
	max-width: 100vw !important;
}

.elementor .afinitive-offices .elementor-column:nth-child(2) {
	left: 50%;
	margin-left: -50vw;
	margin-right: 0;
	position: relative;
	right: 50%;
	width: 100vw !important;
	max-width: 100vw !important;
}

.elementor .afinitive-offices .elementor-column:first-child > .elementor-widget-wrap,
.elementor .afinitive-offices .elementor-column:nth-child(2) > .elementor-widget-wrap {
	padding: 0 !important;
}

.elementor .afinitive-offices .elementor-column:first-child .elementor-widget-html,
.elementor .afinitive-offices .elementor-column:nth-child(2) .elementor-widget-html {
	margin: 0 !important;
}

.elementor .afinitive-spaced-title .elementor-heading-title {
	font-family: var(--afinitive-font-sans) !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	letter-spacing: .22em;
	line-height: 1.15 !important;
	text-transform: uppercase;
}

.elementor .afinitive-section .afinitive-section-title .elementor-heading-title {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-sans) !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	letter-spacing: .18em !important;
	line-height: 1.22 !important;
	margin: 0;
	max-width: 100%;
	text-transform: uppercase;
}

.afinitive-divider .elementor-divider {
	padding-block-start: 0 !important;
	padding-block-end: 0 !important;
}

.afinitive-divider .elementor-divider-separator {
	border-color: #bdb5ae;
}

.afinitive-service {
	margin-bottom: 0;
}

.afinitive-service .afinitive-card-title .elementor-heading-title {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-serif);
	font-size: 20px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
}

.afinitive-service .afinitive-card-copy {
	font-family: var(--afinitive-font-serif);
	font-size: 14px !important;
	line-height: 1.35 !important;
}

.afinitive-service .afinitive-link .elementor-button {
	font-size: 13px;
	font-weight: 400;
}

.afinitive-difference-table {
	display: grid;
	grid-template-columns: 1fr 1.25fr 1.25fr;
	margin-top: 4px;
}

.afinitive-difference-table > * {
	border-top: 1px solid #cfc8c2;
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-serif);
	font-size: 15px;
	line-height: 1.36;
	margin: 0;
	min-height: 72px;
	padding: 18px 18px 18px 0;
}

.afinitive-difference-table strong,
.afinitive-difference-table span {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-sans);
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
}

.afinitive-difference-table p:nth-child(3n) {
	color: var(--afinitive-gold-dark);
}

.afinitive-solution-grid,
.afinitive-team-grid {
	display: grid;
	gap: 44px 34px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.afinitive-solution-grid article {
	border-top: 1px solid #cfc8c2;
	padding-top: 20px;
}

.afinitive-team-grid article {
	border: 1px solid #cfc8c2;
	display: grid;
	gap: 18px;
	grid-template-columns: 92px minmax(0, 1fr);
	min-height: 210px;
	padding: 20px;
}

.afinitive-team-photo {
	aspect-ratio: 1;
	background: #ebe7e2;
	border: 1px solid #cfc8c2;
	border-radius: 50%;
	margin: 0;
	overflow: hidden;
	width: 92px;
}

.afinitive-team-photo img {
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	width: 100%;
}

.afinitive-solution-grid h3 {
	align-items: center;
	color: var(--afinitive-ink);
	display: flex;
	font-family: var(--afinitive-font-serif);
	font-size: 20px;
	font-weight: 400;
	gap: 12px;
	line-height: 1.2;
	margin: 0 0 16px;
}

.afinitive-solution-icon {
	border: 1px solid var(--afinitive-gold-dark);
	border-radius: 50%;
	display: inline-flex;
	flex: 0 0 30px;
	height: 30px;
	position: relative;
	width: 30px;
}

.afinitive-solution-icon::before,
.afinitive-solution-icon::after {
	content: "";
	position: absolute;
}

.afinitive-solution-icon--markets::before {
	border-bottom: 2px solid var(--afinitive-gold-dark);
	border-left: 2px solid var(--afinitive-gold-dark);
	height: 10px;
	left: 8px;
	top: 8px;
	transform: skew(-20deg);
	width: 13px;
}

.afinitive-solution-icon--derivatives::before {
	border-bottom: 2px solid var(--afinitive-gold-dark);
	border-top: 2px solid var(--afinitive-gold-dark);
	height: 11px;
	left: 8px;
	top: 8px;
	transform: rotate(35deg);
	width: 14px;
}

.afinitive-solution-icon--property::before {
	border-bottom: 9px solid var(--afinitive-gold-dark);
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	left: 6px;
	top: 7px;
}

.afinitive-solution-icon--property::after {
	border: 2px solid var(--afinitive-gold-dark);
	border-top: 0;
	height: 8px;
	left: 9px;
	top: 16px;
	width: 10px;
}

.afinitive-solution-icon--tax::before {
	background: var(--afinitive-gold-dark);
	height: 16px;
	left: 14px;
	top: 7px;
	transform: rotate(35deg);
	width: 2px;
}

.afinitive-solution-icon--tax::after {
	border: 2px solid var(--afinitive-gold-dark);
	border-radius: 50%;
	box-shadow: 10px 10px 0 -1px #fff, 10px 10px 0 1px var(--afinitive-gold-dark);
	height: 4px;
	left: 7px;
	top: 7px;
	width: 4px;
}

.afinitive-solution-icon--trust::before {
	border: 2px solid var(--afinitive-gold-dark);
	border-radius: 2px;
	height: 13px;
	left: 8px;
	top: 9px;
	width: 12px;
}

.afinitive-solution-icon--trust::after {
	background: var(--afinitive-gold-dark);
	height: 2px;
	left: 6px;
	top: 7px;
	width: 16px;
}

.afinitive-solution-icon--global::before {
	border: 2px solid var(--afinitive-gold-dark);
	border-radius: 50%;
	height: 14px;
	left: 7px;
	top: 7px;
	width: 14px;
}

.afinitive-solution-icon--global::after {
	background: var(--afinitive-gold-dark);
	height: 18px;
	left: 14px;
	top: 6px;
	width: 1px;
}

.afinitive-team-grid h3 {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-serif);
	font-size: 20px;
	font-weight: 400;
	line-height: 1.15;
	margin: 0 0 6px;
}

.afinitive-team-grid strong {
	color: var(--afinitive-gold-dark);
	display: block;
	font-family: var(--afinitive-font-sans);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.25;
	margin-bottom: 14px;
	text-transform: uppercase;
}

.afinitive-solution-grid p {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-serif);
	font-size: 14px;
	line-height: 1.38;
	margin: 0;
}

.afinitive-team-grid p {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-serif);
	font-size: 13px;
	line-height: 1.4;
	margin: 0;
}

.afinitive-badge-grid {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 34px;
}

.afinitive-badge-grid span {
	align-items: center;
	border: 1px solid #cfc8c2;
	color: var(--afinitive-ink);
	display: flex;
	font-family: var(--afinitive-font-sans);
	font-size: 13px;
	font-weight: 700;
	justify-content: center;
	min-height: 64px;
	text-align: center;
}

.afinitive-regulators-grid {
	display: grid;
	gap: 28px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.afinitive-regulators-grid article {
	display: grid;
	grid-template-rows: 150px 44px auto;
	row-gap: 18px;
	padding-top: 0;
	text-align: center;
}

.afinitive-regulators-grid figure {
	align-items: center;
	background: #fff;
	display: flex;
	height: 150px;
	justify-content: center;
	margin: 0;
	padding: 8px;
}

.afinitive-regulators-grid figure img {
	display: block;
	filter: grayscale(.15);
	height: auto;
	max-height: 140px;
	max-width: 220px;
	object-fit: contain;
	width: auto;
}

.afinitive-regulators-grid strong {
	color: var(--afinitive-petrol);
	display: none;
	font-family: var(--afinitive-font-sans);
	font-size: 30px;
	font-weight: 800;
	letter-spacing: .02em;
	line-height: 1;
	margin-bottom: 10px;
}

.afinitive-regulators-grid span {
	color: #527ea8;
	display: block;
	font-family: var(--afinitive-font-sans);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.28;
	margin: 0 auto;
	max-width: 220px;
	text-transform: uppercase;
	min-height: 44px;
}

.afinitive-regulators-grid span.is-hidden {
	visibility: hidden;
}

.afinitive-regulators-grid p {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-serif);
	font-size: 12.5px;
	line-height: 1.62;
	margin: 0 auto;
	max-width: 235px;
	text-align: center;
}

.afinitive-stakeholders-grid {
	display: grid;
	gap: 34px 42px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin: 42px auto 0;
	max-width: 1100px;
}

.afinitive-stakeholders-grid span {
	align-items: center;
	background: #fbfaf9;
	border: 1px solid #e5dfda;
	color: var(--afinitive-ink);
	display: flex;
	flex-direction: column;
	font-family: var(--afinitive-font-sans);
	font-size: 12.5px;
	font-weight: 700;
	gap: 16px;
	justify-content: center;
	line-height: 1.2;
	min-height: 164px;
	padding: 22px 16px;
	text-align: center;
}

.afinitive-stakeholders-grid img {
	background: transparent;
	border: 0;
	border-radius: 0;
	display: block;
	height: 86px;
	object-fit: contain;
	padding: 0;
	width: 86px;
}

.afinitive-partners-lead strong {
	font-family: var(--afinitive-font-sans);
	font-weight: 700;
	letter-spacing: .18em;
}

.afinitive-partners-grid {
	align-items: center;
	display: grid;
	gap: 24px 34px;
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.afinitive-partners-grid figure {
	align-items: center;
	display: flex;
	justify-content: center;
	margin: 0;
	min-height: 82px;
	padding: 10px 8px;
}

.afinitive-partners-grid img {
	display: block;
	filter: grayscale(1);
	height: auto;
	max-height: 54px;
	max-width: 150px;
	object-fit: contain;
	opacity: .58;
	transition: filter .2s ease, opacity .2s ease, transform .2s ease;
	width: auto;
}

.afinitive-partners-grid figure:hover img {
	filter: grayscale(.35);
	opacity: .86;
	transform: translateY(-1px);
}

.afinitive-contact-page {
	background: #fff;
	border-top: 1px solid #ded8d3;
	color: #4a4643;
	padding: 18px 0 88px;
}

.afinitive-contact-page__inner {
	margin: 0 auto;
	max-width: 1420px;
	width: calc(100% - 160px);
}

.afinitive-contact-page__breadcrumb {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-sans);
	font-size: 13px;
	line-height: 1.4;
	margin-bottom: 54px;
}

.afinitive-contact-page__breadcrumb a {
	color: inherit;
	text-decoration: none;
}

.afinitive-contact-page__breadcrumb span {
	margin-left: 4px;
}

.afinitive-contact-page__grid {
	align-items: start;
	display: grid;
	gap: 96px;
	grid-template-columns: minmax(0, 1.25fr) minmax(360px, .9fr);
}

.afinitive-contact-page h1 {
	color: #4a4643;
	font-family: var(--afinitive-font-serif);
	font-size: 43px;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.1;
	margin: 0 0 42px;
}

.afinitive-contact-page__form {
	display: grid;
	gap: 16px;
	max-width: 480px;
}

.afinitive-contact-page__form label:not(.afinitive-contact-page__privacy) {
	color: #4a4643;
	display: grid;
	font-family: var(--afinitive-font-serif);
	font-size: 12px;
	gap: 7px;
	line-height: 1.25;
}

.afinitive-contact-page__form input[type="text"],
.afinitive-contact-page__form input[type="tel"],
.afinitive-contact-page__form input[type="email"] {
	background: #fff;
	border: 1px solid #9f9a96;
	border-radius: 0;
	box-shadow: none;
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-serif);
	font-size: 14px;
	font-weight: 400;
	height: 38px;
	letter-spacing: 0;
	padding: 0 11px;
	text-transform: none;
	width: 100%;
}

.afinitive-contact-page__form input::placeholder {
	color: #5f5a56;
	opacity: 1;
}

.afinitive-contact-page__privacy {
	align-items: center;
	color: var(--afinitive-ink);
	display: flex;
	font-family: var(--afinitive-font-serif);
	font-size: 12px;
	gap: 10px;
	line-height: 1.35;
	margin-top: 2px;
}

.afinitive-contact-page__privacy input {
	flex: 0 0 auto;
	height: 16px;
	margin: 0;
	width: 16px;
}

.afinitive-contact-page__privacy a {
	color: #8b5149;
	text-decoration: underline;
	text-underline-offset: 4px;
}

.afinitive-contact-page__form button {
	align-self: start;
	background: var(--afinitive-petrol);
	border: 1px solid var(--afinitive-petrol);
	border-radius: 0;
	color: #fff;
	cursor: pointer;
	font-family: var(--afinitive-font-sans);
	font-size: 12px;
	font-weight: 700;
	margin-top: 8px;
	min-width: 180px;
	padding: 13px 24px;
}

.afinitive-contact-page__text {
	color: #4a4643;
	font-family: var(--afinitive-font-serif);
	font-size: 23px;
	line-height: 1.25;
	margin: 88px 0 0;
	max-width: 680px;
}

.afinitive-contact-page__image {
	margin: 0;
}

.afinitive-contact-page__image img {
	aspect-ratio: 4 / 5;
	display: block;
	height: auto;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.afinitive-history-page {
	background: #fff;
	border-top: 1px solid #ded8d3;
	color: #263044;
	padding: 18px 0 72px;
}

.afinitive-history-page__inner {
	margin: 0 auto;
	max-width: 1500px;
	width: calc(100% - 96px);
}

.afinitive-history-page__breadcrumb {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-sans);
	font-size: 13px;
	line-height: 1.4;
	margin-bottom: 32px;
}

.afinitive-history-page__breadcrumb a {
	color: inherit;
	text-decoration: none;
}

.afinitive-history-page__breadcrumb span {
	margin-left: 4px;
}

.afinitive-history-page__layout {
	display: grid;
	gap: 52px;
	grid-template-columns: minmax(260px, 32%) minmax(0, 1fr);
}

.afinitive-history-page__compass {
	align-self: stretch;
	margin: 0;
	min-height: 720px;
	overflow: hidden;
	position: relative;
}

.afinitive-history-page__compass img {
	display: block;
	height: 100%;
	left: 50%;
	max-width: none;
	object-fit: cover;
	position: absolute;
	top: 0;
	transform: translateX(-50%);
	width: 130%;
}

.afinitive-history-page__content {
	max-width: 980px;
	padding-top: 6px;
}

.afinitive-history-page__content header {
	align-items: start;
	display: grid;
	gap: 12px;
	grid-template-columns: 28px minmax(0, 1fr);
	margin-bottom: 12px;
}

.afinitive-history-page__mark {
	background: #0d3b75;
	clip-path: polygon(50% 0, 61% 38%, 100% 50%, 61% 62%, 50% 100%, 39% 62%, 0 50%, 39% 38%);
	display: block;
	height: 22px;
	margin-top: 2px;
	width: 22px;
}

.afinitive-history-page h1 {
	color: #00245d;
	font-family: var(--afinitive-font-sans);
	font-size: 21px;
	font-weight: 800;
	letter-spacing: .34em;
	line-height: 1.2;
	margin: 0;
	text-transform: uppercase;
}

.afinitive-history-page h2 {
	color: #00245d;
	font-family: var(--afinitive-font-sans);
	font-size: 25px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.1;
	margin: 0 0 12px;
}

.afinitive-history-page p {
	color: #334052;
	font-family: var(--afinitive-font-sans);
	font-size: 15px;
	line-height: 1.25;
	margin: 0 0 12px;
}

.afinitive-history-page__chapter {
	margin-bottom: 12px;
}

.afinitive-history-page__years {
	display: grid;
	gap: 42px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 10px;
}

.afinitive-history-page__closing {
	color: #002f86 !important;
	font-size: 17px !important;
	line-height: 1.25 !important;
	margin: 28px 0 0 !important;
}

.afinitive-map-embed {
	background: #f1eeee;
	margin-top: 58px;
	overflow: hidden;
	width: 100%;
}

.afinitive-office-map {
	background: #f1eeee;
	border: 0;
	border-bottom: 1px solid #d8d0cb;
	border-top: 1px solid #d8d0cb;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 560px;
	min-height: 560px;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.afinitive-office-map__heading {
	left: max(60px, calc((100vw - 1180px) / 2));
	position: absolute;
	top: 48px;
	z-index: 2;
}

.afinitive-office-map__heading strong {
	color: var(--afinitive-ink);
	display: block;
	font-family: var(--afinitive-font-serif);
	font-size: 29px;
	font-weight: 400;
	line-height: 1.15;
	margin-bottom: 8px;
}

.afinitive-office-map__heading p {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-serif);
	font-size: 17px;
	line-height: 1.35;
	margin: 0;
	max-width: 680px;
}

.afinitive-office-map__canvas {
	min-height: 560px;
	position: relative;
}

.afinitive-office-map__canvas::before {
	background:
		radial-gradient(circle at 24% 50%, rgba(36, 51, 54, .045), transparent 25%),
		radial-gradient(circle at 50% 42%, rgba(36, 51, 54, .055), transparent 23%),
		radial-gradient(circle at 83% 58%, rgba(36, 51, 54, .045), transparent 25%);
	content: "";
	inset: 0;
	position: absolute;
}

.afinitive-office-map__city {
	align-items: center;
	color: #b5afb0;
	display: inline-flex;
	font-family: var(--afinitive-font-sans);
	font-size: 13px;
	gap: 7px;
	left: var(--x);
	line-height: 1;
	position: absolute;
	top: var(--y);
	transform: translate(-50%, -50%);
	white-space: nowrap;
}

.afinitive-office-map__city i {
	background: #b5afb0;
	border-radius: 999px;
	display: block;
	height: 8px;
	width: 8px;
}

.afinitive-office-map__city--active {
	color: var(--afinitive-ink);
	font-size: 15px;
	z-index: 3;
}

.afinitive-office-map__city--active i {
	background: var(--afinitive-ink);
}

.afinitive-office-card {
	align-self: center;
	background: #fff;
	border: 1px solid #d8d0cb;
	box-shadow: 0 18px 38px rgba(21, 38, 42, .06);
	margin-right: max(70px, calc((100vw - 1180px) / 2));
	max-width: 500px;
	min-height: 260px;
	padding: 54px 50px 34px;
	position: relative;
	z-index: 4;
}

.afinitive-office-card__close {
	color: #6e6965;
	font-size: 20px;
	line-height: 1;
	position: absolute;
	right: 18px;
	top: 18px;
}

.afinitive-office-card h3 {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-serif);
	font-size: 25px;
	font-weight: 400;
	line-height: 1.15;
	margin: 0 0 42px;
}

.afinitive-office-card p {
	color: var(--afinitive-ink);
	font-family: var(--afinitive-font-sans);
	font-size: 14px;
	line-height: 1.42;
	margin: 0 0 32px;
	min-width: 360px;
}

.afinitive-office-card a {
	border-bottom: 1px solid #9f726c;
	color: #7b3e35;
	font-family: var(--afinitive-font-sans);
	font-size: 16px;
	line-height: 1.2;
	text-decoration: none;
}

.elementor .afinitive-global {
	background: #f1eeee;
	border-bottom: 1px solid #d7d1cd;
	border-top: 1px solid #d7d1cd;
	padding: 70px 0 0 !important;
}

.elementor .afinitive-global .elementor-container {
	display: grid !important;
	grid-template-columns: 1fr 2fr !important;
}

.elementor .afinitive-global .elementor-column {
	width: auto !important;
}

.elementor .afinitive-global .elementor-column:last-child {
	grid-column: 1 / -1;
}

.afinitive-map-reference img {
	display: block;
	height: 520px !important;
	margin-top: 42px;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.elementor .afinitive-footer {
	padding: 38px 0 62px !important;
}

.elementor .afinitive-footer .elementor-container {
	display: grid !important;
	gap: 26px 18px !important;
	grid-template-columns: repeat(6, 1fr) !important;
}

.elementor .afinitive-footer .elementor-column {
	width: auto !important;
}

.afinitive-footer-title .elementor-heading-title {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-sans);
	font-size: 15px !important;
	font-weight: 700;
}

.afinitive-footer-links {
	color: var(--afinitive-muted) !important;
	font-family: var(--afinitive-font-sans);
	font-size: 12px;
	line-height: 1.9;
}

/* Visual consistency pass */
body.elementor-page,
.elementor .afinitive-section,
.afinitive-contact-page,
.afinitive-history-page,
.afinitive-site-header,
.afinitive-site-footer {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-sans);
	-webkit-font-smoothing: antialiased;
	text-rendering: geometricPrecision;
}

.elementor .afinitive-section p,
.elementor .afinitive-section li,
.elementor .afinitive-section label,
.elementor .afinitive-section input,
.elementor .afinitive-section button,
.afinitive-contact-page p,
.afinitive-contact-page label,
.afinitive-contact-page input,
.afinitive-history-page p {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-sans) !important;
	font-size: 14px !important;
	line-height: 1.48 !important;
}

.elementor .afinitive-section .elementor-heading-title,
.afinitive-contact-page h1,
.afinitive-history-page h1,
.afinitive-history-page h2,
.afinitive-site-footer__group h3 {
	color: var(--afinitive-ink) !important;
	font-weight: 400;
}

.afinitive-hero-title .elementor-heading-title {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-sans) !important;
	font-size: 60px !important;
	font-weight: 700 !important;
	letter-spacing: 0 !important;
	line-height: .98 !important;
	text-transform: none !important;
}

.elementor .afinitive-section .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-spaced-title .elementor-heading-title {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-sans) !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	letter-spacing: .18em !important;
	line-height: 1.22 !important;
	text-transform: uppercase !important;
}

.elementor .afinitive-about .afinitive-about-title .elementor-heading-title,
.elementor .afinitive-essence .afinitive-essence-title .elementor-heading-title,
.elementor .afinitive-history .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-pioneer .afinitive-pioneer-title .elementor-heading-title,
.elementor .afinitive-services .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-responsibility .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-difference .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-team .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-governance .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-regulators .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-partners .afinitive-section-title .elementor-heading-title,
.elementor .afinitive-offices .afinitive-section-title .elementor-heading-title,
.afinitive-contact-page h1 {
	color: var(--afinitive-text-soft) !important;
	font-family: var(--afinitive-font-serif) !important;
	font-size: 30px !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	line-height: 1.16 !important;
	text-transform: none !important;
}

.elementor .afinitive-about .afinitive-lead,
.elementor .afinitive-history .afinitive-lead,
.elementor .afinitive-pioneer .afinitive-pioneer-text,
.afinitive-contact-page__text {
	color: var(--afinitive-text-soft) !important;
	font-family: var(--afinitive-font-serif) !important;
	font-size: 22px !important;
	font-weight: 400 !important;
	line-height: 1.28 !important;
}

.afinitive-about-services h3,
.afinitive-about-services h4,
.afinitive-essence-grid h3,
.afinitive-key-figures h3,
.afinitive-solution-grid h3,
.afinitive-team-grid h3,
.afinitive-office-card h3,
.afinitive-press-card h3,
.afinitive-insight-card h3 {
	color: var(--afinitive-text-soft) !important;
	font-family: var(--afinitive-font-serif) !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
}

.afinitive-about-services p,
.afinitive-essence-grid p,
.afinitive-solution-grid p,
.afinitive-team-grid p,
.afinitive-regulators-grid p,
.afinitive-office-card p {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-sans) !important;
	font-size: 13px !important;
	line-height: 1.45 !important;
}

.afinitive-link .elementor-button,
.afinitive-about-services a,
.afinitive-office-card a,
.afinitive-insight-card span,
.afinitive-insights-more,
.afinitive-contact-page__privacy a {
	border-color: var(--afinitive-accent) !important;
	color: var(--afinitive-accent) !important;
	font-family: var(--afinitive-font-sans) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	text-decoration: none !important;
	text-underline-offset: 4px;
}

.afinitive-about-stat strong,
.afinitive-about-stat small,
.afinitive-key-figures__grid strong,
.afinitive-key-figures__grid small,
.afinitive-team-grid strong {
	color: var(--afinitive-accent) !important;
}

.afinitive-about-stat span,
.afinitive-key-figures__grid span,
.afinitive-regulators-grid span {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-sans) !important;
}

.elementor .afinitive-history,
.elementor .afinitive-global,
.afinitive-office-map,
.afinitive-map-embed {
	background: var(--afinitive-surface) !important;
	border-color: var(--afinitive-line) !important;
}

.afinitive-divider .elementor-divider-separator,
.afinitive-about-services article,
.afinitive-essence-grid article,
.afinitive-key-figures__grid div,
.afinitive-solution-grid article,
.afinitive-difference-table > *,
.afinitive-team-grid article,
.afinitive-badge-grid span,
.afinitive-office-card,
.afinitive-contact-page__form input[type="text"],
.afinitive-contact-page__form input[type="tel"],
.afinitive-contact-page__form input[type="email"] {
	border-color: var(--afinitive-line) !important;
}

.afinitive-history-page h1,
.afinitive-history-page h2,
.afinitive-history-page__closing,
.afinitive-history-page__mark {
	color: var(--afinitive-ink) !important;
}

.afinitive-history-page__mark {
	background: var(--afinitive-accent) !important;
}

.afinitive-history-page {
	background: #fff !important;
	border-top: 1px solid var(--afinitive-line);
	color: var(--afinitive-ink) !important;
	padding: 0 0 92px;
}

.afinitive-history-page__inner {
	margin: 0 auto;
	max-width: 1720px;
	width: calc(100% - 156px);
}

.afinitive-history-page__breadcrumb {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-sans) !important;
	font-size: 14px;
	line-height: 1.4;
	margin: 34px 0 72px;
}

.afinitive-history-page__breadcrumb a {
	color: inherit;
	text-decoration: none;
}

.afinitive-history-page__hero {
	align-items: stretch;
	display: grid;
	gap: 78px;
	grid-template-columns: minmax(0, 1.15fr) minmax(420px, .85fr);
	margin-bottom: 86px;
}

.afinitive-history-page__intro {
	display: flex;
	flex-direction: column;
	min-height: 690px;
}

.afinitive-history-page h1 {
	color: var(--afinitive-text-soft) !important;
	font-family: var(--afinitive-font-serif) !important;
	font-size: clamp(48px, 4.3vw, 76px) !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	line-height: 1.03 !important;
	margin: 0;
	text-transform: none !important;
}

.afinitive-history-page__intro p {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-serif) !important;
	font-size: clamp(25px, 2.05vw, 34px) !important;
	font-weight: 400;
	line-height: 1.28 !important;
	margin: auto 0 0;
	max-width: 900px;
}

.afinitive-history-page__visual {
	align-self: end;
	background: linear-gradient(145deg, #f8f6f3, #ece8e2);
	display: flex;
	height: 705px;
	justify-content: center;
	margin: 0;
	overflow: hidden;
	position: relative;
}

.afinitive-history-page__visual::after {
	background:
		linear-gradient(90deg, rgba(255, 255, 255, .18), rgba(255, 255, 255, 0)),
		rgba(36, 51, 54, .08);
	content: "";
	inset: 0;
	position: absolute;
}

.afinitive-history-page__visual img {
	filter: grayscale(1) contrast(.92) opacity(.52);
	height: 112%;
	max-width: none;
	object-fit: cover;
	object-position: center;
	transform: translateX(-8%) rotate(-5deg);
	width: 112%;
}

.afinitive-history-page__content {
	margin-left: calc(50% - 590px);
	max-width: 1180px;
	padding-top: 0;
}

.afinitive-history-page__chapter {
	border-top: 1px solid var(--afinitive-line);
	margin: 0;
	padding-top: 26px;
}

.afinitive-history-page__chapter--full {
	border-top: 0;
	max-width: 1020px;
	padding-top: 0;
}

.afinitive-history-page h2 {
	color: var(--afinitive-accent) !important;
	font-family: var(--afinitive-font-serif) !important;
	font-size: 31px !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	line-height: 1.08 !important;
	margin: 0 0 20px;
	text-transform: none !important;
}

.afinitive-history-page p {
	color: var(--afinitive-ink) !important;
	font-family: var(--afinitive-font-sans) !important;
	font-size: 15px !important;
	line-height: 1.55 !important;
	margin: 0 0 15px;
}

.afinitive-history-page__years {
	display: grid;
	gap: 54px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 54px;
}

.afinitive-history-page__closing {
	border-top: 1px solid var(--afinitive-line);
	color: var(--afinitive-accent) !important;
	font-family: var(--afinitive-font-serif) !important;
	font-size: 23px !important;
	line-height: 1.35 !important;
	margin: 58px 0 0 !important;
	max-width: 1120px;
	padding-top: 28px;
}

@media (max-width: 1024px) {
	body .elementor .elementor-section.afinitive-section > .elementor-container,
	body .elementor .elementor-section.afinitive-header > .elementor-container,
	body .elementor .elementor-section.afinitive-hero > .elementor-container,
	body .elementor .elementor-section.afinitive-history > .elementor-container,
	body .elementor .elementor-section.afinitive-global > .elementor-container,
	body .elementor .elementor-section.afinitive-pioneer > .elementor-container {
		width: calc(100% - 48px) !important;
	}

	.afinitive-site-header__inner,
	.afinitive-site-footer__inner {
		width: calc(100% - 48px);
	}

	.afinitive-site-footer__bottom {
		padding-left: 24px;
		padding-right: 24px;
	}

	.afinitive-site-header__inner {
		grid-template-columns: 180px minmax(0, 1fr);
		row-gap: 14px;
		padding: 16px 0;
	}

	.afinitive-site-header .afinitive-actions {
		grid-column: 1 / -1;
		justify-content: flex-start;
	}

	.afinitive-site-footer__inner {
		grid-template-columns: repeat(3, 1fr);
		min-height: 0;
	}

	.afinitive-contact-page__inner {
		width: calc(100% - 48px);
	}

	.afinitive-contact-page__grid {
		gap: 52px;
		grid-template-columns: 1fr;
	}

	.afinitive-contact-page__form {
		max-width: none;
	}

	.afinitive-contact-page__image img {
		aspect-ratio: 16 / 9;
	}

	.afinitive-history-page__inner {
		width: calc(100% - 48px);
	}

	.afinitive-history-page__hero {
		gap: 42px;
		grid-template-columns: 1fr;
		margin-bottom: 54px;
	}

	.afinitive-history-page__intro {
		min-height: 0;
	}

	.afinitive-history-page__intro p {
		margin-top: 52px;
	}

	.afinitive-history-page__visual {
		height: 420px;
	}

	.afinitive-history-page__content {
		margin-left: 0;
		max-width: none;
	}

	.afinitive-hero-title .elementor-heading-title {
		font-size: 50px !important;
	}

	.afinitive-hero-reference img,
	.afinitive-hero-reference video {
		height: 460px !important;
	}

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

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

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

	.afinitive-regulators-grid,
	.afinitive-partners-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

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

	.afinitive-office-map {
		grid-template-columns: minmax(0, 1fr) 430px;
	}

	.afinitive-office-map__heading {
		left: 28px;
		top: 26px;
	}

	.afinitive-office-map__heading p {
		max-width: 520px;
	}

	.afinitive-office-card {
		margin-right: 28px;
		padding-left: 28px;
		padding-right: 28px;
	}

	.afinitive-office-card p {
		min-width: 320px;
	}
}

@media (max-width: 767px) {
	body .elementor .elementor-section.afinitive-section > .elementor-container,
	body .elementor .elementor-section.afinitive-header > .elementor-container,
	body .elementor .elementor-section.afinitive-hero > .elementor-container,
	body .elementor .elementor-section.afinitive-history > .elementor-container,
	body .elementor .elementor-section.afinitive-global > .elementor-container {
		width: calc(100% - 32px) !important;
	}

	.afinitive-site-header__inner,
	.afinitive-site-footer__inner {
		display: block;
		width: calc(100% - 32px);
	}

	.afinitive-site-footer__bottom,
	.afinitive-site-footer__legal,
	.afinitive-site-footer__social {
		align-items: flex-start;
		display: flex;
		flex-direction: column;
	}

	.afinitive-site-footer__bottom {
		gap: 18px;
		padding: 22px 16px;
	}

	.afinitive-site-footer__legal {
		gap: 12px;
	}

	.afinitive-site-footer__social {
		flex-direction: row;
		gap: 18px;
	}

	.afinitive-contact-page {
		padding-bottom: 64px;
	}

	.afinitive-contact-page__inner {
		width: calc(100% - 32px);
	}

	.afinitive-contact-page__breadcrumb {
		margin-bottom: 36px;
	}

	.afinitive-contact-page h1 {
		font-size: 36px;
	}

	.afinitive-contact-page__form input[type="text"],
	.afinitive-contact-page__form input[type="tel"],
	.afinitive-contact-page__form input[type="email"] {
		height: 38px;
		padding: 0 11px;
	}

	.afinitive-contact-page__text {
		font-size: 20px;
		margin-top: 56px;
	}

	.afinitive-history-page__inner {
		width: calc(100% - 32px);
	}

	.afinitive-history-page__content header {
		grid-template-columns: 22px minmax(0, 1fr);
	}

	.afinitive-history-page h1 {
		font-size: 42px !important;
		letter-spacing: 0 !important;
	}

	.afinitive-history-page__years {
		grid-template-columns: 1fr;
	}

	.afinitive-history-page__breadcrumb {
		margin-bottom: 44px;
	}

	.afinitive-history-page__intro p {
		font-size: 22px !important;
		margin-top: 36px;
	}

	.afinitive-history-page__visual {
		height: 330px;
	}

	.afinitive-site-header {
		padding: 16px 0;
	}

	.afinitive-site-header .afinitive-logo,
	.afinitive-site-header .afinitive-nav,
	.afinitive-site-header .afinitive-actions {
		display: block;
		margin-bottom: 16px;
		text-align: left;
	}

	.afinitive-site-footer__group {
		margin-bottom: 28px;
	}

	.elementor .afinitive-section .elementor-column > .elementor-widget-wrap {
		padding: 0 !important;
	}

	.afinitive-nav,
	.afinitive-actions {
		text-align: left;
	}

	.afinitive-hero-title .elementor-heading-title {
		font-size: 38px !important;
	}

	.afinitive-hero-reference img,
	.afinitive-hero-reference video,
	.afinitive-wide-reference video,
	.afinitive-wide-reference img,
	.afinitive-map-reference img {
		height: auto !important;
	}

	.afinitive-timeline-video video {
		height: clamp(430px, 72vw, 620px) !important;
	}

	.afinitive-office-map {
		display: block;
		min-height: 0;
	}

	.afinitive-office-map__heading {
		padding: 28px 24px 0;
		position: static;
	}

	.afinitive-office-map__heading strong {
		font-size: 26px;
	}

	.afinitive-office-map__heading p {
		font-size: 15px;
		max-width: none;
	}

	.afinitive-office-map__canvas {
		min-height: 360px;
	}

	.afinitive-office-map__city {
		font-size: 13px;
	}

	.afinitive-office-map__city--active {
		font-size: 16px;
	}

	.afinitive-office-card {
		margin: 0 24px 28px;
		min-height: 0;
		padding: 42px 28px 30px;
	}

	.afinitive-office-card p {
		min-width: 0;
	}

	body .elementor .elementor-section.afinitive-pioneer > .elementor-container,
	.elementor .afinitive-profiles .elementor-container,
	.elementor .afinitive-pioneer .elementor-container,
	.elementor .afinitive-insights .elementor-container,
	.elementor .afinitive-newsletter-row .elementor-container,
	.elementor .afinitive-press .elementor-container,
	.elementor .afinitive-history .elementor-container,
	.elementor .afinitive-essence .elementor-container,
	.elementor .afinitive-about .elementor-container,
	.elementor .afinitive-difference .elementor-container,
	.elementor .afinitive-services .elementor-container,
	.elementor .afinitive-team .elementor-container,
	.elementor .afinitive-governance .elementor-container,
	.elementor .afinitive-regulators .elementor-container,
	.elementor .afinitive-stakeholders .elementor-container,
	.elementor .afinitive-partners .elementor-container,
	.elementor .afinitive-offices .elementor-container,
	.elementor .afinitive-responsibility .elementor-container,
	.elementor .afinitive-global .elementor-container,
	.elementor .afinitive-footer .elementor-container {
		display: block !important;
	}

	.afinitive-about-stats .elementor-widget-container {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: 28px;
	}

	.afinitive-about-services__grid {
		grid-template-columns: 1fr;
	}

	.afinitive-essence-grid {
		grid-template-columns: 1fr;
	}

	.afinitive-key-figures__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.elementor .afinitive-pioneer .afinitive-pioneer-layout {
		gap: 28px;
		grid-template-columns: 1fr;
	}

	.afinitive-pioneer-video {
		grid-column: auto;
		min-height: 260px;
	}

	.afinitive-difference-table {
		display: block;
	}

	.afinitive-difference-table > * {
		min-height: 0;
		padding: 14px 0;
	}

	.afinitive-solution-grid,
	.afinitive-team-grid,
	.afinitive-badge-grid,
	.afinitive-regulators-grid,
	.afinitive-partners-grid {
		grid-template-columns: 1fr;
	}

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

	.afinitive-team-grid article {
		grid-template-columns: 78px minmax(0, 1fr);
		padding: 18px;
	}

	.afinitive-team-photo {
		width: 78px;
	}

	.elementor .afinitive-insights .elementor-column:first-child,
	.elementor .afinitive-insights .elementor-column:nth-child(2) {
		grid-column: auto;
		grid-row: auto;
	}

	.afinitive-newsletter {
		display: block;
	}

	.afinitive-contact-form form {
		display: block;
	}

	.afinitive-contact-form .tnp-field {
		margin-bottom: 12px;
	}

	.afinitive-newsletter input,
	.afinitive-newsletter button,
	.afinitive-contact-form input[type="text"],
	.afinitive-contact-form input[type="email"],
	.afinitive-contact-form input[type="tel"],
	.afinitive-contact-form .tnp-submit {
		display: block;
		min-height: 48px;
		width: 100%;
	}

	.afinitive-contact-form .tnp-privacy {
		min-height: 0;
		width: auto;
	}

	.afinitive-press-grid {
		display: block;
	}

	.afinitive-insights-grid {
		display: block;
	}

	.afinitive-insight-card {
		margin-bottom: 34px;
	}

	.afinitive-press-card {
		margin-bottom: 34px;
	}

	.afinitive-press-media {
		height: 230px;
	}
}
