/*----------------------------------------------------------------- */
/* PAGES
/*----------------------------------------------------------------- */

/* PHOTO TEMPLATE
----------------------------------------- */
.layout-photo .breadcrumbs,
.layout-photo .container {
	position: relative;
	z-index: 1;
}

.layout-photo .bg-cover {
	position: absolute;
	z-index: 0;
	top: 0;
	right: 0;
	left: 0;

	width: 100%;
	height: 460px;

	object-fit: cover;
	object-position: center center;
}

.layout-photo h1 {
	margin: 120px 0 60px 0;

	color: var(--color__white);
}

.layout-photo .sidebar {
	border-left: none;
}

@media (max-width: 760px) {
	.layout-photo .bg-cover {
		height: 340px;
	}

	.layout-photo h1 {
		margin-top: 40px;
	}
}

@media (max-width: 600px) {
	.layout-photo h1 {
		margin-top: 30px;
	}
}

/* PROGRAMS
----------------------------------------- */
.programs {
	margin-bottom: 60px;
}

.programs__title {
	margin: 60px 0 30px 0;
}

.programs__item {
	position: relative;

	display: block;

	margin: 20px 0;

	transition: var(--transition-delay__default);
	text-decoration: none;

	color: var(--color__black);
	border: 1px solid var(--color__white-darker);
}

.programs__item-graduate,
.programs__item-wrapper {
	position: relative;

	padding: 30px 100px 30px 50px;

	cursor: pointer;
}

.programs__item-wrapper {
	width: 100%;
	text-align: left;
}

.programs__item:before {
	position: absolute;
	top: -1px;
	left: -1px;

	display: block;

	width: 4px;
	height: calc(100% + 2px);

	content: "";
	transition: var(--transition-delay__default);

	background: transparent;
}

.programs__item:hover {
	text-decoration: none;

	color: var(--color__black);
	box-shadow: 0 22px 54px rgba(0, 0, 0, 0.1);
}

.programs__item:hover:before {
	background: var(--color__red);
}

.programs__item h2,
.programs__item h3 {
	font-size: 2.6rem;

	margin: 0;

	color: var(--color__red);
}

.programs__item-graduate h2,
.programs__item-graduate h3 {
	position: relative;

	display: inline-block;

	padding-right: 20px;

	text-decoration: underline;
}

.programs__item .icon-arrow:after {
	-webkit-transform: rotate(-135deg) translate(0, -4px);
	transform: rotate(-135deg) translate(0, -4px);
}

.programs__item .icon-plus {
	right: 45px;

	width: 40px;
	height: 40px;
}

.programs__item .icon-plus:before {
	width: 19px;
}

.programs__item .icon-plus:after {
	height: 19px;
}

.programs__item p {
	color: var(--color__black);
	margin: 10px 0 0 0;
}

.programs__list {
	display: none;

	padding: 0 50px 5px 50px;
}

.block_list ul.programs__list li {
	margin-bottom: 10px;
}

.programs__list a {
	font-family: var(--font-family__default);
	font-size: 1.7rem;
	font-weight: var(--font-weight__bold);
}

.programs__list a:hover {
	text-decoration: none;
	text-decoration: solid underline transparent;
}

@media (max-width: 760px) {
	.programs {
		margin-bottom: 30px;
	}

	.programs__title {
		margin: 30px 0 20px 0;
	}

	.programs__item {
		margin: 10px 0;
	}

	.programs__item-wrapper,
	.programs__item-graduate {
		padding: 15px;
	}

	.programs__item-wrapper {
		padding-right: 55px;
	}

	.programs__item:before {
		display: none;
	}

	.programs__item h2 {
		font-size: 2.2rem;
		line-height: 2.6rem;

		display: block;

		text-decoration: none;
	}

	.programs__item .icon-arrow:after {
		-webkit-transform: rotate(-135deg) translate(0, 0);
		transform: rotate(-135deg) translate(0, 0);
	}

	.programs__item .icon-plus {
		right: 15px;

		width: 30px;
		height: 30px;
	}

	.programs__item .icon-plus:before {
		width: 13px;
	}

	.programs__item .icon-plus:after {
		height: 13px;
	}

	.programs__list {
		padding: 0 15px 1px 15px;
	}

	.block_list ul.programs__list li {
		margin-bottom: 10px;
	}
}

/* HIGHLIGHT NUMBERS
----------------------------------------- */
.block_highlight-numbers {
	margin: 100px 0;
}

.block_highlight-numbers__item {
	width: 25%;
	padding: 15px;

	text-align: center;
}

.block_highlight-numbers__item strong {
	font-family: var(--font-family__heading);
	font-size: 3.4rem;

	display: flex;
	align-items: center;
	justify-content: center;

	width: 120px;
	height: 120px;
	margin: 0 auto;

	border: 1px solid var(--color__white-darker);
	border-radius: 50%;
}

