/*
 * First Avenue 2026 redesign integration.
 * Loaded after the legacy theme so the supplied design system is authoritative.
 */

/* stylelint-disable no-descending-specificity */

/* Original Helvetica Neue Bold outlines, without device-specific grid hints.
 * A separate family avoids installed-font substitution for small bold labels. */
@font-face {
	font-family: "Helvetica Neue Screen";
	src: url("../../fonts/HelveticaNeue-Bold-unhinted-v1.woff2") format("woff2");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

:root {
	--font-sans: "Helvetica Neue", helvetica, arial, sans-serif;
	--black: var(--fa-ink-black);
	--onxy: var(--fa-ink-black);
	--primary-color: var(--fa-fog-blue);
	--blue: var(--fa-fog-blue);
	--dark-blue: var(--fa-deep-slate);
	--grey-2: var(--fa-gunmetal);
	--grey-3: var(--fa-porcelain);
	--grey-4: var(--fa-graphite);
	--body-font: var(--font-sans);
	--sp-font: var(--font-sans);
	--sp-font-2: var(--font-sans);
	--body-font-color: var(--fa-porcelain);
	--fa-copy-font-size: 17px;
	--fa-copy-font-weight: 300;
	--fa-copy-line-height: 1.65;
	--fa-copy-letter-spacing: 0.01em;
	--fa-footer-font-size: 12px;
	--nav-wrapper-h: 160px;
	--section-spacer: 112px;
}

html {
	scroll-behavior: smooth;
}

html,
body {
	font-feature-settings: "kern" 1, "liga" 1;
	font-kerning: normal;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body {
	overflow-x: hidden;
	font-family: var(--font-sans);
	font-size: var(--text-body);
	font-weight: var(--weight-light);
	line-height: var(--leading-normal);
	color: var(--fa-porcelain);
	background: var(--fa-ink-black);
}

body,
button,
input,
select,
textarea {
	font-family: var(--font-sans);
}

a {
	color: inherit;
	transition: color var(--duration-fast) var(--ease-standard);
}

a:hover {
	color: var(--fa-fog-blue);
}

img {
	max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--font-sans);
	font-weight: var(--weight-light);
	color: inherit;
}

p {
	font-size: var(--fa-copy-font-size);
	font-weight: var(--fa-copy-font-weight);
	line-height: var(--fa-copy-line-height);
	letter-spacing: var(--fa-copy-letter-spacing);
}

/* Lists use the same typography as site paragraphs. Component rules below
 * control only layout, colour, and intentional label/meta variants. */
.fa-r-copy li,
.fa-feature-copy li,
.fa-r-split li,
.fa-investing li {
	font-size: var(--fa-copy-font-size);
	font-weight: var(--fa-copy-font-weight);
	line-height: var(--fa-copy-line-height);
	letter-spacing: var(--fa-copy-letter-spacing);
}

.container {
	width: min(100% - 112px, 1328px);
	max-width: 1328px;
}

.container-fluid {
	max-width: 1440px;
}
sup a{
	display: inline;
}
main {
	padding-top: var(--nav-wrapper-h);
	background: var(--fa-ink-black);
}

main > section:not(.hero):not(#quote):not(#careers):not(#media),
.fo-v2 > section:not(.hero),
.approach-v2 > section:not(.hero),
.community-v2 > section:not(.hero),
.careers-page > section:not(.hero),
.contact-page > section:not(.hero) {
	margin: 0;
	padding-top: 112px;
	padding-bottom: 112px;
}

.bg-black {
	background: var(--fa-ink-black) !important;
}

.bg-white {
	background: var(--fa-paper) !important;
}

.bg-blue {
	background: var(--fa-fog-blue) !important;
}

.text-color {
	color: var(--fa-fog-blue) !important;
}

.text-dark,
.text-dark > li {
	color: var(--fa-ink-black) !important;
}

.text-graphite,
.text-graphite > li {
	color: var(--fa-graphite) !important;
}

.text-deep-slate {
	color: var(--fa-deep-slate) !important;
}

.text-gunmetal {
	color: var(--fa-gunmetal) !important;
}

.text-white {
	color: var(--fa-porcelain) !important;
}

/* Navigation */
.site-header {
	position: fixed;
	inset: 0 0 auto;
	z-index: 999;
	color: var(--fa-porcelain);
	/* background: transparent; */
	border-bottom: 1px solid transparent;
	transition: transform var(--duration-slow) var(--ease-standard), background-color var(--duration-normal) ease, border-color var(--duration-normal) ease;
		background: var(--fa-ink-black);
}

.site-header.sticky {


	/* background: color-mix(in srgb, currentcolor 8%, transparent); */
	/* border-color: var(--border-inverse); */
}

.site-header.nav-hidden {
	transform: translateY(-100%);
}

.site-header .fa-site-nav {
	width: 100%;
	margin: 0;
}

.site-header .nav-wrapper {
	box-sizing: border-box;
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
	padding: 44px clamp(20px, 4vw, 56px) 40px;
	display: flex;
	align-items: center;
	gap: clamp(12px, 2.5vw, 40px);
	transition: padding var(--duration-normal) var(--ease-standard);
}

@media (min-width: 992px) {

	.site-header.sticky .nav-wrapper {
		/* padding-top: 18px;
		padding-bottom: 18px; */
	}

	.site-header.sticky .popup {
		top: 112px !important;
		max-height: calc(100vh - 112px);
	}
}

.site-header .fa-nav-logo {
	display: flex;
	flex: 0 0 76px;
	width: 76px;
	height: 76px;
}

.site-header .fa-nav-logo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.site-header .fa-nav-links,
.site-header .fa-nav-icons {
	display: flex;
	align-items: center;
	list-style: none;
	padding: 0;
	margin: 0;
}

.site-header .fa-nav-links {
	gap: clamp(14px, 2.2vw, 36px);
	margin-left: auto;
}

.site-header .fa-nav-links li {
	position: relative;
	margin: 0;
	padding: 0;
}

.site-header .fa-nav-links > li > a,
.site-header .fa-nav-icons a {
	display: flex;
	align-items: center;
	height: auto;
	min-height: 40px;
	padding: 8px 0;
	border-bottom: 2px solid transparent;
	color: var(--fa-porcelain);
	font-size: 10px;
	font-weight: var(--weight-bold);
	letter-spacing: 0.18em;
	line-height: 1.2;
	text-transform: uppercase;
	text-decoration: none;
	white-space: nowrap;
}

.site-header .fa-nav-links > .current-menu-item > a,
.site-header .fa-nav-links > .current-menu-ancestor > a,
.site-header .fa-nav-links > li > a:hover {
	color: var(--fa-fog-blue);

	/* border-color: var(--fa-fog-blue); */
}

.site-header .sub-menu {
	position: absolute;
	top: calc(100% + 18px);
	left: -20px;
	min-width: 200px;
	margin: 0;
	padding: 14px 0;
	list-style: none;
	z-index: 80;
	opacity: 0;
	visibility: hidden;
	background: var(--fa-ink-black);
	border: 1px solid var(--border-inverse);
	transition: opacity var(--duration-fast) ease, visibility var(--duration-fast) ease;
}

.site-header .sub-menu::before {
	content: "";
	position: absolute;
	right: 0;
	bottom: 100%;
	left: 0;
	height: 18px;
}

.site-header nav .nav-wrapper > ul.fa-nav-links > li > .sub-menu {
	bottom: auto;
	left: -20px;
	min-height: 0;
	padding: 14px 0;
	opacity: 0;
	pointer-events: none;
	transform: none;
	color: var(--fa-porcelain);
	background: var(--fa-ink-black);
	box-shadow: none;
}

.site-header nav .nav-wrapper > ul.fa-nav-links > li:hover > .sub-menu,
.site-header nav .nav-wrapper > ul.fa-nav-links > li:focus-within > .sub-menu {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.site-header .sub-menu a {
	display: block;
	padding: 12px 24px;
	color: var(--fa-porcelain);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-decoration: none;
	text-transform: uppercase;
}

.site-header nav .nav-wrapper > ul.fa-nav-links > li > .sub-menu a {
	min-width: 200px;
	padding: 12px 24px;
	color: var(--fa-porcelain);
	background: transparent;
}

.site-header .sub-menu a:hover {
	color: var(--fa-fog-blue);
}

.site-header .sub-menu .close {
	display: none;
}

.fa-nav-actions {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	min-height: 40px;
	margin-left: clamp(20px, 3vw, 44px);
	padding-left: clamp(20px, 3vw, 44px);
	border-left: 1px solid var(--border-inverse);
}

.site-header nav .nav-wrapper .fa-nav-contact {
	display: flex;
	align-items: center;
	min-height: 40px;
	margin-right: clamp(16px, 2vw, 30px);
	padding: 8px 0;
	border-bottom: 2px solid transparent;
	color: var(--fa-porcelain);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-decoration: none;
	text-transform: uppercase;
}

.site-header nav .nav-wrapper .fa-nav-contact:hover,
body.page-template-template-contact .site-header nav .nav-wrapper .fa-nav-contact {
	color: var(--fa-fog-blue);
	border-color: var(--fa-fog-blue);
}

.site-header .fa-nav-icons {
	gap: 14px;
}

.site-header .fa-nav-icons li {
	width: auto;
	height: auto;
	padding: 0;
}

.site-header .fa-nav-icons a {
	width: 38px;
	height: 40px;
	font-size: 0;
	justify-content: center;
}

.site-header .fa-nav-icons a::after {
	content: "";
	width: 20px;
	height: 20px;
	background: center / contain no-repeat url(../../images/assets/icon-person.svg);
	filter: grayscale(1) brightness(0.96);
}

.site-header nav .nav-wrapper > ul.fa-nav-icons > li.icon a::after {
	width: 20px;
	height: 20px;
	max-width: none;
	filter: grayscale(1) brightness(0.96);
}

.site-header .fa-nav-icons .open-contact a::after {
	background-image: url(../../images/assets/icon-contact.svg);
}

.hamburger {
	display: none;
}

/* Contact drawer */
.popup {
	position: fixed;
	top: 160px !important;
	right: 0;
	left: 0;
	max-height: calc(100vh - 160px);
	overflow: auto;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-12px);
	color: var(--fa-porcelain);
	background: var(--fa-ink-black);
	border-top: 1px solid var(--border-inverse);
	transition: opacity var(--duration-normal) ease, transform var(--duration-normal) ease, visibility var(--duration-normal) ease;
}

.popup.show {
	opacity: 1;
	visibility: visible;
	transform: none;
}

.popup .btn-close {
	position: absolute;
	top: 24px;
	right: 28px;
	z-index: 2;
	width: 40px;
	height: 40px;
	padding: 10px;
}

.fa-popup-inner {
	width: min(100% - 112px, 1328px);
	margin: 0 auto;
	display: grid;
	grid-template-columns: 0.85fr 1.15fr;
}

.fa-popup-copy {
	padding: 72px 64px 72px 0;
}

.fa-popup-copy h2 {
	max-width: 520px;
	margin: 18px 0 56px;
	font-size: 40px;
	line-height: 1.12;
	text-transform: uppercase;
}

.fa-popup-offices {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 32px;
}

.fa-popup-offices div {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

.fa-popup-offices strong {
	margin-bottom: 6px;
	color: var(--fa-fog-blue);
	font-size: 11px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.fa-popup-offices a {
	font-size: 14px;
	text-decoration: none;
}

.fa-popup-form {
	padding: 72px 0 72px 64px;
	border-left: 1px solid var(--border-inverse);
}

.nav-overlay {
	background: rgba(0, 0, 0, 0.62);
	backdrop-filter: blur(3px);
}

/* Shared page language */
.hero {
	margin: 0;
	background: var(--fa-ink-black);
}

.hero .container-fluid {
	width: min(100% - 112px, 1328px);
}

.hero .position-relative {
	overflow: hidden;
}

.hero .hero-img {
	width: 100%;
	height: 520px;
	object-fit: cover;
}

.hero .overlay {
	background: linear-gradient(90deg, rgba(28, 29, 31, 0.72), rgba(28, 29, 31, 0.1) 70%);
}

.hero .caption {
	padding: 0 0 56px 56px !important;
	margin: 0 !important;
}

.hero .caption h1 {
	max-width: 900px;
	margin: 0;
	color: var(--fa-porcelain);
	font-size: clamp(42px, 4vw, 56px);
	font-weight: 700;
	line-height: 1.04;
	letter-spacing: -0.02em;
}

.section-title,
main .section-title {
	margin: 0 0 24px;
	color: var(--fa-fog-blue) !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase;
}

.section-subtitle,
main .section-subtitle {
	margin: 0;
	color: var(--fa-porcelain);
	font-size: clamp(32px, 3vw, 40px) !important;
	font-weight: 300 !important;
	line-height: 1.12 !important;
	letter-spacing: 0.01em !important;
	text-transform: uppercase;
}

.btn,
input[type="submit"],
button[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 13px 25px;
	border: 1px solid var(--fa-gunmetal);
	border-radius: 0;
	color: var(--fa-porcelain);
	background: transparent;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.16em;
	line-height: 1;
	text-transform: uppercase;
	text-decoration: none;
	transition: color var(--duration-fast) ease, background var(--duration-fast) ease;
}

.btn:hover,
input[type="submit"]:hover,
button[type="submit"]:hover {
	color: var(--fa-ink-black);
	background: var(--fa-porcelain);
	border-color: var(--fa-porcelain);
}

.bg-blue .btn,
.btn.green {
	color: var(--fa-ink-black);
	border-color: var(--fa-ink-black);
}

.bg-blue .btn:hover,
.btn.green:hover {
	color: var(--fa-porcelain);
	background: var(--fa-ink-black);
}

/* Home */
.home main > .hero .hero-img {
	height: min(680px, calc(100vh - 104px));
}

#about .row,
main > section > .container > .row:first-child {
	align-items: start;
}

#offering .swiper-wrapper {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
}

#offering .swiper-slide {
	width: auto !important;
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

#offering .swiper-slide .overflow-hidden {
	height: 360px;
	border-radius: var(--radius-md);
}

#offering .swiper-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--duration-slow) var(--ease-out);
}

#offering .swiper-slide:hover img {
	transform: scale(1.025);
}

