:root {
	--gpthpp-official-blue: #2f3291;
	--gpthpp-official-blue-dark: #1f226b;
	--gpthpp-official-red: #f03e32;
}

.gpthpp-home {
	background: linear-gradient(180deg, #ffffff 0 320px, #f7f8ff 320px 100%) !important;
}

.gpthpp-hero {
	border-bottom: 1px solid rgba(47, 50, 145, 0.08) !important;
	padding-bottom: 34px !important;
}

.gpthpp-hero .gpthpp-home-container {
	position: relative;
}

.gpthpp-hero .gpthpp-home-container::after {
	background: url("/wp-content/uploads/2026/06/gpg-logo-watermark.png") center / contain no-repeat;
	content: "";
	height: min(360px, 36vw);
	opacity: 0.1;
	pointer-events: none;
	position: absolute;
	right: 24px;
	top: 50%;
	transform: translateY(-50%);
	width: min(360px, 36vw);
	z-index: 0;
}

.gpthpp-hero-copy {
	max-width: 640px !important;
	position: relative;
	z-index: 1;
}

.gpthpp-hero h1 {
	font-size: clamp(40px, 4vw, 56px) !important;
	line-height: 1.1 !important;
}

.gpthpp-hero-intro {
	color: #3f486d !important;
	font-size: 16.5px !important;
	line-height: 1.82 !important;
	max-width: 560px !important;
}

.gpthpp-pillars {
	background: #f3f5ff !important;
	border-bottom: 1px solid rgba(47, 50, 145, 0.08) !important;
	border-top: 1px solid rgba(47, 50, 145, 0.08) !important;
	padding: 46px 0 50px !important;
}

.gpthpp-pillars-heading {
	max-width: 780px !important;
}

.gpthpp-pillars-heading p {
	color: #485174 !important;
	font-size: 16px !important;
	line-height: 1.75 !important;
}

.gpthpp-pillars-grid {
	gap: 20px !important;
}

.gpthpp-pillar-card {
	border: 1px solid rgba(47, 50, 145, 0.12) !important;
	border-left: 5px solid var(--gpthpp-official-red) !important;
	border-top: 0 !important;
	box-shadow: 0 16px 36px rgba(31, 34, 107, 0.08) !important;
	min-height: 0 !important;
	padding: 24px 22px 26px !important;
}

.gpthpp-pillar-card:hover {
	box-shadow: 0 20px 46px rgba(31, 34, 107, 0.12) !important;
}

.gpthpp-pillar-char {
	background: rgba(47, 50, 145, 0.09) !important;
	color: var(--gpthpp-official-blue) !important;
	font-size: 36px !important;
	height: 60px !important;
	margin-bottom: 16px !important;
	width: 60px !important;
}

.gpthpp-pillar-card h3 {
	font-size: 19px !important;
	margin-bottom: 12px !important;
}

.gpthpp-pillar-card p {
	color: #566081 !important;
	font-size: 14.5px !important;
	line-height: 1.75 !important;
}

.gpthpp-pillars-identity {
	background: #ffffff !important;
	border-left: 5px solid var(--gpthpp-official-blue) !important;
	box-shadow: 0 12px 30px rgba(31, 34, 107, 0.06) !important;
	color: #444d72 !important;
	font-size: 15px !important;
	line-height: 1.8 !important;
	margin-top: 22px !important;
	padding: 18px 22px !important;
}

.gpthpp-about {
	background: #ffffff !important;
	padding: 48px 0 0 !important;
}

.gpthpp-about-grid {
	align-items: stretch !important;
	gap: 22px !important;
}

.gpthpp-about-card,
.gpthpp-mission-card {
	border-radius: 18px !important;
	box-shadow: 0 18px 44px rgba(31, 34, 107, 0.08) !important;
}

.gpthpp-about-card {
	border-top: 5px solid var(--gpthpp-official-red) !important;
	padding: 30px 34px !important;
}

.gpthpp-about-card p:not(.gpthpp-section-kicker) {
	color: #46506f !important;
	font-size: 15px !important;
	line-height: 1.85 !important;
}

.gpthpp-about-link {
	margin-top: 20px !important;
}

.gpthpp-mission-card {
	padding: 34px 38px !important;
}

.gpthpp-mission-card p {
	font-size: clamp(18px, 1.65vw, 21px) !important;
	line-height: 1.7 !important;
}

.gpthpp-activities {
	background: #ffffff !important;
	padding: 48px 0 64px !important;
}

.gpthpp-section-heading {
	border-bottom: 1px solid rgba(47, 50, 145, 0.1) !important;
	margin-bottom: 24px !important;
	padding-bottom: 16px !important;
}

.gpthpp-activity-grid {
	gap: 22px !important;
}

.gpthpp-activity-card {
	border-radius: 18px !important;
	box-shadow: 0 16px 38px rgba(31, 34, 107, 0.08) !important;
	display: flex !important;
	flex-direction: column !important;
	overflow: hidden !important;
}

.gpthpp-activity-image {
	height: 176px !important;
}

.gpthpp-activity-body {
	display: flex !important;
	flex: 1 !important;
	flex-direction: column !important;
	padding: 20px !important;
}

.gpthpp-activity-body h3 {
	font-size: 16.5px !important;
	line-height: 1.48 !important;
}

.gpthpp-activity-body p {
	color: #5b6381 !important;
	font-size: 13.5px !important;
	line-height: 1.68 !important;
}

.gpthpp-read-more {
	margin-top: auto !important;
}

@media (max-width: 980px) {
	.gpthpp-pillars-grid,
	.gpthpp-activity-grid,
	.gpthpp-activity-grid.gpthpp-activity-count-3 {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 640px) {
	.gpthpp-hero {
		padding-bottom: 30px !important;
	}

	.gpthpp-hero .gpthpp-home-container::after {
		height: 220px;
		opacity: 0.06;
		right: -34px;
		top: 58%;
		width: 220px;
	}

	.gpthpp-hero h1 {
		font-size: clamp(30px, 8vw, 38px) !important;
	}

	.gpthpp-hero-intro {
		font-size: 15px !important;
		line-height: 1.75 !important;
	}

	.gpthpp-pillars-grid,
	.gpthpp-activity-grid,
	.gpthpp-activity-grid.gpthpp-activity-count-3,
	.gpthpp-about-grid {
		grid-template-columns: 1fr !important;
	}

	.gpthpp-pillars-heading,
	.gpthpp-pillars-identity {
		text-align: left !important;
	}

	.gpthpp-pillar-card,
	.gpthpp-about-card,
	.gpthpp-mission-card {
		padding: 24px 22px !important;
	}

	.gpthpp-activity-image {
		height: 190px !important;
	}
}
