/**
 * Global
 */
.container {
	max-width: 1216px !important;
}

.btn-with-arrow {
	padding-left: 1.25rem;
	padding-right: 1.25rem;
}

.btn-with-arrow img {
	margin-left: 10px;
	transition: all 0.15s ease-in-out;
}

.btn-with-arrow:hover img {
	transform: translateX(5px);
}

.image-caption {
    color: #B1B1B1;
    display: flex;
    align-items: center;
    position: absolute;
    bottom: 15px;
    right: 15px;
    margin-bottom: 0;
    font-size: 12px;
    line-height: 20px;
    padding-left: 15px;
}

.image-caption__text {
    display: none;
    background-color: #636363;
    border-radius: 4px;
    font-size: 12px;
    line-height: 20px;
    padding: 10px;
    width: calc(100% - 30px);
	max-width: 890px;
	color: #fff;
}

.image-caption svg {
    cursor: pointer;
    margin-left: 10px;
    width: 20px !important;
    height: 20px !important;
}

.hover-zoom-child {
	transition: transform 0.3s ease-in-out;
}

.hover-zoom-parent:hover .hover-zoom-child {
	transform: scale(1.05);
}

/**
 * Footer
 */
#page .footer-bottom {
	padding-top: 24px;
	padding-bottom: 24px;
}

.footer-bottom {
	background-color: #000 !important;
}

@media screen and (min-width: 768px) {

	#page .footer-bottom {
		padding-top: 64px !important;
		padding-bottom: 48px !important;
	}
	
	.footer-sec-col {
		margin-bottom: 0;
	}

	.footer-sections .Social-icon {
		display: inline-flex;
		align-items: center;
	}

	footer .widgettitle {
		font-size: 16px;
		line-height: 24px;
	}

	footer .footer-sections ul li a,
	footer .footer-sections p {
		font-size: 16px;
		line-height: 24px;
		margin-bottom: 12px;
	}

	.foter-menu-title-menus-upper {
		padding-top: 20px;
	}

	footer .wp-block-image img {
		filter: invert(50%) sepia(1%) saturate(740%) hue-rotate(126deg) brightness(85%) contrast(88%);
	}

	footer .wp-block-image img:hover {
		filter: none;
	}
}

/**
 * Homepage
 */
.homepage .space-head {
	margin-top: 72px;
}

.homepage .section-title {
	font-size: 25px;
    line-height: 32px;
	font-weight: 600;
	color: #000;
	padding: 0;
	margin: 0;
}

@media screen and (min-width: 768px) {

	.homepage .section-title {
		font-size: 30px;
		line-height: 38px;
		text-align: center;
	}
}

/* Top Banner */
.homepage .top-banner {
	position: relative;
}

.homepage .top-banner__figure {
	padding-bottom: calc((541 / 400) * 100%);
	position: relative;
}

.homepage .top-banner__figure img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.homepage .top-banner .container {
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	object-fit: cover;
}

.homepage .top-banner__content {
	color: #fff;
}

.homepage .top-banner__title {
	font-size: 25px;
	line-height: 32px;
	font-weight: 600;
	margin-bottom: 12px;
	color: #fff;
}

.homepage .top-banner__desc {
	font-size: 18px;
	line-height: 28px;
}

@media screen and (min-width: 768px) {

	.homepage .top-banner__figure {
		padding-bottom: 400px;
	}

	.homepage .top-banner__title {
		font-size: 30px;
		line-height: 38px;
	}
}

/* Courses Block */
.homepage .courses-block {
	margin-top: 64px;
}

.homepage .courses-block .row {
	gap: 24px;
}

.homepage .courses-block .column {
	max-width: 450px;
	margin: 0 auto;
}

.homepage .courses-block__block {
	position: relative;
	padding-bottom: calc((328 / 343) * 100%);
	border-radius: 5px;
	overflow: hidden;
}

.homepage .courses-block__figure {
	position: absolute;
	width: 100%;
	height: 100%;
}

.homepage .courses-block__figure::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.390625) 55.21%, rgba(0, 0, 0, 0.9) 95.83%);
	z-index: 2;
}

.homepage .courses-block__figure img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 1;
}