#offering .swiper-slide h3 {
	margin: 0 0 8px;
	color: var(--fa-fog-blue);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

#offering .swiper-slide h2 {
	margin: 0;
	font-size: 20px;
	font-weight: 300;
	line-height: 1.35;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

#quote {
	position: relative;
	min-height: 420px;
	display: flex;
	align-items: center;
	overflow: hidden;
}

#quote::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(28, 29, 31, 0.72);
}

#quote > img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#quote > .container {
	position: relative;
	z-index: 1;
}

#quote h2 {
	font-size: 28px;
	font-weight: 300;
	line-height: 1.45;
	letter-spacing: 0.02em;
	text-transform: none !important;
}

#quote small {
	color: var(--fa-fog-blue);
	font-size: 12px;
	letter-spacing: 0.18em;
}

.team-member-grid {
	display: grid !important;
	grid-template-columns: repeat(5, 1fr);
	gap: 24px;
}

.team-member-card {
	display: flex;
	flex-direction: column;
	gap: 5px;
	min-width: 0;
	color: var(--fa-porcelain);
	text-decoration: none;
}

.team-member-card-image {
	aspect-ratio: 4 / 5;
	margin-bottom: 9px;
	overflow: hidden;
	border-radius: var(--radius-sm);
}

.team-member-card-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--duration-slow) var(--ease-out);
}

.team-member-card:hover img {
	transform: scale(1.025);
}

.team-member-card-name {
	font-family: "Helvetica Neue Screen", "Helvetica Neue", sans-serif;
	font-synthesis: none;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: normal;
	text-transform: uppercase;
}

.team-member-card-suffix {
	color: var(--fa-gunmetal);
	font-size: 11px;
}

.team-member-card-title,
.fa-team-card-role {
	font-size: 12px;
	font-weight: 300;
	letter-spacing: normal;
	line-height: 1.5;
	text-transform: none;
}

#careers {
	padding: 104px 0 !important;
	color: var(--fa-ink-black);
}

#careers + img {
	display: block;
	width: 100%;
	height: 480px;
	object-fit: cover;
}

#media {
	padding: 112px 0 !important;
	color: var(--fa-ink-black);
}

#media .container {
	padding: 0 !important;
}

#media .swiper-wrapper {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
}

#media .swiper-slide {
	width: auto !important;
}

#media .news-item img {
	width: 100%;
	height: 240px;
	margin-bottom: 20px;
	object-fit: cover;
	border-radius: var(--radius-md);
}

#media .news-item .date {
	display: block;
	margin: 0 0 12px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.16em;
}

#media .news-item h3,
#media .news-item h2 {
	color: var(--fa-ink-black);
	font-size: 18px;
	font-weight: 300;
	line-height: 1.45;
}

