:root {
	--rh-navy: #0d2134;
	--rh-teal: #087f73;
	--rh-ink: #13263a;
	--rh-slate: #526273;
	--rh-mist: #eef4f6;
	--rh-line: #d9e2e8;
	--rh-white: #ffffff;
}

.rh-profile-page,
.rh-editorial-page {
	background: #f8fafb;
	color: var(--rh-ink);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	margin: 0;
}

.rh-shell {
	box-sizing: border-box;
	margin-inline: auto;
	max-width: 1180px;
	padding-inline: 28px;
	width: 100%;
}

.rh-site-header {
	background: var(--rh-white);
	border-bottom: 1px solid var(--rh-line);
	color: var(--rh-ink);
}

.rh-header-inner {
	align-items: center;
	display: flex;
	justify-content: space-between;
	min-height: 82px;
}

.rh-brand,
.rh-footer-brand {
	color: var(--rh-white);
	font-size: 1.45rem;
	font-weight: 750;
	letter-spacing: -.03em;
	text-decoration: none;
}

.rh-primary-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 26px;
}

.rh-primary-nav a {
	color: var(--rh-ink);
	font-size: .93rem;
	font-weight: 600;
	text-decoration: none;
}

.rh-primary-nav a:hover,
.rh-primary-nav a:focus {
	color: var(--rh-teal);
}

.rh-profile-main {
	padding-block: 46px 90px;
}

.rh-back-link {
	color: var(--rh-teal);
	display: inline-block;
	font-weight: 700;
	margin-bottom: 30px;
	text-decoration: none;
}

.rh-profile-article {
	background: var(--rh-white);
	border: 1px solid var(--rh-line);
	border-radius: 18px;
	box-shadow: 0 20px 60px rgba(13,33,52,.08);
	overflow: hidden;
}

