/**
 * Industrial machinery homepage — Corpiva theme extension
 */

/* Hide any residual Gravatar / comment avatars on the public site */
body:not(.wp-admin) img.avatar,
body:not(.wp-admin) .avatar,
body:not(.wp-admin) #wpadminbar img.avatar {
	display: none !important;
}

.industrial-home-page .site-content {
	padding: 0;
}

/* ---------- Hero slider ---------- */
.ih-hero .dt_slider-item {
	position: relative;
	overflow: hidden;
}

.ih-hero .ih-slider-bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.ih-hero .dt_slider-wrapper {
	z-index: 1;
}

.ih-hero .dt_slider-content .title {
	font-size: clamp(3rem, 4.5vw, 5.6rem);
	line-height: 1.2;
}

.ih-hero .dt_slider-content .text {
	font-size: 1.6rem;
	line-height: 1.75;
	max-width: 72rem;
}

/* ---------- Service cards (no dt_service--one overlap) ---------- */
.ih-services {
	background: #fff;
	margin-top: -4rem;
	position: relative;
	z-index: 2;
	padding-top: 0 !important;
}

.ih-service-grid {
	margin-top: 0;
}

.ih-service-card {
	height: 100%;
	padding: 3rem 2.4rem;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 10px 40px rgba(15, 13, 29, 0.08);
	border: 1px solid rgba(15, 13, 29, 0.05);
	text-align: center;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.ih-service-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 48px rgba(15, 13, 29, 0.12);
}

.ih-service-icon {
	width: 64px;
	height: 64px;
	margin: 0 auto 1.6rem;
	border-radius: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(var(--dt-main-rgb), 0.1);
	color: var(--dt-main-color);
	font-size: 2.6rem;
}

.ih-service-title {
	margin: 0 0 1rem;
	font-size: 2rem;
	font-weight: 700;
	color: var(--dt-secondary-color);
}

.ih-service-desc {
	margin: 0;
	font-size: 1.45rem;
	line-height: 1.75;
	color: var(--dt-text-color);
}

/* ---------- Preloader ---------- */
.ih-preloader .dt_preloader-text .splitted {
	font-family: "Microsoft YaHei", "PingFang SC", "Helvetica Neue", Arial, sans-serif;
}

.ih-preloader-label {
	font-family: "Microsoft YaHei", "PingFang SC", sans-serif;
	font-size: 1.5rem !important;
	letter-spacing: 0.15em;
}

/* ---------- Footer ---------- */
#dt_footer .footer-shape {
	display: none;
}

.ih-footer {
	padding: 5rem 0 3rem;
}

.ih-footer-title {
	margin: 0 0 1.2rem;
	font-size: 2.2rem;
	font-weight: 800;
	color: #fff;
}

.ih-footer-brand p {
	margin: 0;
	font-size: 1.45rem;
	line-height: 1.75;
	color: rgba(255, 255, 255, 0.75);
}

.ih-footer-heading {
	margin: 0 0 1.4rem;
	font-size: 1.6rem;
	font-weight: 700;
	color: #fff;
}

.ih-footer-links,
.ih-footer-contact {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ih-footer-links li,
.ih-footer-contact li {
	margin-bottom: 0.8rem;
	font-size: 1.4rem;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.75);
}

.ih-footer-links a,
.ih-footer-contact a {
	color: rgba(255, 255, 255, 0.85);
	text-decoration: none;
}

.ih-footer-links a:hover,
.ih-footer-contact a:hover {
	color: var(--dt-main-color);
}

.ih-footer-contact i {
	width: 18px;
	margin-right: 8px;
	color: var(--dt-main-color);
}

.ih-footer-copy {
	font-size: 1.35rem;
	color: rgba(255, 255, 255, 0.65);
}