/* Interior pages */
.fo-v2 .hero,
.approach-v2 .hero,
.community-v2 .hero,
.careers-page .hero,
.contact-page .hero,
#teams .hero,
#insights .hero,
main.bg-black > .hero {
	padding: 0;
}

.fo-v2 .hero .row,
.approach-v2 .hero .row,
.community-v2 .hero .row,
.careers-page .hero .row,
.contact-page .hero .row,
#teams .hero .row,
#insights .hero .row {
	min-height: 520px;
}

.fo-v2 img,
.approach-v2 img,
.community-v2 img,
.careers-page img,
.contact-page img {
	border-radius: var(--radius-md);
}

.accordion-item {
	color: var(--fa-porcelain);
	background: transparent;
	border-color: var(--border-inverse);
	border-radius: 0 !important;
}

.accordion-button {
	padding: 24px 0;
	color: var(--fa-porcelain);
	background: transparent;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	box-shadow: none !important;
}

.accordion-button:not(.collapsed) {
	color: var(--fa-fog-blue);
	background: transparent;
}

.accordion-body {
	padding: 0 0 28px;
	color: var(--fa-gunmetal);
}

.insights-grid-section .news-item,
.exclusive-insights .news-item {
	border-color: var(--border-inverse);
	background: transparent;
}

.news-item a {
	text-decoration: none;
}

.news-item img {
	object-fit: cover;
}

/* Gravity Forms */
.gform_wrapper form,
.gform_wrapper .gform_fields {
	color: var(--fa-porcelain);
}

.gform_wrapper .gform_fields {
	row-gap: 30px !important;
}

.gform_wrapper label,
.gform_wrapper .gfield_label {
	color: var(--fa-fog-blue) !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 0.16em !important;
	text-transform: uppercase;
}

.gform_wrapper input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.gform_wrapper textarea,
.gform_wrapper select {
	min-height: 44px;
	padding: 9px 0 !important;
	color: var(--fa-porcelain) !important;
	background: transparent !important;
	border: 0 !important;
	border-bottom: 1px solid var(--border-inverse) !important;
	border-radius: 0 !important;
	font-size: 16px !important;
}

.gform_wrapper input:focus,
.gform_wrapper textarea:focus,
.gform_wrapper select:focus {
	border-bottom-color: var(--fa-fog-blue) !important;
	outline: 2px solid transparent;
}

.gform_wrapper .gfield_description {
	color: var(--fa-gunmetal);
}

/* Footer */
.site-footer {
	position: relative;
	margin: 0;
	padding: 0;
	color: var(--fa-porcelain);
	background: var(--fa-ink-black);
	border-top: 1px solid var(--border-inverse);
}

.fa-footer-inner {
	width: min(100% - 112px, 1328px);
	margin: 0 auto;
	padding-top: 88px;
}

.fa-footer-grid {
	display: grid;
	grid-template-columns: 1.2fr 0.8fr 1fr 1fr;
	gap: 56px;
	align-items: start;
}

.fa-footer-brand > a > img {
	display: block;
	width: 80px;
	height: 80px;
}

.fa-socials {
	display: flex;
	gap: 16px;
	margin-top: 28px;
}

.fa-socials a {
	display: grid;
	width: 36px;
	height: 36px;
	place-items: center;
	border: 1px solid var(--border-inverse);
}

.fa-socials img {
	width: 16px;
	height: 16px;
	object-fit: contain;
}

.fa-footer-column {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 9px;
}

.fa-footer-column a {
	color: var(--fa-porcelain);
	font-size: var(--fa-footer-font-size);
	font-weight: 500;
	line-height: 1.65;
	text-decoration: none;


	text-transform: uppercase;
}

.fa-footer-column a:hover {
	color: var(--fa-fog-blue);
}

.fa-footer-links {
	gap: 18px;
}

.fa-footer-links a {
	font-size: var(--fa-footer-font-size);
	font-weight: 700;
	letter-spacing: 0.14em;
	line-height: 1.25;
	text-transform: uppercase;
}