.block_highlight-numbers__item span {
	font-size: 1.9rem;
	line-height: 2.3rem;

	display: block;

	max-width: 160px;
	margin: 25px auto 0 auto;
}

@media (max-width: 760px) {
	.block_highlight-numbers {
		margin: 50px 0;
	}

	.block_highlight-numbers__item strong {
		font-size: 2rem;

		width: 90px;
		height: 90px;
	}

	.block_highlight-numbers__item span {
		font-size: 1.5rem;

		margin-top: 8px;
	}
}

@media (max-width: 600px) {
	.block_highlight-numbers__item {
		width: 50%;
	}
}

/* SCHOOLS
----------------------------------------- */
.page-template-page-schools .blocks {
	max-width: 880px;
	margin-bottom: 30px;
}

.loop-schools {
	position: relative;

	display: grid;

	grid-gap: 70px;
	grid-template-columns: 1fr 1fr 1fr;
}

.loop-schools li {
	width: calc(33.33% - 35px);
	margin: 35px 0;
}

@supports (display: grid) {
	.loop-schools li {
		width: auto;
		margin: 0;

		text-align: left;
	}
}

.loop-schools:before {
	position: absolute;
	z-index: 1;
	top: 50px;
	right: 70px;
	bottom: 50px;
	left: 70px;

	content: "";

	background: var(--color__white-dark);
}

a.schools-item {
	display: block;
	position: relative;
	z-index: 2;

	overflow: hidden;

	padding: 40px;

	text-decoration: none;

	color: var(--color__black);
	border: 1px solid var(--color__white-darker);
	background: var(--color__white);
}

.schools-item:hover {
	background: var(--color__red);
	box-shadow: 0 22px 44px rgba(0, 0, 0, 0.3);
}

.schools-item span {
	font-family: var(--font-family__heading);
	font-size: 3.2rem;
	line-height: 65px;
	display: inline-block;
	margin-bottom: 15px;
	padding-left: 18px;
	transition: var(--transition-delay__default);
	/* text-transform: uppercase; */
	color: var(--color__red);
	border-left: 1px solid var(--color__red);
}

.schools-item .h2,
.schools-item .h3 {
	font-size: 3.2rem;
	line-height: 4rem;
	display: flex;
	overflow: hidden;
	/* align-items: flex-end; */
	height: 120px;
	margin-bottom: 15px;
	transition: var(--transition-delay__default);
	color: var(--color__red);
}

.schools-item p {
	overflow: hidden;

	height: 54px;
	margin: 0;

	transition: var(--transition-delay__default);
}

.schools-item:hover span,
.schools-item:hover .h2,
.schools-item:hover .h3,
.schools-item:hover p {
	color: var(--color__white);
	border-color: var(--color__white);
}

.schools-item .shape {
	position: absolute;
	right: 0;
	bottom: 0;

	width: 271px;
	height: 351px;

	transition: var(--transition-delay__default);

	color: transparent;
}

.schools-item:hover .shape {
	color: rgba(0, 0, 0, 0.05);
}

@media (max-width: 1230px) {
	.loop-schools {
		grid-gap: 60px;
	}

	.loop-schools .schools-item {
		width: calc(33.33% - 30px);
		margin: 30px 0;
	}

	@supports (display: grid) {
		.loop-schools .schools-item {
			width: auto;
			margin: 0;
		}
	}
}

@media (max-width: 1100px) {
	.loop-schools {
		grid-gap: 40px;
	}

	.loop-schools .schools-item {
		width: calc(33.33% - 20px);
		margin: 20px 0;
	}

	@supports (display: grid) {
		.loop-schools .schools-item {
			width: auto;
			margin: 0;
		}
	}
}

@media (max-width: 960px) {
	.loop-schools {
		grid-gap: 50px;
		grid-template-columns: 1fr 1fr;
	}

	.loop-schools .schools-item {
		width: calc(50% - 25px);
		margin: 25px 0;
	}

	@supports (display: grid) {
		.loop-schools .schools-item {
			width: auto;
			margin: 0;
		}
	}

	.loop-schools:before {
		top: 35px;
		right: 35px;
		bottom: 35px;
		left: 35px;
	}
}

@media (max-width: 760px) {
	.loop-schools {
		grid-gap: 25px;
		grid-template-columns: 1fr;
	}

	.loop-schools .schools-item {
		width: 100%;
		margin: 25px 0;
	}

	@supports (display: grid) {
		.loop-schools .schools-item {
			width: auto;
			margin: 0;
		}
	}

	a.schools-item {
		padding: 25px;
	}

	.schools-item span {
		font-size: 2.2rem;
		line-height: 45px;
	}

	.schools-item h2,
	.schools-item h3 {
		font-size: 2.2rem;
		line-height: normal;

		display: block;

		height: auto;
		margin-bottom: 5px;
	}

	.schools-item p {
		height: auto;
	}

	.loop-schools:before {
		top: 15px;
		right: 25px;
		bottom: 15px;
		left: 25px;
	}

	.schools-item .shape {
		width: 193px;
		height: 250px;
	}
}