.dt_footer_copyright {
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

/* ---------- About ---------- */
.ih-about {
	background: #fff;
}

.ih-about-visual {
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
}

.ih-about-media {
	position: relative;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 12px 48px rgba(15, 13, 29, 0.12);
}

.ih-about-media--main img {
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: 16/10;
	object-fit: cover;
}

.ih-about-honors {
	padding: 1.4rem;
	border-radius: 14px;
	background: var(--dt-gray-color, #f5f5f7);
	border: 1px solid rgba(15, 13, 29, 0.06);
}

.ih-about-honors-label {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	margin-bottom: 1.2rem;
	font-size: 1.4rem;
	font-weight: 700;
	color: var(--dt-secondary-color);
}

.ih-about-honors-label i {
	color: var(--dt-main-color, #df0a0a);
}

.ih-about-honors-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1rem;
}

.ih-about-honor-item {
	margin: 0;
	text-align: center;
}

.ih-about-honor-thumb {
	display: block;
	border-radius: 10px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 4px 16px rgba(15, 13, 29, 0.08);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.ih-about-honor-thumb:hover,
.ih-about-honor-thumb:focus {
	transform: translateY(-3px);
	box-shadow: 0 8px 24px rgba(15, 13, 29, 0.12);
}

.ih-about-honor-thumb img {
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: 4/3;
	object-fit: cover;
}

.ih-about-honor-item figcaption {
	margin-top: 0.8rem;
}

.ih-about-honor-item figcaption strong {
	display: block;
	font-size: 1.25rem;
	line-height: 1.4;
	color: var(--dt-secondary-color);
}

.ih-about-honor-item figcaption span {
	display: block;
	margin-top: 0.2rem;
	font-size: 1.15rem;
	color: var(--dt-text-color);
	opacity: 0.75;
}

.ih-about-highlights {
	list-style: none;
	margin: 0 0 2rem;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem 1.6rem;
}

.ih-about-highlights li {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	font-size: 1.45rem;
	font-weight: 600;
	color: var(--dt-secondary-color);
}

.ih-about-highlights i {
	color: var(--dt-main-color, #df0a0a);
}

.ih-about-badge {
	position: absolute;
	left: 24px;
	bottom: 24px;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px 20px;
	border-radius: 12px;
	background: var(--dt-main-color);
	color: #fff;
	box-shadow: 0 8px 24px rgba(223, 10, 10, 0.35);
}

.ih-about-badge strong {
	font-size: 42px;
	line-height: 1;
	font-weight: 800;
}

.ih-about-badge span {
	font-size: 13px;
	line-height: 1.4;
	font-weight: 600;
}

.ih-about-text p {
	font-size: 1.6rem;
	line-height: 1.85;
	color: var(--dt-text-color);
	margin-bottom: 1.4rem;
}

.ih-mini-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin: 2.4rem 0;
}

.ih-mini-stat {
	flex: 1;
	min-width: 120px;
	padding: 16px;
	border-radius: 12px;
	background: var(--dt-gray-color);
	text-align: center;
}

.ih-mini-stat strong {
	display: block;
	font-size: 2.4rem;
	color: var(--dt-main-color);
	font-weight: 800;
}

.ih-mini-stat span {
	font-size: 1.3rem;
	color: var(--dt-text-color);
}

/* ---------- Counters ---------- */
.ih-counters {
	padding: 5rem 0;
	background: var(--dt-secondary-color);
}

.ih-counter-item {
	text-align: center;
	color: #fff;
}

.ih-counter-item .odometer {
	font-size: 4.8rem;
	font-weight: 800;
	line-height: 1;
	color: #fff;
	font-family: var(--dt-title-family);
}

.ih-counter-suffix {
	font-size: 3.2rem;
	font-weight: 800;
	color: var(--dt-main-color);
}

.ih-counter-item p {
	margin: 1rem 0 0;
	font-size: 1.5rem;
	opacity: 0.85;
}

/* ---------- Product lines & cards ---------- */
.ih-products {
	background: var(--dt-gray-color);
}

.ih-line-card {
	display: block;
	height: 100%;
	padding: 3rem 2.4rem;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 32px rgba(15, 13, 29, 0.06);
	text-decoration: none;
	color: inherit;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.ih-line-card:hover,
.ih-line-card:focus {
	transform: translateY(-6px);
	box-shadow: 0 16px 48px rgba(15, 13, 29, 0.12);
	text-decoration: none;
	color: inherit;
}

.ih-line-icon {
	width: 56px;
	height: 56px;
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(var(--dt-main-rgb), 0.1);
	color: var(--dt-main-color);
	font-size: 2.2rem;
	margin-bottom: 1.6rem;
}

.ih-line-card h3 {
	font-size: 2rem;
	margin: 0 0 1rem;
	font-weight: 700;
}

.ih-line-card p {
	font-size: 1.45rem;
	line-height: 1.7;
	color: var(--dt-text-color);
	margin: 0 0 1.6rem;
}

.ih-line-link {
	font-size: 1.4rem;
	font-weight: 600;
	color: var(--dt-main-color);
}

.ih-product-grid {
	margin-top: 4rem;
}

.ih-product-card {
	height: 100%;
	border-radius: 14px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 6px 28px rgba(15, 13, 29, 0.07);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.ih-product-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 14px 40px rgba(15, 13, 29, 0.12);
}

.ih-product-card a {
	display: block;
	text-decoration: none;
	color: inherit;
}

.ih-product-card-media {
	aspect-ratio: 4/3;
	overflow: hidden;
	background: #f0f0f5;
}

.ih-product-card-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.35s ease;
}

.ih-product-card:hover .ih-product-card-media img {
	transform: scale(1.05);
}

.ih-product-card-body {
	padding: 2rem;
}

.ih-product-card-body h3 {
	font-size: 1.8rem;
	margin: 0 0 0.8rem;
	font-weight: 700;
}

.ih-product-card-body p {
	font-size: 1.4rem;
	line-height: 1.65;
	color: var(--dt-text-color);
	margin: 0 0 1.2rem;
}

.ih-product-card-btn {
	font-size: 1.35rem;
	font-weight: 600;
	color: var(--dt-main-color);
}

.ih-products-more {
	margin-top: 3.2rem;
}

/* ---------- Factory ---------- */
.ih-factory {
	background: #fff;
}

.ih-factory-stats {
	margin-bottom: 3.2rem;
}

.ih-factory-stat {
	padding: 2.4rem;
	border-radius: 14px;
	background: var(--dt-gray-color);
	text-align: center;
	height: 100%;
}

.ih-factory-stat i {
	font-size: 2.8rem;
	color: var(--dt-main-color);
	margin-bottom: 1.2rem;
}

.ih-factory-stat h4 {
	font-size: 1.7rem;
	margin: 0 0 0.6rem;
	font-weight: 700;
}

.ih-factory-stat p {
	margin: 0;
	font-size: 1.4rem;
	color: var(--dt-text-color);
}

.ih-factory-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}

.ih-factory-item {
	position: relative;
	display: block;
	border-radius: 12px;
	overflow: hidden;
	aspect-ratio: 4/3;
}

.ih-factory-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.35s ease;
}

.ih-factory-overlay {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(15, 13, 29, 0.45);
	color: #fff;
	font-size: 2.4rem;
	opacity: 0;
	transition: opacity 0.25s ease;
}

.ih-factory-item:hover .ih-factory-overlay {
	opacity: 1;
}

.ih-factory-item:hover img {
	transform: scale(1.06);
}

/* ---------- Partners wall ---------- */
.ih-partners {
	background: var(--dt-gray-color);
}

.ih-partners-wall {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
	gap: 1.6rem;
	max-width: 110rem;
	margin: 0 auto;
}

.ih-partner-tile {
	position: relative;
}

.ih-partner-tile-inner {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	min-height: 10rem;
	padding: 2rem 2.4rem;
	background: #fff;
	border-radius: 1.2rem;
	border: 1px solid rgba(15, 13, 29, 0.06);
	box-shadow: 0 0.4rem 1.6rem rgba(15, 13, 29, 0.05);
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.ih-partner-tile:hover .ih-partner-tile-inner,
.ih-partner-tile:focus-within .ih-partner-tile-inner {
	transform: translateY(-4px);
	border-color: rgba(var(--dt-main-rgb), 0.18);
	box-shadow: 0 1.2rem 3.2rem rgba(15, 13, 29, 0.1);
}

.ih-partner-tile img {
	display: block;
	max-width: 100%;
	max-height: 5.6rem;
	width: auto;
	height: auto;
	object-fit: contain;
	filter: grayscale(30%) opacity(0.88);
	transition: filter 0.3s ease, transform 0.3s ease;
}

.ih-partner-tile:hover img,
.ih-partner-tile:focus-within img {
	filter: grayscale(0%) opacity(1);
	transform: scale(1.04);
}

/* Staggered heights for photo-wall rhythm on larger grids */
@media (min-width: 768px) {
	.ih-partner-tile:nth-child(6n + 2) .ih-partner-tile-inner,
	.ih-partner-tile:nth-child(6n + 5) .ih-partner-tile-inner {
		min-height: 11.2rem;
	}

	.ih-partner-tile:nth-child(6n + 4) .ih-partner-tile-inner {
		min-height: 9.2rem;
	}
}

/* ---------- Certificates ---------- */
.ih-certificates {
	background: #fff;
}

.ih-honor-badge {
	padding: 2.4rem 1.6rem;
	border-radius: 14px;
	background: linear-gradient(135deg, var(--dt-secondary-color) 0%, #1a1630 100%);
	color: #fff;
	text-align: center;
	height: 100%;
}

.ih-honor-badge i {
	font-size: 2.6rem;
	color: var(--dt-main-color);
	margin-bottom: 1.2rem;
}

.ih-honor-badge h4 {
	font-size: 1.6rem;
	margin: 0 0 0.4rem;
	font-weight: 700;
}

.ih-honor-badge p {
	margin: 0;
	font-size: 1.3rem;
	opacity: 0.8;
}

.ih-honor-badges {
	margin-bottom: 3.2rem;
}

.ih-cert-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
}

.ih-cert-item {
	display: block;
	border-radius: 10px;
	overflow: hidden;
	background: #f8f8fc;
	border: 1px solid rgba(15, 13, 29, 0.06);
	padding: 12px;
	transition: box-shadow 0.25s ease;
}

.ih-cert-item:hover {
	box-shadow: 0 8px 28px rgba(15, 13, 29, 0.1);
}

.ih-cert-item img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: contain;
}

/* ---------- CTA ---------- */
.ih-cta {
	padding: 6rem 0;
	background: linear-gradient(135deg, var(--dt-secondary-color) 0%, #1a1630 100%);
}

.ih-cta-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 2.4rem;
	padding: 4rem;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.ih-cta-content {
	flex: 1;
	min-width: 280px;
	color: #fff;
}

.ih-cta-label {
	display: inline-block;
	font-size: 1.3rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	color: var(--dt-main-color);
	margin-bottom: 1rem;
}

.ih-cta-content h2 {
	font-size: 3.2rem;
	margin: 0 0 1rem;
	color: #fff;
	font-weight: 800;
}

.ih-cta-content p {
	margin: 0;
	font-size: 1.6rem;
	opacity: 0.85;
	max-width: 520px;
}

.ih-cta-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1.2rem;
}

/* ---------- News ---------- */
.ih-news {
	background: var(--dt-gray-color);
}

.ih-news-card {
	height: 100%;
	border-radius: 14px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 6px 28px rgba(15, 13, 29, 0.06);
}

.ih-news-thumb {
	display: block;
	aspect-ratio: 16/10;
	overflow: hidden;
}

.ih-news-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.35s ease;
}