.fa-footer-title {
	margin: 0 0 6px;
	color: var(--fa-fog-blue);
	font-size: var(--fa-footer-font-size);
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.fa-footer-column .fa-footer-muted {
	/* color: var(--fa-gunmetal); */
}

.fa-footer-legal {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-top: 36px;
	padding: 28px 0 36px;
	border-top: 1px solid var(--border-inverse);
}

.fa-footer-legal p {
	margin: 0;
	color: var(--fa-gunmetal);
	font-size: var(--fa-footer-font-size);
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.fa-footer-legal div {
	display: flex;
	gap: 32px;
}

.fa-footer-legal a {
	color: var(--fa-gunmetal);
	font-size: var(--fa-footer-font-size);
	font-weight: 300;
	letter-spacing: 0.1em;
	text-decoration: none;
	text-transform: uppercase;
}

@media (max-width: 1199px) {

	.site-header .nav-wrapper,
	.fa-popup-inner,
	.fa-footer-inner {
		width: calc(100% - 64px);
	}

	.site-header .nav-wrapper {
		width: 100%;
	}

	.site-header .fa-nav-links {
		gap: 16px;
	}

	.site-header .fa-nav-links > li > a {
		letter-spacing: 0.1em;
	}

	.site-header .fa-nav-icons li:not(:last-child) {
		display: none;
	}
}

@media (max-width: 1100px) and (min-width: 992px) {

	.site-header .fa-nav-logo {
		flex-basis: 64px;
		width: 64px;
		height: 64px;
	}

	.site-header .fa-nav-links > li > a {
		letter-spacing: 0.12em;
	}

	.site-header.sticky .nav-wrapper {
		padding-top: 24px;
		padding-bottom: 24px;
	}
}

@media (max-width: 1000px) and (min-width: 992px) {

	.site-header .fa-nav-icons {
		display: none;
	}
}

@media (max-width: 991px) {

	:root {
		--nav-wrapper-h: 84px;
		--section-spacer: 80px;
	}

	.container,
	.hero .container-fluid {
		width: calc(100% - 48px);
	}

	main {
		padding-top: 84px;
	}

	main > section:not(.hero):not(#quote):not(#careers):not(#media),
	.fo-v2 > section:not(.hero),
	.approach-v2 > section:not(.hero),
	.community-v2 > section:not(.hero),
	.careers-page > section:not(.hero),
	.contact-page > section:not(.hero) {
		padding-top: 80px;
		padding-bottom: 80px;
	}

	.site-header .nav-wrapper {
		width: calc(100% - 48px);
		height: 84px;
		padding: 0;
	}

	.site-header .fa-nav-logo {
		flex-basis: 64px;
		width: 64px;
		height: 64px;
	}

	.hamburger {
		display: flex;
		position: relative;
		inset: auto;
		order: 2;
		width: 42px;
		height: 42px;
		margin-left: auto;
		padding: 10px 0 10px 10px;
		border: 0;
		background: transparent;
		flex-direction: column;
		align-items: flex-end;
		justify-content: center;
		gap: 5px;
	}

	.hamburger-line {
		display: block;
		position: static;
		width: 22px;
		height: 1px;
		background: var(--fa-porcelain);
		transition: transform var(--duration-fast) ease, opacity var(--duration-fast) ease;
	}

	.site-header .hamburger .hamburger-line:nth-child(1),
	.site-header .hamburger .hamburger-line:nth-child(2),
	.site-header .hamburger .hamburger-line:nth-child(3) {
		top: auto;
		right: auto;
	}

	.hamburger.active .hamburger-line:nth-child(1) {
		width: 22px;
		transform: translateY(6px) rotate(45deg);
	}

	.hamburger.active .hamburger-line:nth-child(2) {
		opacity: 0;
	}

	.hamburger.active .hamburger-line:nth-child(3) {
		width: 22px;
		transform: translateY(-6px) rotate(-45deg);
	}

	.site-header .fa-nav-links {
		position: fixed;
		top: 84px;
		right: 0;
		left: 0;
		max-height: calc(100vh - 84px);
		padding: 30px 24px 42px;
		overflow: auto;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		background: var(--fa-ink-black);
		border-top: 1px solid var(--border-inverse);
		transition: opacity var(--duration-fast) ease, visibility var(--duration-fast) ease;
	}

	.site-header nav .nav-wrapper > ul.fa-nav-links:not(#menu-menu-icons) {
		position: fixed;
		top: 84px;
		right: 0;
		left: 0;
		width: 100%;
		box-sizing: border-box;
		padding: 30px 24px 42px !important;
		color: var(--fa-porcelain);
		background: var(--fa-ink-black);
		box-shadow: none;
	}

	.site-header .nav-wrapper.show .fa-nav-links {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	.site-header nav .nav-wrapper.show > ul.fa-nav-links {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	.site-header .fa-nav-links > li > a {
		min-height: 52px;
		padding: 15px 0 !important;
		border-bottom: 1px solid var(--border-inverse);
		font-size: 12px;
		letter-spacing: 0.16em;
	}

	.site-header .fa-nav-links > .menu-item-has-children > a::after,
	.site-header .fa-nav-links > .has-sub > a::after {
		content: "";
		display: block;
		position: static;
		width: 9px;
		height: 9px;
		margin: -4px 4px 0 auto;
		background: none;
		border-right: 2px solid var(--fa-fog-blue);
		border-bottom: 2px solid var(--fa-fog-blue);
		transform: rotate(45deg);
		transition: transform var(--duration-fast) ease;
		flex: 0 0 9px;
	}

	.site-header .fa-nav-links > .menu-item-has-children.active > a::after,
	.site-header .fa-nav-links > .has-sub.active > a::after {
		margin-top: 4px;
		transform: rotate(225deg);
	}

	.site-header .sub-menu {
		position: static;
		display: none;
		min-width: 0;
		padding: 4px 0 14px 18px;
		opacity: 1;
		visibility: visible;
		border: 0;
	}

	.site-header nav .nav-wrapper > ul.fa-nav-links > li > .sub-menu {
		position: static;
		display: none;
		width: 100%;
		max-height: none;
		padding: 4px 0 14px 18px;
		overflow: visible;
		opacity: 1;
		transform: none;
	}

	.site-header nav .nav-wrapper > ul.fa-nav-links > li.active > .sub-menu {
		display: block;
		padding-left: 18px;
	}

	.site-header .sub-menu a {
		padding: 10px 0;
	}

	.fa-nav-actions {
		display: flex;
		justify-content: flex-end;
		order: 2;
		margin-left: auto;
		padding-left: 0;
	}

	.site-header nav .nav-wrapper .fa-nav-contact {
		margin-right: 14px;
	}

	.popup {
		top: 84px !important;
		max-height: calc(100vh - 84px);
	}

	.fa-popup-inner {
		width: calc(100% - 48px);
		grid-template-columns: 1fr;
	}

	.fa-popup-copy,
	.fa-popup-form {
		padding: 56px 0;
	}

	.fa-popup-form {
		border-top: 1px solid var(--border-inverse);
		border-left: 0;
	}

	.hero .hero-img {
		height: 460px;
	}

	.hero .caption {
		padding: 0 32px 40px !important;
	}

	#offering .swiper-wrapper,
	#media .swiper-wrapper {
		grid-template-columns: repeat(2, 1fr);
	}

	.team-member-grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.fa-footer-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 767px) {

	:root {
		--section-spacer: 64px;
	}

	/* Keep the first page image clear of the fixed mobile navigation. */
	main > .fa-page-banner {
		margin-top: 24px !important;
	}

	.container,
	.hero .container-fluid,
	.site-header .nav-wrapper,
	.fa-popup-inner,
	.fa-footer-inner {
		width: calc(100% - 40px);
	}

	main > section:not(.hero):not(#quote):not(#careers):not(#media),
	.fo-v2 > section:not(.hero),
	.approach-v2 > section:not(.hero),
	.community-v2 > section:not(.hero),
	.careers-page > section:not(.hero),
	.contact-page > section:not(.hero) {
		padding-top: 64px;
		padding-bottom: 64px;
	}

	p {
		font-size: 16px;
	}

	/* .site-header .fa-nav-icons {
		display: none;
	} */

	.site-header nav .nav-wrapper .fa-nav-contact {
		display: none;
	}

	.fa-nav-actions {
		border: 0;
		padding: 0;
	}

	.site-header nav .nav-wrapper > ul.fa-nav-links:not(#menu-menu-icons) {
		padding-right: 20px !important;
		padding-left: 20px !important;
	}

	.hero .hero-img,
	.home main > .hero .hero-img {
		height: 420px;
	}

	.hero .caption {
		padding: 0 22px 32px !important;
	}

	.hero .caption h1 {
		font-size: 36px;
	}

	.section-subtitle,
	main .section-subtitle {
		font-size: 30px !important;
	}

	#offering .swiper-wrapper,
	#media .swiper-wrapper {
		display: flex;
		gap: 0;
	}

	#offering .swiper-slide,
	#media .swiper-slide {
		width: 86% !important;
		margin-right: 20px;
	}

	#offering .swiper-slide .overflow-hidden {
		height: 300px;
	}

	#quote {
		min-height: 500px;
	}

	#quote h2 {
		font-size: 23px;
	}

	.team-member-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 32px 16px;
	}

	#careers + img {
		height: 340px;
	}

	.fa-popup-copy h2 {
		font-size: 30px;
	}

	.fa-popup-offices {
		grid-template-columns: 1fr;
	}

	.fa-footer-inner {
		padding-top: 64px;
	}

	.fa-footer-grid {
		grid-template-columns: 1fr;
		gap: 44px;
	}

	.fa-footer-legal {
		align-items: flex-start;
		flex-direction: column;
		margin-top: 56px;
	}

	.fa-footer-legal div {
		flex-direction: column;
		gap: 14px;
	}
}

@media (prefers-reduced-motion: reduce) {

	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}

/* Home.dc.html — production WordPress translation */
.fa-home {
	padding-top: var(--nav-wrapper-h);
	background: var(--fa-ink-black);
}

.fa-home-shell {
	width: min(100% - 112px, 1328px);
	max-width: 1328px;
	margin-inline: auto;
}

.fa-home-lead {
	margin: 0 !important;
	padding: 32px 0 72px !important;
}

.fa-home-lead h1 {
	min-width: 0;
	margin: 0;
	color: var(--fa-porcelain);
	font-size: clamp(24px, 3vw, 56px);
	font-weight: 300;
	letter-spacing: 0.02em;
	line-height: 1.05;
	text-transform: none;
	white-space: nowrap;
}

.fa-home-lead-note {
	display: flex;
	align-items: center;
	gap: clamp(14px, 1.6vw, 22px);
	margin-top: 56px;
	margin-left: 28%;
}

.fa-home-lead-note span {
	display: block;
	flex: 0 0 auto;
	width: clamp(32px, 4vw, 64px);
	height: 1px;
	background: var(--fa-fog-blue);
}

.fa-home-lead-note p {
	margin: 0;
	color: var(--fa-gunmetal);
	font-size: clamp(13px, 1.2vw, 17px);
	font-weight: 300;
	line-height: 1.55;
}

.fa-page-banner {
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--font-sans);
	background: var(--fa-ink-black);
}

.fa-page-banner-shell {
	box-sizing: border-box;
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 56px;
}

.fa-page-banner-frame {
	position: relative;
	height: 520px;
}
.home .fa-page-banner-frame{
	height: 620px;
}
.fa-page-banner-image {
	position: absolute;
	inset: 0;
	overflow: hidden;
}

.fa-page-banner-image img,
.fa-page-banner-image video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fa-page-banner--home .fa-page-banner-image img {
	object-position: center 75%;
}
/* .home .fa-page-banner-image img {
	object-position: 90%;
} */

.fa-home .fa-home-section {
	margin: 0;
	padding: 112px 0 !important;
}

.fa-home-two-column {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 80px;
	align-items: start;
}

.fa-home-heading {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.fa-home-eyebrow {
	margin: 0;
	color: var(--fa-fog-blue);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.18em;
	line-height: 1.4;
	text-transform: uppercase;
}

.fa-home-heading h2 {
	margin: 0;
	color: var(--fa-porcelain);
	font-size: 40px;
	font-weight: 300;
	letter-spacing: 0;
	line-height: 1.12;
	text-transform: uppercase;
}

.fa-home-copy {
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding-top: 40px;
}

.fa-home-copy p {
	margin: 0;
	color: var(--fa-porcelain);
}

.fa-home-copy > div {
	display: flex;
	margin-top: 12px;
}

.fa-home-full-image {
	height: 480px;
	margin: 0;
	padding: 0 !important;
}

.fa-home-full-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fa-home-offerings .fa-home-eyebrow,
.fa-home-media .fa-home-eyebrow {
	margin-bottom: 48px;
}

.fa-home-card-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 40px;
}

.fa-home-card {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 8px;
	color: var(--fa-porcelain);
	text-decoration: none;
	transition: transform 200ms var(--ease-out);
}

.fa-home-card:hover {
	color: var(--fa-porcelain);
	transform: translateY(-2px);
}

.fa-home-card-image {
	display: block;
	height: 360px;
	margin-bottom: 12px;
	overflow: hidden;
	border-radius: var(--radius-md);
}