.homepage .courses-block__content {
	position: absolute;
	top: auto;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 0 16px 26px;
	color: #fff;
	z-index: 3;
}

.homepage .courses-block__content__category-name {
	text-transform: uppercase;
	font-size: 14px;
	line-height: 18px;
}

.homepage .courses-block__content__title {
	color: #fff;
	font-size: 24px;
	line-height: 32px;
}

.homepage .courses-block__content__authors {
	margin-top: 16px;
}

.homepage .courses-block__content__btn {
	float: none !important;
	margin-top: 16px;
}

@media screen and (min-width: 768px) {

	.homepage .courses-block .row {
		gap: 0;
	}

	.homepage .courses-block .column {
		max-width: 100%;
	}

	.homepage .courses-block__block {
		padding-bottom: calc((494 / 592) * 100%);
	}

	.homepage .courses-block__content {
		padding: 0 32px 26px;
	}

	.homepage .courses-block__content__title {
		max-width: 210px;
		font-size: 30px;
		line-height: 38px;
	}

	.homepage .courses-block__content__btn {
		margin-top: 30px;
	}
}

/* Courses listing */
.homepage .short-courses-wrap {
	padding: 0 !important;
	margin-top: 48px;
	margin-bottom: 48px;
}

.homepage .short-courses-wrap .list-view h5 a {
	font-size: 16px;
}

.homepage .short-courses-wrap .list-view .core-font-14px {
	font-size: 12px;
	line-height: 18px;
	color: #7E7E7E;
}

@media screen and (min-width: 768px) {

	.homepage .short-courses-wrap {
		margin-top: 64px;
		margin-bottom: 64px;
	}

	.homepage .courses-grid-section {
		padding-top: 48px;
	}
}

/* History */
.homepage section.history {
	background: none;
	position: relative;
	padding-top: 32px !important;
	padding-bottom: 32px !important;
	padding-left: 10px;
	padding-right: 10px;
}

.homepage section.history::before {
	width: 100% !important;
	height: 100% !important;
	background-color: rgba( 0, 0, 0, 0.4 );
	z-index: 2;
	top: 0;
	left: 0;
}

.homepage .history__bg-image {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
	object-position: 65%;
	z-index: 1;
}

.homepage .history .container {
	position: relative;
	z-index: 2;
}

.homepage .history__title {
	margin-bottom: 40px;
	font-size: 24px !important;
	line-height: 32px !important;
	padding: 0;
	padding-right: 24px;
}

.homepage .history__details-wrap {
	gap: 32px 0;
	margin-left: -8px;
	margin-right: -8px;
}

.homepage .history__details-wrap .col-6 {
	padding-left: 8px;
	padding-right: 8px;
}

.homepage .history__detail__number {
	font-size: 14px;
	line-height: 20px;
}

.homepage .history__detail__title {
	font-size: 16px;
	line-height: 24px;
	margin-top: 8px;
	font-weight: 600;
}

.homepage .history__detail__desc {
	margin-top: 16px;
	color: #C4C4C4;
}

@media screen and (min-width: 768px) {
	
	.homepage section.history {
		padding-top: 10% !important;
		padding-bottom: 10% !important;
		padding-left: 0;
		padding-right: 0;
	}

	.homepage section.history::before {
		width: 0 !important;
		height: 0 !important;
	}

	.homepage .history__bg-image {
		object-position: center;
	}

	.homepage .history__container-row {
		justify-content: space-between;
		align-items: center;
	}

	.homepage .history__title {
		padding-right: 0;
		margin-bottom: 0;
		font-size: 42px !important;
		line-height: 60px !important;
	}

	.homepage .history__details-wrap {
		gap: 32px 0;
		margin-left: -15px;
		margin-right: -15px;
	}
	
	.homepage .history__details-wrap .col-6 {
		padding-left: 15px;
		padding-right: 15px;
	}
}

@media screen and (min-width: 1200px) {

	.homepage section.history {
		padding-top: 128px !important;
		padding-bottom: 128px !important;
	}
}

/* Why map academy */
.homepage .card-blocks {
	padding-top: 48px;
	padding-bottom: 48px;
}

