/* ==========================================================================
   ERAS® Society – Expert Reviews
   ========================================================================== */

.eras-expert-reviews {
	--review-blue: #064487;
	--review-blue-light: #0b5ca8;
	--review-blue-dark: #043565;

	--review-navy: #14284f;

	--review-text: #40596b;
	--review-muted: #718696;

	--review-border: #dce7ed;
	--review-border-soft: #eaf0f3;

	--review-light: #f5f9fb;
	--review-light-blue: #edf6fa;

	background: #fff;
	color: var(--review-text);
}


/* ==========================================================================
   Container
   ========================================================================== */

.eras-expert-reviews .container {
	width: min(
		1200px,
		calc(100% - 48px)
	);

	margin-inline: auto;
	padding: 0;
}


/* ==========================================================================
   Hero
   ========================================================================== */

.eras-expert-reviews__hero {
	position: relative;

	overflow: hidden;

	padding: 93px 0 105px;

	background:
		linear-gradient(
			135deg,
			#f9fcfd 0%,
			#edf6fa 100%
		);
}


.eras-expert-reviews__hero-grid {
	position: relative;
	z-index: 2;

	display: grid;

	grid-template-columns:
		minmax(0, 1.15fr)
		minmax(350px, .85fr);

	gap: clamp(
		70px,
		9vw,
		145px
	);

	align-items: center;
}


/* ==========================================================================
   Hero left
   ========================================================================== */

.eras-expert-reviews__hero-left {
	max-width: 730px;
}


.eras-expert-reviews__kicker,
.eras-expert-reviews__section-kicker {
	display: flex;
	align-items: center;
	gap: 11px;

	color: var(--review-blue);

	font-size: 10px;
	font-weight: 700;
	line-height: 1.2;

	letter-spacing: .11em;
	text-transform: uppercase;
}


.eras-expert-reviews__kicker {
	margin: 0 0 20px;
}


.eras-expert-reviews__kicker span,
.eras-expert-reviews__section-kicker span {
	width: 28px;
	height: 2px;

	flex: 0 0 auto;

	background: var(--review-blue);
}


.eras-expert-reviews__hero h1 {
	margin: 0;

	color: var(--review-blue);

	font-size: clamp(
		52px,
		5.1vw,
		72px
	);

	font-weight: 500;
	line-height: 1.03;

	letter-spacing: -.045em;
}


.eras-expert-reviews__hero-text {

	margin: 27px 0 0;

	color: #526b7d;

	font-size: 16px;
	line-height: 1.8;
}


/* ==========================================================================
   Hero right
   ========================================================================== */

.eras-expert-reviews__hero-right {
	position: relative;

	display: flex;
	align-items: flex-end;
	justify-content: center;

	min-height: 290px;
}


.eras-expert-reviews__hero-decoration {
	position: absolute;

	top: 50%;
	left: 50%;

	width: 430px;
	height: 430px;

	transform:
		translate(
			-50%,
			-51%
		);

	pointer-events: none;
}


.eras-expert-reviews__hero-decoration span {
	position: absolute;

	top: 50%;
	left: 50%;

	border:
		1px solid
		rgba(
			6,
			68,
			135,
			.065
		);

	border-radius: 50%;

	transform:
		translate(
			-50%,
			-50%
		);
}


.eras-expert-reviews__hero-decoration span:nth-child(1) {
	width: 210px;
	height: 210px;
}


.eras-expert-reviews__hero-decoration span:nth-child(2) {
	width: 320px;
	height: 320px;
}


.eras-expert-reviews__hero-decoration span:nth-child(3) {
	width: 430px;
	height: 430px;
}


/* ==========================================================================
   Statistics
   ========================================================================== */

.eras-expert-reviews__stats {
	position: relative;
	z-index: 2;

	display: grid;

	grid-template-columns:
		repeat(
			2,
			minmax(130px, 1fr)
		);

	width: 100%;
	max-width: 360px;

	margin-bottom: 6px;
}


.eras-expert-reviews__stat {
	padding: 15px 25px;

	text-align: center;
}


.eras-expert-reviews__stat + .eras-expert-reviews__stat {
	border-left:
		1px solid
		rgba(
			6,
			68,
			135,
			.12
		);
}


.eras-expert-reviews__stat strong {
	display: block;

	color: var(--review-blue);

	font-size: 37px;
	font-weight: 500;
	line-height: 1;

	letter-spacing: -.04em;
}


.eras-expert-reviews__stat span {
	display: block;

	margin-top: 9px;

	color: var(--review-muted);

	font-size: 11px;
	font-weight: 500;
}


/* ==========================================================================
   Content
   ========================================================================== */