.fa-home-card-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--duration-slow) var(--ease-out);
}

.fa-home-card:hover img {
	transform: scale(1.025);
}

.fa-home-card-label {
	color: var(--fa-fog-blue);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.fa-home-card-title {
	color: var(--fa-porcelain);
	font-size: 20px;
	font-weight: 300;
	letter-spacing: 0.04em;
	line-height: 1.35;
	text-transform: uppercase;
}

.fa-home-quote {
	position: relative;
	display: flex;
	min-height: 420px;
	margin: 0;
	padding: 0 !important;
	overflow: hidden;
	align-items: center;
	justify-content: center;
}

.fa-home-quote > img,
.fa-home-quote-overlay {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.fa-home-quote > img {
	object-fit: cover;
}

.fa-home-quote-overlay {
	background: rgba(28, 29, 31, 0.72);
}

.fa-home-quote figure {
	position: relative;
	max-width: 920px;
	margin: 0;
	padding: 96px 56px;
	text-align: center;
}

.fa-home-quote blockquote {
	margin: 0 0 28px;
	color: var(--fa-porcelain);
	font-size: 28px;
	font-weight: 300;
	letter-spacing: 0.02em;
	line-height: 1.45;
}

.fa-home-quote figcaption {
	color: var(--fa-fog-blue);
	font-family: "Helvetica Neue Screen", "Helvetica Neue", sans-serif;
	font-synthesis: none;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: normal;
	line-height: 1.5;
	text-transform: uppercase;
}

.fa-home-team-intro {
	margin-bottom: 72px;
}

.fa-home .team-member-grid.home {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 24px;
	margin: 0;
}

.fa-home .team-member-card-image {
	width: 100%;
	aspect-ratio: 4 / 5;
}

.fa-home .team-member-grid.home .team-member-card-name,
.fa-home .team-member-grid.home .team-member-card-title {
	display: block;
	opacity: 1;
	
}
.fa-home .team-member-grid.home .team-member-card-title p{
font-size: 12px;
	
}

.fa-home .team-member-card-image::before {
	display: none;
}

.fa-home .team-member-card-name {
	color: var(--fa-porcelain);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: normal;
}

.fa-home .team-member-card-suffix {
	display: none;
	color: var(--fa-gunmetal);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
}

.fa-home #careers.fa-home-careers {
	margin: 0;
	padding: 104px 0 !important;
	background: var(--fa-fog-blue);
}

.fa-home-careers .btn {
	color: var(--fa-ink-black);
	border-color: var(--fa-ink-black);
}

.fa-home-careers .btn:hover {
	color: var(--fa-porcelain);
	background: var(--fa-ink-black);
}

.fa-home #media.fa-home-media {
	margin: 0;
	padding: 112px 0 !important;
	color: var(--fa-porcelain);
	background: var(--fa-ink-black);
}

.fa-home-media-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 40px;
}

.fa-home-media-card {
	display: flex;
	min-width: 0;
	flex-direction: column;
	align-items: flex-start;
	gap: 20px;
}

.fa-home-media-card > img {
	display: block;
	width: 100%;
	height: 240px;
	object-fit: cover;
	border-radius: var(--radius-md);
}

.fa-home-media-card p,
.fa-home-media-card h3 {
	margin: 0;
}

.fa-home-media-card .fa-home-media-date {
	color: var(--fa-fog-blue);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.fa-home-media-card h3 {
	color: var(--fa-porcelain);
	font-size: 18px;
	font-weight: 300;
	letter-spacing: 0;
	line-height: 1.45;
}

.fa-home-contact {
	border-top: 1px solid var(--border-inverse);
}

.fa-home-contact-grid {
	display: grid;
	grid-template-columns: 1fr 1.4fr;
	gap: 80px;
	align-items: start;
}

.fa-home-form .gform_wrapper {
	margin: 0;
}

.fa-home-form .gform_wrapper form,
.fa-home-form .gform_wrapper .gform_fields {
	gap: 36px 40px;
}

.fa-home-form .gform_wrapper .gform_fields {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
}

.fa-home-form [id="field_1_1"],
.fa-home-form [id="field_1_2"],
.fa-home-form [id="field_1_8"],
.fa-home-form [id="field_1_7"] {
	grid-column: 1 / -1;
}

.fa-home-form [id="field_1_4"],
.fa-home-form [id="field_1_5"] {
	grid-column: span 6;
}

.fa-home-form .gform_wrapper .gfield {
	margin: 0;
	padding: 0;
}

.fa-home-form .gform_wrapper .ginput_container {
	margin: 0;
}

.fa-home-form .gform_wrapper .gform_footer {
	margin: 0;
	padding: 0;
}

.fa-home-form .gform_wrapper .ginput_container_consent {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

.fa-home-form .gform_wrapper .ginput_container_consent input[type="checkbox"] {
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	margin: 2px 0 0;
}

.fa-home-form .gform_wrapper .ginput_container_consent .gfield_consent_label {
	color: var(--fa-gunmetal) !important;
	font-size: 13px !important;
	font-weight: 300 !important;
	letter-spacing: 0 !important;
	line-height: 1.6;
	text-transform: none;
}

.fa-home-form .gform_wrapper .ginput_container_consent .gfield_consent_label a {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	letter-spacing: 0 !important;
	text-transform: none;
}

.fa-home-form .gform_wrapper .ginput_container_consent > .gfield_required {
	display: none;
}

@media (max-width: 1199px) {

	.fa-home .team-member-grid.home {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 991px) {

	.fa-home-shell {
		width: calc(100% - 64px);
	}

	.fa-home-lead h1 {
		white-space: normal;
	}

	.fa-home-two-column,
	.fa-home-contact-grid {
		gap: 48px;
	}

	.fa-home-heading h2 {
		font-size: 34px;
	}

	.fa-home-card-grid,
	.fa-home-media-grid {
		gap: 24px;
	}

	.fa-home-card-image {
		height: 300px;
	}

}

@media (max-width: 767px) {

	.fa-home-shell {
		width: calc(100% - 40px);
	}

	.fa-home-lead {
		padding: 28px 0 52px !important;
	}

	.fa-home-lead h1 {
		font-size: 32px;
	}

	.fa-home-lead-note {
		margin-top: 32px;
		margin-left: 12%;
	}

	.fa-page-banner-shell {
		padding: 0 32px;
	}
	.home .fa-page-banner-frame,
	.fa-page-banner-frame {
		height: 420px;
	}

	.fa-home .fa-home-section,
	.fa-home #media.fa-home-media {
		padding: 72px 0 !important;
	}

	.fa-home-two-column,
	.fa-home-contact-grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.fa-home-heading {
		gap: 18px;
	}

	.fa-home-heading h2 {
		font-size: 30px;
	}

	.fa-home-copy {
		padding-top: 0;
	}

	.fa-home-full-image {
		height: 360px;
	}

	.fa-home-card-grid,
	.fa-home-media-grid {
		grid-template-columns: 1fr;
		gap: 48px;
	}

	.fa-home-card-image {
		height: 320px;
	}

	.fa-home-quote figure {
		padding: 72px 24px;
	}

	.fa-home-quote blockquote {
		font-size: 23px;
	}

	.fa-home-team-intro {
		margin-bottom: 56px;
	}

	.fa-home .team-member-grid.home {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 32px 16px;
	}

	.fa-home #careers.fa-home-careers {
		padding: 72px 0 !important;
	}

	.fa-home-form [id="field_1_4"],
	.fa-home-form [id="field_1_5"] {
		grid-column: 1 / -1;
	}
}

@media (max-width: 420px) {

	.fa-home-lead h1 {
		font-size: 28px;
	}

	.fa-page-banner-shell {
		padding: 0 20px;
	}

	.fa-page-banner-frame {
		height: 340px;
	}

	.fa-home-card-image {
		height: 280px;
	}
}

/* The Firm.dc.html — production WordPress translation */
.fa-firm {
	background: var(--fa-ink-black);
}

.fa-page-banner-image--labelled {
	left: 232px;
}

.fa-page-banner-label {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 292px;
	height: 128px;
	padding: 0 24px;
	color: var(--fa-ink-black);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.24em;
	text-align: center;
	text-transform: uppercase;
	background: var(--fa-fog-blue);
}

.fa-page-banner-caption {
	box-sizing: border-box;
	max-width: 1440px;
	margin: 0 auto;
	padding: 104px 56px 24px;
	text-align: center;
}

.fa-page-banner-caption h1 {
	margin: 0;
	color: var(--fa-porcelain);
	font-size: 40px;
	font-weight: 300;
	letter-spacing: 0.02em;
	line-height: 1.16;
	text-transform: uppercase;
}

.fa-page-banner-caption p {
	margin: 22px 0 0;
	color: var(--fa-fog-blue);
	font-size: 14px;
	font-weight: 300;
	letter-spacing: 0.12em;
	line-height: 1.6;
	text-transform: uppercase;
}

.fa-firm-shell {
	width: min(100% - 112px, 1328px);
	max-width: 1328px;
	margin-inline: auto;
}

.fa-firm .fa-firm-section {
	margin: 0;
	padding: 112px 0 !important;
}

.fa-firm-two-column {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 80px;
	align-items: start;
}

.fa-firm-heading {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.fa-firm-eyebrow {
	margin: 0;
	color: var(--fa-fog-blue);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.18em;
	line-height: 1.4;
	text-transform: uppercase;
}

.fa-firm-heading h2 {
	margin: 0;
	color: var(--fa-porcelain);
	font-size: 40px;
	font-weight: 300;
	line-height: 1.12;
	text-transform: uppercase;
}

.fa-firm-copy {
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding-top: 40px;
}

.fa-firm-copy p {
	margin: 0;
	color: var(--fa-porcelain);
}

.fa-firm-copy .fa-firm-emphasis {
	color: var(--fa-fog-blue);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.fa-firm .fa-firm-wide-image {
	height: 480px;
	margin: 0;
	padding: 0 !important;
}

.fa-firm-wide-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fa-firm-services > .fa-firm-shell > .fa-firm-eyebrow {
	margin-bottom: 48px;
}

.fa-firm-service-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 40px;
}

.fa-firm-service {
	display: flex;
	min-width: 0;
	color: var(--fa-porcelain);
	text-decoration: none;
	flex-direction: column;
}

.fa-firm-service-image {
	display: block;
	height: 360px;
	margin-bottom: 20px;
	overflow: hidden;
	border-radius: var(--radius-md, 6px);
}

.fa-firm-service-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--duration-slow) var(--ease-out);
}

