/* Fonts */
@font-face {
	font-family: "Gotham";
	src: url("../font/GothamLight.woff2") format("woff2"),
		url("../font/GothamLight.woff") format("woff");
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Gotham";
	src: url("./font/GothamThin.woff2") format("woff2"),
		url("../font/othamThin.woff") format("woff");
	font-weight: 100;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Gotham";
	src: url("../font/GothamBlack.woff2") format("woff2"),
		url("../font/GothamBlack.woff") format("woff");
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Gotham";
	src: url("../font/GothamBold.woff2") format("woff2"),
		url("../font/GothamBold.woff") format("woff");
	font-weight: bold;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Gotham";
	src: url("../font/GothamMedium.woff2") format("woff2"),
		url("../font/GothamMedium.woff") format("woff");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Gotham";
	src: url("../font/GothamExtraLight.woff2") format("woff2"),
		url("../font/GothamExtraLight.woff") format("woff");
	font-weight: 200;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Gotham Ultra";
	src: url("../font/GothamUltra.woff2") format("woff2"),
		url("../font/GothamUltra.woff") format("woff");
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}

body {
	font-family: "Gotham";
	font-weight: 300;
	color: #101218;
}

.list-style-none {
	list-style: none;
	padding-left: 0;
}

.bg-custom {
	background-color: #fff !important;
	height: 90px;
	border-bottom: 1px solid #e7ebed;

	& .navbar-nav {
		& .nav-link {
			padding: 10px 15px;
		}
		& .active {
			background-color: rgba(45, 47, 147, 0.2);
			color: #2d2f93;
			border-radius: 10px;
			font-weight: 500;
		}
	}
}

.tagger {
	margin-bottom: 10px;
	border-radius: 50px;
	color: #2d2f93;
	font-weight: 500;
	text-transform: uppercase;
}

.article-title-link {
	text-decoration: none;
	font-size: 20px;
	color: #101218;
	font-weight: 500;

	&:hover {
		text-decoration: underline;
	}
}

.btn {
	border-radius: 25px !important;

	&.btn-main {
		background-color: #2d2f93;
	}

	&.btn-readmore {
		text-decoration: none;
		background-color: transparent;
		color: #2d2f93;
		padding: 0;

		&:hover {
			text-decoration: underline;
		}
	}
}

.page-title {
	background-color: #2d2f93;
	color: #fff;
	padding: 50px 0;
	text-align: center;

	& h1 {
		font-size: 25px;
		margin-bottom: 0;

		&.detail-title {
			font-size: 50px;
			margin-bottom: 20px;
		}
	}

	& .breadcrumb {
		margin-bottom: 0;

		& a {
			color: #fff;
		}

		& li {
			color: #e7ebed;
		}
	}
}

section {
	margin: 120px 0;

	& .section-title {
		font-size: 3rem;
	}

	&.with-bg {
		background-color: #e7f6fa; /* Light Blue */
		padding: 50px;
		border-radius: 20px;
	}
	& img {
		border-radius: 20px;
	}
}
.hero {
	margin-top: 20px;
	position: relative;
	width: 100%;
	height: 700px; /* Sesuaikan tinggi hero */
	display: flex;
	padding: 100px 50px;
	border-radius: 20px;
	background: linear-gradient(
		to right,
		rgba(242, 252, 254, 0.9),
		rgba(28, 146, 210, 0.5)
	);
	overflow: hidden;
}

.overlay-gradient {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	border-radius: 20px;
	background: linear-gradient(
		to right,
		rgba(242, 252, 254, 1) 21%,
		transparent
	);
	z-index: 11;
}

.hero-bg {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 90%;
	height: 90%;
	z-index: 1;
}

.hero-content {
	position: relative;
	z-index: 99;
	color: #fff;
	max-width: 500px;
}

.hero h1 {
	font-size: 3.5rem;
	color: #2d2f93;
	font-weight: 900;
}

.hero p {
	font-size: 1rem;
	color: #555;
}

.btn {
	display: inline-block;
	margin-top: 10px;
	padding: 10px 20px;
	background-color: #9c4221;
	color: white;
	text-decoration: none;
	border-radius: 5px;
}

/* Article Card */

.owl-carousel .owl-stage-outer {
	box-shadow: none !important;
}

/* Geser dot navigation ke kiri */
.owl-theme .owl-dots {
	text-align: left !important;
	margin-left: 10px; /* Sesuaikan jika perlu */
}

/* Ubah warna dot yang aktif */
.owl-theme .owl-dots .owl-dot.active span {
	background: #2d2f93 !important;
}

.owl-carousel img {
	box-shadow: none !important;
}

.owl-carousel {
	overflow: hidden;
}

.owl-stage-outer {
	background: transparent;
}

.owl-carousel,
.owl-stage-outer {
	box-shadow: none !important;
}

.card {
	margin-bottom: 20px;
}

.card.hover:hover {
	background-color: #2d2f93;
	color: #fff;
}
.hover-link .card:hover {
	background-color: #2d2f93;
	color: #fff;
	display: block;
}

.article-card {
	display: flex;
	gap: 50px;

	& img {
		flex: 1;
		width: 50% !important;
		height: 350px;
		object-fit: cover;
		border-radius: 20px;
	}

	& .article-content {
		flex: 1;
		width: 50%;
		& h5 {
			font-size: 3rem;
			font-weight: 500;
		}

		& p {
		}
	}

	@media (max-width: 768px) {
		flex-direction: column;
		gap: 20px;

		& img,
		& .article-content {
			width: 100% !important; /* Agar memenuhi lebar layar */
		}

		& img {
			height: 250px; /* Sesuaikan tinggi gambar untuk mobile */
		}

		& .article-content h5 {
			font-size: 2rem; /* Ukuran font lebih kecil di mobile */
		}
	}
}

.map-section {
	width: 100%;
	height: 350px;
	margin-top: 20px;
	border-radius: 20px;

	& .map-iframe {
		width: 100%;
		height: 350;
		border-radius: 20px;
		border: 0;
	}
}

.custom-footer {
	background-color: #2d2f93;
	color: #fff;
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
	padding: 40px 20px;
}
.custom-footer h5 {
	font-weight: 600;
	margin-bottom: 20px;
}
.custom-footer a {
	text-decoration: none;
	color: #fff;
}
.custom-footer a:hover {
	text-decoration: underline;
}

/* Article Meta */
.article-meta {
	list-style-type: none;
	padding-left: 0;
	margin-top: 20px;
	display: flex;
	gap: 30px;

	& li {
		display: flex;
		align-items: center;
		gap: 5px;
	}
	& li i {
		margin-right: 5px;
	}
}

.post-navigation {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 40px auto;
	padding-top: 20px;
	border-top: 1px solid #e7ebed;
	padding-bottom: 20px;
	border-bottom: 1px solid #e7ebed;
}

.prev-post,
.next-post {
	display: flex;
	align-items: center;
	text-decoration: none;
	color: black;
	font-weight: bold;
	gap: 10px;
}

.prev-post img,
.next-post img {
	width: 80px;
	height: 80px;
	object-fit: cover;
	border-radius: 5px;
}

.all-posts {
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	width: 50px;
	height: 50px;
	background: #f5f5f5;
	border-radius: 50%;
	font-size: 24px;
}

.all-posts i {
	color: #ccc;
}