/* SCHOOLS (detail) & PROGRAMS (detail)
----------------------------------------- */
.page-template-page-schools-detail .breadcrumbs,
.page-template-page-programs-detail .breadcrumbs {
	margin-bottom: 0;

	background: var(--color__white-dark);
}

.school-intro {
	position: relative;

	padding: 60px 0;

	background: var(--color__white-dark);
}

.school-intro__shape {
	position: absolute;
	z-index: 2;
	top: -48px;
	right: 0;

	overflow: hidden;

	width: 24%;
	height: calc(100% + 48px + 40px); /* 100% + breadcrumbs height + overflow */

	content: "";

	background: var(--color__red);
}

.page-template-page-programs-detail .school-intro__shape {
	height: calc(100% + 48px); /* 100% + breadcrumbs height */
}

.school-intro__shape .shape {
	position: absolute;
	top: -50px;
	left: 140px;

	width: 464px;
	height: 600px;

	color: rgba(0, 0, 0, 0.05);
}

.school-intro__prefix {
	position: relative;

	margin-bottom: 5px;
}

.school-intro__prefix:before {
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	left: 0;

	display: block;

	width: 100%;
	height: 1px;
	margin: auto 0;

	content: "";

	background: var(--color__white-darker);
}

.school-intro__prefix span {
	font-family: var(--font-family__heading);
	font-size: 2.6rem;
	font-weight: var(--font-weight__bold);

	position: relative;
	z-index: 2;

	padding-right: 20px;

	background: var(--color__white-dark);
}

.school-intro__text {
	width: 64%;
	padding-right: 4%;
}

.school-intro__text .description p {
	margin: 0;
}

.school-intro__video {
	position: relative;
	z-index: 3;

	display: block;

	width: 36%;
	max-width: 430px;

	box-shadow: 0 22px 44px rgba(0, 0, 0, 0.3);
}

.school-intro__video img {
	width: 100%;
	height: auto;
}

.school-intro__video span {
	font-size: 1.6rem;
}

.directory-school,
.news-school,
.blog-school {
	padding: 40px 0;

	text-align: center;
}

.directory-school {
	background: linear-gradient(
		to bottom,
		var(--color__white) 50%,
		var(--color__white-dark) 0%
	);
}

.page-template-page-programs-detail .directory-school {
	background: var(--color__white-dark);
}

.news-school,
.blog-school {
	background: var(--color__white-dark);
}

.directory-school h2,
.news-school h2,
.blog-school h2 {
	margin: 0 0 30px 0;
}

.directory-school .loop-directory-simple {
	margin-bottom: 15px;

	border: 1px solid var(--color__white-darker);
	background: var(--color__white-dark);
}

.directory-school__archive-link {
	font-size: 1.6rem;
}

.page-template-page-schools-detail .pre-footer,
.page-template-page-programs-detail .pre-footer {
	background: linear-gradient(
		to bottom,
		var(--color__white-dark) 200px,
		var(--color__white) 0%
	);
}

.directory-school .people__archive-link {
	font-size: 1.6rem;
}

.testimonials {
	padding: 40px 0 80px 0;

	background: var(--color__white-dark);

	/* background: linear-gradient(
		to bottom,
		var(--color__white) 220px,
		var(--color__white-dark) 0%
	); */
}

.testimonials h2 {
	text-align: center;
}

.home-testimonials h2 {
	margin-bottom: 20px;
}

.home-testimonials__description {
	text-align: center;
	max-width: 600px;
	margin: 0 auto;
}

.home-testimonials .row_testimonials {
	margin-top: 40px;
}

.testimonials__item {
	position: relative;

	width: 360px;
	margin: 25px 0;
}

.testimonials__item:nth-of-type(1) {
	order: 2;
}

.testimonials__item:nth-of-type(2) {
	order: 1;
}

.testimonials__item:nth-of-type(3) {
	order: 3;
}

.testimonials__item-video a {
	display: block;

	width: inherit;
	height: inherit;
}

.testimonials__item-video span {
	width: 100%;
	max-width: 200px;
}

.testimonials__item-text {
	padding: 40px;

	border: 1px solid var(--color__white-darker);
	background: var(--color__white);
}

.testimonials__item-text p {
	font-style: italic;

	margin-bottom: 50px;
}

.testimonials__image {
	overflow: hidden;

	width: 60px;
	height: 60px;

	border-radius: 50%;
}

.testimonials__info {
	font-size: 1.7rem;
	line-height: 2.1rem;

	width: calc(100% - 60px - 15px); /* 100% - image width - margin */
}