.fa-firm-service:hover img {
	transform: scale(1.025);
}

.fa-firm-service-title {
	color: var(--fa-porcelain);
	font-size: 20px;
	font-weight: 300;
	letter-spacing: 0.04em;
	line-height: 1.35;
	text-transform: uppercase;
}

.fa-firm-service-title + .fa-firm-service-title {
	margin-top: 8px;
}

.fa-firm-purpose,
.fa-firm-values {
	border-top: 1px solid var(--border-inverse);
}

.fa-firm-purpose-item {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.fa-firm-purpose-item h3 {
	margin: 0;
	color: var(--fa-porcelain);
	font-size: 30px;
	font-weight: 300;
	line-height: 1.18;
	text-transform: uppercase;
}

.fa-firm-purpose-item > p:last-child,
.fa-firm-values .fa-firm-heading > p:last-child {
	margin: 0;
	color: var(--fa-porcelain);
}

.fa-firm-value {
	border-bottom: 1px solid var(--border-inverse);
}

.fa-firm-value summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 24px 0;
	color: var(--fa-porcelain);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.14em;
	line-height: 1.4;
	list-style: none;
	cursor: pointer;
	text-transform: uppercase;
}

.fa-firm-value summary::-webkit-details-marker {
	display: none;
}

.fa-firm-value summary::after {
	content: "+";
	color: var(--fa-fog-blue);
	font-size: 22px;
	font-weight: 300;
	line-height: 1;
}

.fa-firm-value[open] summary {
	color: var(--fa-fog-blue);
}

.fa-firm-value[open] summary::after {
	content: "\2212";
}

.fa-firm-value p {
	margin: 0;
	padding: 0 40px 28px 0;
	color: var(--fa-porcelain);
}

@media (max-width: 991px) {

	.fa-page-banner-image--labelled {
		left: 184px;
	}

	.fa-page-banner-label {
		width: 232px;
		height: 112px;
	}

	.fa-firm .fa-firm-section {
		padding: 80px 0 !important;
	}

	.fa-firm-two-column {
		gap: 48px;
	}

	.fa-firm-service-grid {
		gap: 24px;
	}

	.fa-firm-service-image {
		height: 300px;
	}
}

@media (max-width: 767px) {

	.fa-page-banner--firm {
		height: auto;
	}

	.fa-page-banner-image--labelled {
		left: 0;
	}

	.fa-page-banner-label {
		width: 180px;
		height: 96px;
		font-size: 11px;
	}

	.fa-page-banner-caption {
		padding: 64px 20px 0;
	}

	.fa-page-banner-caption h1 {
		font-size: 30px;
	}

	.fa-page-banner-caption p {
		font-size: 12px;
	}

	.fa-firm-shell {
		width: calc(100% - 40px);
	}

	.fa-firm .fa-firm-section {
		padding: 72px 0 !important;
	}

	.fa-firm-two-column,
	.fa-firm-service-grid {
		grid-template-columns: 1fr;
		gap: 48px;
	}

	.fa-firm-heading h2 {
		font-size: 30px;
	}

	.fa-firm-copy {
		padding-top: 0;
	}

	.fa-firm .fa-firm-wide-image {
		height: 360px;
	}

	.fa-firm-service-image {
		height: 420px;
	}
}

@media (max-width: 420px) {

	.fa-firm-service-image {
		height: 360px;
	}
}

/* Shared internal-page redesign translations */
.fa-redesign-page {
	background: var(--fa-ink-black);
}

.fa-r-shell {
	width: min(100% - 112px, 1328px);
	max-width: 1328px;
	margin-inline: auto;
}

.fa-redesign-page .fa-r-section {
	margin: 0;
	padding: 112px 0 !important;
}

.fa-redesign-page .fa-r-section--flush-top {
	padding-top: 0 !important;
}

.fa-redesign-page .fa-r-section--feature {
	padding-top: 0 !important;
}

.fa-family-page .fa-r-section--family-feature {
	padding-top: 0 !important;
}

.fa-family-page .fa-r-bordered + .fa-r-section--family-feature {
	padding-top: 112px !important;
	border-top: 1px solid var(--border-inverse);
}

.fa-r-bordered {
	border-top: 1px solid var(--border-inverse);
}

.fa-r-split {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 80px;
	align-items: start;
}

.fa-r-split--wide-left {
	grid-template-columns: 1.1fr 0.9fr;
}

.fa-r-heading,
.fa-r-copy,
.fa-feature-copy {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.fa-r-heading {
	gap: 24px;
}

.fa-r-eyebrow {
	margin: 0;
	color: var(--fa-fog-blue);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.18em;
	line-height: 1.4;
	text-transform: uppercase;
}

.fa-r-eyebrow--spaced {
	margin-bottom: 32px;
}

.fa-r-heading h2,
.fa-r-section-title,
.fa-r-centered h2,
.fa-strategy-heading h2 {
	margin: 0;
	color: var(--fa-porcelain);
	font-size: 40px;
	font-weight: 300;
	line-height: 1.12;
	text-transform: uppercase;
}

.fa-r-section-title {
	margin: 12px 0 48px;
}

.fa-r-section-title--tight {
	margin-bottom: 16px;
}

.fa-r-heading h3,
.fa-feature-copy h3 {
	margin: 0;
	color: var(--fa-porcelain);
	font-size: 30px;
	font-weight: 300;
	line-height: 1.18;
	text-transform: uppercase;
}

.fa-r-heading > p:not(.fa-r-eyebrow),
.fa-r-copy p,
.fa-feature-copy > p:not(.fa-r-eyebrow),
.fa-r-split > div > p:not(.fa-r-eyebrow),
.fa-r-split li {
	margin: 0;
	color: var(--fa-porcelain);
}

.fa-r-copy {
	padding-top: 40px;
}

.fa-r-muted {
	color: var(--fa-porcelain);
}

.fa-r-copy ul,
.fa-feature-copy ul,
.fa-investing ul {
	display: flex;
	margin: 0;
	padding-left: 20px;
	color: var(--fa-porcelain);
	flex-direction: column;
	gap: 0px;
}

.fa-r-block-gap {
	margin-bottom: 72px;
}

.fa-r-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	padding: 13px 24px;
	color: var(--fa-porcelain);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-decoration: none;
	text-transform: uppercase;
	border: 1px solid var(--fa-gunmetal);
}

.fa-r-button:hover {
	color: var(--fa-ink-black);
	background: var(--fa-porcelain);
}

.fa-r-button--dark {
	color: var(--fa-ink-black);
	border-color: var(--fa-ink-black);
}