.ih-news-card:hover .ih-news-thumb img {
	transform: scale(1.05);
}

.ih-news-body {
	padding: 2rem;
}

.ih-news-body time {
	font-size: 1.3rem;
	color: var(--dt-main-color);
	font-weight: 600;
}

.ih-news-body h3 {
	font-size: 1.8rem;
	margin: 0.8rem 0;
	font-weight: 700;
}

.ih-news-body h3 a {
	color: var(--dt-secondary-color);
	text-decoration: none;
}

.ih-news-body h3 a:hover {
	color: var(--dt-main-color);
}

.ih-news-body p {
	margin: 0;
	font-size: 1.4rem;
	line-height: 1.7;
	color: var(--dt-text-color);
}

.ih-empty-note {
	font-size: 1.5rem;
	color: var(--dt-text-color);
	opacity: 0.7;
}

/* ---------- Responsive ---------- */
@media (max-width: 991px) {
	.ih-about-honors-grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 0.8rem;
	}

	.ih-about-honor-item figcaption strong {
		font-size: 1.1rem;
	}

	.ih-factory-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.ih-cert-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.ih-cta-inner {
		padding: 2.4rem;
	}

	.ih-cta-content h2 {
		font-size: 2.6rem;
	}
}

@media (max-width: 575px) {
	.ih-about-honors-grid {
		grid-template-columns: 1fr;
	}

	.ih-about-honor-thumb img {
		aspect-ratio: 16/9;
		max-height: 180px;
		object-fit: contain;
		background: #fff;
	}

	.ih-factory-grid,
	.ih-cert-grid {
		grid-template-columns: 1fr;
	}

	.ih-mini-stats {
		flex-direction: column;
	}

	.ih-cta-actions {
		width: 100%;
	}

	.ih-cta-actions .dt-btn {
		width: 100%;
		justify-content: center;
	}
}