.testimonials__item-text .icon {
	position: absolute;
	top: 25px;
	left: -14px;

	width: 40px;
	height: 40px;

	color: var(--color__red);
}

@media (max-width: 1230px) {
	.testimonials__item:nth-of-type(1) {
		order: 1;
	}

	.testimonials__item:nth-of-type(2) {
		order: 2;
	}

	.testimonials__item-video {
		width: 100%;
	}

	.testimonials__item-video a {
		max-width: 360px;
		margin: 0 auto;
	}

	.testimonials__item-text {
		width: calc(50% - 25px);
		max-width: none;
	}
}

@media (max-width: 960px) {
	.school-intro__shape {
		display: none;
	}

	.school-intro__text {
		width: 100%;
		margin-bottom: 60px;
		padding: 0;
	}

	.school-intro__video {
		width: 100%;
		margin: 0 auto;
	}
}

@media (max-width: 760px) {
	.school-intro {
		padding: 30px 0;
	}

	.school-intro__prefix span {
		font-size: 2rem;

		padding-right: 12px;
	}

	.school-intro__text {
		margin-bottom: 30px;
	}

	.directory-school,
	.news-school,
	.blog-school {
		padding: 20px 0;
	}

	.directory-school h2,
	.news-school h2,
	.blog-school h2 {
		margin-bottom: 15px;
	}

	.page-template-page-schools-detail .pre-footer,
	.page-template-page-programs-detail .pre-footer {
		background: linear-gradient(
			to bottom,
			var(--color__white-dark) 160px,
			var(--color__white) 0%
		);
	}

	.home-testimonials h2 {
		margin-bottom: 15px;
	}

	.home-testimonials__description {
		max-width: 400px;
	}

	.testimonials {
		padding: 0 0 40px 0;
	}

	.testimonials__item {
		margin: 5px auto;
	}

	.testimonials__item-text {
		width: 100%;
		max-width: 360px;
		padding: 60px 20px 25px 20px;
	}

	.testimonials__item-text p {
		line-height: 2.2rem;

		margin-bottom: 15px;
	}

	.testimonials__image {
		width: 45px;
		height: 45px;
	}

	.testimonials__info {
		font-size: 1.5rem;

		width: calc(100% - 45px - 10px);
	}

	.testimonials__item-text .icon {
		top: 15px;
		left: 20px;

		width: 36px;
		height: 36px;
	}
}

/* PROGRAMS (detail)
----------------------------------------- */
.programs-info > .row {
	display: block;
}

.programs-summary {
	position: absolute;
	z-index: 1;
	top: calc(100% + 80px);
	right: 0;

	width: 100%;
	max-width: 340px;
	padding: 28px 34px 40px 34px;

	border: 1px solid var(--color__white-darker);
	background: var(--color__white);
	box-shadow: 0 22px 60px rgba(0, 0, 0, 0.1);
}

.programs-summary.scroll-to-fixed-end {
	-webkit-transform: translateY(130px);
	transform: translateY(130px);
}

.programs-summary table {
	font-size: 1.6rem;

	min-width: auto;
	margin-bottom: 30px;
}

.programs-summary table td,
.programs-summary table th {
	padding: 6px 0;
	color: var(--color__black);
	background: transparent;

	vertical-align: top;

	border: none;
}

.programs-summary table th {
	font-weight: normal;
}

.programs-summary table td:last-child {
	font-weight: var(--font-weight__bold);

	text-align: right;
}

.programs-summary .btn-success {
	font-size: 2.1rem;

	width: 100%;
	margin-bottom: 10px;
	padding: 16px 30px;

	text-align: center;
}

.programs-summary .btn-blank {
	font-size: 1.7rem;

	position: relative;

	width: 100%;
	padding: 10px 25%;

	border: 1px solid var(--color__beige-light);
}

.programs-summary button.btn-blank.btn_ask {
	font-weight: var(--font-weight__bold);
	padding-top: 15px;
	padding-bottom: 15px;
}

.programs-summary .btn-blank .icon {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 15px;

	width: 25px;
	height: 25px;
	margin: auto 0;
	fill: currentColor;
}

.programs-summary__note {
	line-height: 2rem;
	font-size: 1.4rem;
	font-style: italic;
	display: inline-block;
	margin-top: 5px;
	text-align: center;
}

.programs-content {
	padding-top: 80px;
}

.programs-content .block:nth-child(1) h2 {
	margin-top: 0;
}

.ask-us {
	padding: 80px 0;

	background: var(--color__white-dark);
}

.ask-us__wrapper {
	max-width: 980px;
	margin: 0 auto;

	text-align: center;

	border: 1px solid var(--color__white-darker);
}

.ask-us__wrapper .icon {
	width: 130px;
	height: 80px;
	margin: -30px 0 20px 0;
	padding: 0 25px;

	background: var(--color__white-dark);
}