.fa-r-button--dark:hover {
	color: var(--fa-porcelain);
	background: var(--fa-ink-black);
}

.fa-r-image {
	overflow: hidden;
	border-radius: var(--radius-md, 6px);
}

.fa-r-image--320 {
	height: 320px;
}

.fa-r-image--400 {
	height: 400px;
}

.fa-r-image--420 {
	height: 420px;
}

.fa-r-image--520 {
	height: 520px;
}

.fa-r-image img,
.fa-r-image video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fa-r-wide-image {
	height: 480px;
	margin: 0;
	padding: 0 !important;
}

.fa-r-wide-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fa-r-band {
	margin: 0;
	padding: 104px 0 !important;
}

.fa-r-band--blue {
	background: var(--fa-fog-blue);
}

/* Careers */
.fa-benefit-grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 20px;
}

.fa-benefit-card {
	position: relative;
	height: 340px;
	overflow: hidden;
	border-radius: var(--radius-md, 6px);
}

.fa-benefit-card img,
.fa-benefit-card > span {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fa-benefit-card > span {
	background: linear-gradient(to top, rgb(28 29 31 / 90%), rgb(28 29 31 / 20%));
}

.fa-benefit-card h3 {
	position: absolute;
	right: 20px;
	bottom: 20px;
	left: 20px;
	margin: 0;
	color: var(--fa-porcelain);
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.14em;
	line-height: 1.5;
	text-transform: uppercase;
}

/* Team */
.fa-team-list {
	margin: 0;
	padding: 72px 0 112px !important;
}

.fa-team-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 48px 32px;
}

.fa-team-card {
	display: flex;
	min-width: 0;
	color: var(--fa-porcelain);
	text-decoration: none;
	flex-direction: column;
}

.fa-team-card-image {
	display: block;
	height: 340px;
	margin-bottom: 18px;
	overflow: hidden;
	background: var(--fa-deep-slate);
}

.fa-team-card-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--duration-slow) var(--ease-out);
}

.fa-team-card:hover img {
	transform: scale(1.025);
}

.fa-team-card-name {
	color: var(--fa-porcelain);
	font-family: "Helvetica Neue Screen", "Helvetica Neue", sans-serif;
	font-synthesis: none;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.45;
	text-transform: uppercase;
	letter-spacing: normal;
}

.fa-team-card-name small {
	color: var(--fa-gunmetal);
	font-size: 11px;
}

.fa-team-card-role {
	margin-top: 5px;
}

/* Contact */
.fa-contact-layout {
	display: grid;
	grid-template-columns: 1fr 1.15fr;
	gap: 88px;
}

.fa-contact-offices {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.fa-contact-offices > .fa-r-image {
	margin-bottom: 28px;
}

.fa-contact-office-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 40px;
}

.fa-contact-office-grid h2 {
	margin: 0 0 14px;
	font-size: 24px;
	font-weight: 300;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.fa-contact-office-grid p {
	margin: 0 0 14px;
	color: var(--fa-porcelain);
	text-decoration: none;
}

.fa-contact-office-grid a {
	margin: 0 0 14px;
	color: var(--fa-gunmetal);
	font-size: 14px;
	font-weight: 300;
	line-height: 1.7;
	text-decoration: none;
}

.fa-contact-office-grid a[href^="mailto:"] {
	overflow-wrap: anywhere;
}

.fa-contact-form > .fa-r-heading {
	margin-bottom: 40px;
}

/* Community */
.fa-program-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 40px;
}

.fa-program-grid article {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.fa-program-grid .fa-r-image {
	margin-bottom: 10px;
}

.fa-program-grid h3 {
	margin: 0;
	font-size: 24px;
	font-weight: 300;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.fa-program-grid article > p:not(.fa-r-eyebrow) {
	margin: 0;
	color: var(--fa-porcelain);
}

.fa-program-grid article > .fa-r-button {
	margin-top: auto;
	align-self: flex-start;
}

.fa-community-commitment {
	margin: 0;
	padding: 104px 56px !important;
	text-align: center;
	background: var(--fa-deep-slate);
}

.fa-community-commitment > div {
	display: flex;
	max-width: 928px;
	margin: 0 auto;
	flex-direction: column;
	gap: 28px;
}

.fa-community-commitment p:not(.fa-r-eyebrow) {
	margin: 0;
}

.fa-partner-grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 24px;
	margin-top: 56px;
}

.fa-partner-grid > div {
	display: flex;
	height: 120px;
	padding: 16px;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--border-inverse);
}

.fa-partner-grid img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

/* Family Office */
.fa-focus-list > div {
	display: grid;
	grid-template-columns: 0.9fr 1.5fr;
	gap: 56px;
	padding: 32px 0;
	border-top: 1px solid var(--border-inverse);
}

.fa-focus-list > div:last-child {
	border-bottom: 1px solid var(--border-inverse);
}

.fa-focus-list h3 {
	margin: 0;
	font-size: 20px;
	font-weight: 300;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.fa-focus-list p {
	margin: 0;
	color: var(--fa-porcelain);
}

.fa-r-centered {
	display: flex;
	margin-bottom: 88px;
	text-align: center;
	flex-direction: column;
	gap: 16px;
}

.fa-r-media-row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 80px;
	align-items: center;
}

.fa-r-media-row--reverse > :first-child {
	order: 2;
}

.fa-family-focus-cards {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 24px;
}

.fa-family-focus-cards > div {
	display: flex;
	min-height: 160px;
	padding: 48px 24px;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.5;
	text-align: center;
	text-transform: uppercase;
	background: var(--fa-steel-blue);
}

.fa-family-focus-cards > div:nth-child(2) {
	background: var(--fa-deep-slate);
}

.fa-family-focus-cards > div:nth-child(3) {
	background: var(--fa-slate-green);
}

.fa-family-focus-cards > div:nth-child(4) {
	background: var(--fa-slate-violet);
}

.fa-feature-rows {
	display: flex;
	flex-direction: column;
	gap: 112px;
}

/* Insights */
.fa-featured-insight {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	min-height: 380px;
	overflow: hidden;
	border: 1px solid var(--border-inverse);
	border-radius: var(--radius-md, 6px);
}

.fa-featured-insight-image {
	min-width: 0;
	min-height: 380px;
}

.fa-insight-image-shell {
	position: relative;
	overflow: hidden;
	color: rgb(255 255 255 / 55%);
	background: rgb(255 255 255 / 4%);
}

.fa-insight-placeholder {
	position: absolute;
	inset: 0;
	display: flex;
	box-sizing: border-box;
	align-items: center;
	justify-content: center;
	padding: 12px;
	font: 13px/1.3 system-ui, -apple-system, sans-serif;
	text-align: center;
	user-select: none;
	flex-direction: column;
	gap: 6px;
}

.fa-insight-placeholder::after {
	position: absolute;
	inset: 0;
	border: 1.5px dashed rgb(255 255 255 / 25%);
	content: "";
	pointer-events: none;
}

.fa-insight-placeholder svg {
	opacity: 0.45;
}

.fa-insight-placeholder .cap {
	max-width: 90%;
	font-weight: 500;
	letter-spacing: 0.01em;
}

.fa-insight-placeholder .sub {
	display: none;
	font-size: 11px;
}

.fa-insight-image {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	opacity: 0;
	object-fit: cover;
	transition: opacity var(--duration-normal) ease;
}

.fa-insight-image.is-loaded {
	opacity: 1;
}

.fa-featured-insight-copy {
	display: flex;
	padding: 56px;
	justify-content: center;
	background: var(--fa-deep-slate);
	flex-direction: column;
	gap: 20px;
}

.fa-featured-insight h3 {
	margin: 0;
	font-size: 28px;
	font-weight: 300;
	line-height: 1.2;
	text-transform: uppercase;
}

.fa-insight-filters {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 64px;
	border-bottom: 1px solid var(--border-inverse);
}

.fa-insight-filter-list {
	display: flex;
	gap: 8px;
}

.fa-insight-filters .btn-filter {
	margin-bottom: -1px;
	padding: 18px 20px;
	color: var(--fa-porcelain);
	font-family: var(--font-sans);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	background: transparent;
	border: 0;
	border-bottom: 2px solid transparent;
	cursor: pointer;
	transition: color var(--duration-fast) ease;
}

.fa-insight-filters .btn-filter:hover,
.fa-insight-filters .btn-filter.active {
	color: var(--fa-fog-blue);
}

.fa-insight-filters .btn-filter.active {
	border-bottom: 2px solid var(--fa-fog-blue);
}