.rh-profile-hero {
	align-items: center;
	background: linear-gradient(135deg, #0d2134 0%, #173c50 100%);
	color: var(--rh-white);
	display: grid;
	gap: 50px;
	grid-template-columns: minmax(0,1.45fr) minmax(260px,.75fr);
	padding: 64px;
}

.rh-eyebrow {
	color: #74d4c8;
	font-size: .77rem;
	font-weight: 800;
	letter-spacing: .15em;
	margin: 0 0 16px;
	text-transform: uppercase;
}

.rh-profile-hero h1 {
	color: var(--rh-white);
	font-size: clamp(2.7rem,6vw,5.1rem);
	letter-spacing: -.055em;
	line-height: .98;
	margin: 0;
}

.rh-deck {
	color: #cfdee5;
	font-size: 1.1rem;
	line-height: 1.65;
	margin: 24px 0 0;
	max-width: 660px;
}

.rh-profile-image {
	align-items: center;
	background: var(--rh-white);
	border-radius: 14px;
	display: flex;
	justify-content: center;
	margin: 0;
	min-height: 220px;
	overflow: hidden;
	padding: 18px;
}

.rh-profile-image img {
	height: auto;
	max-height: 250px;
	object-fit: contain;
	width: 100%;
}

.rh-fact-grid {
	background: var(--rh-mist);
	display: grid;
	grid-template-columns: repeat(3,minmax(0,1fr));
	margin: 0;
	padding: 0 64px;
}

.rh-fact-grid div {
	border-bottom: 1px solid var(--rh-line);
	padding: 24px 28px 24px 0;
}

.rh-fact-grid dt {
	color: var(--rh-slate);
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .11em;
	margin-bottom: 7px;
	text-transform: uppercase;
}

.rh-fact-grid dd {
	font-size: 1rem;
	font-weight: 750;
	margin: 0;
}

.rh-profile-content {
	font-size: 1.08rem;
	line-height: 1.76;
	margin-inline: auto;
	max-width: 780px;
	padding: 62px 48px 76px;
}

.rh-profile-content h2 {
	color: var(--rh-navy);
	font-size: 1.85rem;
	letter-spacing: -.035em;
	line-height: 1.2;
	margin: 2.3em 0 .65em;
}

.rh-profile-content h2:first-child { margin-top: 0; }
.rh-profile-content a { color: var(--rh-teal); font-weight: 700; }
.rh-profile-content li { margin-bottom: .55rem; }

.rh-profile-content .rh-lede,
.rh-editorial-content .rh-lede {
	color: var(--rh-ink);
	font-size: 1.22em;
	line-height: 1.65;
	margin-top: 0;
}

.rh-source-list {
	background: var(--rh-mist);
	border-left: 3px solid var(--rh-teal);
	list-style: none;
	margin: 1.5rem 0 0;
	padding: 1.25rem 1.4rem;
}

.rh-pa-intro,
.rh-pa-section,
.rh-pa-watch {
	box-sizing: border-box;
	margin-block: 0;
	padding-inline: 28px;
}

.rh-pa-intro {
	padding-block: 72px 38px;
}

.rh-pa-eyebrow,
.rh-pa-kicker {
	color: var(--rh-teal);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .13em;
	margin: 0 0 12px;
	text-transform: uppercase;
}

.rh-pa-lede {
	color: var(--rh-slate);
	font-size: clamp(1.25rem,2.2vw,1.75rem);
	letter-spacing: -.025em;
	line-height: 1.48;
	margin: 0;
	max-width: 900px;
}

.rh-pa-standard {
	background: var(--rh-mist);
	border-left: 4px solid var(--rh-teal);
	color: var(--rh-slate);
	font-size: 1rem;
	line-height: 1.6;
	margin-top: 34px;
	padding: 20px 24px;
}

.rh-pa-section {
	padding-block: 50px;
}

.rh-pa-section-heading {
	align-items: flex-end;
	border-bottom: 1px solid var(--rh-line);
	display: flex;
	gap: 24px;
	justify-content: space-between;
	margin-bottom: 28px;
	padding-bottom: 22px;
}

.rh-pa-section-heading h2,
.rh-pa-watch h2 {
	color: var(--rh-navy);
	font-size: clamp(2rem,4vw,3.25rem);
	letter-spacing: -.045em;
	line-height: 1.05;
	margin: 0;
}

.rh-pa-section-heading > a,
.rh-pa-section-heading > span,
.rh-pa-watch > a {
	color: var(--rh-teal);
	font-size: .9rem;
	font-weight: 700;
	text-decoration: none;
}

.rh-pa-primer,
.rh-pa-card-grid {
	display: grid;
	gap: 20px;
}

.rh-pa-primer {
	grid-template-columns: repeat(3,minmax(0,1fr));
}

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

.rh-pa-primer article {
	background: var(--rh-mist);
	border-radius: 14px;
	padding: 30px;
}

.rh-pa-primer span {
	color: var(--rh-teal);
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .12em;
}

.rh-pa-primer h3,
.rh-pa-card h3 {
	color: var(--rh-navy);
	font-size: 1.45rem;
	letter-spacing: -.03em;
	margin: 15px 0 10px;
}

.rh-pa-primer p,
.rh-pa-card p,
.rh-pa-watch p {
	color: var(--rh-slate);
	line-height: 1.65;
}

.rh-pa-card {
	background: var(--rh-white);
	border: 1px solid var(--rh-line);
	border-radius: 14px;
	overflow: hidden;
}

.rh-pa-card-image {
	background: #f1f5f7;
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
}

.rh-pa-card-image img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.rh-pa-card > div {
	padding: 25px 25px 29px;
}

.rh-pa-card h3 a {
	color: inherit;
	text-decoration: none;
}

.rh-pa-link {
	color: var(--rh-teal);
	font-weight: 750;
	text-decoration: none;
}

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

.rh-pa-company-grid > a {
	background: var(--rh-white);
	border: 1px solid var(--rh-line);
	border-radius: 14px;
	color: var(--rh-ink);
	display: grid;
	gap: 5px;
	grid-template-columns: 105px 1fr;
	grid-template-rows: 1fr 1fr;
	min-height: 150px;
	padding: 20px;
	text-decoration: none;
}

.rh-pa-company-grid span {
	align-items: center;
	background: var(--rh-mist);
	border-radius: 10px;
	display: flex;
	grid-row: 1 / 3;
	justify-content: center;
	overflow: hidden;
	padding: 14px;
}

.rh-pa-company-grid img {
	height: auto;
	max-height: 90px;
	object-fit: contain;
	width: 100%;
}

.rh-pa-company-grid strong {
	align-self: end;
	font-size: 1.25rem;
	letter-spacing: -.02em;
}

.rh-pa-company-grid small {
	color: var(--rh-slate);
	font-size: .9rem;
}

.rh-pa-watch {
	background: linear-gradient(135deg, var(--rh-navy), #173c50);
	border-radius: 16px;
	color: var(--rh-white);
	margin-block: 50px 90px;
	padding-block: 48px;
}

.rh-pa-watch h2,
.rh-pa-watch p,
.rh-pa-watch > a {
	color: var(--rh-white);
}

.rh-pa-watch p {
	font-size: 1.08rem;
	max-width: 780px;
}

.rh-site-footer {
	background: var(--rh-navy);
	color: #b9cad3;
	padding-block: 58px 30px;
}

.rh-footer-grid {
	display: grid;
	gap: 60px;
	grid-template-columns: 2fr 1fr 1fr;
}

.rh-footer-grid h2 {
	color: #74d4c8;
	font-size: .75rem;
	letter-spacing: .12em;
	margin: 0 0 15px;
	text-transform: uppercase;
}

.rh-footer-grid a:not(.rh-footer-brand) {
	color: #dce8ee;
	display: block;
	margin: 9px 0;
	text-decoration: none;
}

.rh-footer-base {
	border-top: 1px solid rgba(255,255,255,.12);
	display: flex;
	font-size: .82rem;
	justify-content: space-between;
	margin-top: 45px;
	padding-top: 25px;
}

@media (max-width: 820px) {
	.rh-header-inner { align-items: flex-start; flex-direction: column; gap: 18px; padding-block: 22px; }
	.rh-primary-nav { gap: 13px 20px; }
	.rh-profile-hero { gap: 32px; grid-template-columns: 1fr; padding: 42px 30px; }
	.rh-profile-image { min-height: 170px; }
	.rh-fact-grid { grid-template-columns: repeat(2,minmax(0,1fr)); padding-inline: 30px; }
	.rh-profile-content { padding: 46px 30px 58px; }
	.rh-footer-grid { grid-template-columns: 1fr; gap: 30px; }
	.rh-footer-base { flex-direction: column; }
	.rh-pa-primer,
	.rh-pa-card-grid { grid-template-columns: 1fr; }
	.rh-pa-card { display: grid; grid-template-columns: minmax(210px,.8fr) 1fr; }
	.rh-pa-card-image { aspect-ratio: auto; height: 100%; }
	.rh-pa-company-grid { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
	.rh-shell { padding-inline: 18px; }
	.rh-primary-nav a { font-size: .84rem; }
	.rh-profile-main { padding-block: 28px 58px; }
	.rh-profile-hero { padding: 34px 22px; }
	.rh-profile-hero h1 { font-size: 2.55rem; }
	.rh-fact-grid { grid-template-columns: 1fr; padding-inline: 22px; }
	.rh-profile-content { font-size: 1rem; padding: 38px 22px 48px; }
	.rh-pa-intro,
	.rh-pa-section,
	.rh-pa-watch { padding-inline: 18px; }
	.rh-pa-intro { padding-block: 48px 24px; }
	.rh-pa-section { padding-block: 38px; }
	.rh-pa-section-heading { align-items: flex-start; flex-direction: column; }
	.rh-pa-card { display: block; }
	.rh-pa-card-image { aspect-ratio: 16 / 10; height: auto; min-height: 0; }
	.rh-pa-card-image img { display: block; }
	.rh-pa-company-grid > a { grid-template-columns: 95px 1fr; min-height: 120px; }
	.rh-pa-watch { border-radius: 0; margin-block: 30px 60px; padding-block: 38px; }
}