.ask-us__wrapper h2 {
	margin: 0 0 5px 0;
}

.ask-us__wrapper p {
	margin-bottom: 20px;
}

.ask-us__wrapper .btn {
	font-size: 2.1rem;

	margin-bottom: 40px;
	padding: 18px 60px;
}

.ask-us__contacts {
	max-width: 800px;
	margin: 0 auto -60px auto;
}

.ask-us__contact {
	font-size: 1.6rem;

	width: 50%;
	padding: 30px 40px 30px 30px;

	text-align: left;

	border: 1px solid var(--color__white-darker);
	background: var(--color__white);
}

.ask-us__contact:nth-child(even) {
	margin-left: -1px;
}

.ask-us__contact-image {
	overflow: hidden;

	width: 80px;
	height: 80px;

	border-radius: 50%;
}

.ask-us__contact-image img {
	width: 100%;
	height: 100%;
}

.ask-us__contact-info {
	width: calc(100% - 80px - 15px); /* 100% - image width - margin */
}

.ask-us__contact-info strong {
	font-family: var(--font-family__heading);
	font-size: 1.8rem;
	font-weight: var(--font-weight__bold);
}

.ask-us__contact-info span {
	display: block;

	margin: 1px 0;
}

.ask-us__contact-info a {
	word-break: break-all;
}

@media (max-width: 1230px) {
	.programs-summary {
		right: 25px;
	}
}

@media (max-width: 1100px) {
	.programs-info.summary-visible > .row {
		display: flex;
	}

	.summary-visible.anchors nav {
		width: 50%;
		padding: 20px 0;

		border: none;
	}

	.summary-visible.anchors nav .row {
		display: block;
	}

	.summary-visible.anchors nav a {
		font-size: 1.9rem;

		margin: 12px 12px 12px 0;
		padding-left: 36px;
	}

	.summary-visible.anchors nav .icon {
		top: -1px;

		width: 24px;
		height: 24px;
	}

	.programs-summary {
		position: static !important;

		min-width: 340px;
		max-width: 50%;
		margin: -1px -25px 0 0;
	}

	.programs-summary.scroll-to-fixed-end {
		-webkit-transform: none;
		transform: none;
	}

	.programs-content {
		padding-top: 40px;
	}
}

@media (max-width: 760px) {
	.programs-info {
		border: none;
	}

	.programs-info.summary-visible > .row {
		flex-direction: column-reverse;
	}

	.anchors {
		border-top: 1px solid var(--color__white-darker);
	}

	.summary-visible.anchors nav {
		width: 100%;
		margin-top: 45px;

		border-top: 1px solid var(--color__white-darker);
	}

	.summary-visible.anchors nav .row {
		display: flex;
	}

	.summary-visible.anchors nav a {
		font-size: 1.7rem;
	}

	.programs-summary {
		min-width: 0;
		max-width: 430px;
		margin: 0 auto;
	}

	.programs-content {
		padding-top: 30px;
	}

	.ask-us {
		padding: 40px 0 0 0;
	}

	.ask-us__wrapper {
		border: none;
	}

	.ask-us__wrapper .icon {
		width: 90px;
		height: 60px;
		margin-bottom: 0;
		padding: 0 15px;
	}

	.ask-us__wrapper h2 {
		margin-bottom: 10px;
	}

	.ask-us__wrapper p {
		margin-bottom: 15px;
	}

	.ask-us__wrapper .btn {
		font-size: 1.8rem;

		margin-bottom: 30px;
		padding: 15px 50px;
	}

	.ask-us__contacts {
		margin: 0 auto;
	}

	.ask-us__contact {
		font-size: 1.5rem;

		padding: 15px;
	}

	.ask-us__contact-image {
		width: 60px;
		height: 60px;
	}

	.ask-us__contact-info {
		width: calc(100% - 60px - 10px);
	}

	.ask-us__contact-info strong {
		font-size: 1.6rem;
	}
}

@media (max-width: 600px) {
	.ask-us__wrapper .btn {
		margin-bottom: 25px;
	}

	.ask-us__contacts {
		max-width: 370px;
	}

	.ask-us__contact {
		width: 100%;
	}

	.ask-us__contact:nth-child(even) {
		margin: -1px 0 0 0;
	}
}

@media (max-width: 400px) {
	.programs-summary {
		padding: 15px 15px 15px 20px;
	}

	.programs-summary table {
		margin-bottom: 15px;
	}

	.programs-summary .btn-blank {
		padding: 10px 15%;
	}
}

/* STUDENT SERVICES CENTER
----------------------------------------- */
.department-status {
	font-family: var(--font-family__default);
	font-size: 1.7rem;
	font-weight: var(--font-weight__default);

	display: inline-block;

	margin-left: 15px;

	vertical-align: middle;
	letter-spacing: normal;
}