/* ---------- Site logo ---------- */
.site--logo .ih-site-logo img {
	width: auto;
	max-width: min(280px, 100%);
	max-height: 5.2rem;
	height: auto;
	display: block;
}

.site--logo .ih-site-logo + .site-description,
.site--logo .site-description {
	display: none;
}

.dt_mobilenav-logo .ih-site-logo img {
	max-width: min(220px, 100%);
	max-height: 4.4rem;
}

/* ---------- Product pages: hide empty theme pagetitle banner ---------- */
body.hcn-product-page #dt_pagetitle {
	display: none !important;
}

/* ---------- Topbar ---------- */
/* Hide Desert Companion demo row: address, duplicate email, social icons */
.dt_header-topbar .dt_header-widget:not(.ih-topbar),
.dt_header-topbar .widget_social,
.dt_header-topbar .widget_contact.address,
.dt_header-topbar > .dt-container:not(.ih-topbar-wrap) {
	display: none !important;
}

.dt_header-topbar .ih-topbar-wrap {
	width: 100%;
}

.ih-topbar {
	display: flex !important;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	min-height: 0;
	padding: 0.9rem 0;
	gap: 1.6rem;
}

.ih-topbar .widget--left,
.ih-topbar .widget--right {
	width: auto !important;
	min-height: 0 !important;
	flex: 0 1 auto;
	display: inline-flex !important;
	align-items: center;
	flex-wrap: nowrap;
}