.homepage .card-blocks__container {
	padding-top: 24px;
	gap: 16px 0;
	margin-left: -8px;
	margin-right: -8px;
}

.homepage .card-blocks__card {
	background-color: #fff;
	padding: 24px;
	width: 100%;
}

.homepage .card-blocks__card .img-wrap img {
	width: 32px;
	height: 32px;
}

.homepage .card-blocks__card .title {
	font-weight: 600;
	margin-top: 1rem;
	font-size: 16px;
	line-height: 24px;
}

@media screen and (min-width: 768px) {

	.homepage .card-blocks {
		padding-top: 64px;
		padding-bottom: 64px;
	}

	.homepage .card-blocks__container {
		padding-top: 48px;
	}

	.homepage .card-blocks__card .desc {
		color: #757575;
		margin-top: 1rem;
		font-size: 16px;
		line-height: 24px;
	}
}

@media screen and (min-width: 992px) {

	.homepage .card-blocks__container {
		margin-left: -16px;
		margin-right: -16px;
	}

	.homepage .card-blocks__card {
		padding-top: 32px;
		padding-bottom: 32px;
	}
}

/* MapAcademy Live */
.homepage .mapacademy-live {
	background-color: #000;
	padding-top: 32px;
	padding-bottom: 50px;
}

.homepage .mapacademy-live__content-wrap {
	color: #fff;
	gap: 60px 0;
}

.homepage .mapacademy-live__logo {
	max-width: 340px;
	width: 100%;
}

.homepage .mapacademy-live__desc {
	margin-top: 38px;
}

.homepage .mapacademy-live__details-wrap {
	gap: 50px 0;
}

.homepage .mapacademy-live__detail-title {
	font-size: 16px;
	line-height: 24px;
	margin-top: 1rem;
}

@media screen and (min-width: 768px) {
	
	.homepage .mapacademy-live {
		padding-top: 10%;
		padding-bottom: 10%;
	}
}

@media screen and (min-width: 1200px) {

	.homepage .mapacademy-live {
		padding-top: 128px;
		padding-bottom: 128px;
	}

	.homepage .mapacademy-live__content-wrap {
		max-width: 1000px;
	}

	.homepage .mapacademy-live__detail {
		display: flex;
	}

	.homepage .mapacademy-live__detail-content {
		max-width: 100px;
		margin: 0 auto;
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.homepage .mapacademy-live__detail-content img {
		flex: 1 0 auto;
	}
}

/* Testimonials */
.homepage .testimonials {
	padding-top: 48px;
	padding-bottom: 48px;
}

.homepage .testimonials__container {
	margin-top: 24px;
}

.homepage .testimonials__block {
	background-color: #fff;
	padding: 32px;
	font-size: 16px;
	line-height: 24px;
}

.homepage .testimonials__description {
	color: #757575;
	padding-top: 62px;
	background-image: url(../images/quote-icon.svg);
	background-repeat: no-repeat;
	background-position: center 0;
	background-size: 30px;
}

.homepage .testimonials__author {
	font-weight: 600;
	margin-top: 32px;
}

.homepage .testimonials__container .owl-nav {
	text-align: center;
	margin-top: 20px;
}

.homepage .testimonials__container .owl-nav .icon {
	font-size: 24px;
}

@media screen and (min-width: 768px) {

	.homepage .testimonials {
		padding-top: 64px;
		padding-bottom: 64px;
	}

	.homepage .testimonials__container .owl-stage,
	.homepage .testimonials__container .owl-item {
		display: flex;
	}
}

@media screen and (min-width: 992px) {

	.homepage .testimonials__container {
		margin-top: 64px;
	}

	.homepage .testimonials__block {
		padding: 48px;
	}
}

@media screen and (min-width: 1200px) {

	.homepage .testimonials__container {
		position: relative;
	}

	.homepage .testimonials__block {
		padding: 72px 64px;
	}

	.homepage .testimonials__container .owl-nav {
		position: absolute;
		transform: translateY(-50%);
		top: 50%;
		left: -40px;
		right: -40px;
		display: flex;
		justify-content: space-between;
	}

	.homepage .testimonials__container .owl-nav button {
		width: auto;
		height: auto;
		line-height: 1;
	}
}