.department-status:before {
	display: inline-block;

	width: 10px;
	height: 10px;
	margin-top: -3px;
	margin-right: 8px;

	content: "";
	vertical-align: middle;

	border-radius: 50%;
}

.department-status.status-closed {
	color: var(--color__red);
}

.department-status.status-closed:before {
	background: var(--color__red);
	box-shadow: 0 4px 8px rgba(205, 0, 0, 0.3);
}

.department-status.status-open {
	color: var(--color__green);
}

.department-status.status-open:before {
	background: var(--color__green);
	box-shadow: 0 4px 8px rgba(95, 171, 12, 0.3);
}

.directory-center .person {
	width: 50%;
	margin: 20px 0;
}

.directory-center .person__image {
	width: 35%;
	margin-right: 5%;
}

.directory-center .person__info {
	font-size: 1.6rem;

	width: 60%;
	padding: 5% 3% 0 0;
}

.directory-center .person__info h3 {
	font-size: 1.8rem;

	margin-bottom: 5px;
}

.directory-center .person__info h3 a {
	text-decoration: none;

	color: var(--color__black);
}

.directory-center .person__info strong {
	font-weight: var(--font-weight__default);

	display: block;

	width: fit-content;
	margin-bottom: 5px;
}

.directory-center .person__info > a {
	word-break: break-all;
}

@media (max-width: 600px) {
	.directory-center .person {
		width: 100%;
		margin: 0;
	}

	.directory-center .person__image {
		width: 90px;
		margin-right: 15px;
	}

	.directory-center .person__info {
		padding: 5px 10px 0 0;
	}

	.directory-center .person__info h3,
	.directory-center .person__info strong {
		margin-bottom: 2px;
	}
}

/* CONTACT US
----------------------------------------- */
.contact__info {
	max-width: 550px;
	padding: 70px;

	background: var(--color__white-dark);
}

.contact__info a,
.contact__info p,
.contact__info address {
	position: relative;

	padding-left: 40px;
}

.contact__info a[href^="tel"],
.contact__info a[href^="mailto"],
.contact__info address {
	font-family: var(--font-family__heading);
	font-size: 2.8rem;
	font-weight: var(--font-weight__bold);

	display: inline-block;
}

.contact__info a[href^="tel"] {
	margin-bottom: 30px;

	text-decoration: none;

	color: var(--color__black);
}

.contact__info a[href^="tel"]:hover {
	color: var(--color__red);
}

.contact__info a[href^="mailto"] {
	margin-bottom: 30px;

	word-break: break-all;
}

.contact__info address {
	font-style: normal;
	margin-bottom: 30px;
}

.contact__info .icon {
	position: absolute;
	top: 7px;
	left: 0;

	width: 30px;
	height: 30px;

	color: var(--color__red);
}

.contact__link {
	font-size: 1.7rem;

	display: inline-block;
	display: none;

	margin-bottom: 10px;
}

.contact__info p {
	font-size: 1.7rem;
	line-height: 2.5rem;

	margin: 0;
}

.contact__form figure {
	margin: 0;
}

.page-template-page-contact .block_html:last-child iframe {
	width: 100%;
}

@media (max-width: 960px) {
	.page-template-page-contact .block_html:last-child iframe {
		height: 380px;
	}
}

@media (max-width: 760px) {
	.page-template-page-contact .block_html:last-child iframe {
		height: 300px;
		margin-top: 30px;
	}
}

/* HOME
----------------------------------------- */

/* INTRO */
.home-intro {
	position: relative;

	padding: 11% 0 6% 0;

	text-align: center;

	color: var(--color__white);
}

.home-intro .container {
	z-index: 2;
}

.home-intro h1 {
	font-size: 7.7rem;

	margin: 0;

	letter-spacing: -3px;

	text-shadow: 0 2px 14px rgba(0, 0, 0, 0.5);
}

.home-intro .description p {
	font-family: var(--font-family__default);
	font-size: 3rem;
	line-height: 4rem;

	max-width: 600px;
	margin: 0 auto 30px auto;

	letter-spacing: -0.5px;

	text-shadow: 0 2px 14px rgba(0, 0, 0, 0.5);
}

.home-intro__video {
	position: relative;

	display: block;
	overflow: hidden;

	width: 140px;
	height: 90px;
	margin: 0 auto;

	border-radius: 7px;
}

.home-intro__video:before {
	position: absolute;
	top: 30px;
	right: 0;
	left: 0;

	display: block;

	width: 0;
	height: 0;
	margin: 0 auto;

	content: "";
	transition: var(--transition-delay__default);

	border-width: 8.5px 0 8.5px 15px;
	border-style: solid;
	border-color: transparent transparent transparent var(--color__white);
}