.ih-topbar .widget--left {
	justify-content: flex-start;
	margin-right: auto;
}

.ih-topbar .widget--right {
	justify-content: flex-end;
	margin-left: auto;
}

.ih-topbar .widget {
	padding: 0 1.2rem;
}

.ih-topbar .widget--left .widget {
	padding-left: 0;
}

.ih-topbar .widget--right .widget:last-child {
	padding-right: 0;
}

.ih-topbar .widget:not(:last-child):after {
	top: 50%;
	min-height: 2.4rem;
	transform: translateY(-50%);
}

.ih-topbar .contact__list {
	display: flex;
	align-items: center;
	gap: 0.8rem;
}

.ih-topbar .contact__list i {
	font-size: 1.5rem;
	line-height: 1;
}

.ih-topbar-phones {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 0 2rem;
}

.ih-topbar-phone-item {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	white-space: nowrap;
}

.ih-topbar-phone-item strong {
	font-size: 1.35rem;
	font-weight: 600;
	opacity: 0.9;
}

.ih-topbar-phone-item a,
.ih-topbar .widget_contact.email a,
.ih-topbar .widget_contact.time span {
	font-size: 1.45rem;
	color: inherit;
}

.ih-topbar .widget_contact.email a:hover,
.ih-topbar .widget_contact.email a:focus,
.ih-topbar-phone-item a:hover,
.ih-topbar-phone-item a:focus {
	color: #fff;
	opacity: 1;
}