.eras-expert-reviews__content {
	padding: 88px 0 120px;
}


/* ==========================================================================
   Intro
   ========================================================================== */

.eras-expert-reviews__intro {
	display: grid;

	grid-template-columns:
		minmax(0, 1fr)
		minmax(0, .75fr);

	gap: 80px;

	align-items: end;

	margin-bottom: 40px;
}


.eras-expert-reviews__section-kicker {
	margin: 0 0 12px;
}


.eras-expert-reviews__intro h2 {
	margin: 0;

	color: var(--review-blue);

	font-size: clamp(
		34px,
		3.5vw,
		46px
	);

	font-weight: 500;
	line-height: 1.12;

	letter-spacing: -.035em;
}


.eras-expert-reviews__intro > p {
	max-width: 490px;

	margin: 0;

	color: var(--review-muted);

	font-size: 14px;
	line-height: 1.75;
}


/* ==========================================================================
   Toolbar
   ========================================================================== */

.eras-expert-reviews__toolbar {
	display: grid;

	grid-template-columns:
		minmax(0, 1fr)
		280px;

	gap: 12px;

	margin-bottom: 16px;
}


/* ==========================================================================
   Search
   ========================================================================== */

.eras-expert-reviews__search {
	position: relative;

	display: flex;
	align-items: center;
}


.eras-expert-reviews__search > i {
	position: absolute;

	left: 18px;

	color: #8196a5;

	font-size: 14px;

	pointer-events: none;
}


.eras-expert-reviews__search input {
	width: 100%;
	height: 54px;

	padding:
		0
		50px
		0
		48px;

	border:
		1px solid
		#cedde6;

	border-radius: 9px;

	background: #fff;
	color: var(--review-text);

	font: inherit;
	font-size: 13px;

	outline: 0;

	transition:
		border-color .18s ease,
		box-shadow .18s ease;
}


.eras-expert-reviews__search input::placeholder {
	color: #91a3af;
}


.eras-expert-reviews__search input:focus {
	border-color:
		rgba(
			6,
			68,
			135,
			.42
		);

	box-shadow:
		0 0 0 3px
		rgba(
			6,
			68,
			135,
			.07
		);
}


.eras-expert-reviews__search-clear {
	position: absolute;

	right: 9px;

	display: grid;
	place-items: center;

	width: 34px;
	height: 34px;

	padding: 0;

	border: 0;
	border-radius: 6px;

	background: transparent;
	color: #8499a7;

	cursor: pointer;
}


.eras-expert-reviews__search-clear:hover {
	background: var(--review-light-blue);
	color: var(--review-blue);
}


/* ==========================================================================
   Filter
   ========================================================================== */

.eras-expert-reviews__filter {
	position: relative;

	display: flex;
	align-items: center;
}


.eras-expert-reviews__filter > i {
	position: absolute;

	left: 18px;
	z-index: 2;

	color: var(--review-blue);

	font-size: 13px;

	pointer-events: none;
}


.eras-expert-reviews__filter select {
	display: block;

	width: 100%;
	height: 54px;

	padding:
		0
		44px
		0
		46px;

	border:
		1px solid
		#cedde6;

	border-radius: 9px;

	background-color: #fff;

	color: var(--review-blue);

	font: inherit;
	font-size: 13px;
	font-weight: 600;
	line-height: 54px;

	cursor: pointer;

	outline: 0;

	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;

	background-image:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23064487' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

	background-repeat: no-repeat;
	background-position:
		right 17px center;

	background-size:
		12px 7px;

	transition:
		border-color .18s ease,
		box-shadow .18s ease;
}


.eras-expert-reviews__filter select:focus {
	border-color:
		rgba(
			6,
			68,
			135,
			.42
		);

	box-shadow:
		0 0 0 3px
		rgba(
			6,
			68,
			135,
			.07
		);
}


/* ==========================================================================
   Results bar
   ========================================================================== */

.eras-expert-reviews__results-bar {
	display: flex;

	align-items: center;
	justify-content: space-between;

	min-height: 50px;

	margin-bottom: 28px;

	padding:
		0
		2px
		14px;

	border-bottom:
		1px solid
		var(--review-border);
}


.eras-expert-reviews__results-bar p {
	margin: 0;

	color: var(--review-muted);

	font-size: 11px;
}


.eras-expert-reviews__results-bar strong {
	color: var(--review-blue);

	font-weight: 700;
}


.eras-expert-reviews__reset {
	padding: 0;

	border: 0;

	background: transparent;
	color: var(--review-blue);

	font-size: 11px;
	font-weight: 650;

	cursor: pointer;
}


.eras-expert-reviews__reset:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
}


/* ==========================================================================
   Grid
   ========================================================================== */