.home-intro__video:hover:before {
	border-color: transparent transparent transparent var(--color__red);
}

.home-intro__video img {
	width: 100%;
	height: 100%;
}

.home-intro__video span {
	font-size: 1.2rem;
	line-height: 21px;

	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;

	display: block;

	width: 100%;

	letter-spacing: 1px;

	color: var(--color__white);
	background: var(--color__red);
}

.home-intro .bg-cover img {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;

	width: 100%;
	height: 100%;

	object-fit: cover;
	object-position: center center;
}

/* LINKS */
.home-links {
	box-shadow: 0 12px 104px rgba(0, 0, 0, 0.1);
}

a.home-links__item {
	position: relative;

	display: flex;
	align-items: center;
	justify-content: center;

	width: 18%;
	padding: 35px 15px 65px 15px;

	text-align: center;
	text-decoration: none;

	color: var(--color__black);
	background: var(--color__white);
}

a.home-links__item-large {
	width: 32%;
}

.home-links .row-count-2 a.home-links__item-large {
	width: 50%;
}

.home-links .row-count-3 a.home-links__item-large {
	width: 33.33%;
}

.home-links__item:before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;

	display: block;

	width: 1px;
	height: calc(100% - 60px);
	margin: auto 0;

	content: "";

	background: var(--color__white-darker);
}

.home-links__item:first-child:before {
	display: none;
}

.home-links__item:hover {
	background: var(--color__red);
}

.home-links__item .icon {
	width: 36px;
	height: 36px;

	transition: var(--transition-delay__default);

	color: var(--color__red);
}

.home-links__item span {
	display: block;

	transition: var(--transition-delay__default);
}

.home-links__item-title {
	font-family: var(--font-family__heading);
	font-size: 2.2rem;
	font-weight: var(--font-weight__bold);

	margin-bottom: 20px;

	text-decoration: underline;

	color: var(--color__red);
}

.home-links__item.item-big .home-links__item-title {
	font-size: 3rem;

	margin-bottom: 15px;
	padding-top: 25px;
}

.home-links__item-text {
	font-size: 1.9rem;
	line-height: 3rem;

	max-width: 220px;
	margin: 0 auto;
}

.home-links__item.item-big .home-links__item-text {
	font-size: 1.9rem;
	line-height: 2.6rem;

	max-width: 310px;
}

.home-links__item:hover .icon,
.home-links__item:hover .home-links__item-title,
.home-links__item:hover .home-links__item-text {
	color: var(--color__white);
}

/* HIGHLIGHT */
.home-highlight .block_highlight-numbers {
	max-width: 1000px;
	margin: 0 auto;
	padding: 100px 0 80px 0;
}

/* OVERVIEW */
.home-overview {
	overflow: hidden;

	background: var(--color__white-dark);
}

.home-overview .container {
	padding-top: 80px;
	padding-bottom: 80px;
}

.home-overview__info {
	width: 37%;
}

.home-overview__info p {
	margin-bottom: 10px;
}

a.home-overview__info-video {
	font-size: 1.7rem;
	font-weight: var(--font-weight__bold);
	line-height: 58px;

	position: relative;

	display: block;
	overflow: hidden;

	width: 266px;
	height: 56px;
	margin-top: 20px;
	padding: 0 20px 0 65px;

	text-align: center;
	text-decoration: none;

	color: var(--color__white);
	border-radius: 7px;
}

.home-overview__info-video:before {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;

	display: block;

	width: 60px;
	height: 100%;

	content: "";

	border-radius: 0 45% 45% 0;
	background: var(--color__red);
}

.home-overview__info-video:after {
	position: absolute;
	z-index: 3;
	top: 0;
	bottom: 0;
	left: 24px;

	display: block;

	width: 0;
	height: 0;
	margin: auto 0;

	content: "";
	transition: var(--transition-delay__default);

	border-width: 8.5px 0 8.5px 15px;
	border-style: solid;
	border-color: transparent transparent transparent var(--color__white);
}

.home-overview__info-video span {
	position: relative;
	z-index: 2;

	display: inline-block;

	transition: var(--transition-delay__default);
	text-decoration: solid underline transparent;
}

.home-overview__info-video:hover span {
	text-decoration: underline;
}

.home-overview__info-video img {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;

	width: 100%;
	height: 100%;

	object-fit: cover;
	object-position: center center;
}

.home-overview__image {
	width: 63%;
	margin-right: -90px;
}

/* SCHOOLS */
.home-schools {
	padding: 40px 0 80px 0;
}

.home-schools h2 {
	margin-bottom: 20px;

	text-align: center;
}

.home-schools__description {
	text-align: center;
	max-width: 600px;
	margin: 0 auto;
}

.home-schools .loop-schools {
	margin-top: 60px;
}

/* ARTICLES */
.container_home-articles {
	padding-bottom: 80px;
}