.ih-header-quote-btn {
	display: inline-flex !important;
	align-items: center;
	gap: 0.6rem;
	white-space: nowrap;
}

.ih-header-quote-btn i {
	font-size: 1.4rem;
	line-height: 1;
}

@media (max-width: 991px) {
	.ih-topbar {
		flex-wrap: wrap;
		justify-content: center;
		row-gap: 0.6rem;
	}

	.ih-topbar .widget--left,
	.ih-topbar .widget--right {
		margin: 0;
		justify-content: center;
	}

	.ih-topbar-phones {
		flex-wrap: wrap;
		justify-content: center;
	}
}

/* ---------- Inner pages ---------- */
.ih-page-hero {
	position: relative;
	padding: 6rem 0 5rem;
	background-size: cover;
	background-position: center;
	color: #fff;
}

.ih-page-hero-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(20, 24, 28, 0.88), rgba(20, 24, 28, 0.55));
}

.ih-page-hero-inner {
	position: relative;
	z-index: 1;
}

.ih-page-hero-kicker {
	display: inline-block;
	margin-bottom: 0.8rem;
	font-size: 1.4rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	opacity: 0.9;
}

.ih-page-hero-title {
	margin: 0 0 1.2rem;
	font-size: clamp(2.8rem, 4vw, 4.2rem);
	font-weight: 700;
	color: #fff;
}

.ih-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
	align-items: center;
	font-size: 1.4rem;
}

.ih-breadcrumb a {
	color: #fff;
	opacity: 0.9;
}

.ih-breadcrumb a:hover,
.ih-breadcrumb a:focus {
	opacity: 1;
	color: #fff;
}