.eras-expert-reviews__grid {
	display: grid;

	grid-template-columns:
		repeat(
			3,
			minmax(0, 1fr)
		);

	gap: 22px;
}


/* ==========================================================================
   Review card
   ========================================================================== */

.eras-review-card {
	min-width: 0;
}


.eras-review-card[hidden] {
	display: none !important;
}


.eras-review-card__link {
	position: relative;

	display: flex;
	flex-direction: column;

	height: 100%;
	min-height: 405px;

	overflow: hidden;

	border-radius: 12px;

	background:
		linear-gradient(
			145deg,
			#183d73 0%,
			#14294f 100%
		);

	color: #fff;

	text-decoration: none;

	box-shadow:
		0 10px 28px
		rgba(
			20,
			42,
			80,
			.10
		);

	transition:
		transform .22s ease,
		box-shadow .22s ease;
}


.eras-review-card__link::before {
	content: "";

	position: absolute;

	top: -115px;
	right: -115px;

	width: 270px;
	height: 270px;

	border:
		1px solid
		rgba(
			255,
			255,
			255,
			.09
		);

	border-radius: 50%;

	pointer-events: none;
}


.eras-review-card__link:hover {
	transform:
		translateY(-5px);

	box-shadow:
		0 21px 44px
		rgba(
			20,
			42,
			80,
			.19
		);
}


/* ==========================================================================
   Card top
   ========================================================================== */

.eras-review-card__top {
	position: relative;
	z-index: 2;

	display: flex;

	align-items: center;
	justify-content: space-between;

	gap: 15px;

	padding:
		22px
		23px
		0;
}


.eras-review-card__label {
	color:
		rgba(
			255,
			255,
			255,
			.66
		);

	font-size: 8px;
	font-weight: 700;
	letter-spacing: .11em;

	text-transform: uppercase;
}


.eras-review-card__date {
	color:
		rgba(
			255,
			255,
			255,
			.52
		);

	font-size: 9px;
	font-weight: 500;
}


/* ==========================================================================
   Optional image
   ========================================================================== */

.eras-review-card__image {
	position: relative;
	z-index: 2;

	height: 180px;

	margin:
		18px
		23px
		0;

	overflow: hidden;

	border-radius: 8px;

	background: #eaf0f4;
}


.eras-review-card__image img {
	display: block;

	width: 100%;
	height: 100%;

	object-fit: cover;

	transition:
		transform .35s ease;
}


.eras-review-card__link:hover
.eras-review-card__image img {
	transform: scale(1.03);
}


/* ==========================================================================
   Card body
   ========================================================================== */

.eras-review-card__body {
	position: relative;
	z-index: 2;

	flex: 1;

	padding:
		22px
		23px;
}


.eras-review-card__specialities {
	display: flex;

	flex-wrap: wrap;

	gap: 5px;

	margin-bottom: 14px;
}


.eras-review-card__specialities span {
	display: inline-flex;

	align-items: center;

	min-height: 24px;

	padding:
		4px 8px;

	border:
		1px solid
		rgba(
			255,
			255,
			255,
			.12
		);

	border-radius: 999px;

	background:
		rgba(
			255,
			255,
			255,
			.055
		);

	color:
		rgba(
			255,
			255,
			255,
			.74
		);

	font-size: 8px;
	font-weight: 600;
}


.eras-review-card__body h2 {
	margin: 0;

	color: #fff;

	font-size: 21px;
	font-weight: 550;
	line-height: 1.31;

	letter-spacing: -.025em;
}


.eras-review-card__body p {
	margin: 14px 0 0;

	color:
		rgba(
			255,
			255,
			255,
			.73
		);

	font-size: 12px;
	line-height: 1.67;
}


/* ==========================================================================
   Card footer
   ========================================================================== */

.eras-review-card__footer {
	position: relative;
	z-index: 2;

	display: flex;

	align-items: center;
	justify-content: space-between;

	gap: 18px;

	margin-top: auto;

	padding:
		0
		23px
		22px;
}


/* ==========================================================================
   People
   ========================================================================== */

.eras-review-card__people {
	display: flex;

	align-items: center;

	min-height: 32px;

	padding-left: 5px;
}


.eras-review-card__person {
	display: grid;

	place-items: center;

	width: 31px;
	height: 31px;

	margin-left: -5px;

	overflow: hidden;

	border:
		2px solid
		#183967;

	border-radius: 50%;

	background:
		rgba(
			255,
			255,
			255,
			.13
		);

	color: #fff;

	font-size: 9px;
}


.eras-review-card__person img {
	display: block;

	width: 100%;
	height: 100%;

	object-fit: cover;
}