.layout-wrapper .content-wrapper.home-articles {
	width: calc(100% - var(--width__sidebar) - 80px);
	padding-top: 30px;
	padding-right: 0;

	border-top: 1px solid var(--color__white-darker);
}

.layout-wrapper .content-wrapper.home-articles_full {
	width: 100%;
}

.home-articles {
	text-align: center;
}

.home-articles__more {
	font-size: 1.7rem;

	display: inline-block;

	margin-top: 40px;
}

/* EVENTS */
.home-events {
	width: 340px;
}
.home-events .event-box-loop li {
	margin: 20px 0;
}

@media (max-width: 1230px) {
	/* LINKS */
	a.home-links__item,
	.home-links__item.item-big {
		width: 50%;
		padding: 25px 15px 45px 15px;
	}

	.home-links__item:nth-child(3):before {
		right: 0;
		bottom: auto;

		width: calc(100% - 60px);
		height: 1px;
		margin: 0 auto;
	}

	.home-links__item:nth-child(4):after {
		position: absolute;
		top: 0;
		right: 0;
		left: 0;

		display: block;

		width: calc(100% - 60px);
		height: 1px;
		margin: 0 auto;

		content: "";

		background: var(--color__white-darker);
	}

	/* OVERVIEW */
	.home-overview__image {
		margin-right: -30px;
	}
}

@media (max-width: 960px) {
	/* ARTICLES */
	.layout-wrapper .content-wrapper.home-articles {
		width: 100%;
		margin-bottom: 40px;
	}

	/* EVENTS */
	.home-events {
		width: 100%;
	}

	.home-events .event-box-loop {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.home-events .event-box-loop li {
		width: calc(50% - 15px);
	}
}

@media (max-width: 760px) {
	/* INTRO */
	.home-intro h1 {
		font-size: 3.7rem;

		margin-bottom: 10px;

		letter-spacing: -1px;
	}

	.home-intro .description p {
		font-size: 2rem;
		line-height: 2.4rem;

		max-width: 440px;
		padding: 0 15px;
	}

	.home-intro__video {
		width: 110px;
		height: 71px;
	}

	.home-intro__video:before {
		top: 18px;
	}

	.home-intro__video span {
		font-size: 1.1rem;
	}

	/* LINKS */
	.home-links__item {
		padding: 15px 15px 25px 15px;
	}

	.home-links__item:before,
	.home-links__item:after {
		display: none !important;
	}

	.home-links__item-title {
		font-size: 1.6rem;

		margin-bottom: 5px;
	}

	.home-links__item.item-big .home-links__item-title {
		font-size: 2rem;
		line-height: 2.4rem;

		margin-bottom: 10px;
		padding-top: 15px;
	}

	.home-links__item-text {
		font-size: 1.4rem;
	}

	.home-links__item.item-big .home-links__item-text {
		font-size: 1.6rem;
		line-height: 2.2rem;
	}

	/* HIGHLIGHT */
	.home-highlight .block_highlight-numbers {
		padding: 60px 0 40px 0;
	}

	/* OVERVIEW */
	.home-overview .container {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.home-overview__info {
		width: 100%;
		margin-bottom: 30px;

		text-align: center;
	}

	a.home-overview__info-video {
		margin-right: auto;
		margin-left: auto;
	}

	.home-overview__image {
		width: 100%;
		margin: 0;
	}

	/* SCHOOLS */
	.home-schools {
		padding: 40px 0;
	}

	.home-schools h2 {
		margin-bottom: 15px;
	}

	.home-schools__description {
		max-width: 400px;
	}

	.home-schools .loop-schools {
		margin-top: 40px;
	}

	/* ARTICLES */
	.layout-wrapper .content-wrapper.home-articles {
		padding-top: 0;

		border: none;
	}

	/* EVENTS */
	.home-events .event-box-loop li {
		margin: 10px 0;
	}
}

@media (max-width: 600px) {
	/* EVENTS */
	.home-events .event-box-loop li {
		width: 100%;
	}
}

@media (max-width: 500px) {
	a.home-links__item,
	.home-links__item.item-big {
		padding: 25px 15px;
	}

	.home-links__item:before {
		height: calc(100% - 50px);
	}

	.home-links__item.item-big {
		width: 100%;
	}

	.home-links__item:nth-child(2):before {
		right: 0;
		bottom: auto;

		width: calc(100% - 50px);
		height: 1px;
		margin: 0 auto;
	}

	.home-links__item:nth-child(2):after {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;

		display: block;

		width: calc(100% - 50px);
		height: 1px;
		margin: 0 auto;

		content: "";

		background: var(--color__white-darker);
	}

	.home-links__item.item-big .home-links__item-title {
		padding-top: 0;
	}

	.home-links__item:nth-child(3):before,
	.home-links__item:nth-child(4):after {
		display: none;
	}
}