.ih-page-heading span {
	display: inline-block;
	margin-bottom: 0.6rem;
	font-size: 1.4rem;
	font-weight: 600;
	color: var(--dt-main-color, #df0a0a);
}

.ih-page-heading h2 {
	margin: 0 0 1.6rem;
	font-size: clamp(2.2rem, 3vw, 3rem);
	line-height: 1.35;
	color: var(--dt-secondary-color);
}

.ih-page-heading--center {
	text-align: center;
	max-width: 78rem;
	margin: 0 auto 3.2rem;
}

.ih-page-lead {
	margin: 1rem auto 0;
	max-width: 64rem;
	font-size: 1.5rem;
	line-height: 1.8;
	color: var(--dt-text-color);
}

.ih-page-prose p {
	font-size: 1.5rem;
	line-height: 1.85;
	color: var(--dt-text-color);
}

.ih-page-media img {
	width: 100%;
	border-radius: 0.8rem;
	box-shadow: 0 1.2rem 3rem rgba(0, 0, 0, 0.12);
}

.ih-stat-card,
.ih-value-card,
.ih-honor-card {
	height: 100%;
	padding: 2.4rem;
	border-radius: 0.8rem;
	background: #fff;
	box-shadow: 0 0.6rem 2rem rgba(0, 0, 0, 0.06);
	text-align: center;
}

.ih-about-stats {
	padding: 3rem 0;
	background: var(--dt-secondary-color);
}

.ih-about-stats .ih-stat-card strong {
	display: block;
	margin-bottom: 0.4rem;
	font-size: 3rem;
	color: var(--dt-main-color, #df0a0a);
}

.ih-about-stats .ih-stat-card span {
	font-size: 1.4rem;
	color: var(--dt-text-color);
}

.ih-timeline {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.6rem;
}

.ih-timeline-item {
	padding: 1.8rem 2rem;
	border-left: 0.3rem solid var(--dt-main-color, #df0a0a);
	background: #f8f8f8;
	border-radius: 0 0.6rem 0.6rem 0;
}

.ih-timeline-year {
	margin-bottom: 0.6rem;
	font-size: 1.8rem;
	font-weight: 700;
	color: var(--dt-main-color, #df0a0a);
}

.ih-timeline-item p {
	margin: 0;
	font-size: 1.45rem;
	line-height: 1.7;
}

.ih-value-icon {
	width: 5rem;
	height: 5rem;
	margin: 0 auto 1.2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(223, 10, 10, 0.1);
	color: var(--dt-main-color, #df0a0a);
	font-size: 2rem;
}

.ih-value-card h3,
.ih-honor-card h3 {
	margin: 0 0 0.8rem;
	font-size: 1.7rem;
}

.ih-value-card p {
	margin: 0;
	font-size: 1.4rem;
	line-height: 1.7;
	color: var(--dt-text-color);
}

.ih-honor-card i {
	font-size: 2.4rem;
	color: var(--dt-main-color, #df0a0a);
	margin-bottom: 1rem;
}

.ih-honor-card span {
	font-size: 1.3rem;
	color: var(--dt-text-color);
	opacity: 0.75;
}

/* ---------- About — exhibition rows ---------- */
.ih-expo-intro {
	background: #fff;
}

.ih-expo-row {
	background: #fff;
}

.ih-expo-row--alt {
	background: #f7f4f4;
}

.ih-expo-row--reverse .ih-expo-content {
	order: 2;
}

.ih-expo-row--reverse .ih-expo-media {
	order: 1;
}

.ih-expo-kicker {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	margin-bottom: 1rem;
	font-size: 1.35rem;
	font-weight: 600;
	color: var(--dt-main-color, #df0a0a);
}

.ih-expo-kicker i {
	font-size: 1.5rem;
}

.ih-expo-title {
	margin: 0 0 1.4rem;
	font-size: clamp(2rem, 2.8vw, 2.6rem);
	line-height: 1.35;
	color: var(--dt-secondary-color);
	font-weight: 700;
}

.ih-expo-text {
	margin: 0 0 1.6rem;
	font-size: 1.5rem;
	line-height: 1.85;
	color: var(--dt-text-color);
}

.ih-expo-bullets {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ih-expo-bullets li {
	position: relative;
	padding-left: 1.6rem;
	margin-bottom: 0.9rem;
	font-size: 1.45rem;
	line-height: 1.7;
	color: var(--dt-text-color);
}

.ih-expo-bullets li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0.75rem;
	width: 0.55rem;
	height: 0.55rem;
	border-radius: 50%;
	background: var(--dt-main-color, #df0a0a);
}

.ih-expo-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.2rem;
}

.ih-expo-grid-item {
	display: block;
	border-radius: 0.8rem;
	overflow: hidden;
	aspect-ratio: 4/3;
	box-shadow: 0 0.8rem 2.4rem rgba(0, 0, 0, 0.08);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.ih-expo-grid-item:hover,
.ih-expo-grid-item:focus {
	transform: translateY(-4px);
	box-shadow: 0 1.2rem 3.2rem rgba(0, 0, 0, 0.12);
}

.ih-expo-grid-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.35s ease;
}

.ih-expo-grid-item:hover img {
	transform: scale(1.04);
}

.ih-expo-empty {
	padding: 3rem 2rem;
	border-radius: 0.8rem;
	background: #f0f0f5;
	text-align: center;
}

.ih-expo-empty p {
	margin: 0;
	font-size: 1.4rem;
	color: var(--dt-text-color);
}

.ih-page-section.ih-certificates {
	background: var(--dt-gray-color);
}

.ih-page-cta {
	padding: 4rem 0;
	background: linear-gradient(135deg, var(--dt-secondary-color), #2a3038);
}

.ih-page-cta-inner {
	padding: 3rem;
	text-align: center;
	color: #fff;
	border-radius: 0.8rem;
	background: rgba(255, 255, 255, 0.04);
}

.ih-page-cta-inner h2 {
	margin: 0 0 1rem;
	font-size: 2.6rem;
	color: #fff;
}

.ih-page-cta-inner p {
	margin: 0 0 2rem;
	font-size: 1.5rem;
	opacity: 0.9;
}

.ih-page-cta-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	justify-content: center;
}

.ih-news-card--page .ih-news-more {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	margin-top: 0.8rem;
	font-size: 1.4rem;
	font-weight: 600;
	color: var(--dt-main-color, #df0a0a);
}

.ih-pagination {
	margin-top: 3rem;
	text-align: center;
}

.ih-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 3.6rem;
	height: 3.6rem;
	margin: 0 0.3rem;
	padding: 0 1rem;
	border-radius: 0.4rem;
	background: #f3f3f3;
	color: var(--dt-secondary-color);
}

.ih-pagination .page-numbers.current,
.ih-pagination .page-numbers:hover {
	background: var(--dt-main-color, #df0a0a);
	color: #fff;
}

.ih-empty-state {
	max-width: 52rem;
	margin: 0 auto;
	padding: 4rem 2rem;
	text-align: center;
	background: #f8f8f8;
	border-radius: 0.8rem;
}

.ih-empty-state i {
	font-size: 3.6rem;
	color: var(--dt-main-color, #df0a0a);
	margin-bottom: 1.2rem;
}

.ih-contact-cards {
	list-style: none;
	margin: 2rem 0 0;
	padding: 0;
	display: grid;
	gap: 1.2rem;
}

.ih-contact-card {
	display: flex;
	gap: 1.2rem;
	align-items: flex-start;
	padding: 1.6rem;
	border-radius: 0.6rem;
	background: #f8f8f8;
}

.ih-contact-card i {
	font-size: 2rem;
	color: var(--dt-main-color, #df0a0a);
	margin-top: 0.2rem;
}

.ih-contact-card strong {
	display: block;
	margin-bottom: 0.3rem;
	font-size: 1.4rem;
}

.ih-contact-card a,
.ih-contact-card span {
	font-size: 1.45rem;
	color: var(--dt-text-color);
}

.ih-contact-form-wrap {
	padding: 2.4rem;
	border-radius: 0.8rem;
	background: #fff;
	box-shadow: 0 0.8rem 2.4rem rgba(0, 0, 0, 0.08);
}

.ih-contact-form-wrap h3 {
	margin: 0 0 0.6rem;
	font-size: 2rem;
}

.ih-contact-form-lead {
	margin: 0 0 1.6rem;
	font-size: 1.45rem;
	color: var(--dt-text-color);
}

.ih-section-lead {
	max-width: 64rem;
	margin: 1rem auto 0;
	font-size: 1.5rem;
	line-height: 1.75;
	color: var(--dt-text-color);
}

.ih-news-more-wrap {
	margin-top: 2.4rem;
}

/* ---------- Single post (news article) ---------- */
.single .entry-content .ih-news-figure {
	margin: 2.4rem 0;
}

.single .entry-content .ih-news-figure img {
	width: 100%;
	height: auto;
	border-radius: 0.8rem;
	box-shadow: 0 0.8rem 2.4rem rgba(0, 0, 0, 0.08);
}

.single .entry-content .ih-news-figure figcaption {
	margin-top: 0.8rem;
	font-size: 1.35rem;
	color: var(--dt-text-color);
	opacity: 0.8;
	text-align: center;
}

.single .entry-content h2 {
	margin: 2.4rem 0 1.2rem;
	font-size: 2.2rem;
	line-height: 1.4;
	color: var(--dt-secondary-color);
}

.single .entry-content p,
.single .entry-content li {
	font-size: 1.5rem;
	line-height: 1.85;
}

.single .entry-content ul {
	margin: 1.2rem 0 1.6rem;
	padding-left: 1.6rem;
}

@media (max-width: 991px) {
	.ih-partners-wall {
		grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
		gap: 1.2rem;
	}

	.ih-partner-tile-inner {
		min-height: 8.8rem;
		padding: 1.6rem 1.8rem;
	}

	.ih-partner-tile:nth-child(n) .ih-partner-tile-inner {
		min-height: 8.8rem;
	}

	.ih-timeline {
		grid-template-columns: 1fr;
	}

	.ih-expo-row--reverse .ih-expo-content,
	.ih-expo-row--reverse .ih-expo-media {
		order: unset;
	}

	.ih-expo-grid {
		margin-top: 2rem;
	}

	.ih-page-hero {
		padding: 4.5rem 0 3.5rem;
	}
}