.fa-insight-sort {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 18px 0;
	color: var(--fa-gunmetal);
	font-family: var(--font-sans);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	background: transparent;
	border: 0;
	cursor: pointer;
	transition: color var(--duration-fast) ease;
}

.fa-insight-sort:hover {
	color: var(--fa-fog-blue);
}

.fa-insight-sort svg {
	flex: 0 0 14px;
}

.fa-insight-list {
	width: 100%;
	border-top: 1px solid var(--border-inverse);
}

.fa-insight-list-item {
	display: grid;
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	min-height: 86px;
	padding: 28px 4px;
	align-items: center;
	grid-template-columns: 220px minmax(0, 1fr) auto;
	gap: 40px;
	border-bottom: 1px solid var(--border-inverse);
}

.fa-insight-list-item > p,
.fa-insight-list-item h3 {
	margin: 0;
}

.fa-insight-list-item h3 {
	min-width: 0;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.5;
}

.fa-insight-list-item h3 a {
	color: var(--fa-porcelain);
	text-decoration: none;
}

.fa-insight-list-item h3 a:hover,
.fa-insight-list-link:hover {
	color: var(--fa-fog-blue);
}

.fa-insight-list-link {
	color: var(--fa-fog-blue);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-decoration: none;
	text-transform: uppercase;
	white-space: nowrap;
}

/* Our Approach */
.fa-approach-page #real-estate,
.fa-approach-page #strategies,
.fa-approach-page .fa-real-estate {
	display: none !important;
}

.fa-area-list {
	margin-top: 20px;
}

.fa-area-list p {
	margin: 0;
	padding: 20px 0;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	border-bottom: 1px solid var(--border-inverse);
}

.fa-investing {
	margin: 0;
	padding: 112px 0 !important;
	background: var(--fa-porcelain);
}

.fa-investing-top {
	display: grid;
	grid-template-columns: 1.05fr 0.95fr;
	gap: 80px;
	margin-bottom: 88px;
	align-items: center;
}

.fa-asset-table {
	display: flex;
	margin-top: 24px;
	flex-direction: column;
	gap: 20px;
}

.fa-asset-heading {
	margin: 0 !important;
	color: var(--fa-graphite) !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 0.18em;
	line-height: 1.4 !important;
	text-transform: uppercase;
}

.fa-asset-list {
	margin-top: 24px;
}

.fa-asset-table .fa-asset-list {
	margin-top: 0;
}

.fa-asset-list p {
	display: grid;
	grid-template-columns: 16px 1fr auto;
	gap: 16px;
	margin: 0;
	padding: 12px 0;
	align-items: center;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	border-bottom: 1px solid rgb(74 76 80 / 35%);
}

.fa-asset-list i {
	width: 16px;
	height: 16px;
	background: var(--fa-steel-blue);
}

.fa-asset-list p:nth-child(2) i {
	background: var(--fa-slate-violet);
}

.fa-asset-list p:nth-child(3) i {
	background: var(--fa-fog-blue);
}

.fa-asset-list p:nth-child(4) i {
	background: var(--fa-sage-green);
}

.fa-asset-list p:nth-child(5) i {
	background: var(--fa-graphite);
}

.fa-asset-disclaimer {
	margin: 0 !important;
	color: var(--fa-graphite) !important;
	font-size: 12px !important;
	font-style: italic;
	font-weight: 300 !important;
	line-height: 1.5 !important;
}

.fa-allocation-chart {
	width: min(100%, 380px);
	aspect-ratio: 1;
	margin: auto;
	margin-bottom: 0;
	align-self: end;
}

.fa-allocation-chart canvas {
	display: block;
	width: 100% !important;
	height: 100% !important;
}

.fa-real-estate {
	position: relative;
	display: flex;
	min-height: 680px;
	margin: 0;
	padding: 0 !important;
	align-items: flex-end;
	overflow: hidden;
}

.fa-real-estate > img,
.fa-real-estate > span {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fa-real-estate > span {
	background: linear-gradient(to top, rgb(28 29 31 / 98%), rgb(28 29 31 / 8%));
}

.fa-real-estate > div {
	position: relative;
	display: flex;
	max-width: 900px;
	margin: 0 auto;
	padding: 0 56px 96px;
	text-align: center;
	flex-direction: column;
	gap: 20px;
}

.fa-real-estate h2 {
	margin: 0;
	font-size: 40px;
	font-weight: 300;
	line-height: 1.12;
	text-transform: uppercase;
}

.fa-real-estate p {
	margin: 0;
}

.fa-strategy-heading {
	max-width: 760px;
	margin-bottom: 72px;
}

.fa-strategy-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 32px;
}

.fa-strategy-grid article {
	display: flex;
	padding: 44px 36px 48px;
	border: 1px solid var(--border-inverse);
	border-radius: var(--radius-md, 6px);
	border-top: 2px solid var(--fa-fog-blue);
	flex-direction: column;
	gap: 24px;
	transition: border-color 200ms ease, transform 200ms ease;
}

.fa-strategy-grid article:hover {
	border-color: var(--fa-fog-blue);
	transform: translateY(-2px);
}

.fa-strategy-grid header {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
}

.fa-strategy-grid header span {
	color: var(--fa-graphite);
	font-size: 13px;
	letter-spacing: 0.14em;
}

.fa-strategy-grid h3 {
	margin: 0;
	font-size: 26px;
	font-weight: 300;
	line-height: 1.2;
	text-transform: uppercase;
}

.fa-strategy-grid article > p {
	margin: 0;
	color: var(--fa-porcelain);
}

@media (max-width: 1100px) {

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

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

	.fa-contact-office-grid {
		grid-template-columns: 2fr;
	}
}

@media (max-width: 991px) {
	.fa-family-page .fa-r-bordered + .fa-r-section--family-feature {
		padding-top: 80px !important;
	}

	.fa-redesign-page .fa-r-section,
	.fa-investing {
		padding: 80px 0 !important;
	}

	.fa-r-split,
	.fa-r-media-row,
	.fa-contact-layout,
	.fa-investing-top {
		gap: 48px;
	}

	.fa-family-focus-cards,
	.fa-partner-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.fa-contact-office-grid {
		grid-template-columns: 1fr;
	}

	.fa-strategy-grid article {
		min-width: 0;
		padding: 36px 20px 40px;
	}

	.fa-strategy-grid h3 {
		max-width: 100%;
		font-size: 20px;
		overflow-wrap: break-word;
	}
}

@media (max-width: 767px) {
	.fa-family-page .fa-r-bordered + .fa-r-section--family-feature {
		padding-top: 72px !important;
	}

	.fa-r-shell {
		width: calc(100% - 40px);
	}

	.fa-redesign-page .fa-r-section,
	.fa-investing {
		padding: 72px 0 !important;
	}

	.fa-contact-office-grid {
		grid-template-columns: 1fr;
	}

	.fa-r-split,
	.fa-r-media-row,
	.fa-contact-layout,
	.fa-program-grid,
	.fa-featured-insight,
	.fa-investing-top,
	.fa-strategy-grid {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.fa-r-media-row--reverse > :first-child {
		order: 0;
	}

	.fa-r-heading h2,
	.fa-r-section-title,
	.fa-r-centered h2,
	.fa-strategy-heading h2,
	.fa-real-estate h2 {
		font-size: 30px;
	}

	.fa-r-copy {
		padding-top: 0;
	}

	.fa-benefit-grid,
	.fa-team-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.fa-benefit-card,
	.fa-team-card-image {
		height: 280px;
	}

	.fa-focus-list > div {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.fa-feature-rows {
		gap: 72px;
	}

	.fa-featured-insight-copy {
		padding: 36px 24px;
	}

	.fa-insight-filters {
		align-items: stretch;
		flex-direction: column;
	}

	.fa-insight-filter-list {
		overflow-x: auto;
	}

	.fa-insight-filters .btn-filter {
		white-space: nowrap;
	}

	.fa-insight-list-item {
		min-height: 0;
		padding: 24px 0;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 12px 20px;
	}

	.fa-insight-list-item > .fa-r-eyebrow {
		grid-column: 1 / -1;
	}

	.fa-real-estate > div {
		padding: 0 24px 72px;
	}
}

@media (max-width: 480px) {
	.fa-insight-list-item {
		grid-template-columns: 1fr;
	}

	.fa-insight-list-item > .fa-r-eyebrow {
		grid-column: auto;
	}

	.fa-insight-list-link {
		justify-self: start;
	}

	.fa-benefit-grid,
	.fa-team-grid,
	.fa-family-focus-cards,
	.fa-partner-grid {
		grid-template-columns: 1fr;
	}
}
