/*
 * Modern Home — extras for the Elementor header, footer and page template.
 * Colours, fonts and spacing live in Elementor; this file only adds effects
 * Elementor can't express natively (sticky blur header, badges, marquee, hovers).
 * Everything is keyed to the mhe-* CSS classes set on the Elementor elements.
 */

/* ---------- Shared ---------- */
.mhe .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.mhe .elementor-heading-title em { font-style: italic; }

.mhe .mhe-btn .elementor-button { transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease, border-color .2s ease; }
.mhe .mhe-btn .elementor-button:hover { transform: translateY(-2px); box-shadow: 0 10px 24px -10px rgba(18, 56, 44, .6); }

.mhe .mhe-kicker { margin-bottom: 10px; }
.mhe .mhe-kicker .elementor-heading-title::before {
	content: ""; display: inline-block; width: 22px; height: 2px; margin-right: 10px;
	background: #7cc47f; vertical-align: middle;
}

.mhe .mhe-links { display: flex; flex-wrap: wrap; gap: 14px 28px; margin: 20px 0 0; }
.mhe .mhe-links .mhe-link {
	display: inline-flex; align-items: center; gap: .4em;
	font-weight: 600; color: #12382c; text-decoration: none;
	border-bottom: 2px solid #7cc47f; padding-bottom: 2px;
	transition: gap .2s ease, color .2s ease;
}
.mhe .mhe-links .mhe-link::after { content: "→"; }
.mhe .mhe-links .mhe-link:hover { gap: .7em; color: #1d4d3d; }

.mhe .mhe-mark {
	display: inline-grid; place-items: center; flex: none;
	width: 42px; height: 42px; border-radius: 12px;
	background: #12382c; color: #7cc47f;
	font-size: 15px; letter-spacing: .04em;
}
.mhe .mhe-brand .elementor-heading-title,
.mhe .mhe-brand .elementor-heading-title a { display: inline-flex; align-items: center; gap: 12px; color: inherit; }

/* ---------- Header ---------- */
/* Site "Additional CSS" adds body margin for the old header, and Astra's
   body overflow-x:hidden breaks position:sticky — undo both where this header is used. */
body:has(.mhe-header) { margin-top: 0; overflow: visible; overflow-x: clip; }
#masthead:has(.mhe-header),
header:has(> .elementor .mhe-header) { position: sticky; top: 0; z-index: 999; }
.admin-bar #masthead:has(.mhe-header) { top: 32px; }
@media (max-width: 782px) { .admin-bar #masthead:has(.mhe-header) { top: 0; } }

.mhe.mhe-header {
	-webkit-backdrop-filter: saturate(160%) blur(12px);
	backdrop-filter: saturate(160%) blur(12px);
	box-shadow: 0 1px 0 rgba(228, 224, 212, .9);
}
/* "Site under construction" badge beside the brand */
.mhe .e-con.mhe-brand-group { --width: auto !important; width: auto !important; flex: 0 0 auto; flex-wrap: nowrap; }
.mhe-header .e-con:has(> .elementor-widget.mhe-nav) { --width: auto !important; width: auto !important; flex: 1 1 auto; min-width: 0; }
.mhe .mhe-brand .elementor-heading-title { white-space: nowrap; }
.mhe .mhe-uc { flex: none; }
.mhe .mhe-uc .elementor-heading-title {
	display: inline-flex; align-items: center; gap: 8px; white-space: nowrap;
	padding: 6px 12px; border-radius: 999px;
	background: #fdf1dc; box-shadow: inset 0 0 0 1px #f0d4a3;
}
.mhe .mhe-uc__dot {
	width: 8px; height: 8px; border-radius: 50%; background: #e6a23c;
	box-shadow: 0 0 0 0 rgba(230, 162, 60, .6); animation: mhe-uc-pulse 2s ease-out infinite;
}
@keyframes mhe-uc-pulse { 70% { box-shadow: 0 0 0 7px rgba(230, 162, 60, 0); } 100% { box-shadow: 0 0 0 0 rgba(230, 162, 60, 0); } }
@media (prefers-reduced-motion: reduce) { .mhe .mhe-uc__dot { animation: none; } }
/* Small tag tucked under the name, all screen sizes */
.mhe .e-con.mhe-brand-group { --flex-direction: column; flex-direction: column; align-items: flex-start; --gap: 3px; gap: 3px; padding-left: 54px; }
.mhe .mhe-brand-group .mhe-brand .elementor-heading-title { margin-left: -54px; }
.mhe .mhe-uc .elementor-heading-title { padding: 2px 9px; font-size: 11px; gap: 6px; }
.mhe .mhe-uc__dot { width: 6px; height: 6px; }
/* Keep the header on one row */
.mhe.mhe-header > .e-con-inner { flex-wrap: nowrap; }
.mhe-header .e-con:has(> .elementor-widget.mhe-nav) { flex-wrap: nowrap; justify-content: flex-end; }
@media (min-width: 1025px) { .mhe .mhe-nav .hfe-nav-menu { flex-wrap: nowrap; } }
.mhe-header .e-con:has(> .elementor-widget.mhe-nav) > .mhe-btn { flex: none; }
@media (max-width: 1024px) { .mhe-header .elementor-widget.mhe-nav { flex: 0 0 auto; width: auto; } }
.mhe .mhe-nav .hfe-nav-menu > .menu-item > a, .mhe .mhe-nav .hfe-nav-menu > .menu-item > .hfe-has-submenu-container > a { white-space: nowrap; }
@media (min-width: 1025px) and (max-width: 1240px) {
	.mhe .mhe-nav .hfe-nav-menu > .menu-item > .hfe-menu-item, .mhe .mhe-nav .hfe-nav-menu > .menu-item > .hfe-has-submenu-container > .hfe-menu-item { padding-left: 10px !important; padding-right: 10px !important; font-size: 14px; }
}
/* Menu: Header & Footer Builder "Navigation Menu" widget */
@media (min-width: 1025px) {
	.mhe .mhe-nav .hfe-nav-menu > .menu-item > .hfe-menu-item,
	.mhe .mhe-nav .hfe-nav-menu > .menu-item > .hfe-has-submenu-container > .hfe-menu-item { border-radius: 999px; transition: background-color .2s ease, color .2s ease; }
	.mhe .mhe-nav .hfe-nav-menu .sub-menu {
		padding: 8px; border-radius: 16px;
		box-shadow: 0 20px 50px -20px rgba(18, 56, 44, .35), 0 0 0 1px #e4e0d4;
	}
	.mhe .mhe-nav .hfe-nav-menu .sub-menu .hfe-sub-menu-item { border-radius: 10px; }
}
.mhe .mhe-nav .hfe-nav-menu__toggle .hfe-nav-menu-icon { border-radius: 12px; padding: 10px; }
@media (max-width: 1024px) {
	.mhe .mhe-nav nav.hfe-dropdown {
		margin-top: 12px; border-radius: 16px; overflow: hidden;
		box-shadow: 0 20px 40px -24px rgba(0, 0, 0, .35), 0 0 0 1px #e4e0d4;
	}
}

/* ---------- Hero ---------- */
.elementor-element.mhe-hero {
	background-image:
		radial-gradient(900px 500px at 85% 10%, rgba(124, 196, 127, .22), transparent 60%),
		radial-gradient(700px 400px at 0% 100%, rgba(230, 162, 60, .12), transparent 60%);
}
.mhe .mhe-eyebrow .elementor-heading-title {
	display: inline-flex; align-items: center; gap: 10px;
	padding: 8px 16px; border-radius: 999px;
	background: #fff; box-shadow: 0 0 0 1px #e4e0d4;
}
.mhe .mhe-dot { width: 8px; height: 8px; border-radius: 50%; background: #7cc47f; box-shadow: 0 0 0 4px rgba(124, 196, 127, .25); }
.mhe .mhe-hero-title em { color: #1d4d3d; background: linear-gradient(transparent 62%, rgba(124, 196, 127, .45) 62%); }
.mhe .mhe-lead { max-width: 560px; }

.mhe .mhe-hero-media { position: relative; }
.mhe .elementor-widget.mhe-badge { position: absolute; z-index: 2; width: auto; max-width: none; margin: 0; }
.mhe .mhe-badge,
.mhe .mhe-badge > .elementor-widget-container { display: flex; align-items: center; gap: 12px; }
.mhe .elementor-widget.mhe-badge {
	padding: 14px 18px; border-radius: 16px; background: #fff;
	box-shadow: 0 20px 40px -20px rgba(18, 56, 44, .45), 0 0 0 1px #e4e0d4;
}
.mhe .mhe-badge strong { color: #12382c; }
.mhe .mhe-badge--a { left: -20px; bottom: 64px; }
.mhe .mhe-badge--b { right: -20px; top: 40px; }
.mhe .mhe-badge__icon {
	display: grid; place-items: center; flex: none;
	width: 38px; height: 38px; border-radius: 10px;
	background: #e3f1df; font-size: 18px;
}

.mhe .mhe-stats { overflow: hidden; }
.mhe .mhe-stat + .mhe-stat { border-left: 1px solid #e4e0d4; }

/* ---------- Marquee ---------- */
.mhe .mhe-marquee { overflow: hidden; color: #fff; }
.mhe .mhe-marquee__track { display: flex; width: max-content; animation: mhe-marquee 40s linear infinite; }
.mhe .mhe-marquee ul { display: flex; margin: 0; padding: 0; list-style: none; }
.mhe .mhe-marquee li {
	display: inline-flex; align-items: center; gap: 28px; padding-right: 28px;
	white-space: nowrap; font-family: "Fraunces", Georgia, serif; font-size: 20px; line-height: 1.4;
}
.mhe .mhe-marquee li::after { content: "✦"; color: #7cc47f; font-size: 14px; }
@keyframes mhe-marquee { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .mhe .mhe-marquee__track { animation: none; } }

/* ---------- About ---------- */
.mhe .e-con.mhe-about-media { position: relative; }
.mhe .e-con.mhe-about-media::before {
	content: ""; position: absolute; inset: 28px -28px -28px 28px; z-index: 0;
	border-radius: 20px; background: #e3f1df;
}
.mhe .mhe-about-media > .elementor-widget { position: relative; z-index: 1; }

/* ---------- Work ---------- */
.elementor-element.mhe-work { position: relative; overflow: hidden; }
.elementor-element.mhe-work::after {
	content: ""; position: absolute; width: 640px; height: 640px; right: -200px; top: -240px;
	border-radius: 50%; pointer-events: none;
	background: radial-gradient(circle, rgba(124, 196, 127, .18), transparent 70%);
}
.mhe-work > .e-con-inner { position: relative; z-index: 1; }
.mhe .mhe-card { transition: transform .25s ease, box-shadow .25s ease; }
.mhe .mhe-card:hover { transform: translateY(-4px); box-shadow: inset 0 0 0 1px rgba(124, 196, 127, .45); }
.mhe .mhe-num { margin-bottom: 24px; }
.mhe .mhe-num .elementor-heading-title {
	display: inline-block; padding: 4px 12px; border-radius: 999px;
	box-shadow: inset 0 0 0 1px rgba(124, 196, 127, .4);
}

/* ---------- Global roles ---------- */
.mhe .mhe-role { transition: transform .25s ease, box-shadow .25s ease; }
.mhe .mhe-role:hover { transform: translateY(-4px); box-shadow: 0 0 0 1px #7cc47f, 0 24px 48px -28px rgba(18, 56, 44, .45); }
.mhe .mhe-tag { margin-bottom: 6px; }
.mhe .mhe-tag .elementor-heading-title { display: inline-block; padding: 5px 12px; border-radius: 999px; background: #e3f1df; }

/* ---------- Writing rows ---------- */
.mhe .e-con.mhe-row { text-decoration: none; transition: background-color .2s ease, padding .2s ease; }
.mhe .e-con.mhe-row:hover { background-color: rgba(255, 255, 255, .6); --padding-left: 14px; --padding-right: 14px; }
.mhe .mhe-arrow { flex: none; }
.mhe .mhe-arrow .elementor-heading-title {
	display: grid; place-items: center; width: 40px; height: 40px;
	border-radius: 50%; background: #12382c;
}

/* ---------- CTA ---------- */
.elementor-element.mhe-cta {
	background-image:
		radial-gradient(600px 300px at 100% 0%, rgba(124, 196, 127, .35), transparent 60%),
		linear-gradient(135deg, #12382c 0%, #1d4d3d 100%) !important;
}

/* ---------- Footer ---------- */
.mhe .mhe-footer-links { margin: 0; }
.mhe .mhe-footer-links a { display: block; padding: 4px 0; color: rgba(255, 255, 255, .7); text-decoration: none; transition: color .2s ease; }
.mhe .mhe-footer-links a:hover { color: #fff; }
.mhe .mhe-footer-tag { max-width: 320px; }

/* ---------- Biography ---------- */
.mhe .mhe-facts .mhe-fact { border-bottom: 1px solid #e4e0d4; }
.mhe .mhe-facts .mhe-fact:nth-last-child(-n+2) { border-bottom: 0; }

.mhe .mhe-quote em { color: #7cc47f; }

.mhe .e-con.mhe-toc { position: sticky; top: 110px; align-self: flex-start; }
.admin-bar .mhe .e-con.mhe-toc { top: 142px; }
.mhe .mhe-toc-list { margin: 0; padding: 0; list-style: none; border-left: 2px solid #e4e0d4; }
.mhe .mhe-toc-list a {
	display: block; margin-left: -2px; padding: 8px 0 8px 18px;
	border-left: 2px solid transparent; color: #5b6862; text-decoration: none; font-weight: 500;
	transition: color .2s ease, border-color .2s ease;
}
.mhe .mhe-toc-list a:hover { color: #12382c; border-left-color: #7cc47f; }
.mhe .mhe-social .elementor-social-icon { transition: transform .2s ease, opacity .2s ease; }
.mhe .mhe-social .elementor-social-icon:hover { transform: translateY(-2px); opacity: .9; }

.mhe [id^="bio-"] { scroll-margin-top: 110px; }
.mhe .mhe-chapter + .mhe-chapter { border-top: 1px solid #e4e0d4; padding-top: 48px; }
.mhe .mhe-chapter strong { color: #12382c; font-weight: 600; }

.mhe .mhe-chips { display: flex; flex-wrap: wrap; gap: 10px; margin: 4px 0 8px; }
.mhe .mhe-chips span {
	display: inline-block; padding: 8px 16px; border-radius: 999px;
	background: #e3f1df; color: #12382c; font-weight: 600; line-height: 1.3;
}

.mhe .mhe-callout { box-shadow: inset 4px 0 0 #7cc47f; }
.mhe .mhe-num--inline { margin-bottom: 0; flex: none; }
.mhe .mhe-icon-tile { flex: none; }
.mhe .mhe-icon-tile .mhe-badge__icon { width: 48px; height: 48px; border-radius: 14px; font-size: 22px; }

.mhe .mhe-video .elementor-wrapper { border-radius: 20px; overflow: hidden; box-shadow: 0 30px 60px -30px rgba(18, 56, 44, .5); }

/* ---------- Contact ---------- */
.mhe .mhe-contact-card .mhe-tag { margin-bottom: 0; }
.mhe .mhe-mail-wrap { margin-top: auto; padding-top: 6px; }
.mhe .mhe-mail {
	display: inline-flex; align-items: center; gap: .4em; max-width: 100%;
	font-weight: 600; color: #12382c; text-decoration: none; word-break: break-all;
	border-bottom: 2px solid #7cc47f; padding-bottom: 2px;
	transition: gap .2s ease, color .2s ease;
}
.mhe .mhe-mail::after { content: "→"; }
.mhe .mhe-mail:hover { gap: .7em; color: #1d4d3d; }

/* Contact Form 7 inside the form card */
.mhe .mhe-form .wpcf7-form { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 20px; }
.mhe .mhe-form .wpcf7-form > * { grid-column: 1 / -1; margin: 0; }
.mhe .mhe-form .wpcf7-form > p:nth-of-type(1),
.mhe .mhe-form .wpcf7-form > p:nth-of-type(2) { grid-column: auto; }
.mhe .mhe-form .wpcf7-form > fieldset.hidden-fields-container { display: none; }
.mhe .mhe-form label { display: block; font-size: 14px; font-weight: 600; color: #12382c; line-height: 1.4; }
.mhe .mhe-form .wpcf7-form-control-wrap { display: block; margin-top: 8px; }
.mhe .mhe-form input[type="text"],
.mhe .mhe-form input[type="email"],
.mhe .mhe-form input[type="tel"],
.mhe .mhe-form textarea {
	width: 100%; padding: 14px 16px; border: 1px solid #e4e0d4; border-radius: 12px;
	background: #faf7f0; color: #1b2420; font: 400 16px/1.5 "Inter", system-ui, sans-serif;
	box-shadow: none; transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.mhe .mhe-form textarea { min-height: 150px; resize: vertical; }
.mhe .mhe-form input:focus,
.mhe .mhe-form textarea:focus { outline: none; background: #fff; border-color: #7cc47f; box-shadow: 0 0 0 4px rgba(124, 196, 127, .22); }
.mhe .mhe-form input[type="submit"] {
	display: inline-flex; align-items: center; padding: 15px 34px; border: 0; border-radius: 999px;
	background: #12382c; color: #fff; font: 600 16px/1 "Inter", system-ui, sans-serif; cursor: pointer;
	transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.mhe .mhe-form input[type="submit"]:hover { background: #1d4d3d; transform: translateY(-2px); box-shadow: 0 10px 24px -10px rgba(18, 56, 44, .6); }
.mhe .mhe-form .wpcf7-spinner { vertical-align: middle; }
.mhe .mhe-form .wpcf7-not-valid-tip { font-size: 13px; margin-top: 6px; }
.mhe .mhe-form .wpcf7-response-output { margin: 0 !important; padding: 12px 16px !important; border-radius: 12px; font-size: 15px; }

/* ---------- Work & Impact ---------- */
.mhe .mhe-jump { display: grid; grid-template-columns: repeat(6, 1fr); gap: 1px; border-radius: 20px; background: #e4e0d4; border: 1px solid #e4e0d4; overflow: hidden; }
.mhe .mhe-jump a {
	display: flex; flex-direction: column; gap: 4px; padding: 18px 20px;
	background: #fff; color: #12382c; font-weight: 600; line-height: 1.3; text-decoration: none;
	transition: background-color .2s ease;
}
.mhe .mhe-jump a:hover { background: #e3f1df; }
.mhe .mhe-jump b { font-family: "Fraunces", Georgia, serif; font-weight: 500; font-size: 14px; color: #7cc47f; }

.mhe [id^="impact-"] { scroll-margin-top: 90px; }
.mhe .mhe-area + .mhe-area { border-top: 1px solid #e4e0d4; }
.mhe .e-con.mhe-area-media { position: relative; }
.mhe .elementor-widget.mhe-area-num {
	position: absolute; left: 20px; top: 20px; z-index: 2; width: auto; margin: 0;
}
.mhe .mhe-area-num .elementor-heading-title {
	display: grid; place-items: center; width: 56px; height: 56px; border-radius: 16px;
	background: rgba(18, 56, 44, .82); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
}
.mhe .mhe-area .elementor-widget-image img { transition: transform .4s ease; }
.mhe .mhe-area:hover .elementor-widget-image img { transform: scale(1.015); }

.mhe .mhe-badge__icon--dark { background: rgba(124, 196, 127, .16); }
.mhe .mhe-statement { border-left: 3px solid #7cc47f; padding-left: 24px; }

/* ---------- Organizations ---------- */
.mhe .mhe-logo img { background: #fff; border-radius: 14px; padding: 6px; }
.mhe .mhe-logo-tile .mhe-logo img { padding: 0; background: transparent; mix-blend-mode: multiply; }
.mhe .mhe-logo-tile { transition: transform .25s ease, box-shadow .25s ease; }
.mhe .mhe-logo-tile:hover { transform: translateY(-3px); box-shadow: 0 16px 32px -20px rgba(18, 56, 44, .45); }
.mhe .mhe-org .mhe-logo img { width: 64px; height: 64px; }
.mhe .mhe-kind .elementor-heading-title { display: inline-block; padding: 5px 10px; border-radius: 999px; box-shadow: inset 0 0 0 1px rgba(124, 196, 127, .4); }
.mhe .mhe-probha-card .mhe-fact { border-top: 1px solid #e4e0d4; }
.mhe .mhe-probha-card .mhe-logo img { padding: 0; }
.mhe .mhe-tag--white .elementor-heading-title { background: #fff; }
.mhe .mhe-num--dark .elementor-heading-title { background: #12382c; box-shadow: none; }
.mhe .mhe-highlight { transition: transform .25s ease, box-shadow .25s ease; }
.mhe .mhe-highlight:hover { transform: translateY(-4px); box-shadow: 0 24px 48px -28px rgba(18, 56, 44, .45); }
.mhe .mhe-theme-num { flex: none; width: 48px; }
.mhe .e-con.mhe-theme { transition: background-color .2s ease, padding .2s ease; }
.mhe .e-con.mhe-theme:hover { background-color: rgba(255, 255, 255, .6); --padding-left: 14px; --padding-right: 14px; }

/* ---------- Certificates ---------- */
.mhe .mhe-milestone:last-child { border-bottom: 1px solid rgba(255, 255, 255, .12); }
.mhe .mhe-year { flex: none; width: 130px; }
.mhe .mhe-year .elementor-heading-title { white-space: nowrap; }
.mhe .mhe-doc-img img { background: #f2ede1; padding: 12px; cursor: zoom-in; transition: transform .3s ease; }
.mhe .mhe-doc:hover .mhe-doc-img img { transform: scale(1.02); }
.mhe .mhe-tag--plain .elementor-heading-title { background: transparent; box-shadow: inset 0 0 0 1px #e4e0d4; }
.mhe [id="archive"], .mhe [id="milestones"] { scroll-margin-top: 90px; }

/* ---------- Photographs (Elementor Basic Gallery as a bento grid) ---------- */
.mhe .mhe-jump--5 { grid-template-columns: repeat(5, 1fr); }
.mhe [id^="photos-"] { scroll-margin-top: 76px; }
.mhe .mhe-gallery .gallery {
	display: grid !important; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 230px;
	gap: 16px; margin: 0 !important;
}
.mhe .mhe-gallery .gallery > br { display: none; }
.mhe .mhe-gallery .gallery-item {
	width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important;
	overflow: hidden; border-radius: 18px; background: #e3f1df;
}
.mhe .mhe-gallery .gallery-icon,
.mhe .mhe-gallery .gallery-icon a { display: block; width: 100%; height: 100%; }
.mhe .mhe-gallery .gallery-item img {
	display: block; width: 100% !important; height: 100% !important; object-fit: cover;
	border: 0 !important; border-radius: 0; cursor: zoom-in; transition: transform .5s ease, filter .3s ease;
}
.mhe .mhe-gallery .gallery-item:hover img { transform: scale(1.04); filter: saturate(1.08); }
/* 6 photos: lead 2×2, two beside it, three below */
.mhe .mhe-g6 .gallery-item:nth-child(1) { grid-column: span 2; grid-row: span 2; }
/* 4 photos: tall lead, two beside it, wide one below */
.mhe .mhe-g4 .gallery-item:nth-child(1) { grid-row: span 2; }
.mhe .mhe-g4 .gallery-item:nth-child(4) { grid-column: span 2; }
/* 3 photos: lead 2×2, two stacked beside it */
.mhe .mhe-g3 .gallery-item:nth-child(1) { grid-column: span 2; grid-row: span 2; }

/* ---------- Books ---------- */
.mhe .mhe-shelf { overflow: hidden; }
.mhe .mhe-album .mhe-tag .elementor-heading-title { background: #7cc47f; }
.mhe .mhe-album h3 em { color: #fff; }
.mhe .mhe-big-num .elementor-heading-title { font-variant-numeric: lining-nums; }
.mhe .mhe-statement--light { border-left-color: #7cc47f; padding-left: 24px; border-left-width: 3px; border-left-style: solid; }

/* ---------- Articles ---------- */
.mhe .e-con.mhe-article { text-decoration: none; }
.mhe .mhe-article--dark .mhe-tag .elementor-heading-title { background: #7cc47f; }
.mhe .mhe-article--dark .mhe-tag--plain .elementor-heading-title { background: transparent; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .25); }
.mhe .mhe-readmore .elementor-heading-title { display: inline-flex; gap: .4em; border-bottom: 2px solid #7cc47f; padding-bottom: 2px; transition: gap .2s ease; }
.mhe .mhe-article:hover .mhe-readmore .elementor-heading-title { gap: .7em; }
.mhe .mhe-count { flex: none; }
.mhe .mhe-count .elementor-heading-title { display: grid; place-items: center; min-width: 52px; height: 52px; padding: 0 12px; border-radius: 999px; background: #e3f1df; }

/* ---------- Media & Videos ---------- */
.mhe .mhe-jump--4 { grid-template-columns: repeat(4, 1fr); }
.mhe [id^="media-"] { scroll-margin-top: 76px; }
.mhe .mhe-hero-video .mhe-video .elementor-wrapper { box-shadow: none; border-radius: 16px; }
.mhe .mhe-video-card .mhe-video .elementor-wrapper { transition: transform .3s ease, box-shadow .3s ease; }
.mhe .mhe-video-card:hover .mhe-video .elementor-wrapper { transform: translateY(-3px); box-shadow: 0 34px 60px -30px rgba(18, 56, 44, .55); }

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
	.mhe .e-con.mhe-hero-media { margin-left: auto; margin-right: auto; }
	.mhe .mhe-stat:nth-child(3) { border-left: 0; }
	.mhe .mhe-stat:nth-child(n+3) { border-top: 1px solid #e4e0d4; }
	.mhe .e-con.mhe-about-media::before { inset: 16px -12px -16px 12px; }
	.mhe .e-con.mhe-toc { position: static; }
	.mhe .mhe-jump { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 767px) {
	.mhe .mhe-badge--a { left: -4px; bottom: 24px; }
	.mhe .mhe-badge--b { right: -4px; top: 16px; }
	.mhe .elementor-widget.mhe-badge { padding: 10px 14px; font-size: 13px; }
	.mhe .mhe-num { margin-bottom: 14px; }
	.mhe .mhe-facts .mhe-fact:nth-last-child(2) { border-bottom: 1px solid #e4e0d4; }
	.mhe .mhe-form .wpcf7-form { grid-template-columns: 1fr; }
	.mhe .mhe-form .wpcf7-form > p:nth-of-type(1),
	.mhe .mhe-form .wpcf7-form > p:nth-of-type(2) { grid-column: 1 / -1; }
	.mhe .mhe-form input[type="submit"] { width: 100%; justify-content: center; }
	.mhe .mhe-jump { grid-template-columns: repeat(2, 1fr); }
	.mhe .mhe-gallery .gallery { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 150px; gap: 10px; }
	.mhe .mhe-gallery .gallery-item { border-radius: 14px; }
	.mhe .mhe-gallery .gallery-item:nth-child(1) { grid-column: span 2; grid-row: span 2; }
	.mhe .mhe-g6 .gallery-item:nth-child(6) { grid-column: span 2; }
	.mhe .mhe-g4 .gallery-item:nth-child(1) { grid-row: span 2; }
	.mhe .mhe-jump a { padding: 14px 16px; font-size: 14px; }
}