.eras-review-card__person--more {
	background: #fff;
	color: var(--review-navy);

	font-size: 8px;
	font-weight: 700;
}


.eras-review-card__published {
	color:
		rgba(
			255,
			255,
			255,
			.56
		);

	font-size: 9px;
	font-weight: 600;
}


.eras-review-card__published sup {
	font-size: .55em;
}


/* ==========================================================================
   Arrow
   ========================================================================== */

.eras-review-card__arrow {
	display: grid;

	place-items: center;

	width: 38px;
	height: 38px;

	flex: 0 0 auto;

	border:
		1px solid
		rgba(
			255,
			255,
			255,
			.16
		);

	border-radius: 50%;

	color: #fff;

	font-size: 11px;

	transition:
		background .18s ease,
		color .18s ease,
		transform .18s ease;
}


.eras-review-card__link:hover
.eras-review-card__arrow {
	background: #fff;
	color: var(--review-blue);

	transform:
		translateX(3px);
}


/* ==========================================================================
   Empty
   ========================================================================== */

.eras-expert-reviews__empty {
	padding:
		85px
		20px;

	text-align: center;
}


.eras-expert-reviews__empty[hidden] {
	display: none;
}


.eras-expert-reviews__empty-icon {
	display: grid;

	place-items: center;

	width: 62px;
	height: 62px;

	margin:
		0
		auto
		18px;

	border-radius: 50%;

	background: var(--review-light-blue);
	color: var(--review-blue);

	font-size: 19px;
}


.eras-expert-reviews__empty h3 {
	margin: 0;

	color: var(--review-blue);

	font-size: 23px;
	font-weight: 600;
}


.eras-expert-reviews__empty p {
	margin:
		9px
		0
		0;

	color: var(--review-muted);

	font-size: 13px;
}


.eras-expert-reviews__empty button {
	margin-top: 22px;

	padding:
		10px
		17px;

	border: 0;
	border-radius: 6px;

	background: var(--review-blue);
	color: #fff;

	font-size: 11px;
	font-weight: 650;

	cursor: pointer;
}


/* ==========================================================================
   Tablet
   ========================================================================== */

@media (max-width: 1050px) {

	.eras-expert-reviews__hero-grid {
		grid-template-columns:
			minmax(0, 1.2fr)
			minmax(300px, .8fr);

		gap: 55px;
	}


	.eras-expert-reviews__intro {
		gap: 50px;
	}


	.eras-expert-reviews__grid {
		grid-template-columns:
			repeat(
				2,
				minmax(0, 1fr)
			);
	}

}


/* ==========================================================================
   Small tablet
   ========================================================================== */

@media (max-width: 760px) {

	.eras-expert-reviews .container {
		width:
			calc(
				100% - 40px
			);
	}


	.eras-expert-reviews__hero {
		padding:
			62px
			0
			68px;
	}


	.eras-expert-reviews__hero-grid {
		grid-template-columns: 1fr;

		gap: 35px;
	}


	.eras-expert-reviews__hero-right {
		justify-content: flex-start;

		min-height: 130px;
	}


	.eras-expert-reviews__hero-decoration {
		display: none;
	}


	.eras-expert-reviews__stats {
		max-width: 370px;
	}


	.eras-expert-reviews__stat:first-child {
		padding-left: 0;
	}


	.eras-expert-reviews__content {
		padding:
			65px
			0
			90px;
	}


	.eras-expert-reviews__intro {
		grid-template-columns: 1fr;

		gap: 18px;
	}


	.eras-expert-reviews__toolbar {
		grid-template-columns: 1fr;
	}

}


/* ==========================================================================
   Mobile
   ========================================================================== */

@media (max-width: 560px) {

	.eras-expert-reviews .container {
		width:
			calc(
				100% - 32px
			);
	}


	.eras-expert-reviews__hero {
		padding:
			47px
			0
			54px;
	}


	.eras-expert-reviews__hero h1 {
		font-size: 43px;
	}


	.eras-expert-reviews__hero-text {
		font-size: 15px;
	}


	.eras-expert-reviews__stats {
		grid-template-columns:
			repeat(
				2,
				minmax(0, 1fr)
			);
	}


	.eras-expert-reviews__stat {
		padding-inline: 15px;
	}


	.eras-expert-reviews__stat strong {
		font-size: 31px;
	}


	.eras-expert-reviews__grid {
		grid-template-columns: 1fr;

		gap: 16px;
	}


	.eras-review-card__link {
		min-height: 360px;
	}


	.eras-review-card__body h2 {
		font-size: 20px;
	}


	.eras-expert-reviews__results-bar {
		align-items: flex-start;

		gap: 15px;
	}

}